diff --git a/app/src/main/java/com/nmc/android/utils/FabThemeUtils.kt b/app/src/main/java/com/nmc/android/utils/FabThemeUtils.kt
new file mode 100644
index 000000000000..a8662285ea47
--- /dev/null
+++ b/app/src/main/java/com/nmc/android/utils/FabThemeUtils.kt
@@ -0,0 +1,40 @@
+package com.nmc.android.utils
+
+import android.content.Context
+import android.content.res.ColorStateList
+import android.graphics.Color
+import com.google.android.material.floatingactionbutton.FloatingActionButton
+import com.owncloud.android.R
+
+object FabThemeUtils {
+ @JvmStatic
+ fun colorFloatingActionButton(
+ context: Context,
+ button: FloatingActionButton
+ ) {
+ val primaryColor = context.resources.getColor(R.color.primary, null)
+ val disableColor = context.resources.getColor(R.color.grey_0, null)
+
+ val bgStates = arrayOf(
+ intArrayOf(android.R.attr.state_enabled),
+ intArrayOf(-android.R.attr.state_enabled),
+ )
+ val bgColors = intArrayOf(
+ primaryColor,
+ disableColor
+ )
+
+ button.backgroundTintList = ColorStateList(bgStates, bgColors)
+
+ val imageStates = arrayOf(
+ intArrayOf(android.R.attr.state_enabled),
+ intArrayOf(-android.R.attr.state_enabled),
+ )
+ val imageColors = intArrayOf(
+ Color.WHITE,
+ disableColor
+ )
+
+ button.imageTintList = ColorStateList(imageStates, imageColors)
+ }
+}
\ No newline at end of file
diff --git a/app/src/main/java/com/owncloud/android/ui/activity/EditorWebView.java b/app/src/main/java/com/owncloud/android/ui/activity/EditorWebView.java
index b20d447a67ff..8fd22cfc86a0 100644
--- a/app/src/main/java/com/owncloud/android/ui/activity/EditorWebView.java
+++ b/app/src/main/java/com/owncloud/android/ui/activity/EditorWebView.java
@@ -91,7 +91,6 @@ public void onUrlLoaded(String loadedUrl) {
Snackbar.LENGTH_INDEFINITE);
if (snackbar != null) {
snackbar.setAction(R.string.common_cancel, v -> closeView());
- viewThemeUtils.material.themeSnackbar(snackbar);
setLoadingSnackbar(snackbar);
snackbar.show();
}
diff --git a/app/src/main/java/com/owncloud/android/ui/activity/FileActivity.java b/app/src/main/java/com/owncloud/android/ui/activity/FileActivity.java
index be00f4f53900..b89be60e9238 100644
--- a/app/src/main/java/com/owncloud/android/ui/activity/FileActivity.java
+++ b/app/src/main/java/com/owncloud/android/ui/activity/FileActivity.java
@@ -755,7 +755,6 @@ public static void copyAndShareFileLink(FileActivity activity,
Snackbar snackbar = Snackbar.make(activity.findViewById(android.R.id.content), R.string.clipboard_text_copied,
Snackbar.LENGTH_LONG)
.setAction(R.string.share, v -> showShareLinkDialog(activity, file, link));
- viewThemeUtils.material.themeSnackbar(snackbar);
snackbar.show();
}
}
@@ -825,7 +824,6 @@ private void onUpdateShareInformation(RemoteOperationResult result, @StringRes i
snackbar = Snackbar.make(sharingFragment.getView(), result.getMessage(), Snackbar.LENGTH_LONG);
}
- viewThemeUtils.material.themeSnackbar(snackbar);
snackbar.show();
}
}
@@ -916,7 +914,6 @@ private void onCreateShareViaLinkOperationFinish(CreateShareViaLinkOperation ope
operation,
getResources()),
Snackbar.LENGTH_LONG);
- viewThemeUtils.material.themeSnackbar(snackbar);
snackbar.show();
}
}
diff --git a/app/src/main/java/com/owncloud/android/ui/fragment/OCFileListFragment.java b/app/src/main/java/com/owncloud/android/ui/fragment/OCFileListFragment.java
index 4b424fd75192..505b9b5f65e5 100644
--- a/app/src/main/java/com/owncloud/android/ui/fragment/OCFileListFragment.java
+++ b/app/src/main/java/com/owncloud/android/ui/fragment/OCFileListFragment.java
@@ -54,6 +54,7 @@
import com.nextcloud.ui.fileactions.FileAction;
import com.nextcloud.ui.fileactions.FileActionsBottomSheet;
import com.nextcloud.utils.EditorUtils;
+import com.nmc.android.utils.FabThemeUtils;
import com.nextcloud.utils.ShortcutUtil;
import com.nextcloud.utils.SnackbarUtil;
import com.nextcloud.utils.e2ee.E2EEActionResolver;
@@ -382,7 +383,8 @@ public View onCreateView(@NonNull LayoutInflater inflater, ViewGroup container,
if (mFabMain != null) {
// is not available in FolderPickerActivity
- viewThemeUtils.material.themeFAB(mFabMain);
+ //NMC customization
+ FabThemeUtils.colorFloatingActionButton(requireContext(), mFabMain);
}
Log_OC.i(TAG, "onCreateView() end");
@@ -546,7 +548,8 @@ public void registerFabListener() {
}
// is not available in FolderPickerActivity
- viewThemeUtils.material.themeFAB(mFabMain);
+ //NMC customization
+ FabThemeUtils.colorFloatingActionButton(requireContext(), mFabMain);
mFabMain.setOnClickListener(v -> {
var currentDir = getCurrentFile();
if (currentDir == null) {
@@ -2123,7 +2126,8 @@ public void setFabVisible(final boolean visible) {
activity.runOnUiThread(() -> {
if (visible) {
mFabMain.show();
- viewThemeUtils.material.themeFAB(mFabMain);
+ // NMC customization
+ FabThemeUtils.colorFloatingActionButton(requireContext(), mFabMain);
} else {
mFabMain.hide();
}
@@ -2160,10 +2164,12 @@ public void setFabEnabled(final boolean enabled) {
activity.runOnUiThread(() -> {
if (enabled) {
fabMain.setEnabled(true);
- viewThemeUtils.material.themeFAB(fabMain);
+ //NMC customization
+ FabThemeUtils.colorFloatingActionButton(requireContext(), mFabMain);
} else {
fabMain.setEnabled(false);
- viewThemeUtils.material.themeFAB(fabMain);
+ //NMC customization
+ FabThemeUtils.colorFloatingActionButton(requireContext(), mFabMain);
}
});
}
diff --git a/app/src/main/java/com/owncloud/android/ui/preview/PreviewTextStringFragment.kt b/app/src/main/java/com/owncloud/android/ui/preview/PreviewTextStringFragment.kt
index ad367f684176..f1a825dc7db6 100644
--- a/app/src/main/java/com/owncloud/android/ui/preview/PreviewTextStringFragment.kt
+++ b/app/src/main/java/com/owncloud/android/ui/preview/PreviewTextStringFragment.kt
@@ -22,6 +22,7 @@ import androidx.core.view.MenuProvider
import androidx.lifecycle.Lifecycle
import androidx.lifecycle.lifecycleScope
import com.google.android.material.floatingactionbutton.FloatingActionButton
+import com.nmc.android.utils.FabThemeUtils
import com.nextcloud.android.lib.richWorkspace.RichWorkspaceDirectEditingRemoteOperation
import com.nextcloud.utils.SnackbarUtil
import com.owncloud.android.R
@@ -58,7 +59,8 @@ class PreviewTextStringFragment : PreviewTextFragment() {
isEnabled = true
setOnClickListener { edit() }
setImageResource(R.drawable.ic_edit)
- viewThemeUtils.material.themeFAB(this)
+ // NMC customization
+ FabThemeUtils.colorFloatingActionButton(requireContext(), this)
}
addMenuProvider()
diff --git a/app/src/main/res/values-night/nmc_colors.xml b/app/src/main/res/values-night/nmc_colors.xml
new file mode 100644
index 000000000000..229d9361177d
--- /dev/null
+++ b/app/src/main/res/values-night/nmc_colors.xml
@@ -0,0 +1,73 @@
+
+
+
+
+ #FFFFFF
+ @color/grey_30
+ @color/grey_30
+ #CCCCCC
+ @color/grey_70
+ @color/grey_80
+ #2D2D2D
+ @color/grey_70
+ @color/grey_70
+
+
+ @color/grey_80
+ @color/grey_0
+
+
+ @color/grey_80
+ @color/grey_0
+
+
+ @color/grey_60
+ @color/grey_0
+ @color/grey_0
+ @color/grey_30
+ #FFFFFF
+ @color/grey_30
+ @color/grey_80
+ #FFFFFF
+
+
+ @color/grey_80
+ @color/grey_30
+ @color/grey_0
+
+
+ @color/grey_80
+ @color/grey_0
+ @color/grey_80
+
+
+ @color/grey_70
+ @color/grey_60
+
+
+ @color/grey_70
+ @color/grey_70
+
+
+ #FFFFFF
+ @color/grey_30
+ @color/grey_0
+ @color/grey_0
+ @color/grey_0
+ @color/grey_0
+ @color/grey_60
+ @color/grey_0
+ #FFFFFF
+ #7d94f9
+
+
+ #121212
+ @color/grey_0
+ @color/grey_80
+ @color/grey_80
+
\ No newline at end of file
diff --git a/app/src/main/res/values-night/themes.xml b/app/src/main/res/values-night/themes.xml
index 19b3ce692520..eb839d0b746f 100644
--- a/app/src/main/res/values-night/themes.xml
+++ b/app/src/main/res/values-night/themes.xml
@@ -19,6 +19,10 @@
- false
- true
- true
+
+ - @style/SnackBarBackgroundStyle
+ - @style/SnackBarActionButtonStyle
+ - @style/SnackBarTextViewStyle
- @style/Widget.App.TextInputLayout
- @style/Nextcloud.Widget.PopupMenu
- @style/ThemeOverlay.App.BottomSheetDialog
diff --git a/app/src/main/res/values/nmc_colors.xml b/app/src/main/res/values/nmc_colors.xml
new file mode 100644
index 000000000000..3aa33ccdf362
--- /dev/null
+++ b/app/src/main/res/values/nmc_colors.xml
@@ -0,0 +1,98 @@
+
+
+
+
+ #191919
+ @color/primary
+ #191919
+ #191919
+ @color/grey_30
+ @android:color/white
+ #FFFFFF
+ @color/grey_0
+ #CCCCCC
+ #77c4ff
+ #B3FFFFFF
+ @color/grey_10
+
+
+ #101010
+ #F2F2F2
+ #E5E5E5
+ #B2B2B2
+ #666666
+ #4C4C4C
+ #333333
+
+
+ @color/design_snackbar_background_color
+ @color/white
+
+
+ #FFFFFF
+ #191919
+
+
+ @color/grey_0
+ #191919
+ @color/primary
+ #191919
+ @color/primary
+ @color/grey_30
+ @color/white
+ #191919
+
+
+ #FFFFFF
+ #191919
+ #191919
+
+
+ #FFFFFF
+ #191919
+ #FFFFFF
+
+
+ @color/primary
+ #F399C7
+ #FFFFFF
+ @color/grey_30
+ @color/grey_10
+ @color/grey_0
+
+
+ @color/primary
+ @color/grey_30
+ @color/grey_30
+ #CCCCCC
+
+
+ #191919
+ @color/grey_30
+ #191919
+ #191919
+ #191919
+ #191919
+ @color/grey_30
+ #191919
+ #000000
+ #191919
+ #F6E5EB
+ #C16F81
+ #0D39DF
+ #0099ff
+ #2238df
+
+
+ @color/grey_0
+ #191919
+ @color/grey_0
+ @color/grey_30
+ #77b6bb
+ #5077b6bb
+
\ No newline at end of file
diff --git a/app/src/main/res/values/nmc_snackbar_styles.xml b/app/src/main/res/values/nmc_snackbar_styles.xml
new file mode 100644
index 000000000000..23aadc577694
--- /dev/null
+++ b/app/src/main/res/values/nmc_snackbar_styles.xml
@@ -0,0 +1,16 @@
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/values/styles.xml b/app/src/main/res/values/styles.xml
index 8290142dd8f3..5ab4abddeb3f 100644
--- a/app/src/main/res/values/styles.xml
+++ b/app/src/main/res/values/styles.xml
@@ -27,6 +27,10 @@
- @color/primary_dark
- @color/secondary_text_color
- @style/ownCloud.SearchView
+
+ - @style/SnackBarBackgroundStyle
+ - @style/SnackBarActionButtonStyle
+ - @style/SnackBarTextViewStyle
- @color/action_mode_background
- @style/FallbackDatePickerDialogTheme
- @color/bg_default
@@ -47,6 +51,10 @@
- @color/bg_default
- @color/secondary_text_color
- @style/FallbackTheming.Dialog
+
+ - @style/SnackBarBackgroundStyle
+ - @style/SnackBarActionButtonStyle
+ - @style/SnackBarTextViewStyle
- @color/action_mode_background
- @style/FallbackDatePickerDialogTheme
- @color/bg_default
@@ -273,6 +281,10 @@