-
Notifications
You must be signed in to change notification settings - Fork 834
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Dynamic theme switching and visual tweaks #1556
Conversation
iOS build failed with: |
Looks like the |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks great Matt, just a few comments/questions.
User-Facing Goodies
Dev-Facing Comfort Food
The-Meat
AccessibilityActivity.cs
: Changed to newBaseTheme
in Android stylesAddEditPage.xaml
: Updated color ref toDynamicResource
Android/iOS.xaml
: Updated color refs toDynamicResource
and added/modified stylesApp.xaml.cs
: Added theme updater on resume and while running (system auto or manual toggle)AppDelegate.cs
: Added theme update listener for iOS-specific visual tweaks. Also changed the order of operations inDidEnterBackground
so we save theLastActiveTime
before attempting visual adjustments which crash on iOS 15.0 (seems to be fixed in 15.0.1 but I'm leaving this change)AppResources.resx
: Removed references to restarting the app and added a new Default theme string to better indicate its functionAutofillServicesPage.xaml/ViewModel.cs
: Adjusted approach to switch overlay to work around drawing bug when control is disabledBase.xaml
: Updated color refs toDynamicResource
, tweaked FAB button, added segmented button style for the create Send screen, and dedicated overlay style for invisible buttons over top other elementsBaseContentPage.cs
: Apply theme toActivityIndicator
Light/Dark/Black/Nord.xaml
: Added/adjusted colorsCredentialProviderViewController.cs
: Update visuals for theme during initCustomEntry/Editor/Picker/Switch/Slider/StepperRenderer.cs
: Handle theme changes for Android focused/toggled modesCustomTabbedRenderer.cs
: Added theme update listener to force refresh of iOS TabBar, and added requiredScrollEdgeAppearance
adjustment for iOS 15+DeviceActionService.cs (Android)
: Changed method of accessibility service detection due to restrictions on general service detection fromActivityManager
and apply themes toAlertDialog
DeviceActionService.cs (Android and iOS)
: Removed custom dark mode detection since Forms does this nowExtendedGrid/StackLayoutRenderer.cs
: Removed themed resources since they can't be replaced on the fly, and replaced with common colorGeneratorPage.xaml
: Added primary button style to "Regenerate" buttonGeneratorPage.xaml/ViewModel.cs
: Aadded theme update listener to redraw password with updated colorsHomePage.xaml.cs
: Added theme update listener to swap dark/light logo when neededInfo.plist
: Added ProMotion support keyLock/Login/LoginSsoPage.xaml
: Added primary button stylingMainActivity.cs
: HandleConfigChanges.UiMode
to prevent app teardown when switching system dark/light mode, and tweak visuals upon theme switchingOptionsPage.xaml/ViewModel.cs
: Remove restart wording and trigger immediate theme change upon selectionSendGroupingsPage.xaml/ViewModel.cs
: Fixed race condition on fresh install that caused NPESendAddEditPage.xaml
: Remove custom segmented button styling and update color refs toDynamicResource
styles.xml
: Disable forced uppercase in Android buttons to match iOSTabsPage.cs
: Force a theme refresh upon tab switching to cover for some not-quite-there-yet drawing issues (plan to remove this in the future)ThemeHelpers.cs
: Cleanup and removal of duplicate color constantsThemeManager.cs
: Implemented dark mode detection the XF way