summaryrefslogtreecommitdiff
path: root/android/sdremote/src/org/libreoffice/impressremote/fragment
diff options
context:
space:
mode:
authorArtur Dryomov <artur.dryomov@gmail.com>2013-09-10 22:40:41 +0300
committerArtur Dryomov <artur.dryomov@gmail.com>2013-09-11 01:43:54 +0300
commit5dd70c5c9b3e8cc7313285c2eae31b8d4f7a8d60 (patch)
treec81298513f9e9a6ae882a257262da1c29dc02ae5 /android/sdremote/src/org/libreoffice/impressremote/fragment
parentca5c6e9696048fca9cafba632b574ca4c351b4dd (diff)
Add ability to change transactions via clicking a slide.
Change-Id: Ifc9344c53492a053b15bc0f005e881bc09077473
Diffstat (limited to 'android/sdremote/src/org/libreoffice/impressremote/fragment')
-rw-r--r--android/sdremote/src/org/libreoffice/impressremote/fragment/SlidesPagerFragment.java22
1 files changed, 20 insertions, 2 deletions
diff --git a/android/sdremote/src/org/libreoffice/impressremote/fragment/SlidesPagerFragment.java b/android/sdremote/src/org/libreoffice/impressremote/fragment/SlidesPagerFragment.java
index f12b3d8ed048..aa86de07e5e4 100644
--- a/android/sdremote/src/org/libreoffice/impressremote/fragment/SlidesPagerFragment.java
+++ b/android/sdremote/src/org/libreoffice/impressremote/fragment/SlidesPagerFragment.java
@@ -33,7 +33,7 @@ import org.libreoffice.impressremote.R;
import org.libreoffice.impressremote.adapter.SlidesPagerAdapter;
import org.libreoffice.impressremote.communication.CommunicationService;
-public class SlidesPagerFragment extends SherlockFragment implements ServiceConnection, ViewPager.OnPageChangeListener {
+public class SlidesPagerFragment extends SherlockFragment implements ServiceConnection, ViewPager.OnPageChangeListener, View.OnClickListener {
private CommunicationService mCommunicationService;
private BroadcastReceiver mIntentsReceiver;
@@ -92,7 +92,25 @@ public class SlidesPagerFragment extends SherlockFragment implements ServiceConn
private PagerAdapter buildSlidesAdapter() {
SlideShow aSlideShow = mCommunicationService.getSlideShow();
- return new SlidesPagerAdapter(getActivity(), aSlideShow);
+ return new SlidesPagerAdapter(getActivity(), aSlideShow, this);
+ }
+
+ @Override
+ public void onClick(View aView) {
+ if (!isLastSlideDisplayed()) {
+ showNextTransition();
+ }
+ }
+
+ private boolean isLastSlideDisplayed() {
+ int aCurrentSlideIndex = mCommunicationService.getSlideShow().getHumanCurrentSlideIndex();
+ int aSlidesCount = mCommunicationService.getSlideShow().getSlidesCount();
+
+ return aCurrentSlideIndex == aSlidesCount;
+ }
+
+ private void showNextTransition() {
+ mCommunicationService.getTransmitter().performNextTransition();
}
private int getSlidesMargin() {