summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAnjali Koppal <akoppal@google.com>2014-03-17 23:51:20 +0000
committerAndroid Git Automerger <android-git-automerger@android.com>2014-03-17 23:51:20 +0000
commitb6628d4271f1385deb9677ddb03c46b578ed3a98 (patch)
tree86f0a6ed832f6dea3b894ae0270eff6e8a0ce28a
parent4f4864ed0bce650b9f01572d4fa65ef948ef2f62 (diff)
parent1d719c11fb71b2b4d46be821b096242697103624 (diff)
downloadandroid_packages_apps_Trebuchet-b6628d4271f1385deb9677ddb03c46b578ed3a98.tar.gz
android_packages_apps_Trebuchet-b6628d4271f1385deb9677ddb03c46b578ed3a98.tar.bz2
android_packages_apps_Trebuchet-b6628d4271f1385deb9677ddb03c46b578ed3a98.zip
am 1d719c11: am ef3784cf: Merge "Add LauncherProviderChangeListener" into ub-now-mister-ugly
* commit '1d719c11fb71b2b4d46be821b096242697103624': Add LauncherProviderChangeListener
-rw-r--r--src/com/android/launcher3/Launcher.java7
-rw-r--r--src/com/android/launcher3/LauncherProvider.java9
-rw-r--r--src/com/android/launcher3/LauncherProviderChangeListener.java11
3 files changed, 25 insertions, 2 deletions
diff --git a/src/com/android/launcher3/Launcher.java b/src/com/android/launcher3/Launcher.java
index c18574ad5..2d1d2f6ed 100644
--- a/src/com/android/launcher3/Launcher.java
+++ b/src/com/android/launcher3/Launcher.java
@@ -120,7 +120,7 @@ import java.util.concurrent.atomic.AtomicInteger;
*/
public class Launcher extends Activity
implements View.OnClickListener, OnLongClickListener, LauncherModel.Callbacks,
- View.OnTouchListener, PageSwitchListener {
+ View.OnTouchListener, PageSwitchListener, LauncherProviderChangeListener {
static final String TAG = "Launcher";
static final boolean LOGD = false;
@@ -394,7 +394,7 @@ public class Launcher extends Activity
LauncherAppState.setApplicationContext(getApplicationContext());
LauncherAppState app = LauncherAppState.getInstance();
-
+ LauncherAppState.getLauncherProvider().setLauncherProviderChangeListener(this);
// Determine the dynamic grid properties
Point smallestSize = new Point();
Point largestSize = new Point();
@@ -496,6 +496,9 @@ public class Launcher extends Activity
}
}
+ @Override
+ public void onLauncherProviderChange() { }
+
protected void onUserLeaveHint() {
super.onUserLeaveHint();
sPausedFromUserAction = true;
diff --git a/src/com/android/launcher3/LauncherProvider.java b/src/com/android/launcher3/LauncherProvider.java
index e9e35958a..2a645255c 100644
--- a/src/com/android/launcher3/LauncherProvider.java
+++ b/src/com/android/launcher3/LauncherProvider.java
@@ -95,6 +95,8 @@ public class LauncherProvider extends ContentProvider {
private static final String ACTION_APPWIDGET_DEFAULT_WORKSPACE_CONFIGURE =
"com.android.launcher.action.APPWIDGET_DEFAULT_WORKSPACE_CONFIGURE";
+ private LauncherProviderChangeListener mListener;
+
/**
* {@link Uri} triggered at any registered {@link android.database.ContentObserver} when
* {@link AppWidgetHost#deleteHost()} is called during database creation.
@@ -118,6 +120,10 @@ public class LauncherProvider extends ContentProvider {
return mOpenHelper.wasNewDbCreated();
}
+ public void setLauncherProviderChangeListener(LauncherProviderChangeListener listener) {
+ mListener = listener;
+ }
+
@Override
public String getType(Uri uri) {
SqlArguments args = new SqlArguments(uri, null, null);
@@ -244,6 +250,9 @@ public class LauncherProvider extends ContentProvider {
// always notify the backup agent
LauncherBackupAgentHelper.dataChanged(getContext());
+ if (mListener != null) {
+ mListener.onLauncherProviderChange();
+ }
}
private void addModifiedTime(ContentValues values) {
diff --git a/src/com/android/launcher3/LauncherProviderChangeListener.java b/src/com/android/launcher3/LauncherProviderChangeListener.java
new file mode 100644
index 000000000..0de96fbc4
--- /dev/null
+++ b/src/com/android/launcher3/LauncherProviderChangeListener.java
@@ -0,0 +1,11 @@
+package com.android.launcher3;
+
+/**
+ * This class is a listener for {@link LauncherProvider} changes. It gets notified in the
+ * sendNotify method. This listener is needed because by default the Launcher suppresses
+ * standard data change callbacks.
+ */
+public interface LauncherProviderChangeListener {
+
+ public void onLauncherProviderChange();
+}