diff --git a/briar-android/src/org/briarproject/android/blogs/BasePostFragment.java b/briar-android/src/org/briarproject/android/blogs/BasePostFragment.java index 04ee0a747db6aac0901c0e381ff2d823f15a797c..9e2db81dc85c5cf54e9831f5902e1ee5fc2b1f15 100644 --- a/briar-android/src/org/briarproject/android/blogs/BasePostFragment.java +++ b/briar-android/src/org/briarproject/android/blogs/BasePostFragment.java @@ -5,7 +5,6 @@ import android.support.annotation.CallSuper; import android.support.annotation.Nullable; import android.support.annotation.UiThread; import android.view.LayoutInflater; -import android.view.MenuItem; import android.view.View; import android.view.ViewGroup; import android.widget.ProgressBar; @@ -36,8 +35,6 @@ abstract class BasePostFragment extends BaseFragment { @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { - setHasOptionsMenu(true); - view = inflater.inflate(R.layout.fragment_blog_post, container, false); progressBar = (ProgressBar) view.findViewById(R.id.progressBar); @@ -60,17 +57,6 @@ abstract class BasePostFragment extends BaseFragment { stopPeriodicUpdate(); } - @Override - public boolean onOptionsItemSelected(final MenuItem item) { - switch (item.getItemId()) { - case android.R.id.home: - getActivity().onBackPressed(); - return true; - default: - return super.onOptionsItemSelected(item); - } - } - @UiThread protected void onBlogPostLoaded(BlogPostItem post) { progressBar.setVisibility(INVISIBLE); diff --git a/briar-android/src/org/briarproject/android/blogs/BlogFragment.java b/briar-android/src/org/briarproject/android/blogs/BlogFragment.java index eb655209108c6a290394c31c3fc3241d4f711c12..8809864d55e7103f684d1262bfcf017752b4a342 100644 --- a/briar-android/src/org/briarproject/android/blogs/BlogFragment.java +++ b/briar-android/src/org/briarproject/android/blogs/BlogFragment.java @@ -80,9 +80,6 @@ public class BlogFragment extends BaseFragment implements @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { - - setHasOptionsMenu(true); - Bundle args = getArguments(); byte[] b = args.getByteArray(GROUP_ID); if (b == null) throw new IllegalStateException("No group ID in args"); @@ -151,9 +148,6 @@ public class BlogFragment extends BaseFragment implements android.R.anim.slide_in_left, android.R.anim.slide_out_right); switch (item.getItemId()) { - case android.R.id.home: - getActivity().onBackPressed(); - return true; case R.id.action_write_blog_post: Intent i = new Intent(getActivity(), WriteBlogPostActivity.class); diff --git a/briar-android/src/org/briarproject/android/blogs/FeedFragment.java b/briar-android/src/org/briarproject/android/blogs/FeedFragment.java index 9545f34ff4c8f7fe58e7d431bcb501269b01ab0d..4be0bc5413403741fed04e20a4dbf21f5be73129 100644 --- a/briar-android/src/org/briarproject/android/blogs/FeedFragment.java +++ b/briar-android/src/org/briarproject/android/blogs/FeedFragment.java @@ -66,7 +66,6 @@ public class FeedFragment extends BaseFragment implements public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { - setHasOptionsMenu(true); View v = inflater.inflate(R.layout.fragment_blog, container, false); adapter = new BlogPostAdapter(getActivity(), this); diff --git a/briar-android/src/org/briarproject/android/blogs/ReblogFragment.java b/briar-android/src/org/briarproject/android/blogs/ReblogFragment.java index e3d50dfeefa8d288cc2e67477f04937784d6732a..479fecaadaff9cfaeea1b394f8faa64983ed07b2 100644 --- a/briar-android/src/org/briarproject/android/blogs/ReblogFragment.java +++ b/briar-android/src/org/briarproject/android/blogs/ReblogFragment.java @@ -72,8 +72,6 @@ public class ReblogFragment extends BaseFragment implements TextInputListener { public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { - setHasOptionsMenu(true); - Bundle args = getArguments(); blogId = new GroupId(args.getByteArray(GROUP_ID)); postId = new MessageId(args.getByteArray(POST_ID)); diff --git a/briar-android/src/org/briarproject/android/contact/ContactListFragment.java b/briar-android/src/org/briarproject/android/contact/ContactListFragment.java index 474b2cc2b7b7b7f854541eb1128776378b266679..fe1e62a4da2244079eeb01d04c9fb1d8604ecacc 100644 --- a/briar-android/src/org/briarproject/android/contact/ContactListFragment.java +++ b/briar-android/src/org/briarproject/android/contact/ContactListFragment.java @@ -106,8 +106,6 @@ public class ContactListFragment extends BaseFragment implements EventListener { public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { - setHasOptionsMenu(true); - View contentView = inflater.inflate(R.layout.list, container, false); diff --git a/briar-android/src/org/briarproject/android/forum/ForumListFragment.java b/briar-android/src/org/briarproject/android/forum/ForumListFragment.java index 6bbf1965776b3ea3c90c7eccce1b2d661d89282c..f1faecd46d260908e5c7b7e89428df6b2aed2b8b 100644 --- a/briar-android/src/org/briarproject/android/forum/ForumListFragment.java +++ b/briar-android/src/org/briarproject/android/forum/ForumListFragment.java @@ -78,8 +78,6 @@ public class ForumListFragment extends BaseEventFragment implements public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { - setHasOptionsMenu(true); - View contentView = inflater.inflate(R.layout.fragment_forum_list, container, false); diff --git a/briar-android/src/org/briarproject/android/fragment/BaseFragment.java b/briar-android/src/org/briarproject/android/fragment/BaseFragment.java index 2cb6b13e6152d89b1e118e8b2cd8494559e78b26..223c01367e28fb25a7a49b9e204941cca5c8f61e 100644 --- a/briar-android/src/org/briarproject/android/fragment/BaseFragment.java +++ b/briar-android/src/org/briarproject/android/fragment/BaseFragment.java @@ -5,6 +5,7 @@ import android.os.Bundle; import android.support.annotation.Nullable; import android.support.annotation.UiThread; import android.support.v4.app.Fragment; +import android.view.MenuItem; import org.briarproject.android.ActivityComponent; import org.briarproject.android.DestroyableContext; @@ -27,6 +28,9 @@ public abstract class BaseFragment extends Fragment @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); + + // allow for "up" button to act as back button + setHasOptionsMenu(true); } @@ -37,6 +41,17 @@ public abstract class BaseFragment extends Fragment listener.onFragmentCreated(getUniqueTag()); } + @Override + public boolean onOptionsItemSelected(final MenuItem item) { + switch (item.getItemId()) { + case android.R.id.home: + listener.onBackPressed(); + return true; + default: + return super.onOptionsItemSelected(item); + } + } + @UiThread protected void finish() { getActivity().supportFinishAfterTransition(); @@ -47,6 +62,9 @@ public abstract class BaseFragment extends Fragment @Deprecated void runOnDbThread(Runnable runnable); + @UiThread + void onBackPressed(); + @UiThread ActivityComponent getActivityComponent(); diff --git a/briar-android/src/org/briarproject/android/sharing/BaseMessageFragment.java b/briar-android/src/org/briarproject/android/sharing/BaseMessageFragment.java index 6616fe87caf06145b74429535c7393fbc20b231a..2613fd230bd461f5751ed5ba3baa532fb44b8f71 100644 --- a/briar-android/src/org/briarproject/android/sharing/BaseMessageFragment.java +++ b/briar-android/src/org/briarproject/android/sharing/BaseMessageFragment.java @@ -32,9 +32,6 @@ abstract class BaseMessageFragment extends BaseFragment public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { - // allow for "up" button to act as back button - setHasOptionsMenu(true); - // inflate view View v = inflater.inflate(R.layout.fragment_message, container, false); @@ -59,17 +56,6 @@ abstract class BaseMessageFragment extends BaseFragment message.showSoftKeyboard(); } - @Override - public boolean onOptionsItemSelected(final MenuItem item) { - switch (item.getItemId()) { - case android.R.id.home: - listener.onBackPressed(); - return true; - default: - return super.onOptionsItemSelected(item); - } - } - @Override public void onSendClick(String msg) { // disable button to prevent accidental double actions diff --git a/briar-android/src/org/briarproject/android/sharing/ContactSelectorFragment.java b/briar-android/src/org/briarproject/android/sharing/ContactSelectorFragment.java index b496bcdebb0b90d14cc3154e0ce48e5ed17b9243..03e4da3979fc6de40030705c21b01e471f532ab1 100644 --- a/briar-android/src/org/briarproject/android/sharing/ContactSelectorFragment.java +++ b/briar-android/src/org/briarproject/android/sharing/ContactSelectorFragment.java @@ -84,7 +84,6 @@ public class ContactSelectorFragment extends BaseFragment implements public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); - setHasOptionsMenu(true); Bundle args = getArguments(); byte[] b = args.getByteArray(GROUP_ID); if (b == null) throw new IllegalStateException("No GroupId"); @@ -156,9 +155,6 @@ public class ContactSelectorFragment extends BaseFragment implements public boolean onOptionsItemSelected(final MenuItem item) { // Handle presses on the action bar items switch (item.getItemId()) { - case android.R.id.home: - listener.onBackPressed(); - return true; case R.id.action_contacts_selected: selectedContacts = adapter.getSelectedContactIds(); listener.contactsSelected(groupId, selectedContacts);