From a588f3ebc4fe2810bbe347a365a4bbe143fa731d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mat=C3=ADas=20Hern=C3=A1ndez?= Date: Wed, 22 Jan 2025 14:03:09 +0100 Subject: [PATCH] Fix missing mode title and menu By moving these from onStart to onResume. Looks like a recent change to Settings broke this. Bug: 391543900 Test: manual Flag: EXEMPT Trivial bugfix Change-Id: Ie9b8bd08e8513e7c6c2f1baeab4801af2fbe1cae --- .../notification/modes/ZenModeFragment.java | 27 ++++++++++++------- 1 file changed, 18 insertions(+), 9 deletions(-) diff --git a/src/com/android/settings/notification/modes/ZenModeFragment.java b/src/com/android/settings/notification/modes/ZenModeFragment.java index 08075b464df..74920e4293b 100644 --- a/src/com/android/settings/notification/modes/ZenModeFragment.java +++ b/src/com/android/settings/notification/modes/ZenModeFragment.java @@ -95,14 +95,6 @@ public class ZenModeFragment extends ZenModeFragmentBase { return; } - // Set title for the entire screen - ComponentActivity activity = getActivity(); - if (mode != null && activity != null) { - activity.setTitle(mode.getName()); - mModeMenuProvider = new ModeMenuProvider(mode); - activity.addMenuProvider(mModeMenuProvider); - } - // allow duration preference controller to listen for settings changes use(ManualDurationPreferenceController.class).registerSettingsObserver(); mSettingsObserverRegistered = true; @@ -120,10 +112,27 @@ public class ZenModeFragment extends ZenModeFragmentBase { } @Override - public void onStop() { + public void onResume() { + super.onResume(); + ZenMode mode = getMode(); + ComponentActivity activity = getActivity(); + if (mode != null && activity != null) { + activity.setTitle(mode.getName()); + mModeMenuProvider = new ModeMenuProvider(mode); + activity.addMenuProvider(mModeMenuProvider); + } + } + + @Override + public void onPause() { if (getActivity() != null && mModeMenuProvider != null) { getActivity().removeMenuProvider(mModeMenuProvider); } + super.onPause(); + } + + @Override + public void onStop() { if (mSettingsObserverRegistered) { use(ManualDurationPreferenceController.class).unregisterSettingsObserver(); }