Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/stefan-niedermann/nextcloud-deck.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStefan Niedermann <info@niedermann.it>2020-04-09 23:42:13 +0300
committerStefan Niedermann <info@niedermann.it>2020-04-09 23:42:13 +0300
commit885a5e7416d0a17af720b8aa6d0cbc232c433ef7 (patch)
tree663c72b48cdcb49fa864abcc12adf85bf876c387 /app/src/main/java
parentf130244d08627549cb4c1d810411a2864c85e313 (diff)
#317 Adjust theme for each account
main floating action button, settings, license button Signed-off-by: Stefan Niedermann <info@niedermann.it>
Diffstat (limited to 'app/src/main/java')
-rw-r--r--app/src/main/java/it/niedermann/nextcloud/deck/ui/MainActivity.java5
-rw-r--r--app/src/main/java/it/niedermann/nextcloud/deck/ui/about/AboutFragmentLicenseTab.java26
-rw-r--r--app/src/main/java/it/niedermann/nextcloud/deck/ui/settings/SettingsActivity.java15
-rw-r--r--app/src/main/java/it/niedermann/nextcloud/deck/ui/settings/SettingsFragment.java1
4 files changed, 39 insertions, 8 deletions
diff --git a/app/src/main/java/it/niedermann/nextcloud/deck/ui/MainActivity.java b/app/src/main/java/it/niedermann/nextcloud/deck/ui/MainActivity.java
index efc998bc8..4a7171ede 100644
--- a/app/src/main/java/it/niedermann/nextcloud/deck/ui/MainActivity.java
+++ b/app/src/main/java/it/niedermann/nextcloud/deck/ui/MainActivity.java
@@ -3,6 +3,7 @@ package it.niedermann.nextcloud.deck.ui;
import android.content.Context;
import android.content.Intent;
import android.content.SharedPreferences;
+import android.content.res.ColorStateList;
import android.database.sqlite.SQLiteConstraintException;
import android.graphics.Color;
import android.net.ConnectivityManager;
@@ -306,7 +307,7 @@ public class MainActivity extends AbstractThemableActivity implements EditStackL
syncManager.getServerVersion(new IResponseCallback<Capabilities>(currentAccount) {
@Override
public void onResponse(Capabilities response) {
- Application.setNextcloudTheme(MainActivity.this, Color.parseColor(currentAccount.getColor()), Color.parseColor(currentAccount.getTextColor()));
+ runOnUiThread(() -> Application.setNextcloudTheme(MainActivity.this, Color.parseColor(currentAccount.getColor()), Color.parseColor(currentAccount.getTextColor())));
}
});
}).start();
@@ -342,7 +343,7 @@ public class MainActivity extends AbstractThemableActivity implements EditStackL
binding.addStackButton.setBackgroundColor(mainColor);
binding.addStackButton.setColorFilter(textColor);
headerBinding.drawerHeaderView.setBackgroundColor(mainColor);
- binding.fab.setBackgroundColor(mainColor);
+ binding.fab.setSupportBackgroundTintList(new ColorStateList(new int[][]{new int[]{}}, new int[]{mainColor}));
binding.fab.setColorFilter(textColor);
}
diff --git a/app/src/main/java/it/niedermann/nextcloud/deck/ui/about/AboutFragmentLicenseTab.java b/app/src/main/java/it/niedermann/nextcloud/deck/ui/about/AboutFragmentLicenseTab.java
index 09481a865..62398a90f 100644
--- a/app/src/main/java/it/niedermann/nextcloud/deck/ui/about/AboutFragmentLicenseTab.java
+++ b/app/src/main/java/it/niedermann/nextcloud/deck/ui/about/AboutFragmentLicenseTab.java
@@ -10,19 +10,41 @@ import android.view.ViewGroup;
import androidx.annotation.NonNull;
import androidx.fragment.app.Fragment;
+import it.niedermann.nextcloud.deck.Application;
import it.niedermann.nextcloud.deck.R;
import it.niedermann.nextcloud.deck.databinding.FragmentAboutLicenseTabBinding;
import static it.niedermann.nextcloud.deck.util.SpannableUtil.setTextWithURL;
-public class AboutFragmentLicenseTab extends Fragment {
+public class AboutFragmentLicenseTab extends Fragment implements Application.NextcloudTheme {
+
+ private FragmentAboutLicenseTabBinding binding;
@Override
public View onCreateView(@NonNull LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
- FragmentAboutLicenseTabBinding binding = FragmentAboutLicenseTabBinding.inflate(inflater, container, false);
+ binding = FragmentAboutLicenseTabBinding.inflate(inflater, container, false);
+ Application.registerThemableComponent(requireContext(), this);
setTextWithURL(binding.aboutIconsDisclaimerAppIcon, getResources(), R.string.about_icons_disclaimer_app_icon, R.string.about_app_icon_author_link_label, R.string.url_about_icon_author);
setTextWithURL(binding.aboutIconsDisclaimerMdiIcons, getResources(), R.string.about_icons_disclaimer_mdi_icons, R.string.about_icons_disclaimer_mdi, R.string.url_about_icons_disclaimer_mdi);
binding.aboutAppLicenseButton.setOnClickListener((v) -> startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse(getString(R.string.url_license)))));
return binding.getRoot();
}
+
+ @Override
+ public void onResume() {
+ Application.registerThemableComponent(requireContext(), this);
+ super.onResume();
+ }
+
+ @Override
+ public void onPause() {
+ Application.deregisterThemableComponent(this);
+ super.onPause();
+ }
+
+ @Override
+ public void applyNextcloudTheme(int mainColor, int textColor) {
+ binding.aboutAppLicenseButton.setBackgroundColor(mainColor);
+ binding.aboutAppLicenseButton.setTextColor(textColor);
+ }
} \ No newline at end of file
diff --git a/app/src/main/java/it/niedermann/nextcloud/deck/ui/settings/SettingsActivity.java b/app/src/main/java/it/niedermann/nextcloud/deck/ui/settings/SettingsActivity.java
index 084de270f..d521750ee 100644
--- a/app/src/main/java/it/niedermann/nextcloud/deck/ui/settings/SettingsActivity.java
+++ b/app/src/main/java/it/niedermann/nextcloud/deck/ui/settings/SettingsActivity.java
@@ -3,14 +3,16 @@ package it.niedermann.nextcloud.deck.ui.settings;
import android.os.Bundle;
import androidx.annotation.Nullable;
-import androidx.appcompat.app.AppCompatActivity;
import it.niedermann.nextcloud.deck.Application;
import it.niedermann.nextcloud.deck.R;
import it.niedermann.nextcloud.deck.databinding.ActivitySettingsBinding;
+import it.niedermann.nextcloud.deck.ui.AbstractThemableActivity;
import it.niedermann.nextcloud.deck.ui.exception.ExceptionHandler;
-public class SettingsActivity extends AppCompatActivity {
+public class SettingsActivity extends AbstractThemableActivity {
+
+ private ActivitySettingsBinding binding;
@Override
protected void onCreate(@Nullable Bundle savedInstanceState) {
@@ -18,7 +20,7 @@ public class SettingsActivity extends AppCompatActivity {
super.onCreate(savedInstanceState);
Thread.currentThread().setUncaughtExceptionHandler(new ExceptionHandler(this));
- ActivitySettingsBinding binding = ActivitySettingsBinding.inflate(getLayoutInflater());
+ binding = ActivitySettingsBinding.inflate(getLayoutInflater());
setContentView(binding.getRoot());
setSupportActionBar(binding.toolbar);
@@ -35,4 +37,11 @@ public class SettingsActivity extends AppCompatActivity {
finish(); // close this activity as oppose to navigating up
return true;
}
+
+ @Override
+ public void applyNextcloudTheme(int mainColor, int textColor) {
+ super.applyNextcloudTheme(mainColor, textColor);
+ binding.toolbar.setBackgroundColor(mainColor);
+ binding.toolbar.setTitleTextColor(textColor);
+ }
}
diff --git a/app/src/main/java/it/niedermann/nextcloud/deck/ui/settings/SettingsFragment.java b/app/src/main/java/it/niedermann/nextcloud/deck/ui/settings/SettingsFragment.java
index beb552513..cabdd1021 100644
--- a/app/src/main/java/it/niedermann/nextcloud/deck/ui/settings/SettingsFragment.java
+++ b/app/src/main/java/it/niedermann/nextcloud/deck/ui/settings/SettingsFragment.java
@@ -53,6 +53,5 @@ public class SettingsFragment extends PreferenceFragmentCompat {
} else {
DeckLog.error("Could not find preference with key: \"" + getString(R.string.pref_key_background_sync) + "\"");
}
-
}
}