Dynamic widget separator color

pull/207/head
M66B 2 years ago
parent 85003d0f36
commit 9b428a27e4

@ -41,6 +41,8 @@ public class WidgetUnified extends AppWidgetProvider {
SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(context); SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(context);
int colorWidgetForeground = context.getResources().getColor(R.color.colorWidgetForeground); int colorWidgetForeground = context.getResources().getColor(R.color.colorWidgetForeground);
int lightColorSeparator = context.getResources().getColor(R.color.lightColorSeparator);
int darkColorSeparator = context.getResources().getColor(R.color.darkColorSeparator);
for (int appWidgetId : appWidgetIds) { for (int appWidgetId : appWidgetIds) {
String name = prefs.getString("widget." + appWidgetId + ".name", null); String name = prefs.getString("widget." + appWidgetId + ".name", null);
@ -138,6 +140,7 @@ public class WidgetUnified extends AppWidgetProvider {
views.setInt(R.id.background, "setBackgroundColor", background); views.setInt(R.id.background, "setBackgroundColor", background);
views.setTextColor(R.id.title, colorWidgetForeground); views.setTextColor(R.id.title, colorWidgetForeground);
views.setInt(R.id.separator, "setBackgroundColor", lightColorSeparator);
views.setImageViewResource(R.id.refresh, R.drawable.twotone_sync_24_white); views.setImageViewResource(R.id.refresh, R.drawable.twotone_sync_24_white);
views.setImageViewResource(R.id.compose, R.drawable.twotone_edit_24_white); views.setImageViewResource(R.id.compose, R.drawable.twotone_edit_24_white);
} else { } else {
@ -150,6 +153,8 @@ public class WidgetUnified extends AppWidgetProvider {
int fg = (lum > 0.7f ? Color.BLACK : colorWidgetForeground); int fg = (lum > 0.7f ? Color.BLACK : colorWidgetForeground);
views.setTextColor(R.id.title, fg); views.setTextColor(R.id.title, fg);
views.setInt(R.id.separator, "setBackgroundColor",
lum > 0.7f ? darkColorSeparator : lightColorSeparator);
views.setImageViewResource(R.id.refresh, lum > 0.7f views.setImageViewResource(R.id.refresh, lum > 0.7f
? R.drawable.twotone_sync_24_black : R.drawable.twotone_sync_24_white); ? R.drawable.twotone_sync_24_black : R.drawable.twotone_sync_24_white);
views.setImageViewResource(R.id.compose, lum > 0.7f views.setImageViewResource(R.id.compose, lum > 0.7f

@ -116,6 +116,7 @@ public class WidgetUnifiedRemoteViewsFactory implements RemoteViewsService.Remot
if (lum > 0.7f) { if (lum > 0.7f) {
colorWidgetForeground = ColorUtils.blendARGB(colorWidgetForeground, Color.BLACK, 1.0f); colorWidgetForeground = ColorUtils.blendARGB(colorWidgetForeground, Color.BLACK, 1.0f);
colorWidgetRead = ColorUtils.blendARGB(colorWidgetRead, Color.BLACK, 1.0f); colorWidgetRead = ColorUtils.blendARGB(colorWidgetRead, Color.BLACK, 1.0f);
colorSeparator = ContextCompat.getColor(context, R.color.darkColorSeparator);
} }
pro = ActivityBilling.isPro(context); pro = ActivityBilling.isPro(context);
@ -232,6 +233,7 @@ public class WidgetUnifiedRemoteViewsFactory implements RemoteViewsService.Remot
views.setTextColor(idTime, textColor); views.setTextColor(idTime, textColor);
views.setTextColor(idSubject, textColor); views.setTextColor(idSubject, textColor);
views.setTextColor(idAccount, textColor); views.setTextColor(idAccount, textColor);
views.setInt(R.id.separator, "setBackgroundColor", colorSeparator);
views.setViewVisibility(idAccount, account < 0 ? View.VISIBLE : View.GONE); views.setViewVisibility(idAccount, account < 0 ? View.VISIBLE : View.GONE);

@ -3,74 +3,86 @@
android:id="@+id/llMessage" android:id="@+id/llMessage"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:orientation="horizontal"> android:orientation="vertical">
<FrameLayout
android:id="@+id/stripe"
android:layout_width="3dp"
android:layout_height="match_parent"
android:background="@android:color/darker_gray"
android:layout_marginEnd="3dp" />
<LinearLayout <LinearLayout
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:orientation="vertical" android:orientation="horizontal">
android:paddingTop="6dp"
android:paddingBottom="6dp"> <FrameLayout
android:id="@+id/stripe"
android:layout_width="3dp"
android:layout_height="match_parent"
android:layout_marginEnd="3dp"
android:background="@color/grey" />
<LinearLayout <LinearLayout
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:orientation="horizontal"> android:orientation="vertical"
android:paddingTop="6dp"
android:paddingBottom="6dp">
<TextView <LinearLayout
android:id="@+id/tvFrom" android:layout_width="match_parent"
android:layout_width="0dp"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_weight="1" android:orientation="horizontal">
android:ellipsize="end"
android:maxLines="1"
android:text="From"
android:textAppearance="@style/TextAppearance.AppCompat.Small"
android:textColor="@color/colorWidgetForeground" />
<TextView <TextView
android:id="@+id/tvTime" android:id="@+id/tvFrom"
android:layout_width="wrap_content" android:layout_width="0dp"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_marginStart="6dp" android:layout_weight="1"
android:maxLines="1" android:ellipsize="end"
android:text="12:34" android:maxLines="1"
android:textAppearance="@style/TextAppearance.AppCompat.Small" android:text="From"
android:textColor="@color/colorWidgetForeground" /> android:textAppearance="@style/TextAppearance.AppCompat.Small"
</LinearLayout> android:textColor="@color/colorWidgetForeground" />
<LinearLayout <TextView
android:layout_width="match_parent" android:id="@+id/tvTime"
android:layout_height="wrap_content" android:layout_width="wrap_content"
android:orientation="horizontal"> android:layout_height="wrap_content"
android:layout_marginStart="6dp"
android:maxLines="1"
android:text="12:34"
android:textAppearance="@style/TextAppearance.AppCompat.Small"
android:textColor="@color/colorWidgetForeground" />
</LinearLayout>
<TextView <LinearLayout
android:id="@+id/tvSubject" android:layout_width="match_parent"
android:layout_width="0dp"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_weight="1" android:orientation="horizontal">
android:ellipsize="end"
android:maxLines="1"
android:text="Subject"
android:textAppearance="@style/TextAppearance.AppCompat.Small"
android:textColor="@color/colorWidgetForeground" />
<TextView <TextView
android:id="@+id/tvAccount" android:id="@+id/tvSubject"
android:layout_width="wrap_content" android:layout_width="0dp"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_marginStart="6dp" android:layout_weight="1"
android:maxLines="1" android:ellipsize="end"
android:text="Account" android:maxLines="1"
android:textAppearance="@style/TextAppearance.AppCompat.Small" android:text="Subject"
android:textColor="@color/colorWidgetForeground" /> android:textAppearance="@style/TextAppearance.AppCompat.Small"
android:textColor="@color/colorWidgetForeground" />
<TextView
android:id="@+id/tvAccount"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="6dp"
android:maxLines="1"
android:text="Account"
android:textAppearance="@style/TextAppearance.AppCompat.Small"
android:textColor="@color/colorWidgetForeground" />
</LinearLayout>
</LinearLayout> </LinearLayout>
</LinearLayout> </LinearLayout>
<FrameLayout
android:id="@+id/separator"
android:layout_width="match_parent"
android:layout_height="1dp"
android:background="@color/grey" />
</LinearLayout> </LinearLayout>

@ -54,14 +54,13 @@
android:id="@+id/separator" android:id="@+id/separator"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="1dp" android:layout_height="1dp"
android:background="@color/colorWidgetRead" /> android:background="@color/grey" />
<ListView <ListView
android:id="@+id/lv" android:id="@+id/lv"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_marginBottom="6dp" android:layout_marginBottom="6dp"
android:divider="@color/colorWidgetRead" android:divider="@null" />
android:dividerHeight="1dp" />
</LinearLayout> </LinearLayout>
</FrameLayout> </FrameLayout>
Loading…
Cancel
Save