diff options
author | Daniel Sandler <dsandler@android.com> | 2012-10-03 23:04:50 -0400 |
---|---|---|
committer | Daniel Sandler <dsandler@android.com> | 2012-10-04 23:38:15 -0400 |
commit | 2d78490292090eeab84694330978c9ad7fad2d37 (patch) | |
tree | 18e284c10ae397527c5844e1b07f6a0141083c2e /services/java | |
parent | 09d1cb3fb1f8ccaa6c0298b04cfb515f273b0c08 (diff) | |
download | frameworks_base-2d78490292090eeab84694330978c9ad7fad2d37.zip frameworks_base-2d78490292090eeab84694330978c9ad7fad2d37.tar.gz frameworks_base-2d78490292090eeab84694330978c9ad7fad2d37.tar.bz2 |
DreamService API revisions.
Reduce reliance on Service interface overrides, instead
steering clients to the DreamService-specific lifecycle
hooks:
onAttachedToWindow .. onDreamingStarted ..
onDreamingStopped .. onDetachedFromWindow
The old Dream.java is finally gone now too.
Bug: 7281802
Change-Id: Ib7802c3397fde60ad1132fa49831da182eef4d7a
Diffstat (limited to 'services/java')
-rw-r--r-- | services/java/com/android/server/dreams/DreamController.java | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/services/java/com/android/server/dreams/DreamController.java b/services/java/com/android/server/dreams/DreamController.java index 6db495a..bfb60bb 100644 --- a/services/java/com/android/server/dreams/DreamController.java +++ b/services/java/com/android/server/dreams/DreamController.java @@ -132,8 +132,15 @@ final class DreamController { } if (oldDream.mService != null) { - // TODO: It would be nice to tell the dream that it's being stopped so that - // it can shut down nicely before we yank its window token out from under it. + // Tell the dream that it's being stopped so that + // it can shut down nicely before we yank its window token out from + // under it. + try { + oldDream.mService.detach(); + } catch (RemoteException ex) { + // we don't care; this thing is on the way out + } + try { oldDream.mService.asBinder().unlinkToDeath(oldDream, 0); } catch (NoSuchElementException ex) { |