diff options
author | Artur Dryomov <artur.dryomov@gmail.com> | 2013-07-30 22:46:03 +0300 |
---|---|---|
committer | Artur Dryomov <artur.dryomov@gmail.com> | 2013-07-30 23:52:06 +0300 |
commit | c12137a876dd9405b20c094c99b72c672a161422 (patch) | |
tree | 6a109c65cb81e55539b16d0de2cf5a6f42e7eff2 | |
parent | e291784e0ca450c25f9dd691234c57f753d648dc (diff) |
Add changing local slide when remote slide was changed.
Change-Id: If7325a0266484686549a0c1073827613aa40cb85
-rw-r--r-- | android/sdremote/src/org/libreoffice/impressremote/fragment/SlidesPagerFragment.java | 22 |
1 files changed, 17 insertions, 5 deletions
diff --git a/android/sdremote/src/org/libreoffice/impressremote/fragment/SlidesPagerFragment.java b/android/sdremote/src/org/libreoffice/impressremote/fragment/SlidesPagerFragment.java index adbc74ba50d5..3092503a8c10 100644 --- a/android/sdremote/src/org/libreoffice/impressremote/fragment/SlidesPagerFragment.java +++ b/android/sdremote/src/org/libreoffice/impressremote/fragment/SlidesPagerFragment.java @@ -27,7 +27,6 @@ import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import android.widget.TextSwitcher; -import android.widget.TextView; import android.widget.ViewAnimator; import com.actionbarsherlock.app.SherlockFragment; @@ -74,9 +73,10 @@ public class SlidesPagerFragment extends SherlockFragment implements ServiceConn ViewPager aSlidesPager = getSlidesPager(); aSlidesPager.setAdapter(buildSlidesAdapter()); - aSlidesPager.setCurrentItem(mCommunicationService.getSlideShow().getCurrentSlideIndex()); aSlidesPager.setPageMargin(getSlidesMarginInPx()); aSlidesPager.setOnPageChangeListener(this); + + setUpCurrentSlide(); } private ViewPager getSlidesPager() { @@ -97,6 +97,12 @@ public class SlidesPagerFragment extends SherlockFragment implements ServiceConn return (int) TypedValue.applyDimension(aPxUnit, aSlideMarginInDp, aDisplayMetrics); } + private void setUpCurrentSlide() { + SlideShow aSlideShow = mCommunicationService.getSlideShow(); + + getSlidesPager().setCurrentItem(aSlideShow.getCurrentSlideIndex()); + } + @Override public void onPageSelected(int aPosition) { mCommunicationService.getTransmitter().setCurrentSlide(aPosition); @@ -172,16 +178,21 @@ public class SlidesPagerFragment extends SherlockFragment implements ServiceConn } private static final class IntentsReceiver extends BroadcastReceiver { - private final SlidesPagerFragment mSlidesGridFragment; + private final SlidesPagerFragment mSlidesPagerFragment; private IntentsReceiver(SlidesPagerFragment aSlidesGridFragment) { - mSlidesGridFragment = aSlidesGridFragment; + mSlidesPagerFragment = aSlidesGridFragment; } @Override public void onReceive(Context aContext, Intent aIntent) { if (Intents.Actions.SLIDE_PREVIEW.equals(aIntent.getAction())) { - mSlidesGridFragment.refreshSlidesPager(); + mSlidesPagerFragment.refreshSlidesPager(); + return; + } + + if (Intents.Actions.SLIDE_CHANGED.equals(aIntent.getAction())) { + mSlidesPagerFragment.setUpCurrentSlide(); } } } @@ -189,6 +200,7 @@ public class SlidesPagerFragment extends SherlockFragment implements ServiceConn private IntentFilter buildIntentsReceiverFilter() { IntentFilter aIntentFilter = new IntentFilter(); aIntentFilter.addAction(Intents.Actions.SLIDE_PREVIEW); + aIntentFilter.addAction(Intents.Actions.SLIDE_CHANGED); return aIntentFilter; } |