Merge branch 'status-navigation-bar' into 'master'

Improve status and navigation bar colors

See merge request pixeldroid/PixelDroid!549
This commit is contained in:
Matthieu 2023-06-14 14:45:10 +00:00
commit 251110d71f
8 changed files with 152 additions and 106 deletions

View File

@ -27,7 +27,7 @@
android:roundIcon="@mipmap/ic_launcher_round"
android:supportsRtl="true"
android:localeConfig="@xml/locales_config"
android:theme="@style/AppTheme">
android:theme="@style/BaseAppTheme">
<service
android:name="androidx.appcompat.app.AppLocalesMetadataHolderService"
android:enabled="false"
@ -48,7 +48,7 @@
android:name=".posts.MediaViewerActivity"
android:configChanges="keyboardHidden|orientation|screenSize"
android:exported="false"
android:theme="@style/AppTheme.NoActionBar" />
android:theme="@style/BaseAppTheme.NoActionBar" />
<activity android:name=".postCreation.camera.CameraActivity"/>
<activity android:name=".postCreation.camera.CameraActivityShortcut"
android:exported = "true"
@ -68,7 +68,7 @@
android:name=".postCreation.PostCreationActivity"
android:exported="true"
android:windowSoftInputMode="adjustResize"
android:theme="@style/AppTheme.NoActionBar">
android:theme="@style/BaseAppTheme.NoActionBar">
<intent-filter>
<action android:name="android.intent.action.SEND_MULTIPLE" />
<action android:name="android.intent.action.SEND" />
@ -125,7 +125,7 @@
android:name=".LoginActivity"
android:exported="true"
android:screenOrientation="sensorPortrait"
android:theme="@style/AppTheme.NoActionBar"
android:theme="@style/BaseAppTheme.NoActionBar"
android:windowSoftInputMode="adjustResize"
tools:ignore="LockedOrientationActivity">
<intent-filter>

View File

@ -78,7 +78,9 @@ class MainActivity : BaseThemedWithoutBarActivity() {
@OptIn(ExperimentalPagingApi::class)
override fun onCreate(savedInstanceState: Bundle?) {
installSplashScreen()
installSplashScreen().setOnExitAnimationListener {
it.remove()
}
// Workaround for dynamic colors not applying due to splash screen?
DynamicColors.applyToActivityIfAvailable(this)

View File

@ -2,7 +2,6 @@ package org.pixeldroid.app.posts
import android.os.Bundle
import android.view.View
import androidx.core.content.ContextCompat
import org.pixeldroid.app.databinding.ActivityAlbumBinding
import org.pixeldroid.app.utils.BaseActivity
import org.pixeldroid.app.utils.api.objects.Attachment
@ -33,11 +32,8 @@ class AlbumActivity : BaseActivity() {
binding.postIndicator.visibility = View.GONE
}
supportActionBar?.setDisplayHomeAsUpEnabled(true)
supportActionBar?.setDisplayShowTitleEnabled(false)
supportActionBar?.setBackgroundDrawable(null)
window.statusBarColor = ContextCompat.getColor(this,android.R.color.transparent)
}
}

View File

@ -1,6 +1,7 @@
package org.pixeldroid.app.posts
import android.Manifest
import android.annotation.SuppressLint
import android.app.Activity
import android.content.ClipData
import android.content.Intent
@ -926,6 +927,7 @@ class AlbumViewPagerAdapter(
}
}
@SuppressLint("NotifyDataSetChanged")
fun uncensor(){
sensitive = false
notifyDataSetChanged()

View File

@ -17,6 +17,7 @@
<me.relex.circleindicator.CircleIndicator3
android:id="@+id/postIndicator"
android:layout_width="wrap_content"
android:layout_marginBottom="?android:attr/actionBarSize"
android:layout_height="32dp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"

View File

@ -5,7 +5,6 @@
android:id="@+id/drawer_layout"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fitsSystemWindows="true"
tools:context="org.pixeldroid.app.MainActivity">

View File

@ -1,39 +1,18 @@
<resources>
<style name="AppTheme" parent="Theme.Material3.Dark">
<item name="colorPrimary">@android:color/transparent</item>
<resources xmlns:tools="http://schemas.android.com/tools">
<style name="BaseAppTheme" parent="Theme.Material3.Dark">
<item name="android:windowLightStatusBar">?attr/isLightTheme</item>
<item name="android:navigationBarColor">?attr/colorSurface</item>
<item name="android:statusBarColor">?attr/colorSecondaryContainer</item>
<item name="android:windowLightNavigationBar" tools:targetApi="o_mr1">?attr/isLightTheme</item>
<item name="android:windowDrawsSystemBarBackgrounds" tools:targetApi="o_mr1">true</item>
<item name="toolbarStyle">@style/Toolbar</item>
<item name="materialDrawerStyle">@style/Widget.MaterialDrawerStyle</item>
<item name="materialDrawerHeaderStyle">@style/Widget.MaterialDrawerHeaderStyle</item>
</style>
<style name="AppTheme5" parent="Theme.Material3.Dark">
<item name="colorPrimary">@color/md_theme_dark_primary</item>
<item name="colorOnPrimary">@color/md_theme_dark_onPrimary</item>
<item name="colorPrimaryContainer">@color/md_theme_dark_primaryContainer</item>
<item name="colorOnPrimaryContainer">@color/md_theme_dark_onPrimaryContainer</item>
<item name="colorSecondary">@color/md_theme_dark_secondary</item>
<item name="colorOnSecondary">@color/md_theme_dark_onSecondary</item>
<item name="colorSecondaryContainer">@color/md_theme_dark_secondaryContainer</item>
<item name="colorOnSecondaryContainer">@color/md_theme_dark_onSecondaryContainer</item>
<item name="colorTertiary">@color/md_theme_dark_tertiary</item>
<item name="colorOnTertiary">@color/md_theme_dark_onTertiary</item>
<item name="colorTertiaryContainer">@color/md_theme_dark_tertiaryContainer</item>
<item name="colorOnTertiaryContainer">@color/md_theme_dark_onTertiaryContainer</item>
<item name="colorError">@color/md_theme_dark_error</item>
<item name="colorErrorContainer">@color/md_theme_dark_errorContainer</item>
<item name="colorOnError">@color/md_theme_dark_onError</item>
<item name="colorOnErrorContainer">@color/md_theme_dark_onErrorContainer</item>
<item name="android:colorBackground">@color/md_theme_dark_background</item>
<item name="colorOnBackground">@color/md_theme_dark_onBackground</item>
<item name="colorSurface">@color/md_theme_dark_surface</item>
<item name="colorOnSurface">@color/md_theme_dark_onSurface</item>
<item name="colorSurfaceVariant">@color/md_theme_dark_surfaceVariant</item>
<item name="colorOnSurfaceVariant">@color/md_theme_dark_onSurfaceVariant</item>
<item name="colorOutline">@color/md_theme_dark_outline</item>
<item name="colorOnSurfaceInverse">@color/md_theme_dark_inverseOnSurface</item>
<item name="colorSurfaceInverse">@color/md_theme_dark_inverseSurface</item>
<item name="elevationOverlayColor">@color/md_theme_dark_surfaceTint</item>
<item name="colorPrimaryInverse">@color/md_theme_dark_inversePrimary</item>
</style>
<style name="AppTheme2" parent="Theme.Material3.Dark">
<style name="AppTheme2" parent="BaseAppTheme">
<item name="colorPrimary">@color/md_theme_dark_primary2</item>
<item name="colorOnPrimary">@color/md_theme_dark_onPrimary2</item>
<item name="colorPrimaryContainer">@color/md_theme_dark_primaryContainer2</item>
@ -63,7 +42,7 @@
<item name="colorPrimaryInverse">@color/md_theme_dark_inversePrimary2</item>
</style>
<style name="AppTheme3" parent="Theme.Material3.Dark">
<style name="AppTheme3" parent="BaseAppTheme">
<item name="colorPrimary">@color/md_theme_dark_primary3</item>
<item name="colorOnPrimary">@color/md_theme_dark_onPrimary3</item>
<item name="colorPrimaryContainer">@color/md_theme_dark_primaryContainer3</item>
@ -93,7 +72,7 @@
<item name="colorPrimaryInverse">@color/md_theme_dark_inversePrimary3</item>
</style>
<style name="AppTheme4" parent="Theme.Material3.Dark">
<style name="AppTheme4" parent="BaseAppTheme">
<item name="colorPrimary">@color/md_theme_dark_primary4</item>
<item name="colorOnPrimary">@color/md_theme_dark_onPrimary4</item>
<item name="colorPrimaryContainer">@color/md_theme_dark_primaryContainer4</item>
@ -122,4 +101,34 @@
<item name="elevationOverlayColor">@color/md_theme_dark_surfaceTint4</item>
<item name="colorPrimaryInverse">@color/md_theme_dark_inversePrimary4</item>
</style>
<style name="AppTheme5" parent="BaseAppTheme">
<item name="colorPrimary">@color/md_theme_dark_primary</item>
<item name="colorOnPrimary">@color/md_theme_dark_onPrimary</item>
<item name="colorPrimaryContainer">@color/md_theme_dark_primaryContainer</item>
<item name="colorOnPrimaryContainer">@color/md_theme_dark_onPrimaryContainer</item>
<item name="colorSecondary">@color/md_theme_dark_secondary</item>
<item name="colorOnSecondary">@color/md_theme_dark_onSecondary</item>
<item name="colorSecondaryContainer">@color/md_theme_dark_secondaryContainer</item>
<item name="colorOnSecondaryContainer">@color/md_theme_dark_onSecondaryContainer</item>
<item name="colorTertiary">@color/md_theme_dark_tertiary</item>
<item name="colorOnTertiary">@color/md_theme_dark_onTertiary</item>
<item name="colorTertiaryContainer">@color/md_theme_dark_tertiaryContainer</item>
<item name="colorOnTertiaryContainer">@color/md_theme_dark_onTertiaryContainer</item>
<item name="colorError">@color/md_theme_dark_error</item>
<item name="colorErrorContainer">@color/md_theme_dark_errorContainer</item>
<item name="colorOnError">@color/md_theme_dark_onError</item>
<item name="colorOnErrorContainer">@color/md_theme_dark_onErrorContainer</item>
<item name="android:colorBackground">@color/md_theme_dark_background</item>
<item name="colorOnBackground">@color/md_theme_dark_onBackground</item>
<item name="colorSurface">@color/md_theme_dark_surface</item>
<item name="colorOnSurface">@color/md_theme_dark_onSurface</item>
<item name="colorSurfaceVariant">@color/md_theme_dark_surfaceVariant</item>
<item name="colorOnSurfaceVariant">@color/md_theme_dark_onSurfaceVariant</item>
<item name="colorOutline">@color/md_theme_dark_outline</item>
<item name="colorOnSurfaceInverse">@color/md_theme_dark_inverseOnSurface</item>
<item name="colorSurfaceInverse">@color/md_theme_dark_inverseSurface</item>
<item name="elevationOverlayColor">@color/md_theme_dark_surfaceTint</item>
<item name="colorPrimaryInverse">@color/md_theme_dark_inversePrimary</item>
</style>
</resources>

View File

@ -1,4 +1,4 @@
<resources>
<resources xmlns:tools="http://schemas.android.com/tools">
<!-- Splash screen theme. -->
<style name="Theme.App.Starting" parent="Theme.SplashScreen">
@ -14,7 +14,7 @@
<!-- Set the theme of the Activity that directly follows your splash screen. -->
<!-- Required -->
<item name="postSplashScreenTheme">@style/AppTheme.NoActionBar</item>
<item name="postSplashScreenTheme">@style/BaseAppTheme.NoActionBar</item>
<item name="windowActionBar">false</item>
<item name="windowNoTitle">true</item>
</style>
@ -22,7 +22,7 @@
<style name="AppTheme.PopupOverlay" parent="Theme.Material3.Light" />
<style name="AppTheme.ActionBar.Transparent" parent="AppTheme">
<style name="AppTheme.ActionBar.Transparent" parent="Theme.Material3.Dark">
<item name="colorPrimary">@android:color/transparent</item>
<item name="colorPrimaryDark">@android:color/transparent</item>
<item name="colorPrimaryVariant">@android:color/transparent</item>
@ -30,72 +30,49 @@
<item name="colorSecondary">@android:color/transparent</item>
<item name="statusBarForeground">@android:color/transparent</item>
<item name="android:statusBarColor">@android:color/transparent</item>
<item name="android:toolbarStyle">@style/ToolbarTransparent</item>
<item name="toolbarStyle">@style/ToolbarTransparent</item>
<item name="android:windowLightStatusBar">true</item>
<item name="statusBarBackground">@android:color/transparent</item>
<item name="android:windowTranslucentStatus">true</item>
<item name="android:windowIsTranslucent">true</item>
<item name="android:windowBackground">@android:color/transparent</item>
<item name="android:windowContentOverlay">@null</item>
<item name="android:windowNoTitle">true</item>
<item name="android:backgroundDimEnabled">false</item>
<item name="android:windowDrawsSystemBarBackgrounds">true</item>
<item name="android:navigationBarColor">@android:color/transparent</item>
<item name="android:windowTranslucentNavigation">true</item>
</style>
<style name="ToolbarTransparent" parent="Widget.Material3.Toolbar">
<item name="android:background">@android:color/transparent</item>
<item name="background">@android:color/transparent</item>
</style>
<style name="AppTheme.NoActionBar" parent="AppTheme">
<item name="windowActionBar">false</item>
<item name="windowNoTitle">true</item>
</style>
<style name="AppTheme2.NoActionBar" parent="AppTheme2">
<item name="windowActionBar">false</item>
<item name="windowNoTitle">true</item>
</style>
<style name="AppTheme3.NoActionBar" parent="AppTheme3">
<item name="windowActionBar">false</item>
<item name="windowNoTitle">true</item>
</style>
<style name="AppTheme4.NoActionBar" parent="AppTheme4">
<item name="windowActionBar">false</item>
<item name="windowNoTitle">true</item>
</style>
<style name="AppTheme5.NoActionBar" parent="AppTheme5">
<item name="windowActionBar">false</item>
<item name="windowNoTitle">true</item>
</style>
<style name="AppTheme" parent="Theme.Material3.Light">
<item name="colorPrimary">@android:color/transparent</item>
</style>
<style name="AppTheme5" parent="Theme.Material3.Light">
<style name="BaseAppTheme" parent="Theme.Material3.Light">
<item name="android:navigationBarColor">?attr/colorSurface</item>
<item name="android:statusBarColor">?attr/colorSecondaryContainer</item>
<item name="android:windowLightNavigationBar" tools:targetApi="o_mr1">?attr/isLightTheme</item>
<item name="android:windowDrawsSystemBarBackgrounds" tools:targetApi="o_mr1">true</item>
<item name="android:windowLightStatusBar">?attr/isLightTheme</item>
<item name="toolbarStyle">@style/Toolbar</item>
<item name="android:toolbarStyle">@style/Toolbar</item>
<item name="materialDrawerStyle">@style/Widget.MaterialDrawerStyle</item>
<item name="materialDrawerHeaderStyle">@style/Widget.MaterialDrawerHeaderStyle</item>
<item name="colorPrimary">@color/md_theme_light_primary</item>
<item name="colorOnPrimary">@color/md_theme_light_onPrimary</item>
<item name="colorPrimaryContainer">@color/md_theme_light_primaryContainer</item>
<item name="colorOnPrimaryContainer">@color/md_theme_light_onPrimaryContainer</item>
<item name="colorSecondary">@color/md_theme_light_secondary</item>
<item name="colorOnSecondary">@color/md_theme_light_onSecondary</item>
<item name="colorSecondaryContainer">@color/md_theme_light_secondaryContainer</item>
<item name="colorOnSecondaryContainer">@color/md_theme_light_onSecondaryContainer</item>
<item name="colorTertiary">@color/md_theme_light_tertiary</item>
<item name="colorOnTertiary">@color/md_theme_light_onTertiary</item>
<item name="colorTertiaryContainer">@color/md_theme_light_tertiaryContainer</item>
<item name="colorOnTertiaryContainer">@color/md_theme_light_onTertiaryContainer</item>
<item name="colorError">@color/md_theme_light_error</item>
<item name="colorErrorContainer">@color/md_theme_light_errorContainer</item>
<item name="colorOnError">@color/md_theme_light_onError</item>
<item name="colorOnErrorContainer">@color/md_theme_light_onErrorContainer</item>
<item name="android:colorBackground">@color/md_theme_light_background</item>
<item name="colorOnBackground">@color/md_theme_light_onBackground</item>
<item name="colorSurface">@color/md_theme_light_surface</item>
<item name="colorOnSurface">@color/md_theme_light_onSurface</item>
<item name="colorSurfaceVariant">@color/md_theme_light_surfaceVariant</item>
<item name="colorOnSurfaceVariant">@color/md_theme_light_onSurfaceVariant</item>
<item name="colorOutline">@color/md_theme_light_outline</item>
<item name="colorOnSurfaceInverse">@color/md_theme_light_inverseOnSurface</item>
<item name="colorSurfaceInverse">@color/md_theme_light_inverseSurface</item>
<item name="elevationOverlayColor">@color/md_theme_light_surfaceTint</item>
<item name="colorPrimaryInverse">@color/md_theme_light_inversePrimary</item>
</style>
<style name="AppTheme2" parent="Theme.Material3.Light">
<style name="Toolbar" parent="Widget.Material3.Toolbar">
<item name="android:background">?attr/colorSecondaryContainer</item>
<item name="background">?attr/colorSecondaryContainer</item>
<item name="titleTextColor">?attr/colorOnSecondaryContainer</item>
<item name="subtitleTextColor">?attr/colorOnSecondaryContainer</item>
<item name="navigationIconTint">?attr/colorOnSecondaryContainer</item>
</style>
<style name="AppTheme2" parent="BaseAppTheme">
<item name="colorPrimary">@color/md_theme_light_primary2</item>
<item name="colorOnPrimary">@color/md_theme_light_onPrimary2</item>
<item name="colorPrimaryContainer">@color/md_theme_light_primaryContainer2</item>
@ -125,7 +102,7 @@
<item name="colorPrimaryInverse">@color/md_theme_light_inversePrimary2</item>
</style>
<style name="AppTheme3" parent="Theme.Material3.Light">
<style name="AppTheme3" parent="BaseAppTheme">
<item name="colorPrimary">@color/md_theme_light_primary3</item>
<item name="colorOnPrimary">@color/md_theme_light_onPrimary3</item>
<item name="colorPrimaryContainer">@color/md_theme_light_primaryContainer3</item>
@ -155,7 +132,7 @@
<item name="colorPrimaryInverse">@color/md_theme_light_inversePrimary3</item>
</style>
<style name="AppTheme4" parent="Theme.Material3.Light">
<style name="AppTheme4" parent="BaseAppTheme">
<item name="colorPrimary">@color/md_theme_light_primary4</item>
<item name="colorOnPrimary">@color/md_theme_light_onPrimary4</item>
<item name="colorPrimaryContainer">@color/md_theme_light_primaryContainer4</item>
@ -184,4 +161,64 @@
<item name="elevationOverlayColor">@color/md_theme_light_surfaceTint4</item>
<item name="colorPrimaryInverse">@color/md_theme_light_inversePrimary4</item>
</style>
<style name="AppTheme5" parent="BaseAppTheme">
<item name="colorPrimary">@color/md_theme_light_primary</item>
<item name="colorOnPrimary">@color/md_theme_light_onPrimary</item>
<item name="colorPrimaryContainer">@color/md_theme_light_primaryContainer</item>
<item name="colorOnPrimaryContainer">@color/md_theme_light_onPrimaryContainer</item>
<item name="colorSecondary">@color/md_theme_light_secondary</item>
<item name="colorOnSecondary">@color/md_theme_light_onSecondary</item>
<item name="colorSecondaryContainer">@color/md_theme_light_secondaryContainer</item>
<item name="colorOnSecondaryContainer">@color/md_theme_light_onSecondaryContainer</item>
<item name="colorTertiary">@color/md_theme_light_tertiary</item>
<item name="colorOnTertiary">@color/md_theme_light_onTertiary</item>
<item name="colorTertiaryContainer">@color/md_theme_light_tertiaryContainer</item>
<item name="colorOnTertiaryContainer">@color/md_theme_light_onTertiaryContainer</item>
<item name="colorError">@color/md_theme_light_error</item>
<item name="colorErrorContainer">@color/md_theme_light_errorContainer</item>
<item name="colorOnError">@color/md_theme_light_onError</item>
<item name="colorOnErrorContainer">@color/md_theme_light_onErrorContainer</item>
<item name="android:colorBackground">@color/md_theme_light_background</item>
<item name="colorOnBackground">@color/md_theme_light_onBackground</item>
<item name="colorSurface">@color/md_theme_light_surface</item>
<item name="colorOnSurface">@color/md_theme_light_onSurface</item>
<item name="colorSurfaceVariant">@color/md_theme_light_surfaceVariant</item>
<item name="colorOnSurfaceVariant">@color/md_theme_light_onSurfaceVariant</item>
<item name="colorOutline">@color/md_theme_light_outline</item>
<item name="colorOnSurfaceInverse">@color/md_theme_light_inverseOnSurface</item>
<item name="colorSurfaceInverse">@color/md_theme_light_inverseSurface</item>
<item name="elevationOverlayColor">@color/md_theme_light_surfaceTint</item>
<item name="colorPrimaryInverse">@color/md_theme_light_inversePrimary</item>
</style>
<style name="BaseAppTheme.NoActionBar" parent="BaseAppTheme">
<item name="android:statusBarColor">@android:color/transparent</item>
<item name="windowActionBar">false</item>
<item name="windowNoTitle">true</item>
</style>
<style name="AppTheme2.NoActionBar" parent="AppTheme2">
<item name="android:statusBarColor">@android:color/transparent</item>
<item name="windowActionBar">false</item>
<item name="windowNoTitle">true</item>
</style>
<style name="AppTheme3.NoActionBar" parent="AppTheme3">
<item name="android:statusBarColor">@android:color/transparent</item>
<item name="windowActionBar">false</item>
<item name="windowNoTitle">true</item>
</style>
<style name="AppTheme4.NoActionBar" parent="AppTheme4">
<item name="android:statusBarColor">@android:color/transparent</item>
<item name="windowActionBar">false</item>
<item name="windowNoTitle">true</item>
</style>
<style name="AppTheme5.NoActionBar" parent="AppTheme5">
<item name="android:statusBarColor">@android:color/transparent</item>
<item name="windowActionBar">false</item>
<item name="windowNoTitle">true</item>
</style>
</resources>