Style changes and permission ask rollbacks
* Main app theme now targets material3 * Permission checker/granter rollback for READ permission
This commit is contained in:
parent
fe2ae1d22b
commit
36d31f0dff
@ -32,6 +32,6 @@ dependencies {
|
||||
}
|
||||
|
||||
java {
|
||||
sourceCompatibility = JavaVersion.VERSION_1_8
|
||||
targetCompatibility = JavaVersion.VERSION_1_8
|
||||
sourceCompatibility = JavaVersion.VERSION_17
|
||||
targetCompatibility = JavaVersion.VERSION_17
|
||||
}
|
||||
|
@ -30,6 +30,6 @@ dependencies {
|
||||
}
|
||||
|
||||
java {
|
||||
sourceCompatibility = JavaVersion.VERSION_1_8
|
||||
targetCompatibility = JavaVersion.VERSION_1_8
|
||||
sourceCompatibility = JavaVersion.VERSION_17
|
||||
targetCompatibility = JavaVersion.VERSION_17
|
||||
}
|
||||
|
@ -35,6 +35,6 @@ dependencies {
|
||||
}
|
||||
|
||||
java {
|
||||
sourceCompatibility = JavaVersion.VERSION_1_8
|
||||
targetCompatibility = JavaVersion.VERSION_1_8
|
||||
sourceCompatibility = JavaVersion.VERSION_17
|
||||
targetCompatibility = JavaVersion.VERSION_17
|
||||
}
|
||||
|
@ -25,6 +25,6 @@ dependencies {
|
||||
}
|
||||
|
||||
java {
|
||||
sourceCompatibility = JavaVersion.VERSION_1_8
|
||||
targetCompatibility = JavaVersion.VERSION_1_8
|
||||
sourceCompatibility = JavaVersion.VERSION_17
|
||||
targetCompatibility = JavaVersion.VERSION_17
|
||||
}
|
||||
|
@ -87,6 +87,6 @@ dependencies {
|
||||
}
|
||||
|
||||
java {
|
||||
sourceCompatibility = JavaVersion.VERSION_1_8
|
||||
targetCompatibility = JavaVersion.VERSION_1_8
|
||||
sourceCompatibility = JavaVersion.VERSION_17
|
||||
targetCompatibility = JavaVersion.VERSION_17
|
||||
}
|
||||
|
@ -48,7 +48,7 @@
|
||||
android:name=".ui.term.NeoTermActivity"
|
||||
android:configChanges="orientation|keyboardHidden|screenSize"
|
||||
android:launchMode="singleTask"
|
||||
android:theme="@style/AppTheme.NoActionBar.Dark"
|
||||
android:theme="@style/AppTheme.NoActionBar"
|
||||
android:windowSoftInputMode="adjustResize|stateHidden"
|
||||
android:exported="true">
|
||||
<intent-filter>
|
||||
@ -81,7 +81,7 @@
|
||||
android:name=".ui.term.NeoTermRemoteInterface"
|
||||
android:configChanges="orientation|keyboardHidden"
|
||||
android:exported="true"
|
||||
android:theme="@style/AppTheme.Dark"
|
||||
android:theme="@style/AppTheme"
|
||||
android:windowSoftInputMode="adjustResize|stateHidden">
|
||||
<intent-filter>
|
||||
<category android:name="android.intent.category.DEFAULT"/>
|
||||
@ -143,12 +143,12 @@
|
||||
android:name=".ui.other.AboutActivity"
|
||||
android:exported="false"
|
||||
android:label="@string/about"
|
||||
android:theme="@style/AppTheme.NoActionBar.Dark"/>
|
||||
android:theme="@style/AppTheme.NoActionBar"/>
|
||||
<activity
|
||||
android:name=".ui.other.CrashActivity"
|
||||
android:exported="false"
|
||||
android:label="@string/error"
|
||||
android:theme="@style/AppTheme.NoActionBar.Dark"/>
|
||||
android:theme="@style/AppTheme.NoActionBar"/>
|
||||
<activity
|
||||
android:name=".ui.other.SetupActivity"
|
||||
android:configChanges="keyboardHidden|orientation|screenSize"
|
||||
@ -158,34 +158,34 @@
|
||||
android:name=".ui.other.BonusActivity"
|
||||
android:configChanges="orientation|keyboardHidden"
|
||||
android:exported="false"
|
||||
android:theme="@style/AppTheme.NoActionBar.Dark"/>
|
||||
android:theme="@style/AppTheme.NoActionBar"/>
|
||||
<activity
|
||||
android:name=".ui.pm.PackageManagerActivity"
|
||||
android:exported="false"
|
||||
android:label="@string/package_settings"
|
||||
android:theme="@style/AppTheme.NoActionBar.Dark"/>
|
||||
android:theme="@style/AppTheme.NoActionBar"/>
|
||||
<activity
|
||||
android:name=".ui.customize.CustomizeActivity"
|
||||
android:exported="false"
|
||||
android:label="@string/customization_settings"
|
||||
android:theme="@style/AppTheme.NoActionBar.Dark"/>
|
||||
android:theme="@style/AppTheme.NoActionBar"/>
|
||||
<activity
|
||||
android:name=".ui.customize.ColorSchemeActivity"
|
||||
android:exported="false"
|
||||
android:label="@string/pref_customization_color_scheme"
|
||||
android:theme="@style/AppTheme.NoActionBar.Dark"/>
|
||||
android:theme="@style/AppTheme.NoActionBar"/>
|
||||
<activity
|
||||
android:name=".ui.settings.SettingActivity"
|
||||
android:exported="false"
|
||||
android:theme="@style/AppTheme.Dark"/>
|
||||
android:theme="@style/AppTheme"/>
|
||||
<activity
|
||||
android:name=".ui.settings.GeneralSettingsActivity"
|
||||
android:exported="false"
|
||||
android:theme="@style/AppTheme.Dark"/>
|
||||
android:theme="@style/AppTheme"/>
|
||||
<activity
|
||||
android:name=".ui.settings.UISettingsActivity"
|
||||
android:exported="false"
|
||||
android:theme="@style/AppTheme.Dark"/>
|
||||
android:theme="@style/AppTheme"/>
|
||||
|
||||
<service
|
||||
android:name=".services.NeoTermService"
|
||||
|
@ -35,7 +35,7 @@ class App : Application() {
|
||||
}
|
||||
|
||||
fun errorDialog(context: Context, message: String, dismissCallback: (() -> Unit)?) {
|
||||
MaterialAlertDialogBuilder(context, R.style.DialogStyleCompat)
|
||||
MaterialAlertDialogBuilder(context, R.style.DialogStyle)
|
||||
.setTitle(R.string.error)
|
||||
.setMessage(message)
|
||||
.setNegativeButton(android.R.string.no, null)
|
||||
|
@ -64,8 +64,18 @@ class NeoTermActivity : AppCompatActivity(), ServiceConnection, SharedPreference
|
||||
override fun onCreate(savedInstanceState: Bundle?) {
|
||||
super.onCreate(savedInstanceState)
|
||||
|
||||
val SDCARD_PERMISSIONS_REQUEST_WRITE_EXTERNAL_STORAGE = 1
|
||||
|
||||
NeoPermission.initAppPermission(this, NeoPermission.REQUEST_APP_PERMISSION)
|
||||
|
||||
if (ContextCompat.checkSelfPermission(
|
||||
this,
|
||||
Manifest.permission.READ_EXTERNAL_STORAGE,
|
||||
) != PackageManager.PERMISSION_GRANTED
|
||||
) {
|
||||
ActivityCompat.requestPermissions(this, arrayOf(Manifest.permission.READ_EXTERNAL_STORAGE), SDCARD_PERMISSIONS_REQUEST_WRITE_EXTERNAL_STORAGE)
|
||||
}
|
||||
|
||||
val fullscreen = NeoPreference.isFullScreenEnabled()
|
||||
if (fullscreen) {
|
||||
window.setFlags(
|
||||
@ -74,19 +84,6 @@ class NeoTermActivity : AppCompatActivity(), ServiceConnection, SharedPreference
|
||||
)
|
||||
}
|
||||
|
||||
val SDCARD_PERMISSIONS_REQUEST_WRITE_EXTERNAL_STORAGE = 1
|
||||
if (ContextCompat.checkSelfPermission(
|
||||
this,
|
||||
Manifest.permission.MANAGE_EXTERNAL_STORAGE,
|
||||
) != PackageManager.PERMISSION_GRANTED
|
||||
) {
|
||||
ActivityCompat.requestPermissions(
|
||||
this,
|
||||
arrayOf(Manifest.permission.MANAGE_EXTERNAL_STORAGE),
|
||||
SDCARD_PERMISSIONS_REQUEST_WRITE_EXTERNAL_STORAGE,
|
||||
)
|
||||
}
|
||||
|
||||
setContentView(R.layout.ui_main)
|
||||
|
||||
toolbar = findViewById(R.id.terminal_toolbar)
|
||||
|
@ -23,41 +23,31 @@ object NeoPermission {
|
||||
context,
|
||||
Manifest.permission.READ_EXTERNAL_STORAGE
|
||||
)
|
||||
!= PackageManager.PERMISSION_GRANTED
|
||||
) {
|
||||
!= PackageManager.PERMISSION_GRANTED) {
|
||||
|
||||
if (ActivityCompat.shouldShowRequestPermissionRationale(
|
||||
context,
|
||||
Manifest.permission.READ_EXTERNAL_STORAGE
|
||||
)
|
||||
) {
|
||||
MaterialAlertDialogBuilder(context, R.style.DialogStyleCompat).setMessage("Please enable Storage permission")
|
||||
)) {
|
||||
MaterialAlertDialogBuilder(context, R.style.DialogStyle).setMessage("Please enable Storage permission")
|
||||
.setPositiveButton(android.R.string.ok) { _: DialogInterface, _: Int ->
|
||||
doRequestPermission(context, requestCode)
|
||||
}
|
||||
.show()
|
||||
}.show()
|
||||
|
||||
} else {
|
||||
doRequestPermission(context, requestCode)
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private fun doRequestPermission(context: AppCompatActivity, requestCode: Int) {
|
||||
try {
|
||||
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.R) {
|
||||
ActivityCompat.requestPermissions(
|
||||
context,
|
||||
arrayOf(Manifest.permission.MANAGE_EXTERNAL_STORAGE),
|
||||
arrayOf(Manifest.permission.READ_EXTERNAL_STORAGE),
|
||||
requestCode)
|
||||
} else {
|
||||
ActivityCompat.requestPermissions(
|
||||
context,
|
||||
arrayOf(Manifest.permission.READ_EXTERNAL_STORAGE, Manifest.permission.WRITE_EXTERNAL_STORAGE),
|
||||
requestCode)
|
||||
}
|
||||
} catch (ignore: ActivityNotFoundException) {
|
||||
// for MIUI, we ignore it.
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -1,18 +1,14 @@
|
||||
<resources>
|
||||
|
||||
<!-- Base application theme. -->
|
||||
<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
|
||||
<style name="AppTheme" parent="Theme.Material3.Dark">
|
||||
<item name="colorAccent">@color/colorAccent</item>
|
||||
<item name="colorPrimary">@color/colorPrimary</item>
|
||||
<item name="colorPrimaryDark">@color/colorPrimaryDark</item>
|
||||
<item name="windowActionModeOverlay">true</item>
|
||||
</style>
|
||||
|
||||
<style name="AppTheme.Dark" parent="Theme.AppCompat">
|
||||
<item name="colorAccent">@color/colorAccent</item>
|
||||
<item name="windowActionModeOverlay">true</item>
|
||||
<item name="colorPrimary">@color/colorPrimary</item>
|
||||
<item name="colorPrimaryDark">@color/colorPrimaryDark</item>
|
||||
<item name="android:actionBarStyle">@style/AppTheme.ActionBar</item>
|
||||
<item name="actionBarStyle">@style/AppTheme.ActionBar</item>
|
||||
</style>
|
||||
|
||||
<style name="AppTheme.NoActionBar" parent="@style/AppTheme">
|
||||
@ -20,14 +16,19 @@
|
||||
<item name="windowNoTitle">true</item>
|
||||
</style>
|
||||
|
||||
<style name="AppTheme.NoActionBar.Dark" parent="@style/AppTheme.Dark">
|
||||
<item name="windowActionBar">false</item>
|
||||
<item name="windowNoTitle">true</item>
|
||||
<style name="AppTheme.ActionBar" parent="@style/AppTheme">
|
||||
<item name="windowNoTitle">false</item>
|
||||
<item name="android:height">55dp</item>
|
||||
<item name="height">55dp</item>
|
||||
<item name="titleTextStyle">@style/AppTheme.ActionBar.TitleText</item>
|
||||
<item name="android:titleTextStyle">@style/AppTheme.ActionBar.TitleText</item>
|
||||
</style>
|
||||
|
||||
<style name="AppTheme.AppBarOverlay" parent="ThemeOverlay.AppCompat.Dark.ActionBar"/>
|
||||
<style name="AppTheme.ActionBar.TitleText" parent="@style/AppTheme">
|
||||
<item name="android:textSize">12sp</item>
|
||||
</style>
|
||||
|
||||
<style name="AppTheme.PopupOverlay" parent="ThemeOverlay.AppCompat.Light"/>
|
||||
<style name="AppTheme.PopupOverlay" parent="@style/Theme.Material3.Dark"/>
|
||||
|
||||
<style name="rtl_RecyclerTabLayout">
|
||||
<item name="rtl_tabMinWidth">72dp</item>
|
||||
@ -52,31 +53,24 @@
|
||||
</style>
|
||||
|
||||
<style name="DialogStyle" parent="@style/MaterialAlertDialog.Material3">
|
||||
<item name="colorPrimary">#61A3D7</item>
|
||||
<item name="colorPrimaryDark">#8DB2D3</item>
|
||||
<item name="colorAccent">#61A3D7</item>
|
||||
<item name="android:textColor">@color/textColor</item>
|
||||
<item name="android:textColorSecondary">@color/textColor</item>
|
||||
<item name="android:textColorLink">#2255D3</item>
|
||||
<item name="background">@color/colorPrimary</item>
|
||||
|
||||
<item name="android:windowEnterAnimation">@android:anim/fade_in</item>
|
||||
<item name="android:windowExitAnimation">@android:anim/fade_out</item>
|
||||
|
||||
<item name="colorPrimary">#547383</item>
|
||||
<item name="android:textColor">@color/textColor</item>
|
||||
<item name="android:textColorSecondary">@color/textColor</item>
|
||||
<item name="android:textColorLink">#2D55A3</item>
|
||||
|
||||
<item name="buttonBarPositiveButtonStyle">@style/Alert.Button.Positive</item>
|
||||
<item name="android:buttonBarPositiveButtonStyle">@style/Alert.Button.Positive</item>
|
||||
<item name="buttonBarNegativeButtonStyle">@style/Alert.Button.Neutral</item>
|
||||
<item name="android:buttonBarNegativeButtonStyle">@style/Alert.Button.Neutral</item>
|
||||
<item name="buttonBarNeutralButtonStyle">@style/Alert.Button.Neutral</item>
|
||||
</style>
|
||||
<item name="android:buttonBarNeutralButtonStyle">@style/Alert.Button.Neutral</item>
|
||||
|
||||
<style name="DialogStyleCompat" parent="@style/ThemeOverlay.Material3.MaterialAlertDialog">
|
||||
<item name="android:windowEnterAnimation">@android:anim/fade_in</item>
|
||||
<item name="android:windowExitAnimation">@android:anim/fade_out</item>
|
||||
|
||||
<item name="colorPrimary">#547383</item>
|
||||
<item name="android:textColor">@color/textColor</item>
|
||||
<item name="android:textColorSecondary">@color/textColor</item>
|
||||
<item name="android:textColorLink">#2D55A3</item>
|
||||
|
||||
<item name="buttonBarPositiveButtonStyle">@style/Alert.Button.Positive</item>
|
||||
<item name="buttonBarNegativeButtonStyle">@style/Alert.Button.Neutral</item>
|
||||
<item name="buttonBarNeutralButtonStyle">@style/Alert.Button.Neutral</item>
|
||||
</style>
|
||||
|
||||
<style name="Alert.Button.Positive" parent="@style/Widget.Material3.Button.TextButton">
|
||||
|
Loading…
Reference in New Issue
Block a user