Merge "Add LauncherProviderChangeListener" into ub-now-mister-ugly
This commit is contained in:
committed by
Android (Google) Code Review
commit
ef3784cf69
@@ -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;
|
||||
|
||||
@@ -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) {
|
||||
|
||||
@@ -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();
|
||||
}
|
||||
Reference in New Issue
Block a user