Make widget themes similar to app themes

pull/253/head
Alex Baker 10 years ago
parent 3d64724d41
commit 2127fc2449

@ -92,7 +92,15 @@ public class WidgetUpdateService extends InjectingService {
private RemoteViews buildUpdate(Context context, int widgetId) {
boolean darkTheme = preferences.getBoolean(WidgetConfigActivity.PREF_DARK_THEME + widgetId, false);
RemoteViews views = getThemedRemoteViews(context, darkTheme);
/**
* The reason we use a bunch of different but almost identical layouts is that there is a bug with
* Android 2.1 (level 7) that doesn't allow setting backgrounds on remote views. I know it's lame,
* but I didn't see a better solution. Alternatively, we could disallow theming widgets on
* Android 2.1.
*/
RemoteViews views = new RemoteViews(context.getPackageName(), darkTheme
? R.layout.widget_initialized_dark
: R.layout.widget_initialized);
int numberOfTasks = NUM_VISIBLE_TASKS;
@ -176,35 +184,4 @@ public class WidgetUpdateService extends InjectingService {
return views;
}
/**
* The reason we use a bunch of different but almost identical layouts is that there is a bug with
* Android 2.1 (level 7) that doesn't allow setting backgrounds on remote views. I know it's lame,
* but I didn't see a better solution. Alternatively, we could disallow theming widgets on
* Android 2.1.
*/
private RemoteViews getThemedRemoteViews(Context context, boolean darkTheme) {
String packageName = context.getPackageName();
Resources r = context.getResources();
int layout;
RemoteViews views;
int titleColor;
int buttonDrawable;
if (darkTheme) {
layout = R.layout.widget_initialized_dark;
titleColor = r.getColor(R.color.widget_text_color_dark);
buttonDrawable = R.drawable.ic_action_add_light;
} else {
layout = R.layout.widget_initialized;
titleColor = r.getColor(R.color.widget_text_color_light);
buttonDrawable = R.drawable.ic_action_add;
}
views = new RemoteViews(packageName, layout);
views.setTextColor(R.id.widget_title, titleColor);
views.setInt(R.id.widget_button, "setImageResource", buttonDrawable);
return views;
}
}

@ -50,13 +50,13 @@
android:id="@+id/widget_header_separator"
android:layout_width="fill_parent"
android:layout_height="1px"
android:background="@color/dark_blue_theme_color"/>
android:background="@android:color/white"/>
<ListView
android:id="@+id/list_view"
android:layout_height="match_parent"
android:layout_width="match_parent"
android:background="@color/widget_body_dark"/>
android:background="@color/widget_body_dark" />
<TextView
android:id="@+id/empty_view"

@ -19,7 +19,7 @@
android:gravity="top"
android:orientation="horizontal"
android:padding="3dp"
android:background="@color/widget_header_light">
android:background="@color/primary">
<TextView
android:id="@+id/widget_title"
@ -27,7 +27,7 @@
android:layout_height="39dip"
android:layout_gravity="left|center_vertical"
android:paddingLeft="2dip"
android:textColor="@color/widget_text_color_light"
android:textColor="@android:color/white"
android:textSize="16sp"
android:textStyle="bold"
android:maxLines="2"
@ -41,17 +41,11 @@
android:layout_height="39dip"
android:layout_gravity="right|center_vertical"
android:background="@android:color/transparent"
android:src="@drawable/ic_action_add"
android:src="@drawable/ic_action_add_light"
android:scaleType="fitCenter"/>
</LinearLayout>
<ImageView
android:id="@+id/widget_header_separator"
android:layout_width="fill_parent"
android:layout_height="1px"
android:background="@color/dark_blue_theme_color"/>
<ListView
android:id="@+id/list_view"
android:layout_height="match_parent"

@ -19,15 +19,16 @@
android:layout_height="39dip"
android:orientation="horizontal"
android:padding="3dp"
android:background="@color/widget_header_light">
android:background="@color/primary">
<TextView
android:id="@+id/widget_title"
android:layout_width="fill_parent"
android:layout_width="0dp"
android:layout_height="39dip"
android:layout_gravity="left|center_vertical"
android:paddingLeft="2dip"
android:textColor="@color/widget_text_color_light"
android:paddingRight="0dp"
android:textColor="@android:color/white"
android:textSize="16sp"
android:textStyle="bold"
android:maxLines="2"
@ -41,17 +42,11 @@
android:layout_height="39dip"
android:layout_gravity="right|center_vertical"
android:background="@android:color/transparent"
android:src="@drawable/ic_action_add"
android:src="@drawable/ic_action_add_light"
android:scaleType="fitCenter"/>
</LinearLayout>
<ImageView
android:id="@+id/widget_header_separator"
android:layout_width="fill_parent"
android:layout_height="1px"
android:background="@color/dark_blue_theme_color"/>
<LinearLayout
android:id="@+id/taskbody"
android:layout_width="fill_parent"

@ -27,7 +27,7 @@
android:layout_height="39dip"
android:layout_gravity="left|center_vertical"
android:paddingLeft="2dip"
android:textColor="@color/widget_text_color_light"
android:textColor="@android:color/white"
android:textSize="16sp"
android:textStyle="bold"
android:maxLines="2"
@ -41,7 +41,7 @@
android:layout_height="39dip"
android:layout_gravity="right|center_vertical"
android:background="@android:color/transparent"
android:src="@drawable/ic_action_add"
android:src="@drawable/ic_action_add_light"
android:scaleType="fitCenter"/>
</LinearLayout>
@ -50,7 +50,7 @@
android:id="@+id/widget_header_separator"
android:layout_width="fill_parent"
android:layout_height="1px"
android:background="@color/dark_blue_theme_color"/>
android:background="@android:color/white"/>
<LinearLayout
android:id="@+id/taskbody"

@ -17,20 +17,22 @@
android:layout_height="39dip"
android:orientation="horizontal"
android:padding="3dp"
android:background="@color/widget_header_light">
android:background="@color/primary">
<TextView
android:id="@+id/widget_title"
android:layout_width="fill_parent"
android:layout_width="0dp"
android:layout_height="39dip"
android:layout_gravity="left|center_vertical"
android:paddingLeft="2dip"
android:textColor="@color/widget_text_color_light"
android:paddingRight="0dp"
android:textColor="@android:color/white"
android:textSize="16sp"
android:textStyle="bold"
android:maxLines="2"
android:layout_weight="1"
android:gravity="left|center_vertical"
android:text="@string/app_name"
android:ellipsize="end" />
<ImageButton
@ -39,17 +41,11 @@
android:layout_height="39dip"
android:layout_gravity="right|center_vertical"
android:background="@android:color/transparent"
android:src="@drawable/ic_action_add"
android:scaleType="fitCenter"/>
android:src="@drawable/ic_action_add_light"
android:scaleType="fitCenter" />
</LinearLayout>
<ImageView
android:id="@+id/widget_header_separator"
android:layout_width="fill_parent"
android:layout_height="1px"
android:background="@color/dark_blue_theme_color"/>
<LinearLayout android:id="@+id/taskbody"
android:layout_width="fill_parent"
android:layout_height="120dip"

@ -20,10 +20,9 @@
<color name="widget_text_color_light">#535353</color>
<color name="widget_text_color_dark">#ffffff</color>
<color name="widget_header_light">#dde0e0e0</color>
<color name="widget_header_dark">#dd000000</color>
<color name="widget_body_light">#ddffffff</color>
<color name="widget_body_dark">#dd000000</color>
<color name="widget_header_dark">#000000</color>
<color name="widget_body_light">#ffffff</color>
<color name="widget_body_dark">#000000</color>
<color name="task_row_bg_dark_pressed">#303030</color>
<color name="task_row_bg_white_pressed">#dde1eb</color>

Loading…
Cancel
Save