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:
parent
a033f9be57
commit
572d8bd8d4
8 changed files with 33 additions and 56 deletions
|
@ -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.
|
|
||||||
if (isResumed()) {
|
|
||||||
setListShown(true);
|
setListShown(true);
|
||||||
} else {
|
|
||||||
setListShownNoAnimation(true);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
@ -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.
|
|
||||||
if (isResumed()) {
|
|
||||||
setListShown(true);
|
setListShown(true);
|
||||||
} else {
|
|
||||||
setListShownNoAnimation(true);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
@ -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.
|
|
||||||
if (isResumed()) {
|
|
||||||
setListShown(true);
|
setListShown(true);
|
||||||
} else {
|
|
||||||
setListShownNoAnimation(true);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
@ -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.
|
|
||||||
if (isResumed()) {
|
|
||||||
setListShown(true);
|
setListShown(true);
|
||||||
} else {
|
|
||||||
setListShownNoAnimation(true);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
@ -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.
|
|
||||||
if (isResumed()) {
|
|
||||||
setListShown(true);
|
setListShown(true);
|
||||||
} else {
|
|
||||||
setListShownNoAnimation(true);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
@ -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);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -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.
|
|
||||||
if (isResumed()) {
|
|
||||||
setListShown(true);
|
setListShown(true);
|
||||||
} else {
|
|
||||||
setListShownNoAnimation(true);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
@ -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.
|
|
||||||
if (isResumed()) {
|
|
||||||
setListShown(true);
|
setListShown(true);
|
||||||
} else {
|
|
||||||
setListShownNoAnimation(true);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
Loading…
Reference in a new issue