package tv.emby.embyatv.browsing; import android.os.Bundle; import mediabrowser.apiinteraction.EmptyResponse; import mediabrowser.model.querying.ArtistsQuery; import mediabrowser.model.querying.ItemFields; import tv.emby.embyatv.TvApp; import tv.emby.embyatv.model.ChangeTriggerType; import tv.emby.embyatv.querying.StdItemQuery; /** * Created by Eric on 8/16/2015. */ public class BrowseGridFragment extends StdGridFragment { @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); } @Override public void onActivityCreated(Bundle savedInstanceState) { super.onActivityCreated(savedInstanceState); } @Override protected void setupQueries(IGridLoader gridLoader) { StdItemQuery query = new StdItemQuery(new ItemFields[] {ItemFields.PrimaryImageAspectRatio}); query.setParentId(mParentId); if (mFolder.getType().equals("UserView") || mFolder.getType().equals("CollectionFolder")) { String type = mFolder.getCollectionType() != null ? mFolder.getCollectionType().toLowerCase() : ""; switch (type) { case "movies": query.setIncludeItemTypes(new String[]{"Movie"}); query.setRecursive(true); break; case "tvshows": query.setIncludeItemTypes(new String[]{"Series"}); query.setRecursive(true); break; case "boxsets": query.setIncludeItemTypes(new String[]{"BoxSet"}); query.setParentId(null); query.setRecursive(true); break; case "music": mAllowViewSelection = false; //Special queries needed for album artists String includeType = getActivity().getIntent().getStringExtra("IncludeType"); if ("AlbumArtist".equals(includeType)) { ArtistsQuery albumArtists = new ArtistsQuery(); albumArtists.setUserId(TvApp.getApplication().getCurrentUser().getId()); albumArtists.setFields(new ItemFields[]{ItemFields.PrimaryImageAspectRatio, ItemFields.ItemCounts}); albumArtists.setParentId(mParentId); mRowDef = new BrowseRowDef("", albumArtists, 150, new ChangeTriggerType[] {}); gridLoader.loadGrid(mRowDef); return; } query.setIncludeItemTypes(new String[]{includeType != null ? includeType : "MusicAlbum"}); query.setRecursive(true); break; } } mRowDef = new BrowseRowDef("", query, 150, false, true); gridLoader.loadGrid(mRowDef); } }