diff --git a/folioreader/build.gradle b/folioreader/build.gradle index b5a42d455..221f674e8 100644 --- a/folioreader/build.gradle +++ b/folioreader/build.gradle @@ -98,7 +98,7 @@ dependencies { compile "org.readium:r2-parser:$R2_STREAMER_VERSION" compile "org.readium:r2-server:$R2_STREAMER_VERSION" - compile 'com.squareup:otto:1.3.8' + compile 'org.greenrobot:eventbus:3.1.1' } apply from: '../folioreader/bintray/installv1.gradle' diff --git a/folioreader/src/main/java/com/folioreader/model/event/BusOwner.java b/folioreader/src/main/java/com/folioreader/model/event/BusOwner.java deleted file mode 100644 index eaf9b98e7..000000000 --- a/folioreader/src/main/java/com/folioreader/model/event/BusOwner.java +++ /dev/null @@ -1,7 +0,0 @@ -package com.folioreader.model.event; - -import com.squareup.otto.Bus; - -public interface BusOwner { - Bus getBus(); -} diff --git a/folioreader/src/main/java/com/folioreader/model/event/UpdateHighlightEvent.java b/folioreader/src/main/java/com/folioreader/model/event/UpdateHighlightEvent.java new file mode 100644 index 000000000..3f413d75f --- /dev/null +++ b/folioreader/src/main/java/com/folioreader/model/event/UpdateHighlightEvent.java @@ -0,0 +1,8 @@ +package com.folioreader.model.event; + +/** + * Created by gautam on 8/12/17. + */ + +public class UpdateHighlightEvent { +} diff --git a/folioreader/src/main/java/com/folioreader/ui/folio/activity/ContentHighlightActivity.java b/folioreader/src/main/java/com/folioreader/ui/folio/activity/ContentHighlightActivity.java index 60f1b52bc..c41c27fd6 100644 --- a/folioreader/src/main/java/com/folioreader/ui/folio/activity/ContentHighlightActivity.java +++ b/folioreader/src/main/java/com/folioreader/ui/folio/activity/ContentHighlightActivity.java @@ -25,9 +25,11 @@ public class ContentHighlightActivity extends AppCompatActivity { protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_content_highlight); - getSupportActionBar().hide(); + if (getSupportActionBar() != null) { + getSupportActionBar().hide(); + } mConfig = AppUtil.getSavedConfig(this); - mIsNightMode = mConfig.isNightMode(); + mIsNightMode = mConfig != null && mConfig.isNightMode(); initViews(); } diff --git a/folioreader/src/main/java/com/folioreader/ui/folio/activity/FolioActivity.java b/folioreader/src/main/java/com/folioreader/ui/folio/activity/FolioActivity.java index 00b1043bf..605148002 100644 --- a/folioreader/src/main/java/com/folioreader/ui/folio/activity/FolioActivity.java +++ b/folioreader/src/main/java/com/folioreader/ui/folio/activity/FolioActivity.java @@ -45,7 +45,6 @@ import com.folioreader.R; import com.folioreader.model.HighlightImpl; import com.folioreader.model.event.AnchorIdEvent; -import com.folioreader.model.event.BusOwner; import com.folioreader.model.event.MediaOverlayHighlightStyleEvent; import com.folioreader.model.event.MediaOverlayPlayPauseEvent; import com.folioreader.model.event.MediaOverlaySpeedEvent; @@ -62,9 +61,8 @@ import com.folioreader.view.DirectionalViewpager; import com.folioreader.view.ObservableWebView; import com.folioreader.view.StyleableTextView; -import com.squareup.otto.Bus; -import com.squareup.otto.ThreadEnforcer; +import org.greenrobot.eventbus.EventBus; import org.readium.r2_streamer.model.container.Container; import org.readium.r2_streamer.model.container.EpubContainer; import org.readium.r2_streamer.model.publication.EpubPublication; @@ -86,7 +84,6 @@ public class FolioActivity implements FolioPageFragment.FolioPageFragmentCallback, ObservableWebView.ToolBarListener, ConfigBottomSheetDialogFragment.ConfigDialogCallback, - BusOwner, MainMvpView { private static final String TAG = "FolioActivity"; @@ -107,12 +104,6 @@ public enum EpubSourceType { private String bookFileName; private static final String HIGHLIGHT_ITEM = "highlight_item"; - private final Bus BUS = new Bus(ThreadEnforcer.MAIN); - @Override - public Bus getBus() { - return BUS; - } - public boolean mIsActionBarVisible; private DirectionalViewpager mFolioPageViewPager; private Toolbar mToolbar; @@ -164,9 +155,6 @@ protected void onCreate(Bundle savedInstanceState) { initColors(); - BUS.register(this); - - if (ContextCompat.checkSelfPermission(FolioActivity.this, Manifest.permission.WRITE_EXTERNAL_STORAGE) != PackageManager.PERMISSION_GRANTED) { ActivityCompat.requestPermissions(FolioActivity.this, Constants.getWriteExternalStoragePerms(), Constants.WRITE_EXTERNAL_STORAGE_REQUEST); } else { @@ -273,7 +261,7 @@ public void onOrientationChange(int orentation) { } private void configFolio() { - mFolioPageViewPager = (DirectionalViewpager) findViewById(R.id.folioPageViewPager); + mFolioPageViewPager = findViewById(R.id.folioPageViewPager); mFolioPageViewPager.setOnPageChangeListener(new DirectionalViewpager.OnPageChangeListener() { @Override public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) { @@ -281,7 +269,7 @@ public void onPageScrolled(int position, float positionOffset, int positionOffse @Override public void onPageSelected(int position) { - BUS.post(new MediaOverlayPlayPauseEvent(mSpineReferenceList.get(mChapterPosition).href, false, true)); + EventBus.getDefault().post(new MediaOverlayPlayPauseEvent(mSpineReferenceList.get(mChapterPosition).href, false, true)); mPlayPauseBtn.setImageDrawable(ContextCompat.getDrawable(FolioActivity.this, R.drawable.play_icon)); mChapterPosition = position; } @@ -402,7 +390,7 @@ protected void onActivityResult(int requestCode, int resultCode, Intent data) { mChapterPosition = mSpineReferenceList.indexOf(spine); mFolioPageViewPager.setCurrentItem(mChapterPosition); title.setText(data.getStringExtra(Constants.BOOK_TITLE)); - BUS.post(new AnchorIdEvent(selectedChapterHref)); + EventBus.getDefault().post(new AnchorIdEvent(selectedChapterHref)); break; } } @@ -410,7 +398,7 @@ protected void onActivityResult(int requestCode, int resultCode, Intent data) { HighlightImpl highlightImpl = data.getParcelableExtra(HIGHLIGHT_ITEM); int position = highlightImpl.getPageNumber(); mFolioPageViewPager.setCurrentItem(position); - BUS.post(new WebViewPosition(mSpineReferenceList.get(mChapterPosition).href, highlightImpl.getRangy())); + EventBus.getDefault().post(new WebViewPosition(mSpineReferenceList.get(mChapterPosition).href, highlightImpl.getRangy())); } } } @@ -421,7 +409,6 @@ protected void onDestroy() { if (mEpubServer != null) { mEpubServer.stop(); } - BUS.unregister(this); } public int getmChapterPosition() { @@ -473,18 +460,18 @@ private void setConfig() { private RelativeLayout shade; private void initAudioView() { - mHalfSpeed = (StyleableTextView) findViewById(R.id.btn_half_speed); - mOneSpeed = (StyleableTextView) findViewById(R.id.btn_one_x_speed); - mTwoSpeed = (StyleableTextView) findViewById(R.id.btn_twox_speed); - audioContainer = (RelativeLayout) findViewById(R.id.container); - shade = (RelativeLayout) findViewById(R.id.shade); - mOneAndHalfSpeed = (StyleableTextView) findViewById(R.id.btn_one_and_half_speed); - mPlayPauseBtn = (ImageButton) findViewById(R.id.play_button); - mPreviousButton = (ImageButton) findViewById(R.id.prev_button); - mNextButton = (ImageButton) findViewById(R.id.next_button); - mBackgroundColorStyle = (StyleableTextView) findViewById(R.id.btn_backcolor_style); - mUnderlineStyle = (StyleableTextView) findViewById(R.id.btn_text_undeline_style); - mTextColorStyle = (StyleableTextView) findViewById(R.id.btn_text_color_style); + mHalfSpeed = findViewById(R.id.btn_half_speed); + mOneSpeed = findViewById(R.id.btn_one_x_speed); + mTwoSpeed = findViewById(R.id.btn_twox_speed); + audioContainer = findViewById(R.id.container); + shade = findViewById(R.id.shade); + mOneAndHalfSpeed = findViewById(R.id.btn_one_and_half_speed); + mPlayPauseBtn = findViewById(R.id.play_button); + mPreviousButton = findViewById(R.id.prev_button); + mNextButton = findViewById(R.id.next_button); + mBackgroundColorStyle = findViewById(R.id.btn_backcolor_style); + mUnderlineStyle = findViewById(R.id.btn_text_undeline_style); + mTextColorStyle = findViewById(R.id.btn_text_color_style); mIsSpeaking = false; final Context mContext = mHalfSpeed.getContext(); @@ -519,11 +506,11 @@ public void onClick(View v) { @Override public void onClick(View v) { if (mIsSpeaking) { - BUS.post(new MediaOverlayPlayPauseEvent(mSpineReferenceList.get(mChapterPosition).href, false, false)); + EventBus.getDefault().post(new MediaOverlayPlayPauseEvent(mSpineReferenceList.get(mChapterPosition).href, false, false)); mPlayPauseBtn.setImageDrawable(ContextCompat.getDrawable(FolioActivity.this, R.drawable.play_icon)); UiUtil.setColorToImage(mContext, mConfig.getThemeColor(), mPlayPauseBtn.getDrawable()); } else { - BUS.post(new MediaOverlayPlayPauseEvent(mSpineReferenceList.get(mChapterPosition).href, true, false)); + EventBus.getDefault().post(new MediaOverlayPlayPauseEvent(mSpineReferenceList.get(mChapterPosition).href, true, false)); mPlayPauseBtn.setImageDrawable(ContextCompat.getDrawable(FolioActivity.this, R.drawable.pause_btn)); UiUtil.setColorToImage(mContext, mConfig.getThemeColor(), mPlayPauseBtn.getDrawable()); } @@ -539,7 +526,7 @@ public void onClick(View v) { mOneSpeed.setSelected(false); mOneAndHalfSpeed.setSelected(false); mTwoSpeed.setSelected(false); - BUS.post(new MediaOverlaySpeedEvent(MediaOverlaySpeedEvent.Speed.HALF)); + EventBus.getDefault().post(new MediaOverlaySpeedEvent(MediaOverlaySpeedEvent.Speed.HALF)); } }); @@ -551,7 +538,7 @@ public void onClick(View v) { mOneSpeed.setSelected(true); mOneAndHalfSpeed.setSelected(false); mTwoSpeed.setSelected(false); - BUS.post(new MediaOverlaySpeedEvent(MediaOverlaySpeedEvent.Speed.ONE)); + EventBus.getDefault().post(new MediaOverlaySpeedEvent(MediaOverlaySpeedEvent.Speed.ONE)); } }); mOneAndHalfSpeed.setOnClickListener(new View.OnClickListener() { @@ -562,7 +549,7 @@ public void onClick(View v) { mOneSpeed.setSelected(false); mOneAndHalfSpeed.setSelected(true); mTwoSpeed.setSelected(false); - BUS.post(new MediaOverlaySpeedEvent(MediaOverlaySpeedEvent.Speed.ONE_HALF)); + EventBus.getDefault().post(new MediaOverlaySpeedEvent(MediaOverlaySpeedEvent.Speed.ONE_HALF)); } }); mTwoSpeed.setOnClickListener(new View.OnClickListener() { @@ -572,7 +559,7 @@ public void onClick(View v) { mOneSpeed.setSelected(false); mOneAndHalfSpeed.setSelected(false); mTwoSpeed.setSelected(true); - BUS.post(new MediaOverlaySpeedEvent(MediaOverlaySpeedEvent.Speed.TWO)); + EventBus.getDefault().post(new MediaOverlaySpeedEvent(MediaOverlaySpeedEvent.Speed.TWO)); } }); @@ -582,7 +569,7 @@ public void onClick(View v) { mBackgroundColorStyle.setSelected(true); mUnderlineStyle.setSelected(false); mTextColorStyle.setSelected(false); - BUS.post(new MediaOverlayHighlightStyleEvent(MediaOverlayHighlightStyleEvent.Style.DEFAULT)); + EventBus.getDefault().post(new MediaOverlayHighlightStyleEvent(MediaOverlayHighlightStyleEvent.Style.DEFAULT)); } }); @@ -592,7 +579,7 @@ public void onClick(View v) { mBackgroundColorStyle.setSelected(false); mUnderlineStyle.setSelected(true); mTextColorStyle.setSelected(false); - BUS.post(new MediaOverlayHighlightStyleEvent(MediaOverlayHighlightStyleEvent.Style.UNDERLINE)); + EventBus.getDefault().post(new MediaOverlayHighlightStyleEvent(MediaOverlayHighlightStyleEvent.Style.UNDERLINE)); } }); @@ -603,7 +590,7 @@ public void onClick(View v) { mBackgroundColorStyle.setSelected(false); mUnderlineStyle.setSelected(false); mTextColorStyle.setSelected(true); - BUS.post(new MediaOverlayHighlightStyleEvent(MediaOverlayHighlightStyleEvent.Style.BACKGROUND)); + EventBus.getDefault().post(new MediaOverlayHighlightStyleEvent(MediaOverlayHighlightStyleEvent.Style.BACKGROUND)); } }); diff --git a/folioreader/src/main/java/com/folioreader/ui/folio/fragment/FolioPageFragment.java b/folioreader/src/main/java/com/folioreader/ui/folio/fragment/FolioPageFragment.java index 2c63fa068..bb5c81e04 100644 --- a/folioreader/src/main/java/com/folioreader/ui/folio/fragment/FolioPageFragment.java +++ b/folioreader/src/main/java/com/folioreader/ui/folio/fragment/FolioPageFragment.java @@ -1,7 +1,7 @@ package com.folioreader.ui.folio.fragment; -import android.app.Activity; import android.annotation.SuppressLint; +import android.app.Activity; import android.content.Intent; import android.content.res.Configuration; import android.graphics.Color; @@ -36,12 +36,12 @@ import com.folioreader.model.HighLight; import com.folioreader.model.HighlightImpl; import com.folioreader.model.event.AnchorIdEvent; -import com.folioreader.model.event.BusOwner; import com.folioreader.model.event.MediaOverlayHighlightStyleEvent; import com.folioreader.model.event.MediaOverlayPlayPauseEvent; import com.folioreader.model.event.MediaOverlaySpeedEvent; import com.folioreader.model.event.ReloadDataEvent; import com.folioreader.model.event.RewindIndexEvent; +import com.folioreader.model.event.UpdateHighlightEvent; import com.folioreader.model.event.WebViewPosition; import com.folioreader.model.quickaction.ActionItem; import com.folioreader.model.quickaction.QuickAction; @@ -59,8 +59,10 @@ import com.folioreader.util.UiUtil; import com.folioreader.view.ObservableWebView; import com.folioreader.view.VerticalSeekbar; -import com.squareup.otto.Subscribe; +import org.greenrobot.eventbus.EventBus; +import org.greenrobot.eventbus.Subscribe; +import org.greenrobot.eventbus.ThreadMode; import org.readium.r2_streamer.model.publication.link.Link; import java.io.UnsupportedEncodingException; @@ -153,6 +155,7 @@ public static FolioPageFragment newInstance(int position, String bookTitle, Link @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { + EventBus.getDefault().register(this); if ((savedInstanceState != null) && savedInstanceState.containsKey(KEY_FRAGMENT_FOLIO_POSITION) && savedInstanceState.containsKey(KEY_FRAGMENT_FOLIO_BOOK_TITLE)) { @@ -189,9 +192,6 @@ public View onCreateView(LayoutInflater inflater, if (activity instanceof FolioPageFragmentCallback) mActivityCallback = (FolioPageFragmentCallback) activity; - if (activity instanceof BusOwner) - ((BusOwner) activity).getBus().register(this); - initSeekbar(); initAnimations(); initWebView(); @@ -226,7 +226,7 @@ public void onConfigurationChanged(Configuration newConfig) { * @param event of type {@link MediaOverlayPlayPauseEvent} contains if paused/played */ @SuppressWarnings("unused") - @Subscribe + @Subscribe(threadMode = ThreadMode.MAIN) public void pauseButtonClicked(MediaOverlayPlayPauseEvent event) { if (isAdded() && spineItem.href.equals(event.getHref())) { @@ -243,7 +243,7 @@ public void pauseButtonClicked(MediaOverlayPlayPauseEvent event) { * type HALF,ONE,ONE_HALF and TWO. */ @SuppressWarnings("unused") - @Subscribe + @Subscribe(threadMode = ThreadMode.MAIN) public void speedChanged(MediaOverlaySpeedEvent event) { mediaController.setSpeed(event.getSpeed()); } @@ -257,7 +257,7 @@ public void speedChanged(MediaOverlaySpeedEvent event) { * of type DEFAULT,UNDERLINE and BACKGROUND. */ @SuppressWarnings("unused") - @Subscribe + @Subscribe(threadMode = ThreadMode.MAIN) public void styleChanged(MediaOverlayHighlightStyleEvent event) { if (isAdded()) { switch (event.getStyle()) { @@ -284,7 +284,8 @@ public void styleChanged(MediaOverlayHighlightStyleEvent event) { * * @param reloadDataEvent empty POJO. */ - @Subscribe + @SuppressWarnings("unused") + @Subscribe(threadMode = ThreadMode.MAIN) public void reload(ReloadDataEvent reloadDataEvent) { if (isAdded()) { mLastWebviewScrollpos = mWebview.getScrollY(); @@ -294,13 +295,30 @@ public void reload(ReloadDataEvent reloadDataEvent) { } } + /** + * [EVENT BUS FUNCTION] + * + * Function triggered when highlight is deleted and page is needed to + * be updated. + * + * @param event empty POJO. + */ + @SuppressWarnings("unused") + @Subscribe(threadMode = ThreadMode.MAIN) + public void updateHighlight(UpdateHighlightEvent event){ + if(isAdded()) { + this.rangy = HighlightUtil.generateRangyString(getPageName()); + loadRangy(mWebview, this.rangy); + } + } + /** * [EVENT BUS FUNCTION] * Function triggered from {@link FolioActivity#onActivityResult(int, int, Intent)} when any item in toc clicked. * * @param event of type {@link AnchorIdEvent} contains selected chapter href. */ - @Subscribe + @Subscribe(threadMode = ThreadMode.MAIN) public void jumpToAnchorPoint(AnchorIdEvent event) { if (isAdded() && event != null && event.getHref() != null) { String href = event.getHref(); @@ -313,6 +331,14 @@ public void jumpToAnchorPoint(AnchorIdEvent event) { } } + @SuppressWarnings("unused") + @Subscribe(threadMode = ThreadMode.MAIN) + public void resetCurrentIndex(RewindIndexEvent resetIndex) { + if (isCurrentFragment()) { + mWebview.loadUrl("javascript:alert(rewindCurrentIndex())"); + } + } + @Override public void onReceiveHtml(String html) { if (isAdded()) { @@ -415,10 +441,7 @@ public void onPageFinished(WebView view, String url) { if (!rangy.isEmpty()) { loadRangy(view, rangy); } - scrollToHighlightId(); - - } } @@ -462,7 +485,6 @@ public boolean shouldOverrideUrlLoading(WebView view, String url) { return true; } - // prevent favicon.ico to be loaded automatically @Override public WebResourceResponse shouldInterceptRequest(WebView view, String url) { @@ -703,10 +725,7 @@ public void fadeOutSeekBarIfVisible() { public void onDestroyView() { mFadeInAnimation.setAnimationListener(null); mFadeOutAnimation.setAnimationListener(null); - - Activity activity = getActivity(); - if (activity instanceof BusOwner) - ((BusOwner) activity).getBus().unregister(this); + EventBus.getDefault().unregister(this); super.onDestroyView(); } @@ -917,7 +936,7 @@ private String getPageName() { } @SuppressWarnings("unused") - @Subscribe + @Subscribe(threadMode = ThreadMode.MAIN) public void setWebView(final WebViewPosition position) { if (position.getHref().equals(spineItem.href) && isAdded()) { highlightId = position.getHighlightId(); @@ -970,13 +989,6 @@ public void run() { } } - @Subscribe - public void resetCurrentIndex(RewindIndexEvent resetIndex) { - if (isCurrentFragment()) { - mWebview.loadUrl("javascript:alert(rewindCurrentIndex())"); - } - } - @Override public void onDestroy() { super.onDestroy(); diff --git a/folioreader/src/main/java/com/folioreader/ui/folio/fragment/HighlightFragment.java b/folioreader/src/main/java/com/folioreader/ui/folio/fragment/HighlightFragment.java index b83548248..de7578614 100644 --- a/folioreader/src/main/java/com/folioreader/ui/folio/fragment/HighlightFragment.java +++ b/folioreader/src/main/java/com/folioreader/ui/folio/fragment/HighlightFragment.java @@ -23,14 +23,15 @@ import com.folioreader.R; import com.folioreader.model.HighLight; import com.folioreader.model.HighlightImpl; -import com.folioreader.model.event.BusOwner; -import com.folioreader.model.event.ReloadDataEvent; +import com.folioreader.model.event.UpdateHighlightEvent; import com.folioreader.model.sqlite.HighLightTable; import com.folioreader.ui.folio.adapter.HighlightAdapter; import com.folioreader.util.AppUtil; import com.folioreader.util.FolioReader; import com.folioreader.util.HighlightUtil; +import org.greenrobot.eventbus.EventBus; + public class HighlightFragment extends Fragment implements HighlightAdapter.HighLightAdapterCallback { private static final String HIGHLIGHT_ITEM = "highlight_item"; private View mRootView; @@ -89,11 +90,9 @@ public void onItemClick(HighlightImpl highlightImpl) { @Override public void deleteHighlight(int id) { - HighLightTable.deleteHighlight(id); - - Activity activity = getActivity(); - if (activity instanceof BusOwner) - ((BusOwner) activity).getBus().post(new ReloadDataEvent()); + if(HighLightTable.deleteHighlight(id)) { + EventBus.getDefault().post(new UpdateHighlightEvent()); + } } @Override diff --git a/folioreader/src/main/java/com/folioreader/view/ConfigBottomSheetDialogFragment.java b/folioreader/src/main/java/com/folioreader/view/ConfigBottomSheetDialogFragment.java index a5cf47dad..5d627ca38 100644 --- a/folioreader/src/main/java/com/folioreader/view/ConfigBottomSheetDialogFragment.java +++ b/folioreader/src/main/java/com/folioreader/view/ConfigBottomSheetDialogFragment.java @@ -25,11 +25,12 @@ import com.folioreader.Config; import com.folioreader.Constants; import com.folioreader.R; -import com.folioreader.model.event.BusOwner; import com.folioreader.model.event.ReloadDataEvent; import com.folioreader.util.AppUtil; import com.folioreader.util.UiUtil; +import org.greenrobot.eventbus.EventBus; + /** * Created by mobisys2 on 11/16/2016. @@ -210,10 +211,7 @@ private void selectFont(int selectedFont, boolean isReloadNeeded) { //if (mConfigDialogCallback != null) mConfigDialogCallback.onConfigChange(); if (isAdded() && isReloadNeeded) { AppUtil.saveConfig(getActivity(),mConfig); - - Activity activity = getActivity(); - if (activity instanceof BusOwner) - ((BusOwner) activity).getBus().post(new ReloadDataEvent()); + EventBus.getDefault().post(new ReloadDataEvent()); } } @@ -246,12 +244,7 @@ public void onAnimationEnd(Animator animator) { mIsNightMode = !mIsNightMode; mConfig.setNightMode(mIsNightMode); AppUtil.saveConfig(getActivity(),mConfig); - - Activity activity = getActivity(); - if (activity instanceof BusOwner) - ((BusOwner) activity).getBus().post(new ReloadDataEvent()); - - ///mConfigDialogCallback.onConfigChange(); + EventBus.getDefault().post(new ReloadDataEvent()); } @Override @@ -278,10 +271,7 @@ private void configSeekBar() { public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) { mConfig.setFontSize(progress); AppUtil.saveConfig(getActivity(),mConfig); - - Activity activity = getActivity(); - if (activity instanceof BusOwner) - ((BusOwner) activity).getBus().post(new ReloadDataEvent()); + EventBus.getDefault().post(new ReloadDataEvent()); } @Override diff --git a/sample/src/main/assets/epub1.epub b/sample/src/main/assets/epub1.epub new file mode 100644 index 000000000..7c4b6fb09 Binary files /dev/null and b/sample/src/main/assets/epub1.epub differ