Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,7 @@ import androidx.fragment.app.DialogFragment
import com.google.android.material.dialog.MaterialAlertDialogBuilder
import com.nextcloud.client.di.Injectable
import com.nextcloud.client.preferences.AppPreferencesImpl
import com.nmc.android.utils.DialogThemeUtils
import com.owncloud.android.MainApp
import com.owncloud.android.R
import com.owncloud.android.databinding.DialogDataStorageLocationBinding
Expand Down Expand Up @@ -59,7 +60,8 @@ class ChooseStorageLocationDialogFragment :
dialog.dismiss()
}.setView(binding.root)

viewThemeUtils.dialog.colorMaterialAlertDialogBackground(requireContext(), builder)
// NMC customization: customize dialog bg color
DialogThemeUtils.colorMaterialAlertDialogBackground(requireContext(), builder)

binding.storageRadioGroup.setOnCheckedChangeListener { _, _ ->
updateMediaIndexSwitch()
Expand Down
30 changes: 30 additions & 0 deletions app/src/main/java/com/nmc/android/utils/DialogThemeUtils.kt
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
package com.nmc.android.utils

import android.content.Context
import android.content.res.ColorStateList
import android.os.Build
import com.google.android.material.dialog.MaterialAlertDialogBuilder
import com.google.android.material.shape.MaterialShapeDrawable
import com.owncloud.android.R

object DialogThemeUtils {
fun colorMaterialAlertDialogBackground(context: Context, dialogBuilder: MaterialAlertDialogBuilder) {
val materialShapeDrawable = MaterialShapeDrawable(
context,
null,
androidx.appcompat.R.attr.alertDialogStyle,
com.google.android.material.R.style.MaterialAlertDialog_MaterialComponents
)
materialShapeDrawable.initializeElevationOverlay(context)
materialShapeDrawable.fillColor =
ColorStateList.valueOf(context.resources.getColor(R.color.alert_bg_color, null))

// dialogCornerRadius first appeared in Android Pie
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.P) {
val radius: Float =
context.resources.getDimension(com.nextcloud.android.common.ui.R.dimen.dialogBorderRadius)
materialShapeDrawable.setCornerSize(radius)
}
dialogBuilder.background = materialShapeDrawable
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -84,6 +84,7 @@ import com.nextcloud.utils.extensions.navigateToAllFiles
import com.nextcloud.utils.extensions.observeWorker
import com.nextcloud.utils.fileNameValidator.FileNameValidator.checkFolderPath
import com.nextcloud.utils.view.FastScrollUtils
import com.nmc.android.utils.DialogThemeUtils
import com.owncloud.android.MainApp
import com.owncloud.android.R
import com.owncloud.android.databinding.FilesBinding
Expand Down Expand Up @@ -352,7 +353,8 @@ class FileDisplayActivity :
) { dialog: DialogInterface?, which: Int -> dialog?.dismiss() }
.setIcon(R.drawable.ic_settings)

viewThemeUtils.dialog.colorMaterialAlertDialogBackground(applicationContext, builder)
// NMC customization: customize dialog bg color
DialogThemeUtils.colorMaterialAlertDialogBackground(applicationContext, builder)

builder.create().show()
} catch (e: BadTokenException) {
Expand Down Expand Up @@ -2943,7 +2945,8 @@ class FileDisplayActivity :
showLoadingDialog(getString(R.string.retrieving_file))
}

viewThemeUtils.dialog.colorMaterialAlertDialogBackground(applicationContext, builder)
// NMC customization: customize dialog bg color
DialogThemeUtils.colorMaterialAlertDialogBackground(applicationContext, builder)

val dialog = builder.create()
dismissLoadingDialog()
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -55,6 +55,7 @@
import com.nextcloud.utils.extensions.FileExtensionsKt;
import com.nextcloud.utils.extensions.IntentExtensionsKt;
import com.nextcloud.utils.fileNameValidator.FileNameValidator;
import com.nmc.android.utils.DialogThemeUtils;
import com.owncloud.android.MainApp;
import com.owncloud.android.R;
import com.owncloud.android.databinding.ReceiveExternalFilesBinding;
Expand Down Expand Up @@ -350,7 +351,8 @@ public Dialog onCreateDialog(Bundle savedInstanceState) {
});
builder.setNeutralButton(R.string.uploader_wrn_no_account_quit_btn_text,
(dialog, which) -> requireActivity().finish());
viewThemeUtils.dialog.colorMaterialAlertDialogBackground(requireContext(), builder);
// NMC customization: customize dialog bg color
DialogThemeUtils.INSTANCE.colorMaterialAlertDialogBackground(requireContext(), builder);
return builder.create();
}
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -55,6 +55,7 @@
import com.nextcloud.client.preferences.DarkMode;
import com.nextcloud.utils.extensions.ContextExtensionsKt;
import com.nextcloud.utils.mdm.MDMConfig;
import com.nmc.android.utils.DialogThemeUtils;
import com.owncloud.android.MainApp;
import com.owncloud.android.R;
import com.owncloud.android.authentication.AuthenticatorActivity;
Expand Down Expand Up @@ -540,7 +541,7 @@ private void removeE2E(PreferenceCategory preferenceCategoryMore) {
}

private void showRemoveE2EAlertDialog(PreferenceCategory preferenceCategoryMore, Preference preference) {
new MaterialAlertDialogBuilder(this, R.style.FallbackTheming_Dialog)
MaterialAlertDialogBuilder builder = new MaterialAlertDialogBuilder(this, R.style.FallbackTheming_Dialog)
.setTitle(R.string.prefs_e2e_mnemonic)
.setMessage(getString(R.string.remove_e2e_message))
.setCancelable(true)
Expand All @@ -555,8 +556,10 @@ private void showRemoveE2EAlertDialog(PreferenceCategory preferenceCategoryMore,
}

dialog.dismiss();
})
.create()
});
// NMC customization: customize dialog bg color
DialogThemeUtils.INSTANCE.colorMaterialAlertDialogBackground(this, builder);
builder.create()
.show();
}

Expand Down Expand Up @@ -1083,14 +1086,16 @@ public void handleMnemonicRequest(Intent data) {
}

private void showMnemonicAlertDialogDialog(String mnemonic) {
new MaterialAlertDialogBuilder(this, R.style.FallbackTheming_Dialog)
MaterialAlertDialogBuilder builder = new MaterialAlertDialogBuilder(this, R.style.FallbackTheming_Dialog)
.setTitle(R.string.prefs_e2e_mnemonic)
.setMessage(mnemonic)
.setPositiveButton(R.string.common_ok, (dialog, which) -> dialog.dismiss())
.setNegativeButton(R.string.common_cancel, (dialog, i) -> dialog.dismiss())
.setNeutralButton(R.string.common_copy, (dialog, i) ->
ClipboardUtil.copyToClipboard(this, mnemonic, false))
.create()
ClipboardUtil.copyToClipboard(this, mnemonic, false));
// NMC customization: customize dialog bg color
DialogThemeUtils.INSTANCE.colorMaterialAlertDialogBackground(this, builder);
builder.create()
.show();
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,7 @@

import com.google.android.material.dialog.MaterialAlertDialogBuilder;
import com.nextcloud.client.account.User;
import com.nmc.android.utils.DialogThemeUtils;
import com.owncloud.android.MainApp;
import com.owncloud.android.R;
import com.owncloud.android.datamodel.FileDataStorageManager;
Expand Down Expand Up @@ -106,7 +107,8 @@ public static void a(ViewThemeUtils viewThemeUtils, Context context) {

});

viewThemeUtils.dialog.colorMaterialAlertDialogBackground(context, builder);
// NMC customization: customize dialog bg color
DialogThemeUtils.INSTANCE.colorMaterialAlertDialogBackground(context, builder);

AlertDialog alertDialog = builder.create();

Expand Down Expand Up @@ -157,7 +159,8 @@ private void askToOverride() {
progressDialog.getButton(ProgressDialog.BUTTON_POSITIVE).setVisibility(View.GONE);
});

viewThemeUtils.dialog.colorMaterialAlertDialogBackground(mContext, builder);
// NMC customization: customize dialog bg color
DialogThemeUtils.INSTANCE.colorMaterialAlertDialogBackground(mContext, builder);
builder.create().show();
}

Expand Down Expand Up @@ -250,7 +253,8 @@ private void askToStillMove() {
}
});

viewThemeUtils.dialog.colorMaterialAlertDialogBackground(mContext, builder);
// NMC customization: customize dialog bg color
DialogThemeUtils.INSTANCE.colorMaterialAlertDialogBackground(mContext, builder);
builder.create().show();
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,7 @@ import com.nextcloud.client.jobs.NotificationWork
import com.nextcloud.client.jobs.upload.FileUploadWorker
import com.nextcloud.client.preferences.SubFolderRule
import com.nextcloud.utils.BatteryOptimizationHelper
import com.nmc.android.utils.DialogThemeUtils
import com.nextcloud.utils.extensions.getParcelableArgument
import com.nextcloud.utils.extensions.isDialogFragmentReady
import com.nextcloud.utils.extensions.setVisibleIf
Expand Down Expand Up @@ -227,7 +228,8 @@ class SyncedFoldersActivity :
.setTitle(R.string.autoupload_disable_power_save_check)
.setMessage(getString(R.string.power_save_check_dialog_message))

viewThemeUtils.dialog.colorMaterialAlertDialogBackground(this, builder)
// NMC customization
DialogThemeUtils.colorMaterialAlertDialogBackground(this, builder)

return builder.create()
}
Expand Down Expand Up @@ -854,7 +856,7 @@ class SyncedFoldersActivity :
return
}

val dialog = MaterialAlertDialogBuilder(this, R.style.Theme_ownCloud_Dialog)
val dialog = MaterialAlertDialogBuilder(this)
.setTitle(R.string.battery_optimization_title)
.setMessage(R.string.battery_optimization_message)
.setPositiveButton(R.string.battery_optimization_disable) { _, _ ->
Expand All @@ -863,11 +865,9 @@ class SyncedFoldersActivity :
.setNeutralButton(R.string.battery_optimization_close, null)
.setIcon(R.drawable.ic_battery_alert)

val alertDialog = dialog.show()
// NMC customization
DialogThemeUtils.colorMaterialAlertDialogBackground(this, dialog)

viewThemeUtils.platform.colorTextButtons(
alertDialog.getButton(AlertDialog.BUTTON_POSITIVE),
alertDialog.getButton(AlertDialog.BUTTON_NEUTRAL)
)
dialog.show()
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,6 @@ class StoragePathAdapter(
val storagePathItem = pathList[position]
holder.binding.btnStoragePath.setIconResource(storagePathItem.icon)
holder.binding.btnStoragePath.text = storagePathItem.name
viewThemeUtils.material.colorMaterialButtonPrimaryBorderless(holder.binding.btnStoragePath)
}
}

Expand Down
Loading