@Test public void onEventItemClickedTest() { final TimelineEvent event = mock(TimelineEvent.class); when(event.hasActions()).thenReturn(true); fragment.onEventItemClicked(0, event); verify(fragment).showAvailableActions(eq(event)); verify(fragment, times(0)).showNoActionsAvailable(); when(event.hasActions()).thenReturn(false); fragment.onEventItemClicked(0, event); verify(fragment).showNoActionsAvailable(); }
@Override public void onEventItemClicked(final int eventPosition, @NonNull final TimelineEvent event) { if (this.infoOverlay != null) { this.infoOverlay.dismiss(true); } if (event.hasActions()) { showAvailableActions(event); } else { showNoActionsAvailable(); } Analytics.trackEvent(Analytics.Timeline.EVENT_TIMELINE_EVENT_TAPPED, null); }
TimelineFragment extends ControllerPresenterFragment<TimelineView> implements TimelineAdapter.OnItemClickListener,
        BaseFragmentPagerAdapter.Controller { @Override public void onEventItemClicked(final int eventPosition, @NonNull final TimelineEvent event) { if (this.infoOverlay != null) { this.infoOverlay.dismiss(true); } if (event.hasActions()) { showAvailableActions(event); } else { showNoActionsAvailable(); } Analytics.trackEvent(Analytics.Timeline.EVENT_TIMELINE_EVENT_TAPPED, null); } }
TimelineFragment extends ControllerPresenterFragment<TimelineView> implements TimelineAdapter.OnItemClickListener,
        BaseFragmentPagerAdapter.Controller { @Override public void onEventItemClicked(final int eventPosition, @NonNull final TimelineEvent event) { if (this.infoOverlay != null) { this.infoOverlay.dismiss(true); } if (event.hasActions()) { showAvailableActions(event); } else { showNoActionsAvailable(); } Analytics.trackEvent(Analytics.Timeline.EVENT_TIMELINE_EVENT_TAPPED, null); }  }
TimelineFragment extends ControllerPresenterFragment<TimelineView> implements TimelineAdapter.OnItemClickListener,
        BaseFragmentPagerAdapter.Controller { @Override public void onEventItemClicked(final int eventPosition, @NonNull final TimelineEvent event) { if (this.infoOverlay != null) { this.infoOverlay.dismiss(true); } if (event.hasActions()) { showAvailableActions(event); } else { showNoActionsAvailable(); } Analytics.trackEvent(Analytics.Timeline.EVENT_TIMELINE_EVENT_TAPPED, null); }  static TimelineFragment newInstance(@NonNull final LocalDate date,
                                               @Nullable final Timeline cachedTimeline); @Override void setVisibleToUser(final boolean isVisible); @Override void initializePresenterView(); @Override void onCreate(final Bundle savedInstanceState); @Override void onViewCreated(final View view, final Bundle savedInstanceState); @Override void onTrimMemory(final int level); @Override void onPause(); @Override void onDestroyView(); @Override void onDetach(); @Override void onActivityResult(final int requestCode, final int resultCode, final Intent data); @Override void onRequestPermissionsResult(final int requestCode, @NonNull final String[] permissions, @NonNull final int[] grantResults); void showTimelineNavigator(@NonNull final LocalDate date,
                                      @Nullable final Timeline timeline); void share(); void showBreakdown(@NonNull final View sender); void dismissVisibleOverlaysAndDialogs(); @SuppressWarnings("ConstantConditions") @NonNull LocalDate getDate(); @Nullable Timeline getCachedTimeline(); void onSwipeBetweenDatesStarted(); void scrollToTop(); void update(); boolean isAtLeastThreeDaysOld(); void bindTimeline(@NonNull final Timeline timeline); void timelineUnavailable(final Throwable e); @Override void onSegmentItemClicked(final int position, final View view, @NonNull final TimelineEvent event); @Override void onEventItemClicked(final int eventPosition, @NonNull final TimelineEvent event); }
TimelineFragment extends ControllerPresenterFragment<TimelineView> implements TimelineAdapter.OnItemClickListener,
        BaseFragmentPagerAdapter.Controller { @Override public void onEventItemClicked(final int eventPosition, @NonNull final TimelineEvent event) { if (this.infoOverlay != null) { this.infoOverlay.dismiss(true); } if (event.hasActions()) { showAvailableActions(event); } else { showNoActionsAvailable(); } Analytics.trackEvent(Analytics.Timeline.EVENT_TIMELINE_EVENT_TAPPED, null); }  static TimelineFragment newInstance(@NonNull final LocalDate date,
                                               @Nullable final Timeline cachedTimeline); @Override void setVisibleToUser(final boolean isVisible); @Override void initializePresenterView(); @Override void onCreate(final Bundle savedInstanceState); @Override void onViewCreated(final View view, final Bundle savedInstanceState); @Override void onTrimMemory(final int level); @Override void onPause(); @Override void onDestroyView(); @Override void onDetach(); @Override void onActivityResult(final int requestCode, final int resultCode, final Intent data); @Override void onRequestPermissionsResult(final int requestCode, @NonNull final String[] permissions, @NonNull final int[] grantResults); void showTimelineNavigator(@NonNull final LocalDate date,
                                      @Nullable final Timeline timeline); void share(); void showBreakdown(@NonNull final View sender); void dismissVisibleOverlaysAndDialogs(); @SuppressWarnings("ConstantConditions") @NonNull LocalDate getDate(); @Nullable Timeline getCachedTimeline(); void onSwipeBetweenDatesStarted(); void scrollToTop(); void update(); boolean isAtLeastThreeDaysOld(); void bindTimeline(@NonNull final Timeline timeline); void timelineUnavailable(final Throwable e); @Override void onSegmentItemClicked(final int position, final View view, @NonNull final TimelineEvent event); @Override void onEventItemClicked(final int eventPosition, @NonNull final TimelineEvent event); static final int ZOOMED_OUT_TIMELINE_REQUEST; }