summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authornebkat <nebkat@gmail.com>2011-12-03 17:40:47 +0000
committerRicardo Cerqueira <cyanogenmod@cerqueira.org>2012-08-06 17:46:42 +0100
commitb79df3fec52c449a77e74d43b6cfcc1823692b03 (patch)
tree971303a29173aba0f85369569e3f54b508710ab2
parent25ffed506cfaff098462e73f5d4f6c19693f5147 (diff)
downloadandroid_packages_apps_Trebuchet-b79df3fec52c449a77e74d43b6cfcc1823692b03.tar.gz
android_packages_apps_Trebuchet-b79df3fec52c449a77e74d43b6cfcc1823692b03.tar.bz2
android_packages_apps_Trebuchet-b79df3fec52c449a77e74d43b6cfcc1823692b03.zip
Preferences: Resize any widget
Change-Id: I7ef5546f57543664d45a25eb5b9d07f303c9db0b
-rw-r--r--res/values/strings.xml2
-rw-r--r--res/xml/preferences.xml3
-rw-r--r--src/com/cyanogenmod/trebuchet/AppWidgetResizeFrame.java6
-rw-r--r--src/com/cyanogenmod/trebuchet/Workspace.java4
-rw-r--r--src/com/cyanogenmod/trebuchet/preference/PreferencesProvider.java4
5 files changed, 18 insertions, 1 deletions
diff --git a/res/values/strings.xml b/res/values/strings.xml
index 48b96fac4..b9c334a41 100644
--- a/res/values/strings.xml
+++ b/res/values/strings.xml
@@ -294,6 +294,8 @@ s -->
<string name="preferences_interface_homescreen_general_category">General</string>
<string name="preferences_interface_homescreen_general_search_title">Search Bar</string>
<string name="preferences_interface_homescreen_general_search_summary">Enable persistent search bar</string>
+ <string name="preferences_interface_homescreen_general_resize_any_widget_title">Resize any widget</string>
+ <string name="preferences_interface_homescreen_general_resize_any_widget_summary">Allow resizing of widgets that normally aren\'t resizeable</string>
<!-- Drawer -->
<string name="preferences_interface_drawer_title">Drawer</string>
diff --git a/res/xml/preferences.xml b/res/xml/preferences.xml
index 46f0af5f3..5ed3ae963 100644
--- a/res/xml/preferences.xml
+++ b/res/xml/preferences.xml
@@ -25,6 +25,9 @@
android:title="@string/preferences_interface_homescreen_general_search_title"
android:summary="@string/preferences_interface_homescreen_general_search_summary"
android:defaultValue="true" />
+ <CheckBoxPreference android:key="ui_homescreen_general_resize_any_widget"
+ android:title="@string/preferences_interface_homescreen_general_resize_any_widget_title"
+ android:summary="@string/preferences_interface_homescreen_general_resize_any_widget_summary" />
</PreferenceCategory>
</PreferenceScreen>
diff --git a/src/com/cyanogenmod/trebuchet/AppWidgetResizeFrame.java b/src/com/cyanogenmod/trebuchet/AppWidgetResizeFrame.java
index fdd8b3edd..39346f0fd 100644
--- a/src/com/cyanogenmod/trebuchet/AppWidgetResizeFrame.java
+++ b/src/com/cyanogenmod/trebuchet/AppWidgetResizeFrame.java
@@ -14,6 +14,7 @@ import android.widget.FrameLayout;
import android.widget.ImageView;
import com.cyanogenmod.trebuchet.R;
+import com.cyanogenmod.trebuchet.preference.PreferencesProvider;
public class AppWidgetResizeFrame extends FrameLayout {
private LauncherAppWidgetHostView mWidgetView;
@@ -118,6 +119,11 @@ public class AppWidgetResizeFrame extends FrameLayout {
mWidgetPaddingRight = p.right;
mWidgetPaddingBottom = p.bottom;
+ // Resize any widget
+ if (PreferencesProvider.Interface.Homescreen.getResizeAnyWidget(context)) {
+ mResizeMode = AppWidgetProviderInfo.RESIZE_BOTH;
+ }
+
if (mResizeMode == AppWidgetProviderInfo.RESIZE_HORIZONTAL) {
mTopHandle.setVisibility(GONE);
mBottomHandle.setVisibility(GONE);
diff --git a/src/com/cyanogenmod/trebuchet/Workspace.java b/src/com/cyanogenmod/trebuchet/Workspace.java
index b0ebfc6e8..e8e5bb9f4 100644
--- a/src/com/cyanogenmod/trebuchet/Workspace.java
+++ b/src/com/cyanogenmod/trebuchet/Workspace.java
@@ -260,6 +260,7 @@ public class Workspace extends SmoothPagedView
// Preferences
private boolean mShowSearchBar;
+ private boolean mResizeAnyWidget;
/**
* Used to inflate the Workspace from XML.
@@ -341,6 +342,7 @@ public class Workspace extends SmoothPagedView
// Preferences
mShowSearchBar = PreferencesProvider.Interface.Homescreen.getShowSearchBar(context);
+ mResizeAnyWidget = PreferencesProvider.Interface.Homescreen.getResizeAnyWidget(context);
mLauncher = (Launcher) context;
initWorkspace();
@@ -2272,7 +2274,7 @@ public class Workspace extends SmoothPagedView
final LauncherAppWidgetHostView hostView = (LauncherAppWidgetHostView) cell;
AppWidgetProviderInfo pinfo = hostView.getAppWidgetInfo();
if (pinfo != null &&
- pinfo.resizeMode != AppWidgetProviderInfo.RESIZE_NONE) {
+ pinfo.resizeMode != AppWidgetProviderInfo.RESIZE_NONE || mResizeAnyWidget) {
final Runnable addResizeFrame = new Runnable() {
public void run() {
DragLayer dragLayer = mLauncher.getDragLayer();
diff --git a/src/com/cyanogenmod/trebuchet/preference/PreferencesProvider.java b/src/com/cyanogenmod/trebuchet/preference/PreferencesProvider.java
index f6cc9d5d8..efab5fe9a 100644
--- a/src/com/cyanogenmod/trebuchet/preference/PreferencesProvider.java
+++ b/src/com/cyanogenmod/trebuchet/preference/PreferencesProvider.java
@@ -13,6 +13,10 @@ public final class PreferencesProvider {
final SharedPreferences preferences = context.getSharedPreferences(PREFERENCES_KEY, 0);
return preferences.getBoolean("ui_homescreen_general_search", true);
}
+ public static boolean getResizeAnyWidget(Context context) {
+ final SharedPreferences preferences = context.getSharedPreferences(PREFERENCES_KEY, 0);
+ return preferences.getBoolean("ui_homescreen_general_resize_any_widget", false);
+ }
}
public static class Drawer {