Move DrawerFolderLoader callbacks into an inner class
This commit is contained in:
@@ -49,7 +49,6 @@ import i2p.bote.folder.FolderListener;
|
|||||||
import i2p.bote.network.NetworkStatusListener;
|
import i2p.bote.network.NetworkStatusListener;
|
||||||
|
|
||||||
public class EmailListActivity extends BoteActivityBase implements
|
public class EmailListActivity extends BoteActivityBase implements
|
||||||
LoaderManager.LoaderCallbacks<List<IDrawerItem>>,
|
|
||||||
EmailListFragment.OnEmailSelectedListener,
|
EmailListFragment.OnEmailSelectedListener,
|
||||||
MoveToDialogFragment.MoveToDialogListener,
|
MoveToDialogFragment.MoveToDialogListener,
|
||||||
PasswordCacheListener,
|
PasswordCacheListener,
|
||||||
@@ -194,7 +193,7 @@ public class EmailListActivity extends BoteActivityBase implements
|
|||||||
@Override
|
@Override
|
||||||
public void onResume() {
|
public void onResume() {
|
||||||
super.onResume();
|
super.onResume();
|
||||||
getSupportLoaderManager().initLoader(0, null, this);
|
getSupportLoaderManager().initLoader(0, null, new DrawerFolderLoaderCallbacks());
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@@ -349,14 +348,32 @@ public class EmailListActivity extends BoteActivityBase implements
|
|||||||
|
|
||||||
|
|
||||||
//
|
//
|
||||||
// Interfaces
|
// Loaders
|
||||||
//
|
//
|
||||||
|
|
||||||
// LoaderManager.LoaderCallbacks<List<IDrawerItem>>
|
private class DrawerFolderLoaderCallbacks implements LoaderManager.LoaderCallbacks<List<IDrawerItem>> {
|
||||||
|
@Override
|
||||||
|
public Loader<List<IDrawerItem>> onCreateLoader(int id, Bundle args) {
|
||||||
|
return new DrawerFolderLoader(EmailListActivity.this, I2PBote.getInstance().getEmailFolders());
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public Loader<List<IDrawerItem>> onCreateLoader(int id, Bundle args) {
|
public void onLoadFinished(Loader<List<IDrawerItem>> loader, List<IDrawerItem> data) {
|
||||||
return new DrawerFolderLoader(this, I2PBote.getInstance().getEmailFolders());
|
if (mDrawer.getDrawerItems() == null || mDrawer.getDrawerItems().size() == 0)
|
||||||
|
mDrawer.setItems((ArrayList<IDrawerItem>) data);
|
||||||
|
else {
|
||||||
|
// Assumes that no folders have been added or removed
|
||||||
|
// TODO change this if necessary when user folders are implemented
|
||||||
|
for (IDrawerItem item : data) {
|
||||||
|
mDrawer.updateItem(item);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onLoaderReset(Loader<List<IDrawerItem>> loader) {
|
||||||
|
mDrawer.removeAllItems();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private static class DrawerFolderLoader extends BetterAsyncTaskLoader<List<IDrawerItem>> implements FolderListener {
|
private static class DrawerFolderLoader extends BetterAsyncTaskLoader<List<IDrawerItem>> implements FolderListener {
|
||||||
@@ -438,23 +455,10 @@ public class EmailListActivity extends BoteActivityBase implements
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
|
||||||
public void onLoadFinished(Loader<List<IDrawerItem>> loader, List<IDrawerItem> data) {
|
|
||||||
if (mDrawer.getDrawerItems() == null || mDrawer.getDrawerItems().size() == 0)
|
|
||||||
mDrawer.setItems((ArrayList<IDrawerItem>) data);
|
|
||||||
else {
|
|
||||||
// Assumes that no folders have been added or removed
|
|
||||||
// TODO change this if necessary when user folders are implemented
|
|
||||||
for (IDrawerItem item : data) {
|
|
||||||
mDrawer.updateItem(item);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
//
|
||||||
public void onLoaderReset(Loader<List<IDrawerItem>> loader) {
|
// Interfaces
|
||||||
mDrawer.removeAllItems();
|
//
|
||||||
}
|
|
||||||
|
|
||||||
// FolderFragment.OnEmailSelectedListener
|
// FolderFragment.OnEmailSelectedListener
|
||||||
|
|
||||||
@@ -481,13 +485,13 @@ public class EmailListActivity extends BoteActivityBase implements
|
|||||||
@Override
|
@Override
|
||||||
public void passwordProvided() {
|
public void passwordProvided() {
|
||||||
// Trigger the loader to show the drawer badges
|
// Trigger the loader to show the drawer badges
|
||||||
getSupportLoaderManager().restartLoader(0, null, this);
|
getSupportLoaderManager().restartLoader(0, null, new DrawerFolderLoaderCallbacks());
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void passwordCleared() {
|
public void passwordCleared() {
|
||||||
// Trigger the loader to hide the drawer badges
|
// Trigger the loader to hide the drawer badges
|
||||||
getSupportLoaderManager().restartLoader(0, null, this);
|
getSupportLoaderManager().restartLoader(0, null, new DrawerFolderLoaderCallbacks());
|
||||||
}
|
}
|
||||||
|
|
||||||
// NetworkStatusListener
|
// NetworkStatusListener
|
||||||
|
|||||||
Reference in New Issue
Block a user