diff --git a/Clover/app/src/main/java/org/floens/chan/ui/activity/BaseActivity.java b/Clover/app/src/main/java/org/floens/chan/ui/activity/BaseActivity.java index 9eb9d776..09f529c1 100644 --- a/Clover/app/src/main/java/org/floens/chan/ui/activity/BaseActivity.java +++ b/Clover/app/src/main/java/org/floens/chan/ui/activity/BaseActivity.java @@ -72,6 +72,7 @@ public abstract class BaseActivity extends Activity implements PanelSlideListene protected SlidingPaneLayout threadPane; + private String shareUrl; private ShareActionProvider shareActionProvider; private Intent pendingShareActionProviderIntent; @@ -320,6 +321,8 @@ public abstract class BaseActivity extends Activity implements PanelSlideListene * @param url */ public void setShareUrl(String url) { + shareUrl = url; + NfcAdapter adapter = NfcAdapter.getDefaultAdapter(this); if (adapter != null) { @@ -349,6 +352,12 @@ public abstract class BaseActivity extends Activity implements PanelSlideListene } } + public void openInBrowser() { + if (shareUrl != null) { + showUrlOpenPicker(shareUrl); + } + } + /** * Let the user choose between all activities that can open the url. This is * done to prevent "open in browser" opening the url in our own app. diff --git a/Clover/app/src/main/java/org/floens/chan/ui/activity/BoardActivity.java b/Clover/app/src/main/java/org/floens/chan/ui/activity/BoardActivity.java index 2f40a09c..a21b27c9 100644 --- a/Clover/app/src/main/java/org/floens/chan/ui/activity/BoardActivity.java +++ b/Clover/app/src/main/java/org/floens/chan/ui/activity/BoardActivity.java @@ -367,8 +367,11 @@ public class BoardActivity extends BaseActivity implements AdapterView.OnItemSel actionBar.setTitle(""); pinDrawerListener.setDrawerIndicatorEnabled(true); - if (boardLoadable.isBoardMode() || boardLoadable.isCatalogMode()) + if (boardLoadable.isBoardMode()) { setShareUrl(ChanUrls.getBoardUrlDesktop(boardLoadable.board)); + } else if (boardLoadable.isCatalogMode()) { + setShareUrl(ChanUrls.getCatalogUrlDesktop(boardLoadable.board)); + } } else { actionBar.setDisplayShowCustomEnabled(false); actionBar.setTitle(threadLoadable.title); @@ -470,13 +473,7 @@ public class BoardActivity extends BaseActivity implements AdapterView.OnItemSel return true; case R.id.action_open_browser: - if (threadPane.isOpen()) { - showUrlOpenPicker(ChanUrls.getBoardUrlDesktop(boardLoadable.board)); - } else { - if (threadFragment.hasLoader()) { - showUrlOpenPicker(ChanUrls.getThreadUrlDesktop(threadLoadable.board, threadLoadable.no)); - } - } + openInBrowser(); return true; case R.id.action_board_view_mode_grid: