@@ -101,7 +101,6 @@ public class ChannelFragment extends BaseStateFragment<ChannelInfo>
101101 private MenuItem menuRssButton ;
102102 private MenuItem menuNotifyButton ;
103103 private SubscriptionEntity channelSubscription ;
104- private MenuProvider menuProvider ;
105104
106105 public static ChannelFragment getInstance (final int serviceId , final String url ,
107106 final String name ) {
@@ -122,9 +121,24 @@ private void setInitialData(final int sid, final String u, final String title) {
122121 //////////////////////////////////////////////////////////////////////////*/
123122
124123 @ Override
125- public void onCreate (final Bundle savedInstanceState ) {
126- super .onCreate (savedInstanceState );
127- menuProvider = new MenuProvider () {
124+ public void onAttach (@ NonNull final Context context ) {
125+ super .onAttach (context );
126+ subscriptionManager = new SubscriptionManager (activity );
127+ }
128+
129+ @ Override
130+ public View onCreateView (@ NonNull final LayoutInflater inflater ,
131+ @ Nullable final ViewGroup container ,
132+ @ Nullable final Bundle savedInstanceState ) {
133+ binding = FragmentChannelBinding .inflate (inflater , container , false );
134+ return binding .getRoot ();
135+ }
136+
137+ @ Override // called from onViewCreated in BaseFragment.onViewCreated
138+ protected void initViews (final View rootView , final Bundle savedInstanceState ) {
139+ super .initViews (rootView , savedInstanceState );
140+
141+ final var menuProvider = new MenuProvider () {
128142 @ Override
129143 public void onCreateMenu (@ NonNull final Menu menu ,
130144 @ NonNull final MenuInflater inflater ) {
@@ -134,7 +148,6 @@ public void onCreateMenu(@NonNull final Menu menu,
134148 Log .d (TAG , "onCreateOptionsMenu() called with: "
135149 + "menu = [" + menu + "], inflater = [" + inflater + "]" );
136150 }
137-
138151 }
139152
140153 @ Override
@@ -179,26 +192,7 @@ public boolean onMenuItemSelected(@NonNull final MenuItem item) {
179192 return true ;
180193 }
181194 };
182- activity .addMenuProvider (menuProvider );
183- }
184-
185- @ Override
186- public void onAttach (@ NonNull final Context context ) {
187- super .onAttach (context );
188- subscriptionManager = new SubscriptionManager (activity );
189- }
190-
191- @ Override
192- public View onCreateView (@ NonNull final LayoutInflater inflater ,
193- @ Nullable final ViewGroup container ,
194- @ Nullable final Bundle savedInstanceState ) {
195- binding = FragmentChannelBinding .inflate (inflater , container , false );
196- return binding .getRoot ();
197- }
198-
199- @ Override // called from onViewCreated in BaseFragment.onViewCreated
200- protected void initViews (final View rootView , final Bundle savedInstanceState ) {
201- super .initViews (rootView , savedInstanceState );
195+ activity .addMenuProvider (menuProvider , getViewLifecycleOwner ());
202196
203197 EmptyStateUtil .setEmptyStateComposable (
204198 binding .emptyStateView ,
@@ -246,8 +240,6 @@ public void onDestroy() {
246240 }
247241 disposables .clear ();
248242 binding = null ;
249- activity .removeMenuProvider (menuProvider );
250- menuProvider = null ;
251243 }
252244
253245 /*//////////////////////////////////////////////////////////////////////////
0 commit comments