Bladeren bron

Tint background on drawer/user info as fallback

tobiasKaminsky 7 jaren geleden
bovenliggende
commit
0dcefcd088

+ 8 - 2
src/main/java/com/owncloud/android/ui/activity/DrawerActivity.java

@@ -30,7 +30,9 @@ import android.accounts.AccountManagerFuture;
 import android.content.Intent;
 import android.content.SharedPreferences;
 import android.content.res.Configuration;
+import android.graphics.drawable.ColorDrawable;
 import android.graphics.drawable.Drawable;
+import android.graphics.drawable.LayerDrawable;
 import android.os.Build;
 import android.os.Bundle;
 import android.os.Handler;
@@ -1050,10 +1052,14 @@ public abstract class DrawerActivity extends ToolbarActivity implements DisplayU
                     SimpleTarget target = new SimpleTarget<Drawable>() {
                         @Override
                         public void onResourceReady(Drawable resource, GlideAnimation glideAnimation) {
+                            int primaryColor = ThemeUtils.primaryColor(getAccount());
+                            Drawable[] drawables = {new ColorDrawable(primaryColor), resource};
+                            LayerDrawable layerDrawable = new LayerDrawable(drawables);
+                            
                             if (Build.VERSION.SDK_INT < Build.VERSION_CODES.JELLY_BEAN) {
-                                navigationHeader.setBackgroundDrawable(resource);
+                                navigationHeader.setBackgroundDrawable(layerDrawable);
                             } else {
-                                navigationHeader.setBackground(resource);
+                                navigationHeader.setBackground(layerDrawable);
                             }
                         }
                     };

+ 8 - 2
src/main/java/com/owncloud/android/ui/activity/UserInfoActivity.java

@@ -33,7 +33,9 @@ import android.content.ContentResolver;
 import android.content.DialogInterface;
 import android.content.Intent;
 import android.graphics.PorterDuff;
+import android.graphics.drawable.ColorDrawable;
 import android.graphics.drawable.Drawable;
+import android.graphics.drawable.LayerDrawable;
 import android.os.Build;
 import android.os.Bundle;
 import android.support.annotation.ColorInt;
@@ -285,10 +287,14 @@ public class UserInfoActivity extends FileActivity {
                     SimpleTarget target = new SimpleTarget<Drawable>() {
                         @Override
                         public void onResourceReady(Drawable resource, GlideAnimation glideAnimation) {
+                            int primaryColor = ThemeUtils.primaryColor(getAccount());
+                            Drawable[] drawables = {new ColorDrawable(primaryColor), resource};
+                            LayerDrawable layerDrawable = new LayerDrawable(drawables);
+                            
                             if (Build.VERSION.SDK_INT < Build.VERSION_CODES.JELLY_BEAN) {
-                                appBar.setBackgroundDrawable(resource);
+                                appBar.setBackgroundDrawable(layerDrawable);
                             } else {
-                                appBar.setBackground(resource);
+                                appBar.setBackground(layerDrawable);
                             }
                         }
                     };