From 9c23e408e8fdec0cfd2487fa13248c0c8487afee Mon Sep 17 00:00:00 2001 From: Andrew Dolgov Date: Wed, 31 May 2017 10:25:40 +0300 Subject: move fab out of comic list fragment --- .../java/org/fox/ttcomics2/ComicListFragment.java | 12 ------- .../main/java/org/fox/ttcomics2/MainActivity.java | 34 +++++++++++++----- .../src/main/res/layout/activity_main.xml | 42 +++++++++++++++------- .../src/main/res/layout/fragment_comics_grid.xml | 14 -------- 4 files changed, 55 insertions(+), 47 deletions(-) diff --git a/org.fox.ttcomics/src/main/java/org/fox/ttcomics2/ComicListFragment.java b/org.fox.ttcomics/src/main/java/org/fox/ttcomics2/ComicListFragment.java index f87c1c7..0e88474 100755 --- a/org.fox.ttcomics/src/main/java/org/fox/ttcomics2/ComicListFragment.java +++ b/org.fox.ttcomics/src/main/java/org/fox/ttcomics2/ComicListFragment.java @@ -33,7 +33,6 @@ import com.nhaarman.listviewanimations.appearance.simple.ScaleInAnimationAdapter import com.nostra13.universalimageloader.core.DisplayImageOptions; import com.nostra13.universalimageloader.core.ImageLoader; import com.nostra13.universalimageloader.core.process.BitmapProcessor; -import com.shamanland.fab.FloatingActionButton; import java.io.File; @@ -287,20 +286,9 @@ public class ComicListFragment extends Fragment implements OnItemClickListener { HeaderFooterGridView grid = (HeaderFooterGridView) view.findViewById(R.id.comics_grid); - FloatingActionButton fab = (FloatingActionButton) view.findViewById(R.id.fab); - if (m_prefs.getBoolean("enable_fab", true)) { - fab.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View v) { - rescan(); - } - }); - View footer = inflater.inflate(R.layout.comics_grid_footer, grid, false); grid.addFooterView(footer, null, false); - } else { - fab.setVisibility(View.GONE); } m_animationAdapter.setAbsListView(grid); diff --git a/org.fox.ttcomics/src/main/java/org/fox/ttcomics2/MainActivity.java b/org.fox.ttcomics/src/main/java/org/fox/ttcomics2/MainActivity.java index ddb1fb1..a6bd9a3 100755 --- a/org.fox.ttcomics/src/main/java/org/fox/ttcomics2/MainActivity.java +++ b/org.fox.ttcomics/src/main/java/org/fox/ttcomics2/MainActivity.java @@ -25,8 +25,11 @@ import android.support.v7.widget.Toolbar; import android.util.Log; import android.view.Menu; import android.view.MenuItem; +import android.view.View; import android.view.ViewGroup; +import com.shamanland.fab.FloatingActionButton; + import org.fox.ttcomics2.sync.SyncClient; import org.fox.ttcomics2.sync.SyncFolderService; @@ -59,7 +62,7 @@ public class MainActivity extends CommonActivity implements SharedPreferences.On if (SyncFolderService.INTENT_ACTION_SCAN_COMPLETE.equals(intent.getAction())) { m_progressDialog.dismiss(); - updateComicsList(); + updateComicsList(false); } } @@ -79,6 +82,19 @@ public class MainActivity extends CommonActivity implements SharedPreferences.On m_progressDialog = new ProgressDialog(this); + FloatingActionButton fab = (FloatingActionButton) findViewById(R.id.fab); + + if (m_prefs.getBoolean("enable_fab", true)) { + fab.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + updateComicsList(true); + } + }); + } else { + fab.setVisibility(View.GONE); + } + m_adapter = new ComicsPagerAdapter(getSupportFragmentManager()); m_pager = (ViewPager) findViewById(R.id.comics_pager); @@ -352,7 +368,7 @@ public class MainActivity extends CommonActivity implements SharedPreferences.On m_syncClient.setPosition(sha1(new File(fileName).getName()), m_databaseHelper.getLastPosition(fileName)); } - updateComicsList(); + updateComicsList(false); } System.gc(); @@ -360,13 +376,15 @@ public class MainActivity extends CommonActivity implements SharedPreferences.On super.onActivityResult(requestCode, resultCode, intent); } - private void updateComicsList() { + private void updateComicsList(boolean rescan) { ComicListFragment frag = (ComicListFragment) m_adapter.getPrimaryItem(); - Log.d(TAG, "CLF=" + frag + " " + frag.isAdded()); - if (frag != null && frag.isAdded()) { - frag.refresh(); + + if (rescan) + frag.rescan(); + else + frag.refresh(); } } @@ -375,7 +393,7 @@ public class MainActivity extends CommonActivity implements SharedPreferences.On if (m_prefs.getBoolean("use_position_sync", false) && m_syncClient.hasOwner()) { m_databaseHelper.setLastPosition(fileName, 0); m_databaseHelper.setLastMaxPosition(fileName, 0); - updateComicsList(); + updateComicsList(false); if (m_prefs.getBoolean("use_position_sync", false) && m_syncClient.hasOwner()) { AlertDialog.Builder builder = new AlertDialog.Builder(this); @@ -386,7 +404,7 @@ public class MainActivity extends CommonActivity implements SharedPreferences.On m_syncClient.clearData(sha1(new File(fileName).getName()), new SyncClient.DataClearedListener() { @Override public void onDataCleared(boolean result) { - updateComicsList(); + updateComicsList(false); } }); } diff --git a/org.fox.ttcomics/src/main/res/layout/activity_main.xml b/org.fox.ttcomics/src/main/res/layout/activity_main.xml index 8d5203a..ad62a46 100755 --- a/org.fox.ttcomics/src/main/res/layout/activity_main.xml +++ b/org.fox.ttcomics/src/main/res/layout/activity_main.xml @@ -1,4 +1,5 @@ - - + + + + + + - - - + android:layout_gravity="bottom|right" + android:layout_marginBottom="20dp" + android:layout_marginRight="16dp" + android:src="@drawable/ic_refresh" + app:floatingActionButtonColor="?colorAccent" /> + + + \ No newline at end of file diff --git a/org.fox.ttcomics/src/main/res/layout/fragment_comics_grid.xml b/org.fox.ttcomics/src/main/res/layout/fragment_comics_grid.xml index 651ad65..59d985c 100644 --- a/org.fox.ttcomics/src/main/res/layout/fragment_comics_grid.xml +++ b/org.fox.ttcomics/src/main/res/layout/fragment_comics_grid.xml @@ -1,5 +1,4 @@ @@ -15,17 +14,4 @@ android:columnWidth="160dp" android:numColumns="auto_fit" /> - - - - \ No newline at end of file -- cgit v1.2.3