1
0
Fork 0
mirror of https://github.com/MatomoCamp/matomocamp-companion-android.git synced 2024-09-19 16:13:46 +02:00

List fragments now inherit from SmoothListFragment

for simpler code and more smoothness under Lollipop.
This commit is contained in:
Christophe Beyls 2015-01-07 02:52:48 +01:00
parent a033f9be57
commit 572d8bd8d4
8 changed files with 33 additions and 56 deletions

View file

@ -3,7 +3,6 @@ package be.digitalia.fosdem.fragments;
import android.content.Intent; import android.content.Intent;
import android.database.Cursor; import android.database.Cursor;
import android.os.Bundle; import android.os.Bundle;
import android.support.v4.app.ListFragment;
import android.support.v4.app.LoaderManager.LoaderCallbacks; import android.support.v4.app.LoaderManager.LoaderCallbacks;
import android.support.v4.content.Loader; import android.support.v4.content.Loader;
import android.view.View; import android.view.View;
@ -12,7 +11,7 @@ import be.digitalia.fosdem.activities.EventDetailsActivity;
import be.digitalia.fosdem.adapters.EventsAdapter; import be.digitalia.fosdem.adapters.EventsAdapter;
import be.digitalia.fosdem.model.Event; import be.digitalia.fosdem.model.Event;
public abstract class BaseLiveListFragment extends ListFragment implements LoaderCallbacks<Cursor> { public abstract class BaseLiveListFragment extends SmoothListFragment implements LoaderCallbacks<Cursor> {
private static final int EVENTS_LOADER_ID = 1; private static final int EVENTS_LOADER_ID = 1;
@ -43,12 +42,7 @@ public abstract class BaseLiveListFragment extends ListFragment implements Loade
adapter.swapCursor(data); adapter.swapCursor(data);
} }
// The list should now be shown. setListShown(true);
if (isResumed()) {
setListShown(true);
} else {
setListShownNoAnimation(true);
}
} }
@Override @Override

View file

@ -6,7 +6,6 @@ import android.database.Cursor;
import android.os.Build; import android.os.Build;
import android.os.Bundle; import android.os.Bundle;
import android.os.Handler; import android.os.Handler;
import android.support.v4.app.ListFragment;
import android.support.v4.app.LoaderManager.LoaderCallbacks; import android.support.v4.app.LoaderManager.LoaderCallbacks;
import android.support.v4.content.Loader; import android.support.v4.content.Loader;
import android.view.Menu; import android.view.Menu;
@ -28,7 +27,7 @@ import be.digitalia.fosdem.widgets.BookmarksMultiChoiceModeListener;
* *
* @author Christophe Beyls * @author Christophe Beyls
*/ */
public class BookmarksListFragment extends ListFragment implements LoaderCallbacks<Cursor> { public class BookmarksListFragment extends SmoothListFragment implements LoaderCallbacks<Cursor> {
private static final int BOOKMARKS_LOADER_ID = 1; private static final int BOOKMARKS_LOADER_ID = 1;
private static final String PREF_UPCOMING_ONLY = "bookmarks_upcoming_only"; private static final String PREF_UPCOMING_ONLY = "bookmarks_upcoming_only";
@ -168,12 +167,7 @@ public class BookmarksListFragment extends ListFragment implements LoaderCallbac
adapter.swapCursor(data); adapter.swapCursor(data);
} }
// The list should now be shown. setListShown(true);
if (isResumed()) {
setListShown(true);
} else {
setListShownNoAnimation(true);
}
} }
@Override @Override

View file

@ -5,7 +5,6 @@ import android.content.Intent;
import android.database.Cursor; import android.database.Cursor;
import android.net.Uri; import android.net.Uri;
import android.os.Bundle; import android.os.Bundle;
import android.support.v4.app.ListFragment;
import android.support.v4.app.LoaderManager.LoaderCallbacks; import android.support.v4.app.LoaderManager.LoaderCallbacks;
import android.support.v4.content.Loader; import android.support.v4.content.Loader;
import android.view.LayoutInflater; import android.view.LayoutInflater;
@ -23,7 +22,7 @@ import be.digitalia.fosdem.loaders.SimpleCursorLoader;
import be.digitalia.fosdem.model.Event; import be.digitalia.fosdem.model.Event;
import be.digitalia.fosdem.model.Person; import be.digitalia.fosdem.model.Person;
public class PersonInfoListFragment extends ListFragment implements LoaderCallbacks<Cursor> { public class PersonInfoListFragment extends SmoothListFragment implements LoaderCallbacks<Cursor> {
private static final int PERSON_EVENTS_LOADER_ID = 1; private static final int PERSON_EVENTS_LOADER_ID = 1;
private static final String ARG_PERSON = "person"; private static final String ARG_PERSON = "person";
@ -112,12 +111,7 @@ public class PersonInfoListFragment extends ListFragment implements LoaderCallba
adapter.swapCursor(data); adapter.swapCursor(data);
} }
// The list should now be shown. setListShown(true);
if (isResumed()) {
setListShown(true);
} else {
setListShownNoAnimation(true);
}
} }
@Override @Override

View file

@ -4,7 +4,6 @@ import android.content.Context;
import android.content.Intent; import android.content.Intent;
import android.database.Cursor; import android.database.Cursor;
import android.os.Bundle; import android.os.Bundle;
import android.support.v4.app.ListFragment;
import android.support.v4.app.LoaderManager.LoaderCallbacks; import android.support.v4.app.LoaderManager.LoaderCallbacks;
import android.support.v4.content.Loader; import android.support.v4.content.Loader;
import android.support.v4.widget.CursorAdapter; import android.support.v4.widget.CursorAdapter;
@ -21,7 +20,7 @@ import be.digitalia.fosdem.db.DatabaseManager;
import be.digitalia.fosdem.loaders.SimpleCursorLoader; import be.digitalia.fosdem.loaders.SimpleCursorLoader;
import be.digitalia.fosdem.model.Person; import be.digitalia.fosdem.model.Person;
public class PersonsListFragment extends ListFragment implements LoaderCallbacks<Cursor> { public class PersonsListFragment extends SmoothListFragment implements LoaderCallbacks<Cursor> {
private static final int PERSONS_LOADER_ID = 1; private static final int PERSONS_LOADER_ID = 1;
@ -68,12 +67,7 @@ public class PersonsListFragment extends ListFragment implements LoaderCallbacks
adapter.swapCursor(data); adapter.swapCursor(data);
} }
// The list should now be shown. setListShown(true);
if (isResumed()) {
setListShown(true);
} else {
setListShownNoAnimation(true);
}
} }
@Override @Override

View file

@ -4,7 +4,6 @@ import android.content.Context;
import android.content.Intent; import android.content.Intent;
import android.database.Cursor; import android.database.Cursor;
import android.os.Bundle; import android.os.Bundle;
import android.support.v4.app.ListFragment;
import android.support.v4.app.LoaderManager.LoaderCallbacks; import android.support.v4.app.LoaderManager.LoaderCallbacks;
import android.support.v4.content.Loader; import android.support.v4.content.Loader;
import android.view.View; import android.view.View;
@ -16,7 +15,7 @@ import be.digitalia.fosdem.db.DatabaseManager;
import be.digitalia.fosdem.loaders.SimpleCursorLoader; import be.digitalia.fosdem.loaders.SimpleCursorLoader;
import be.digitalia.fosdem.model.Event; import be.digitalia.fosdem.model.Event;
public class SearchResultListFragment extends ListFragment implements LoaderCallbacks<Cursor> { public class SearchResultListFragment extends SmoothListFragment implements LoaderCallbacks<Cursor> {
private static final int EVENTS_LOADER_ID = 1; private static final int EVENTS_LOADER_ID = 1;
private static final String ARG_QUERY = "query"; private static final String ARG_QUERY = "query";
@ -75,12 +74,7 @@ public class SearchResultListFragment extends ListFragment implements LoaderCall
adapter.swapCursor(data); adapter.swapCursor(data);
} }
// The list should now be shown. setListShown(true);
if (isResumed()) {
setListShown(true);
} else {
setListShownNoAnimation(true);
}
} }
@Override @Override

View file

@ -0,0 +1,19 @@
package be.digitalia.fosdem.fragments;
import android.os.Build;
import android.support.v4.app.ListFragment;
/**
* ListFragment which disables the fade animation under certain conditions for more smoothness.
*/
public class SmoothListFragment extends ListFragment {
@Override
public void setListShown(boolean shown) {
if ((Build.VERSION.SDK_INT < Build.VERSION_CODES.LOLLIPOP) && isResumed()) {
super.setListShown(shown);
} else {
setListShownNoAnimation(shown);
}
}
}

View file

@ -10,7 +10,6 @@ import android.graphics.Typeface;
import android.os.Bundle; import android.os.Bundle;
import android.os.Handler; import android.os.Handler;
import android.os.Message; import android.os.Message;
import android.support.v4.app.ListFragment;
import android.support.v4.app.LoaderManager.LoaderCallbacks; import android.support.v4.app.LoaderManager.LoaderCallbacks;
import android.support.v4.content.Loader; import android.support.v4.content.Loader;
import android.support.v4.widget.CursorAdapter; import android.support.v4.widget.CursorAdapter;
@ -32,7 +31,7 @@ import be.digitalia.fosdem.model.Event;
import be.digitalia.fosdem.model.Track; import be.digitalia.fosdem.model.Track;
import be.digitalia.fosdem.utils.DateUtils; import be.digitalia.fosdem.utils.DateUtils;
public class TrackScheduleListFragment extends ListFragment implements Handler.Callback, LoaderCallbacks<Cursor> { public class TrackScheduleListFragment extends SmoothListFragment implements Handler.Callback, LoaderCallbacks<Cursor> {
/** /**
* Interface implemented by container activities * Interface implemented by container activities
@ -205,12 +204,7 @@ public class TrackScheduleListFragment extends ListFragment implements Handler.C
isListAlreadyShown = true; isListAlreadyShown = true;
} }
// The list should now be shown. setListShown(true);
if (isResumed()) {
setListShown(true);
} else {
setListShownNoAnimation(true);
}
} }
/** /**

View file

@ -4,7 +4,6 @@ import android.content.Context;
import android.content.Intent; import android.content.Intent;
import android.database.Cursor; import android.database.Cursor;
import android.os.Bundle; import android.os.Bundle;
import android.support.v4.app.ListFragment;
import android.support.v4.app.LoaderManager.LoaderCallbacks; import android.support.v4.app.LoaderManager.LoaderCallbacks;
import android.support.v4.content.Loader; import android.support.v4.content.Loader;
import android.support.v4.widget.CursorAdapter; import android.support.v4.widget.CursorAdapter;
@ -20,7 +19,7 @@ import be.digitalia.fosdem.loaders.SimpleCursorLoader;
import be.digitalia.fosdem.model.Day; import be.digitalia.fosdem.model.Day;
import be.digitalia.fosdem.model.Track; import be.digitalia.fosdem.model.Track;
public class TracksListFragment extends ListFragment implements LoaderCallbacks<Cursor> { public class TracksListFragment extends SmoothListFragment implements LoaderCallbacks<Cursor> {
private static final int TRACKS_LOADER_ID = 1; private static final int TRACKS_LOADER_ID = 1;
private static final String ARG_DAY = "day"; private static final String ARG_DAY = "day";
@ -80,12 +79,7 @@ public class TracksListFragment extends ListFragment implements LoaderCallbacks<
adapter.swapCursor(data); adapter.swapCursor(data);
} }
// The list should now be shown. setListShown(true);
if (isResumed()) {
setListShown(true);
} else {
setListShownNoAnimation(true);
}
} }
@Override @Override