Skip to content

Commit 9701e84

Browse files
committed
Rework options menu for fragments
1 parent b523246 commit 9701e84

File tree

4 files changed

+32
-45
lines changed

4 files changed

+32
-45
lines changed

dynamic-support/src/main/java/com/pranavpandey/android/dynamic/support/permission/fragment/DynamicPermissionsFragment.java

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -156,19 +156,19 @@ public void onClick(View v) {
156156
}
157157

158158
@Override
159-
public void onCreateOptionsMenu(@NonNull Menu menu, @NonNull MenuInflater inflater) {
160-
super.onCreateOptionsMenu(menu, inflater);
159+
public void onCreateMenu(@NonNull Menu menu, @NonNull MenuInflater inflater) {
160+
super.onCreateMenu(menu, inflater);
161161

162162
inflater.inflate(R.menu.ads_menu_info, menu);
163163
}
164164

165165
@Override
166-
public boolean onOptionsItemSelected(@NonNull MenuItem item) {
166+
public boolean onMenuItemSelected(@NonNull MenuItem item) {
167167
if (item.getItemId() == R.id.ads_menu_info) {
168168
DynamicPermissionUtils.launchAppInfo(requireContext());
169169
}
170170

171-
return super.onOptionsItemSelected(item);
171+
return super.onMenuItemSelected(item);
172172
}
173173

174174
@Override

dynamic-support/src/main/java/com/pranavpandey/android/dynamic/support/theme/fragment/ThemeFragment.java

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -274,8 +274,8 @@ public void onPrepareOptionsMenu(@NonNull Menu menu) {
274274
}
275275

276276
@Override
277-
public void onCreateOptionsMenu(@NonNull Menu menu, @NonNull MenuInflater inflater) {
278-
super.onCreateOptionsMenu(menu, inflater);
277+
public void onCreateMenu(@NonNull Menu menu, @NonNull MenuInflater inflater) {
278+
super.onCreateMenu(menu, inflater);
279279

280280
inflater.inflate(R.menu.ads_menu_theme, menu);
281281

@@ -289,7 +289,7 @@ public void onCreateOptionsMenu(@NonNull Menu menu, @NonNull MenuInflater inflat
289289
}
290290

291291
@Override
292-
public boolean onOptionsItemSelected(@NonNull MenuItem item) {
292+
public boolean onMenuItemSelected(@NonNull MenuItem item) {
293293
int i = item.getItemId();
294294

295295
if (i == R.id.ads_menu_theme_data_copy) {
@@ -343,7 +343,7 @@ public boolean onOptionsItemSelected(@NonNull MenuItem item) {
343343
return true;
344344
}
345345

346-
return super.onOptionsItemSelected(item);
346+
return super.onMenuItemSelected(item);
347347
}
348348

349349
@Override

sample/src/main/java/com/pranavpandey/android/dynamic/support/sample/fragment/AboutFragment.kt

Lines changed: 18 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@ import android.os.Bundle
2020
import android.view.Menu
2121
import android.view.MenuInflater
2222
import android.view.MenuItem
23+
import android.view.View
2324
import androidx.fragment.app.Fragment
2425
import com.google.android.material.appbar.AppBarLayout
2526
import com.pranavpandey.android.dynamic.support.fragment.DynamicViewPager2Fragment
@@ -52,22 +53,29 @@ class AboutFragment : DynamicViewPager2Fragment() {
5253
}
5354
}
5455

55-
override fun onCreateOptionsMenu(menu: Menu, inflater: MenuInflater) {
56-
super.onCreateOptionsMenu(menu, inflater)
56+
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
57+
super.onViewCreated(view, savedInstanceState)
58+
59+
// Scroll toolbar for this fragment.
60+
dynamicActivity.setToolbarLayoutFlags(
61+
AppBarLayout.LayoutParams.SCROLL_FLAG_SCROLL
62+
or AppBarLayout.LayoutParams.SCROLL_FLAG_ENTER_ALWAYS)
63+
}
64+
65+
override fun setHasOptionsMenu(): Boolean {
66+
return true
67+
}
68+
69+
override fun onCreateMenu(menu: Menu, inflater: MenuInflater) {
70+
super.onCreateMenu(menu, inflater)
5771
inflater.inflate(R.menu.ads_menu_info, menu)
5872
}
5973

60-
override fun onOptionsItemSelected(item: MenuItem): Boolean {
74+
override fun onMenuItemSelected(item: MenuItem): Boolean {
6175
if (item.itemId == R.id.ads_menu_info) {
6276
DynamicPermissionUtils.launchAppInfo(requireContext())
6377
}
64-
return super.onOptionsItemSelected(item)
65-
}
66-
67-
override fun onResume() {
68-
super.onResume()
69-
70-
setHasOptionsMenu(true)
78+
return super.onMenuItemSelected(item)
7179
}
7280

7381
override fun getSubtitle(): CharSequence? {
@@ -105,13 +113,4 @@ class AboutFragment : DynamicViewPager2Fragment() {
105113
// TODO: Return item count.
106114
return 2
107115
}
108-
109-
override fun onActivityCreated(savedInstanceState: Bundle?) {
110-
super.onActivityCreated(savedInstanceState)
111-
112-
// Scroll toolbar for this fragment.
113-
dynamicActivity.setToolbarLayoutFlags(
114-
AppBarLayout.LayoutParams.SCROLL_FLAG_SCROLL
115-
or AppBarLayout.LayoutParams.SCROLL_FLAG_ENTER_ALWAYS)
116-
}
117116
}

sample/src/main/java/com/pranavpandey/android/dynamic/support/sample/fragment/WidgetsFragment.kt

Lines changed: 6 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -27,9 +27,7 @@ import com.pranavpandey.android.dynamic.support.fragment.DynamicFragment
2727
import com.pranavpandey.android.dynamic.support.listener.DynamicSearchListener
2828
import com.pranavpandey.android.dynamic.support.model.DynamicMenu
2929
import com.pranavpandey.android.dynamic.support.sample.R
30-
import com.pranavpandey.android.dynamic.support.util.DynamicMenuUtils
3130
import com.pranavpandey.android.dynamic.support.util.DynamicResourceUtils
32-
import java.util.*
3331

3432
/**
3533
* Widgets fragment to show various widgets and their states by using [DynamicFragment].
@@ -120,36 +118,26 @@ class WidgetsFragment : DynamicFragment(), DynamicSearchListener, TextWatcher {
120118
mSpinnerThree!!.setSelection(2)
121119
}
122120

123-
override fun onPrepareOptionsMenu(menu: Menu) {
124-
super.onPrepareOptionsMenu(menu)
125-
126-
// Try to force the menu icons.
127-
DynamicMenuUtils.forceMenuIcons(menu)
121+
override fun setHasOptionsMenu(): Boolean {
122+
return true
128123
}
129124

130-
override fun onCreateOptionsMenu(menu: Menu, inflater: MenuInflater) {
131-
super.onCreateOptionsMenu(menu, inflater)
125+
override fun onCreateMenu(menu: Menu, inflater: MenuInflater) {
126+
super.onCreateMenu(menu, inflater)
132127

133128
// Inflate menu for this fragment.
134129
inflater.inflate(R.menu.menu_widgets, menu)
135130
}
136131

137-
override fun onOptionsItemSelected(item: MenuItem): Boolean {
132+
override fun onMenuItemSelected(item: MenuItem): Boolean {
138133
when (item.itemId) {
139134
R.id.menu_search -> {
140135
// Expand search view on search menu selected.
141136
dynamicActivity.expandSearchView(true)
142137
}
143138
}
144139

145-
return super.onOptionsItemSelected(item)
146-
}
147-
148-
override fun onResume() {
149-
super.onResume()
150-
151-
// TODO: Enable app bar options menu.
152-
setHasOptionsMenu(true)
140+
return super.onMenuItemSelected(item)
153141
}
154142

155143
override fun onSearchViewExpanded() {

0 commit comments

Comments
 (0)