The Androidx SplashScreen library is added as a dependency to the project but isn't properly enabled in the current code. This pull request configures the splash screen properly. - Remove `SplashScreenActivity` which is not needed and use `MainActivity` as main entry point to the application. `MainActivity` inherits from `BaseActivity` which already detects if no account is configured and redirects to `LoginActivity` if needed, just like `SplashScreenActivity`. - Initialize the SplashScreen library in `MainActivity.onCreate()`. - Instead of letting the SplashScreen library set the final theme from the `postSplashScreenTheme` attribute in SplashTheme, let `BaseActivity` set it according to the user settings. - When no account is available in `MainActivity.onCreate()`, keep the splash screen shown until `LoginActivity` appears. - Disable the slide-in animation when launching `LoginActivity` when no account is available because the detection happens in `onCreate()` and an Activity that finishes itself in `onCreate()` will not be drawn, so the slide-in animation will not be visible either and only `LoginActivity` will appear. - Upgrade `core-splashscreen` to 1.2.0-alpha01 which contains a fix for corrupted app theme on API 31+.
180 lines
7.8 KiB
XML
180 lines
7.8 KiB
XML
<resources>
|
|
|
|
<style name="TextSizeSmallest">
|
|
<item name="status_text_small">10sp</item>
|
|
<item name="status_text_medium">12sp</item>
|
|
<item name="status_text_large">14sp</item>
|
|
</style>
|
|
|
|
<style name="TextSizeSmall">
|
|
<item name="status_text_small">12sp</item>
|
|
<item name="status_text_medium">14sp</item>
|
|
<item name="status_text_large">16sp</item>
|
|
</style>
|
|
|
|
<style name="TextSizeMedium">
|
|
<item name="status_text_small">14sp</item>
|
|
<item name="status_text_medium">16sp</item>
|
|
<item name="status_text_large">18sp</item>
|
|
</style>
|
|
|
|
<style name="TextSizeLarge">
|
|
<item name="status_text_small">16sp</item>
|
|
<item name="status_text_medium">18sp</item>
|
|
<item name="status_text_large">20sp</item>
|
|
</style>
|
|
|
|
<style name="TextSizeLargest">
|
|
<item name="status_text_small">18sp</item>
|
|
<item name="status_text_medium">20sp</item>
|
|
<item name="status_text_large">22sp</item>
|
|
</style>
|
|
|
|
<style name="SplashTheme" parent="Theme.SplashScreen">
|
|
<item name="windowSplashScreenAnimatedIcon">@drawable/ic_splash</item>
|
|
<item name="windowSplashScreenBackground">@color/tusky_grey_20</item>
|
|
</style>
|
|
|
|
<style name="TuskyTheme" parent="TuskyBaseTheme" />
|
|
|
|
<style name="TuskyDialogActivityTheme" parent="@style/TuskyTheme" />
|
|
|
|
<style name="TuskyBaseTheme" parent="Theme.MaterialComponents.DayNight.NoActionBar">
|
|
<!-- Provide default text sizes. These are overwritten in BaseActivity, but
|
|
if they are missing then the Android Studio layout preview crashes
|
|
with java.lang.reflect.InvocationTargetException -->
|
|
<item name="status_text_small">14sp</item>
|
|
<item name="status_text_medium">16sp</item>
|
|
<item name="status_text_large">18sp</item>
|
|
|
|
<item name="colorPrimary">@color/colorPrimary</item>
|
|
<item name="colorOnPrimary">@color/white</item>
|
|
|
|
<item name="colorSecondary">@color/colorSecondary</item>
|
|
<item name="colorOnSecondary">@color/white</item>
|
|
|
|
<item name="colorSurface">@color/colorSurface</item>
|
|
|
|
<item name="colorPrimaryDark">@color/colorPrimaryDark</item>
|
|
|
|
<item name="android:colorBackground">@color/colorBackground</item>
|
|
<item name="colorBackgroundAccent">@color/colorBackgroundAccent</item>
|
|
<item name="colorBackgroundHighlight">@color/colorBackgroundHighlight</item>
|
|
<item name="windowBackgroundColor">@color/windowBackground</item>
|
|
|
|
<item name="android:textColorPrimary">@color/textColorPrimary</item>
|
|
<item name="android:textColorSecondary">@color/textColorSecondary</item>
|
|
<item name="android:textColorTertiary">@color/textColorTertiary</item>
|
|
|
|
<item name="iconColor">@color/iconColor</item>
|
|
|
|
<item name="android:listDivider">@drawable/status_divider</item>
|
|
<item name="dividerColor">@color/dividerColor</item>
|
|
|
|
<item name="textColorDisabled">@color/textColorDisabled</item>
|
|
|
|
<item name="materialDrawerStyle">@style/TuskyDrawerStyle</item>
|
|
<item name="materialDrawerHeaderStyle">@style/TuskyDrawerHeaderStyle</item>
|
|
|
|
<item name="alertDialogTheme">@style/TuskyDialog</item>
|
|
<item name="snackbarButtonStyle">@style/TuskyButton.TextButton</item>
|
|
<item name="appBarLayoutStyle">@style/Widget.MaterialComponents.AppBarLayout.Surface</item>
|
|
|
|
<item name="minTouchTargetSize">32dp</item> <!-- this affects RadioButton size -->
|
|
<item name="elevationOverlayEnabled">false</item> <!-- disable the automatic tinting of surfaces with elevation in dark mode -->
|
|
|
|
<item name="swipeRefreshLayoutProgressSpinnerBackgroundColor">?attr/colorSurface</item>
|
|
|
|
<item name="chipStyle">@style/Widget.MaterialComponents.Chip.Choice</item>
|
|
|
|
<item name="preferenceTheme">@style/TuskyPreferenceTheme</item>
|
|
</style>
|
|
|
|
<style name="TuskyBlackThemeBase" parent="TuskyBaseTheme">
|
|
<item name="colorPrimaryDark">@color/tusky_grey_05</item>
|
|
|
|
<item name="android:colorBackground">@color/black</item>
|
|
<item name="windowBackgroundColor">@color/black</item>
|
|
|
|
<item name="colorSurface">@color/tusky_grey_10</item>
|
|
|
|
<item name="iconColor">@color/tusky_grey_40</item>
|
|
<item name="colorBackgroundHighlight">@color/tusky_grey_40</item>
|
|
<item name="colorBackgroundAccent">@color/tusky_grey_20</item>
|
|
|
|
<item name="dividerColor">@color/tusky_grey_20</item>
|
|
</style>
|
|
|
|
<style name="TuskyBlackTheme" parent="TuskyBlackThemeBase" />
|
|
|
|
<style name="ViewMediaActivity.AppBarLayout" parent="ThemeOverlay.AppCompat">
|
|
<item name="android:colorControlNormal">@color/white</item>
|
|
</style>
|
|
|
|
<style name="TuskyDialog" parent="@style/ThemeOverlay.MaterialComponents.Dialog.Alert">
|
|
<item name="android:letterSpacing">0</item>
|
|
<item name="dialogCornerRadius">8dp</item>
|
|
<item name="android:colorBackground">@color/colorBackground</item>
|
|
</style>
|
|
|
|
<style name="TuskyDialogFragmentStyle" parent="@style/ThemeOverlay.MaterialComponents.Dialog">
|
|
<item name="dialogCornerRadius">8dp</item>
|
|
</style>
|
|
|
|
<style name="TuskyTabAppearance" parent="Widget.MaterialComponents.TabLayout">
|
|
<item name="tabTextAppearance">?android:attr/textAppearanceButton</item>
|
|
<item name="android:textAllCaps">true</item>
|
|
<item name="tabIndicatorHeight">3dp</item>
|
|
</style>
|
|
|
|
<style name="TuskyPreferenceTheme" parent="@style/PreferenceThemeOverlay.v14.Material">
|
|
<item name="android:tint">?iconColor</item>
|
|
</style>
|
|
|
|
<style name="TuskyImageButton" parent="@style/Widget.MaterialComponents.Button.UnelevatedButton">
|
|
<item name="android:tint">?android:attr/textColorTertiary</item>
|
|
<item name="android:background">?attr/selectableItemBackgroundBorderless</item>
|
|
</style>
|
|
|
|
<style name="TuskyButton" parent="Widget.MaterialComponents.Button">
|
|
<item name="android:letterSpacing">0</item>
|
|
</style>
|
|
|
|
<style name="TuskyButton.Outlined" parent="Widget.MaterialComponents.Button.OutlinedButton">
|
|
<item name="strokeColor">?attr/colorBackgroundAccent</item>
|
|
<item name="android:letterSpacing">0</item>
|
|
</style>
|
|
|
|
<style name="TuskyButton.TextButton" parent="Widget.MaterialComponents.Button.TextButton">
|
|
<item name="android:letterSpacing">0</item>
|
|
</style>
|
|
|
|
<style name="TuskyTextInput" parent="@style/Widget.MaterialComponents.TextInputLayout.OutlinedBox.Dense">
|
|
<item name="boxStrokeColor">@color/text_input_layout_box_stroke_color</item>
|
|
<item name="android:textColorHint">?android:attr/textColorTertiary</item>
|
|
</style>
|
|
|
|
<style name="TuskyDrawerStyle" parent ="Widget.MaterialDrawerStyle">
|
|
<item name="materialDrawerBackground">?android:colorBackground</item>
|
|
<item name="materialDrawerPrimaryIcon">?iconColor</item>
|
|
<item name="materialDrawerSecondaryIcon">?iconColor</item>
|
|
<item name="materialDrawerDividerColor">?dividerColor</item>
|
|
</style>
|
|
|
|
<style name="TuskyDrawerHeaderStyle" parent ="Widget.MaterialDrawerHeaderStyle">
|
|
<item name="materialDrawerHeaderSelectionText">?android:textColorPrimary</item>
|
|
<item name="materialDrawerHeaderSelectionSubtext">?android:textColorPrimary</item>
|
|
</style>
|
|
|
|
<!-- customize the shape of the avatars in account selection list -->
|
|
<style name="BezelImageView">
|
|
<item name="materialDrawerMaskDrawable">@drawable/materialdrawer_shape_small</item>
|
|
<item name="materialDrawerDrawCircularShadow">false</item>
|
|
</style>
|
|
|
|
<!-- Used in exo_player_control_view.xml. Unmodified values are 5dp each -->
|
|
<style name="TuskyExoPlayerPlayPause" parent="ExoStyledControls.Button.Center.PlayPause">
|
|
<item name="android:layout_marginLeft">20dp</item>
|
|
<item name="android:layout_marginRight">20dp</item>
|
|
</style>
|
|
</resources>
|