Loading core/java/android/service/dreams/DreamActivity.java +14 −4 Original line number Diff line number Diff line Loading @@ -44,6 +44,8 @@ import android.text.TextUtils; public class DreamActivity extends Activity { static final String EXTRA_CALLBACK = "binder"; static final String EXTRA_DREAM_TITLE = "title"; @Nullable private DreamService.DreamActivityCallbacks mCallback; public DreamActivity() {} Loading @@ -57,11 +59,19 @@ public class DreamActivity extends Activity { } final Bundle extras = getIntent().getExtras(); final DreamService.DreamActivityCallback callback = (DreamService.DreamActivityCallback) extras.getBinder(EXTRA_CALLBACK); mCallback = (DreamService.DreamActivityCallbacks) extras.getBinder(EXTRA_CALLBACK); if (callback != null) { callback.onActivityCreated(this); if (mCallback != null) { mCallback.onActivityCreated(this); } } @Override public void onDestroy() { if (mCallback != null) { mCallback.onActivityDestroyed(); } super.onDestroy(); } } core/java/android/service/dreams/DreamService.java +9 −3 Original line number Diff line number Diff line Loading @@ -1295,7 +1295,7 @@ public class DreamService extends Service implements Window.Callback { Intent i = new Intent(this, DreamActivity.class); i.setPackage(getApplicationContext().getPackageName()); i.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); i.putExtra(DreamActivity.EXTRA_CALLBACK, new DreamActivityCallback(mDreamToken)); i.putExtra(DreamActivity.EXTRA_CALLBACK, new DreamActivityCallbacks(mDreamToken)); final ServiceInfo serviceInfo = fetchServiceInfo(this, new ComponentName(this, getClass())); i.putExtra(DreamActivity.EXTRA_DREAM_TITLE, fetchDreamLabel(this, serviceInfo)); Loading Loading @@ -1488,10 +1488,10 @@ public class DreamService extends Service implements Window.Callback { } /** @hide */ final class DreamActivityCallback extends Binder { final class DreamActivityCallbacks extends Binder { private final IBinder mActivityDreamToken; DreamActivityCallback(IBinder token) { DreamActivityCallbacks(IBinder token) { mActivityDreamToken = token; } Loading @@ -1516,6 +1516,12 @@ public class DreamService extends Service implements Window.Callback { mActivity = activity; onWindowCreated(activity.getWindow()); } // If DreamActivity is destroyed, wake up from Dream. void onActivityDestroyed() { mActivity = null; onDestroy(); } } /** Loading Loading
core/java/android/service/dreams/DreamActivity.java +14 −4 Original line number Diff line number Diff line Loading @@ -44,6 +44,8 @@ import android.text.TextUtils; public class DreamActivity extends Activity { static final String EXTRA_CALLBACK = "binder"; static final String EXTRA_DREAM_TITLE = "title"; @Nullable private DreamService.DreamActivityCallbacks mCallback; public DreamActivity() {} Loading @@ -57,11 +59,19 @@ public class DreamActivity extends Activity { } final Bundle extras = getIntent().getExtras(); final DreamService.DreamActivityCallback callback = (DreamService.DreamActivityCallback) extras.getBinder(EXTRA_CALLBACK); mCallback = (DreamService.DreamActivityCallbacks) extras.getBinder(EXTRA_CALLBACK); if (callback != null) { callback.onActivityCreated(this); if (mCallback != null) { mCallback.onActivityCreated(this); } } @Override public void onDestroy() { if (mCallback != null) { mCallback.onActivityDestroyed(); } super.onDestroy(); } }
core/java/android/service/dreams/DreamService.java +9 −3 Original line number Diff line number Diff line Loading @@ -1295,7 +1295,7 @@ public class DreamService extends Service implements Window.Callback { Intent i = new Intent(this, DreamActivity.class); i.setPackage(getApplicationContext().getPackageName()); i.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); i.putExtra(DreamActivity.EXTRA_CALLBACK, new DreamActivityCallback(mDreamToken)); i.putExtra(DreamActivity.EXTRA_CALLBACK, new DreamActivityCallbacks(mDreamToken)); final ServiceInfo serviceInfo = fetchServiceInfo(this, new ComponentName(this, getClass())); i.putExtra(DreamActivity.EXTRA_DREAM_TITLE, fetchDreamLabel(this, serviceInfo)); Loading Loading @@ -1488,10 +1488,10 @@ public class DreamService extends Service implements Window.Callback { } /** @hide */ final class DreamActivityCallback extends Binder { final class DreamActivityCallbacks extends Binder { private final IBinder mActivityDreamToken; DreamActivityCallback(IBinder token) { DreamActivityCallbacks(IBinder token) { mActivityDreamToken = token; } Loading @@ -1516,6 +1516,12 @@ public class DreamService extends Service implements Window.Callback { mActivity = activity; onWindowCreated(activity.getWindow()); } // If DreamActivity is destroyed, wake up from Dream. void onActivityDestroyed() { mActivity = null; onDestroy(); } } /** Loading