From e1ba4569d002c918f88a16f35772397026a305f0 Mon Sep 17 00:00:00 2001 From: Stefan Niedermann Date: Mon, 1 Jun 2020 17:57:32 +0200 Subject: Make toolbars the same background color as the main content --- .../android/activity/NotesListViewActivity.java | 4 +++ .../owncloud/notes/branding/BrandingUtil.java | 12 +++---- .../owncloud/notes/model/ItemAdapter.java | 2 +- .../owncloud/notes/model/NoteViewHolder.java | 2 +- .../notes/persistence/LoadNotesListTask.java | 2 +- .../owncloud/notes/util/MarkDownUtil.java | 2 +- app/src/main/res/drawable/ic_delete_white_24dp.xml | 5 --- app/src/main/res/drawable/ic_edit_grey600_24dp.xml | 5 +++ app/src/main/res/drawable/ic_edit_white_24dp.xml | 5 --- app/src/main/res/drawable/ic_send_grey600_24dp.xml | 5 +++ app/src/main/res/drawable/ic_send_white_24dp.xml | 5 --- app/src/main/res/layout/activity_about.xml | 38 +++++++++++++--------- app/src/main/res/layout/activity_edit.xml | 24 ++++++++------ app/src/main/res/layout/activity_exception.xml | 6 ++-- .../main/res/layout/activity_notes_list_view.xml | 24 ++++++++------ app/src/main/res/layout/activity_preferences.xml | 25 ++++++++------ app/src/main/res/layout/drawer_layout.xml | 27 +++++++-------- app/src/main/res/layout/fragment_note_edit.xml | 2 +- .../main/res/menu/menu_list_context_multiple.xml | 4 +-- app/src/main/res/menu/menu_note_activity.xml | 2 +- app/src/main/res/menu/menu_note_fragment.xml | 4 +-- app/src/main/res/values-night/colors.xml | 4 +-- app/src/main/res/values/colors.xml | 7 ++-- app/src/main/res/values/styles.xml | 6 +++- 24 files changed, 124 insertions(+), 98 deletions(-) delete mode 100644 app/src/main/res/drawable/ic_delete_white_24dp.xml create mode 100644 app/src/main/res/drawable/ic_edit_grey600_24dp.xml delete mode 100644 app/src/main/res/drawable/ic_edit_white_24dp.xml create mode 100644 app/src/main/res/drawable/ic_send_grey600_24dp.xml delete mode 100644 app/src/main/res/drawable/ic_send_white_24dp.xml diff --git a/app/src/main/java/it/niedermann/owncloud/notes/android/activity/NotesListViewActivity.java b/app/src/main/java/it/niedermann/owncloud/notes/android/activity/NotesListViewActivity.java index a1b375f2..33888333 100644 --- a/app/src/main/java/it/niedermann/owncloud/notes/android/activity/NotesListViewActivity.java +++ b/app/src/main/java/it/niedermann/owncloud/notes/android/activity/NotesListViewActivity.java @@ -75,6 +75,7 @@ import it.niedermann.owncloud.notes.persistence.NotesDatabase; import it.niedermann.owncloud.notes.util.ColorUtil; import it.niedermann.owncloud.notes.util.NoteUtil; +import static it.niedermann.owncloud.notes.util.ColorUtil.contrastRatioIsSufficient; import static it.niedermann.owncloud.notes.util.SSOUtil.askForNewAccount; public class NotesListViewActivity extends LockedActivity implements NoteClickListener, NoteServerSyncHelper.ViewProvider, AccountChooserListener { @@ -447,6 +448,9 @@ public class NotesListViewActivity extends LockedActivity implements NoteClickLi public void applyBrand(int mainColor, int textColor) { applyBrandToPrimaryToolbar(mainColor, textColor, activityBinding.toolbar); applyBrandToFAB(mainColor, textColor, activityBinding.fabCreate); + + // TODO We assume, that the background of the spinner is always white + activityBinding.swiperefreshlayout.setColorSchemeColors(contrastRatioIsSufficient(Color.WHITE, mainColor) ? mainColor : Color.BLACK); binding.headerViewBackground.setBackgroundColor(mainColor); binding.appName.setTextColor(textColor); binding.account.setTextColor(textColor); diff --git a/app/src/main/java/it/niedermann/owncloud/notes/branding/BrandingUtil.java b/app/src/main/java/it/niedermann/owncloud/notes/branding/BrandingUtil.java index 46f92f93..dc627b4e 100644 --- a/app/src/main/java/it/niedermann/owncloud/notes/branding/BrandingUtil.java +++ b/app/src/main/java/it/niedermann/owncloud/notes/branding/BrandingUtil.java @@ -13,7 +13,6 @@ import androidx.core.graphics.drawable.DrawableCompat; import androidx.preference.PreferenceManager; import it.niedermann.owncloud.notes.R; -import it.niedermann.owncloud.notes.android.DarkModeSetting; import it.niedermann.owncloud.notes.util.Notes; import static it.niedermann.owncloud.notes.util.ColorUtil.contrastRatioIsSufficient; @@ -39,9 +38,9 @@ public class BrandingUtil { if (BrandingUtil.isBrandingEnabled(context)) { SharedPreferences sharedPreferences = PreferenceManager.getDefaultSharedPreferences(context.getApplicationContext()); Log.v(TAG, "--- Read: shared_preference_theme_main"); - return sharedPreferences.getInt(pref_key_branding_main, context.getApplicationContext().getResources().getColor(R.color.primary)); + return sharedPreferences.getInt(pref_key_branding_main, context.getApplicationContext().getResources().getColor(R.color.defaultBrand)); } else { - return context.getResources().getColor(R.color.primary); + return context.getResources().getColor(R.color.defaultBrand); } } @@ -78,11 +77,12 @@ public class BrandingUtil { */ @ColorInt public static int getSecondaryForegroundColorDependingOnTheme(@NonNull Context context, @ColorInt int mainColor) { - final boolean isDarkTheme = Notes.getAppTheme(context) == DarkModeSetting.DARK; - if (isDarkTheme && !contrastRatioIsSufficient(mainColor, Color.BLACK)) { + final int primaryColor = context.getResources().getColor(R.color.primary); + final boolean isDarkTheme = Notes.isDarkThemeActive(context); + if (isDarkTheme && !contrastRatioIsSufficient(mainColor, primaryColor)) { Log.v(TAG, "Contrast ratio between brand color " + String.format("#%06X", (0xFFFFFF & mainColor)) + " and dark theme is too low. Falling back to WHITE as brand color."); return Color.WHITE; - } else if (!isDarkTheme && !contrastRatioIsSufficient(mainColor, Color.WHITE)) { + } else if (!isDarkTheme && !contrastRatioIsSufficient(mainColor, primaryColor)) { Log.v(TAG, "Contrast ratio between brand color " + String.format("#%06X", (0xFFFFFF & mainColor)) + " and light theme is too low. Falling back to BLACK as brand color."); return Color.BLACK; } else { diff --git a/app/src/main/java/it/niedermann/owncloud/notes/model/ItemAdapter.java b/app/src/main/java/it/niedermann/owncloud/notes/model/ItemAdapter.java index b98c23b9..8da36203 100644 --- a/app/src/main/java/it/niedermann/owncloud/notes/model/ItemAdapter.java +++ b/app/src/main/java/it/niedermann/owncloud/notes/model/ItemAdapter.java @@ -38,7 +38,7 @@ public class ItemAdapter extends RecyclerView.Adapter i public ItemAdapter(@NonNull T context) { this.context = context; this.noteClickListener = context; - this.mainColor = context.getResources().getColor(R.color.primary); + this.mainColor = context.getResources().getColor(R.color.defaultBrand); this.textColor = context.getResources().getColor(android.R.color.white); } diff --git a/app/src/main/java/it/niedermann/owncloud/notes/model/NoteViewHolder.java b/app/src/main/java/it/niedermann/owncloud/notes/model/NoteViewHolder.java index df55e39a..954ad8a2 100644 --- a/app/src/main/java/it/niedermann/owncloud/notes/model/NoteViewHolder.java +++ b/app/src/main/java/it/niedermann/owncloud/notes/model/NoteViewHolder.java @@ -53,7 +53,7 @@ public class NoteViewHolder extends RecyclerView.ViewHolder implements View.OnLo binding.noteCategory.setText(Html.fromHtml(note.getCategory())); DrawableCompat.setTint(binding.noteCategory.getBackground(), mainColor); - binding.noteCategory.setTextColor(Notes.isDarkThemeActive(binding.getRoot().getContext()) ? Color.WHITE : Color.BLACK); + binding.noteCategory.setTextColor(Notes.isDarkThemeActive(binding.getRoot().getContext()) ? textColor : Color.BLACK); binding.noteExcerpt.setText(Html.fromHtml(note.getExcerpt())); binding.noteStatus.setVisibility(DBStatus.VOID.equals(note.getStatus()) ? View.INVISIBLE : View.VISIBLE); diff --git a/app/src/main/java/it/niedermann/owncloud/notes/persistence/LoadNotesListTask.java b/app/src/main/java/it/niedermann/owncloud/notes/persistence/LoadNotesListTask.java index a6b77024..ff3673d9 100644 --- a/app/src/main/java/it/niedermann/owncloud/notes/persistence/LoadNotesListTask.java +++ b/app/src/main/java/it/niedermann/owncloud/notes/persistence/LoadNotesListTask.java @@ -45,7 +45,7 @@ public class LoadNotesListTask extends AsyncTask> { this.searchQuery = searchQuery; this.accountId = accountId; this.searchBackground = context.getResources().getColor(R.color.bg_highlighted); - this.searchForeground = DisplayUtils.getForeground(Integer.toHexString(this.searchBackground)) ? Color.WHITE : context.getResources().getColor(R.color.primary); + this.searchForeground = DisplayUtils.getForeground(Integer.toHexString(this.searchBackground)) ? Color.WHITE : context.getResources().getColor(R.color.defaultBrand); } @Override diff --git a/app/src/main/java/it/niedermann/owncloud/notes/util/MarkDownUtil.java b/app/src/main/java/it/niedermann/owncloud/notes/util/MarkDownUtil.java index 9d9abe95..66f89280 100644 --- a/app/src/main/java/it/niedermann/owncloud/notes/util/MarkDownUtil.java +++ b/app/src/main/java/it/niedermann/owncloud/notes/util/MarkDownUtil.java @@ -65,7 +65,7 @@ public class MarkDownUtil { darkTheme ? R.color.widget_fg_dark_theme : R.color.widget_fg_default, null)) .setTodoDoneColor(ResourcesCompat.getColor(context.getResources(), darkTheme ? R.color.widget_fg_dark_theme : R.color.widget_fg_default, null)) - .setLinkFontColor(ResourcesCompat.getColor(context.getResources(), R.color.primary, null)) + .setLinkFontColor(ResourcesCompat.getColor(context.getResources(), R.color.defaultBrand, null)) .setRxMDImageLoader(new NotesImageLoader(context)) .setDefaultImageSize(400, 300); } diff --git a/app/src/main/res/drawable/ic_delete_white_24dp.xml b/app/src/main/res/drawable/ic_delete_white_24dp.xml deleted file mode 100644 index 4d020aff..00000000 --- a/app/src/main/res/drawable/ic_delete_white_24dp.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - diff --git a/app/src/main/res/drawable/ic_edit_grey600_24dp.xml b/app/src/main/res/drawable/ic_edit_grey600_24dp.xml new file mode 100644 index 00000000..1c520a99 --- /dev/null +++ b/app/src/main/res/drawable/ic_edit_grey600_24dp.xml @@ -0,0 +1,5 @@ + + + diff --git a/app/src/main/res/drawable/ic_edit_white_24dp.xml b/app/src/main/res/drawable/ic_edit_white_24dp.xml deleted file mode 100644 index 5af858dd..00000000 --- a/app/src/main/res/drawable/ic_edit_white_24dp.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - diff --git a/app/src/main/res/drawable/ic_send_grey600_24dp.xml b/app/src/main/res/drawable/ic_send_grey600_24dp.xml new file mode 100644 index 00000000..08fdc123 --- /dev/null +++ b/app/src/main/res/drawable/ic_send_grey600_24dp.xml @@ -0,0 +1,5 @@ + + + diff --git a/app/src/main/res/drawable/ic_send_white_24dp.xml b/app/src/main/res/drawable/ic_send_white_24dp.xml deleted file mode 100644 index 97dd32a4..00000000 --- a/app/src/main/res/drawable/ic_send_white_24dp.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - diff --git a/app/src/main/res/layout/activity_about.xml b/app/src/main/res/layout/activity_about.xml index 7582ef75..10444a88 100644 --- a/app/src/main/res/layout/activity_about.xml +++ b/app/src/main/res/layout/activity_about.xml @@ -1,30 +1,36 @@ - + android:layout_height="wrap_content"> - + + + + + android:layout_height="wrap_content" + android:background="?attr/colorPrimary" /> \ No newline at end of file diff --git a/app/src/main/res/layout/activity_edit.xml b/app/src/main/res/layout/activity_edit.xml index d089db72..2c884af4 100644 --- a/app/src/main/res/layout/activity_edit.xml +++ b/app/src/main/res/layout/activity_edit.xml @@ -1,21 +1,25 @@ - + android:layout_height="wrap_content"> + + + + android:text="@string/simple_close" + android:textColor="@color/defaultBrand" />