OSDN Git Service

Eleven: Move most activities to fragments to improve perf
[android-x86/packages-apps-Eleven.git] / src / com / cyngn / eleven / ui / fragments / phone / MusicBrowserFragment.java
1 /*
2  * Copyright (C) 2014 Cyanogen, Inc.
3  */
4 package com.cyngn.eleven.ui.fragments.phone;
5
6 import android.os.Bundle;
7 import android.support.v4.app.Fragment;
8 import android.support.v4.app.LoaderManager;
9 import android.support.v4.app.LoaderManager.LoaderCallbacks;
10
11 /**
12  * This class is used for fragments under the {@link MusicBrowserFragment}
13  * Even though the containing view pager creates all the fragments, the loader
14  * does not load complete until the user navigates to that page.  To get around this
15  * we will use the containing fragment's loader manager
16  */
17 public abstract class MusicBrowserFragment extends Fragment {
18     public abstract int getLoaderId();
19
20     public LoaderManager getContainingLoaderManager() {
21         return getParentFragment().getLoaderManager();
22     }
23
24     protected void initLoader(Bundle args, LoaderCallbacks<? extends Object> callback) {
25         getContainingLoaderManager().initLoader(getLoaderId(), args, callback);
26     }
27
28     protected void restartLoader(Bundle args, LoaderCallbacks<? extends Object> callback) {
29         getContainingLoaderManager().restartLoader(getLoaderId(), args, callback);
30     }
31 }