Loading app-k9mail/src/main/AndroidManifest.xml +16 −0 Original line number Diff line number Diff line Loading @@ -9,8 +9,24 @@ android:name="app.k9mail.K9App" android:icon="@drawable/ic_launcher" android:label="@string/app_name" android:theme="@style/Theme.K9.Startup" tools:replace="android:theme" > <activity android:name="com.fsck.k9.ui.settings.account.OpenPgpAppSelectDialog" android:configChanges="locale" android:theme="@style/Theme.K9.DayNight.Dialog.Translucent" /> <activity android:name="com.fsck.k9.ui.notification.DeleteConfirmationActivity" android:excludeFromRecents="true" android:launchMode="singleTop" android:taskAffinity="" android:theme="@style/Theme.K9.DayNight.Dialog.Translucent" /> <provider android:name="androidx.startup.InitializationProvider" android:authorities="${applicationId}.androidx-startup" Loading app-k9mail/src/main/kotlin/app/k9mail/K9KoinModule.kt +3 −0 Original line number Diff line number Diff line Loading @@ -8,12 +8,14 @@ import app.k9mail.dev.developmentModuleAdditions import app.k9mail.feature.launcher.FeatureLauncherExternalContract.FeatureThemeProvider import app.k9mail.feature.widget.shortcut.LauncherShortcutActivity import app.k9mail.featureflag.K9FeatureFlagFactory import app.k9mail.legacy.ui.theme.ThemeProvider import app.k9mail.provider.K9AppNameProvider import app.k9mail.provider.K9FeatureThemeProvider import app.k9mail.widget.appWidgetModule import com.fsck.k9.AppConfig import com.fsck.k9.BuildConfig import com.fsck.k9.activity.MessageCompose import com.fsck.k9.provider.K9ThemeProvider import com.fsck.k9.provider.UnreadWidgetProvider import com.fsck.k9.widget.list.MessageListWidgetProvider import org.koin.android.ext.koin.androidContext Loading @@ -28,6 +30,7 @@ val appModule = module { single<AppConfig> { appConfig } single<OAuthConfigurationFactory> { K9OAuthConfigurationFactory() } single<AppNameProvider> { K9AppNameProvider(androidContext()) } single<ThemeProvider> { K9ThemeProvider() } single<FeatureThemeProvider> { K9FeatureThemeProvider() } single<FeatureFlagFactory> { K9FeatureFlagFactory() } Loading legacy/ui/legacy/src/main/java/com/fsck/k9/ui/K9ThemeProvider.kt→app-k9mail/src/main/kotlin/com/fsck/k9/provider/K9ThemeProvider.kt +2 −2 Original line number Diff line number Diff line package com.fsck.k9.ui package com.fsck.k9.provider import app.k9mail.legacy.ui.theme.ThemeProvider import com.fsck.k9.R // TODO: Move this class and the theme resources to the main app module class K9ThemeProvider : ThemeProvider { override val appThemeResourceId = R.style.Theme_K9_DayNight override val appLightThemeResourceId = R.style.Theme_K9_Light Loading legacy/ui/legacy/src/main/res/values-night/themes.xml→app-k9mail/src/main/res/values-night/themes.xml +0 −0 File moved. View file app-k9mail/src/main/res/values/themes.xml 0 → 100644 +136 −0 Original line number Diff line number Diff line <?xml version="1.0" encoding="utf-8"?> <resources xmlns:android="http://schemas.android.com/apk/res/android"> <style name="Theme.K9.Startup" parent="Theme2.K9.Dark"> <item name="android:windowBackground">@android:color/black</item> </style> <style name="Theme.K9.Light" parent="Theme2.K9.Light"> <item name="actionModeCloseDrawable">@drawable/ic_close</item> <item name="actionBarPopupTheme">@style/Widget.App.ActionMode.PopupMenu</item> <item name="toolbarStyle">@style/Widget.App.Toolbar</item> <!-- Legacy styles --> <item name="preferenceTheme">@style/PreferenceThemeOverlay</item> <item name="iconStarColor">#fbbc04</item> <item name="textColorPrimaryRecipientDropdown">@android:color/primary_text_light</item> <item name="textColorSecondaryRecipientDropdown">@android:color/secondary_text_light</item> <item name="messageListRegularItemBackgroundColor">?android:attr/windowBackground</item> <item name="messageListReadItemBackgroundColor">#ffd8d8d8</item> <item name="messageListUnreadItemBackgroundColor">?attr/messageListRegularItemBackgroundColor</item> <item name="messageListActiveItemBackgroundColor">?attr/colorSecondaryVariant</item> <item name="messageListActiveItemBackgroundAlphaFraction">60%</item> <item name="messageListActiveItemBackgroundAlphaBackground">?attr/colorSurface</item> <item name="messageListSwipeSelectColor">@color/material_blue_600</item> <item name="messageListSwipeToggleReadColor">@color/material_blue_600</item> <item name="messageListSwipeToggleStarColor">@color/material_orange_600</item> <item name="messageListSwipeArchiveColor">@color/material_green_600</item> <item name="messageListSwipeDeleteColor">@color/material_red_600</item> <item name="messageListSwipeSpamColor">@color/material_red_700</item> <item name="messageListSwipeMoveColor">@color/material_purple_500</item> <item name="contactPictureFallbackDefaultBackgroundColor">#ffababab</item> <item name="contactPictureFallbackBackgroundColors">@array/contact_picture_fallback_background_colors_light</item> <item name="contactTokenBackgroundColor">#ccc</item> <item name="tintColorBulletPointPositive">#77aa22</item> <item name="tintColorBulletPointNegative">#dd2222</item> <item name="tintColorBulletPointNeutral">#888</item> <item name="openpgp_black">#000</item> <item name="openpgp_orange">#FF8800</item> <item name="openpgp_red">#CC0000</item> <item name="openpgp_green">#669900</item> <item name="openpgp_blue">#336699</item> <item name="openpgp_grey">#bbb</item> <item name="openpgp_dark_grey">#888</item> <item name="materialDrawerStyle">@style/Widget.MaterialDrawerStyle.K9.Light</item> <item name="materialDrawerHeaderStyle">@style/Widget.MaterialDrawerHeaderStyle.K9.Light</item> </style> <style name="Theme.K9.Dark" parent="Theme2.K9.Dark"> <item name="actionModeCloseDrawable">@drawable/ic_close</item> <item name="actionBarPopupTheme">@style/Widget.App.ActionMode.PopupMenu</item> <item name="toolbarStyle">@style/Widget.App.Toolbar</item> <!-- Legacy styles --> <item name="preferenceTheme">@style/PreferenceThemeOverlay</item> <item name="iconStarColor">#fdd663</item> <item name="textColorPrimaryRecipientDropdown">@android:color/primary_text_dark</item> <item name="textColorSecondaryRecipientDropdown">@android:color/secondary_text_dark</item> <item name="messageListRegularItemBackgroundColor">?android:attr/windowBackground</item> <item name="messageListReadItemBackgroundColor">?attr/messageListRegularItemBackgroundColor</item> <item name="messageListUnreadItemBackgroundColor">#ff505050</item> <item name="messageListActiveItemBackgroundColor">?attr/colorSecondaryVariant</item> <item name="messageListActiveItemBackgroundAlphaFraction">50%</item> <item name="messageListActiveItemBackgroundAlphaBackground">?attr/colorSurface</item> <item name="messageListSwipeSelectColor">@color/material_blue_700</item> <item name="messageListSwipeToggleReadColor">@color/material_blue_700</item> <item name="messageListSwipeToggleStarColor">@color/material_orange_700</item> <item name="messageListSwipeArchiveColor">@color/material_green_700</item> <item name="messageListSwipeDeleteColor">@color/material_red_700</item> <item name="messageListSwipeSpamColor">@color/material_red_800</item> <item name="messageListSwipeMoveColor">@color/material_purple_600</item> <item name="contactTokenBackgroundColor">#313131</item> <item name="contactPictureFallbackDefaultBackgroundColor">#ff606060</item> <item name="contactPictureFallbackBackgroundColors">@array/contact_picture_fallback_background_colors_dark</item> <item name="tintColorBulletPointPositive">#77aa22</item> <item name="tintColorBulletPointNegative">#dd2222</item> <item name="tintColorBulletPointNeutral">#bbb</item> <item name="openpgp_black">#fff</item> <item name="openpgp_orange">#ee7700</item> <item name="openpgp_red">#CC0000</item> <item name="openpgp_green">#77aa00</item> <item name="openpgp_blue">#6699cc</item> <item name="openpgp_grey">#888</item> <item name="openpgp_dark_grey">#bbb</item> <item name="materialDrawerStyle">@style/Widget.MaterialDrawerStyle.K9.Dark</item> <item name="materialDrawerHeaderStyle">@style/Widget.MaterialDrawerHeaderStyle.K9.Dark</item> </style> <style name="Theme.K9.Light.Dialog.Translucent" parent="Theme.Material3.Light.Dialog"> <item name="android:windowBackground">@android:color/transparent</item> <item name="android:colorBackgroundCacheHint">@null</item> <item name="android:windowIsTranslucent">true</item> <item name="android:windowNoTitle">true</item> <item name="windowNoTitle">true</item> <item name="android:windowContentOverlay">@null</item> <item name="android:windowAnimationStyle">@android:style/Animation.Translucent</item> <item name="tintColorBulletPointPositive">#77aa22</item> <item name="tintColorBulletPointNegative">#dd2222</item> <item name="tintColorBulletPointNeutral">#bbb</item> </style> <style name="Theme.K9.Light.Dialog" parent="Theme.K9.Light" /> <style name="Theme.K9.Dark.Dialog" parent="Theme.K9.Dark" /> <style name="Theme.K9.Dark.Dialog.Translucent" parent="Theme.Material3.Dark.Dialog"> <item name="android:windowBackground">@android:color/transparent</item> <item name="android:colorBackgroundCacheHint">@null</item> <item name="android:windowIsTranslucent">true</item> <item name="android:windowNoTitle">true</item> <item name="windowNoTitle">true</item> <item name="android:windowContentOverlay">@null</item> <item name="android:windowAnimationStyle">@android:style/Animation.Translucent</item> <item name="tintColorBulletPointPositive">#77aa22</item> <item name="tintColorBulletPointNegative">#dd2222</item> <item name="tintColorBulletPointNeutral">#bbb</item> </style> <style name="Theme.K9.DayNight" parent="Theme.K9.Light" /> <style name="Theme.K9.DayNight.Dialog" parent="Theme.K9.Light.Dialog" /> <style name="Theme.K9.DayNight.Dialog.Translucent" parent="Theme.K9.Light.Dialog.Translucent" /> </resources> Loading
app-k9mail/src/main/AndroidManifest.xml +16 −0 Original line number Diff line number Diff line Loading @@ -9,8 +9,24 @@ android:name="app.k9mail.K9App" android:icon="@drawable/ic_launcher" android:label="@string/app_name" android:theme="@style/Theme.K9.Startup" tools:replace="android:theme" > <activity android:name="com.fsck.k9.ui.settings.account.OpenPgpAppSelectDialog" android:configChanges="locale" android:theme="@style/Theme.K9.DayNight.Dialog.Translucent" /> <activity android:name="com.fsck.k9.ui.notification.DeleteConfirmationActivity" android:excludeFromRecents="true" android:launchMode="singleTop" android:taskAffinity="" android:theme="@style/Theme.K9.DayNight.Dialog.Translucent" /> <provider android:name="androidx.startup.InitializationProvider" android:authorities="${applicationId}.androidx-startup" Loading
app-k9mail/src/main/kotlin/app/k9mail/K9KoinModule.kt +3 −0 Original line number Diff line number Diff line Loading @@ -8,12 +8,14 @@ import app.k9mail.dev.developmentModuleAdditions import app.k9mail.feature.launcher.FeatureLauncherExternalContract.FeatureThemeProvider import app.k9mail.feature.widget.shortcut.LauncherShortcutActivity import app.k9mail.featureflag.K9FeatureFlagFactory import app.k9mail.legacy.ui.theme.ThemeProvider import app.k9mail.provider.K9AppNameProvider import app.k9mail.provider.K9FeatureThemeProvider import app.k9mail.widget.appWidgetModule import com.fsck.k9.AppConfig import com.fsck.k9.BuildConfig import com.fsck.k9.activity.MessageCompose import com.fsck.k9.provider.K9ThemeProvider import com.fsck.k9.provider.UnreadWidgetProvider import com.fsck.k9.widget.list.MessageListWidgetProvider import org.koin.android.ext.koin.androidContext Loading @@ -28,6 +30,7 @@ val appModule = module { single<AppConfig> { appConfig } single<OAuthConfigurationFactory> { K9OAuthConfigurationFactory() } single<AppNameProvider> { K9AppNameProvider(androidContext()) } single<ThemeProvider> { K9ThemeProvider() } single<FeatureThemeProvider> { K9FeatureThemeProvider() } single<FeatureFlagFactory> { K9FeatureFlagFactory() } Loading
legacy/ui/legacy/src/main/java/com/fsck/k9/ui/K9ThemeProvider.kt→app-k9mail/src/main/kotlin/com/fsck/k9/provider/K9ThemeProvider.kt +2 −2 Original line number Diff line number Diff line package com.fsck.k9.ui package com.fsck.k9.provider import app.k9mail.legacy.ui.theme.ThemeProvider import com.fsck.k9.R // TODO: Move this class and the theme resources to the main app module class K9ThemeProvider : ThemeProvider { override val appThemeResourceId = R.style.Theme_K9_DayNight override val appLightThemeResourceId = R.style.Theme_K9_Light Loading
legacy/ui/legacy/src/main/res/values-night/themes.xml→app-k9mail/src/main/res/values-night/themes.xml +0 −0 File moved. View file
app-k9mail/src/main/res/values/themes.xml 0 → 100644 +136 −0 Original line number Diff line number Diff line <?xml version="1.0" encoding="utf-8"?> <resources xmlns:android="http://schemas.android.com/apk/res/android"> <style name="Theme.K9.Startup" parent="Theme2.K9.Dark"> <item name="android:windowBackground">@android:color/black</item> </style> <style name="Theme.K9.Light" parent="Theme2.K9.Light"> <item name="actionModeCloseDrawable">@drawable/ic_close</item> <item name="actionBarPopupTheme">@style/Widget.App.ActionMode.PopupMenu</item> <item name="toolbarStyle">@style/Widget.App.Toolbar</item> <!-- Legacy styles --> <item name="preferenceTheme">@style/PreferenceThemeOverlay</item> <item name="iconStarColor">#fbbc04</item> <item name="textColorPrimaryRecipientDropdown">@android:color/primary_text_light</item> <item name="textColorSecondaryRecipientDropdown">@android:color/secondary_text_light</item> <item name="messageListRegularItemBackgroundColor">?android:attr/windowBackground</item> <item name="messageListReadItemBackgroundColor">#ffd8d8d8</item> <item name="messageListUnreadItemBackgroundColor">?attr/messageListRegularItemBackgroundColor</item> <item name="messageListActiveItemBackgroundColor">?attr/colorSecondaryVariant</item> <item name="messageListActiveItemBackgroundAlphaFraction">60%</item> <item name="messageListActiveItemBackgroundAlphaBackground">?attr/colorSurface</item> <item name="messageListSwipeSelectColor">@color/material_blue_600</item> <item name="messageListSwipeToggleReadColor">@color/material_blue_600</item> <item name="messageListSwipeToggleStarColor">@color/material_orange_600</item> <item name="messageListSwipeArchiveColor">@color/material_green_600</item> <item name="messageListSwipeDeleteColor">@color/material_red_600</item> <item name="messageListSwipeSpamColor">@color/material_red_700</item> <item name="messageListSwipeMoveColor">@color/material_purple_500</item> <item name="contactPictureFallbackDefaultBackgroundColor">#ffababab</item> <item name="contactPictureFallbackBackgroundColors">@array/contact_picture_fallback_background_colors_light</item> <item name="contactTokenBackgroundColor">#ccc</item> <item name="tintColorBulletPointPositive">#77aa22</item> <item name="tintColorBulletPointNegative">#dd2222</item> <item name="tintColorBulletPointNeutral">#888</item> <item name="openpgp_black">#000</item> <item name="openpgp_orange">#FF8800</item> <item name="openpgp_red">#CC0000</item> <item name="openpgp_green">#669900</item> <item name="openpgp_blue">#336699</item> <item name="openpgp_grey">#bbb</item> <item name="openpgp_dark_grey">#888</item> <item name="materialDrawerStyle">@style/Widget.MaterialDrawerStyle.K9.Light</item> <item name="materialDrawerHeaderStyle">@style/Widget.MaterialDrawerHeaderStyle.K9.Light</item> </style> <style name="Theme.K9.Dark" parent="Theme2.K9.Dark"> <item name="actionModeCloseDrawable">@drawable/ic_close</item> <item name="actionBarPopupTheme">@style/Widget.App.ActionMode.PopupMenu</item> <item name="toolbarStyle">@style/Widget.App.Toolbar</item> <!-- Legacy styles --> <item name="preferenceTheme">@style/PreferenceThemeOverlay</item> <item name="iconStarColor">#fdd663</item> <item name="textColorPrimaryRecipientDropdown">@android:color/primary_text_dark</item> <item name="textColorSecondaryRecipientDropdown">@android:color/secondary_text_dark</item> <item name="messageListRegularItemBackgroundColor">?android:attr/windowBackground</item> <item name="messageListReadItemBackgroundColor">?attr/messageListRegularItemBackgroundColor</item> <item name="messageListUnreadItemBackgroundColor">#ff505050</item> <item name="messageListActiveItemBackgroundColor">?attr/colorSecondaryVariant</item> <item name="messageListActiveItemBackgroundAlphaFraction">50%</item> <item name="messageListActiveItemBackgroundAlphaBackground">?attr/colorSurface</item> <item name="messageListSwipeSelectColor">@color/material_blue_700</item> <item name="messageListSwipeToggleReadColor">@color/material_blue_700</item> <item name="messageListSwipeToggleStarColor">@color/material_orange_700</item> <item name="messageListSwipeArchiveColor">@color/material_green_700</item> <item name="messageListSwipeDeleteColor">@color/material_red_700</item> <item name="messageListSwipeSpamColor">@color/material_red_800</item> <item name="messageListSwipeMoveColor">@color/material_purple_600</item> <item name="contactTokenBackgroundColor">#313131</item> <item name="contactPictureFallbackDefaultBackgroundColor">#ff606060</item> <item name="contactPictureFallbackBackgroundColors">@array/contact_picture_fallback_background_colors_dark</item> <item name="tintColorBulletPointPositive">#77aa22</item> <item name="tintColorBulletPointNegative">#dd2222</item> <item name="tintColorBulletPointNeutral">#bbb</item> <item name="openpgp_black">#fff</item> <item name="openpgp_orange">#ee7700</item> <item name="openpgp_red">#CC0000</item> <item name="openpgp_green">#77aa00</item> <item name="openpgp_blue">#6699cc</item> <item name="openpgp_grey">#888</item> <item name="openpgp_dark_grey">#bbb</item> <item name="materialDrawerStyle">@style/Widget.MaterialDrawerStyle.K9.Dark</item> <item name="materialDrawerHeaderStyle">@style/Widget.MaterialDrawerHeaderStyle.K9.Dark</item> </style> <style name="Theme.K9.Light.Dialog.Translucent" parent="Theme.Material3.Light.Dialog"> <item name="android:windowBackground">@android:color/transparent</item> <item name="android:colorBackgroundCacheHint">@null</item> <item name="android:windowIsTranslucent">true</item> <item name="android:windowNoTitle">true</item> <item name="windowNoTitle">true</item> <item name="android:windowContentOverlay">@null</item> <item name="android:windowAnimationStyle">@android:style/Animation.Translucent</item> <item name="tintColorBulletPointPositive">#77aa22</item> <item name="tintColorBulletPointNegative">#dd2222</item> <item name="tintColorBulletPointNeutral">#bbb</item> </style> <style name="Theme.K9.Light.Dialog" parent="Theme.K9.Light" /> <style name="Theme.K9.Dark.Dialog" parent="Theme.K9.Dark" /> <style name="Theme.K9.Dark.Dialog.Translucent" parent="Theme.Material3.Dark.Dialog"> <item name="android:windowBackground">@android:color/transparent</item> <item name="android:colorBackgroundCacheHint">@null</item> <item name="android:windowIsTranslucent">true</item> <item name="android:windowNoTitle">true</item> <item name="windowNoTitle">true</item> <item name="android:windowContentOverlay">@null</item> <item name="android:windowAnimationStyle">@android:style/Animation.Translucent</item> <item name="tintColorBulletPointPositive">#77aa22</item> <item name="tintColorBulletPointNegative">#dd2222</item> <item name="tintColorBulletPointNeutral">#bbb</item> </style> <style name="Theme.K9.DayNight" parent="Theme.K9.Light" /> <style name="Theme.K9.DayNight.Dialog" parent="Theme.K9.Light.Dialog" /> <style name="Theme.K9.DayNight.Dialog.Translucent" parent="Theme.K9.Light.Dialog.Translucent" /> </resources>