bce0cbb40d060f71a7de86d5668eb690e7073c19 |
|
05-Oct-2012 |
Dianne Hackborn <hackbod@google.com> |
Fix issue #7275122: Wall paper jank when switching users Change-Id: I2677c7641a01b4afe89db29cb5fc1af876f9d078
/frameworks/base/core/java/android/service/wallpaper/WallpaperService.java
|
5dc5a00e7ebadc085ded7e29feacd17e53698486 |
|
16-Sep-2012 |
Dianne Hackborn <hackbod@google.com> |
More multi-user stuff. - New public APIs to find out when a user goes to the foreground, background, and is first initializing. - New activity manager callback to be involved in the user switch process, allowing other services to let it know when it is safe to stop freezing the screen. - Wallpaper service now implements this to handle its user switch, telling the activity manager when it is done. (Currently this is only handling the old wallpaper going away, we need a little more work to correctly wait for the new wallpaper to get added.) - Lock screen now implements the callback to do its user switch. It also now locks itself when this happens, instead of relying on some other entity making sure it is locked. - Pre-boot broadcasts now go to all users. - WallpaperManager now has an API to find out if a named wallpaper is in use by any users. Change-Id: I27877aef1d82126c0a1428c3d1861619ee5f8653
/frameworks/base/core/java/android/service/wallpaper/WallpaperService.java
|
98365d7663cbd82979a5700faf0050220b01084d |
|
20-Aug-2012 |
Jeff Brown <jeffbrown@google.com> |
Refactor for multi-display support. Split WindowManagerImpl into two parts, the WindowManager interface implementation remains where it is but the global communications with the window manager are now handled by the WindowManagerGlobal class. This change greatly simplifies the challenge of having separate WindowManager instances for each Context. Removed WindowManagerImpl.getDefault(). This represents the bulk of this change. Most of the usages of this method were either to perform global functions (now handled by WindowManagerGlobal) or to obtain the default display (now handled by DisplayManager). Explicitly associate each new window with a display and make the Display object available to the View hierarchy. Add stubs for some new display manager API features. Start to split apart the concepts of display id and layer stack. since they operate at different layers of abstraction. While it's true that each logical display uniquely corresponds to a surface flinger layer stack, it is not necessarily the case that they must use the same ids. Added Display.getLayerStack() and started using it in places where it was relatively easy to do. Change-Id: I29ed909114dec86807c4d3a5059c3fa0358bea61
/frameworks/base/core/java/android/service/wallpaper/WallpaperService.java
|
758143ecfedbe08cc6c4fed0ad8ad7a854194ca4 |
|
07-Aug-2012 |
Svetoslav Ganov <svetoslavganov@google.com> |
Window position not reported if the window is not moved. 1.If a window is shown but never moved the window window is never notified for its current location. Therefore, accessibility nodes do not contain correct bounds in screen coordinates. bug:6926295 Change-Id: I7df18b095d33ecafffced75aba9e4f4693b0c393
/frameworks/base/core/java/android/service/wallpaper/WallpaperService.java
|
6881a10557acf3b0270de54799d6f19437acf584 |
|
27-Jul-2012 |
Craig Mautner <cmautner@google.com> |
Small step towards supporting multiple displays Change-Id: I353449c2b464394988c7e0203656b5851a0c9127
/frameworks/base/core/java/android/service/wallpaper/WallpaperService.java
|
aac0d4ed026d1cfbcf3fa81c6e4eb96f4347ca17 |
|
20-Jul-2012 |
Fabrice Di Meglio <fdimeglio@google.com> |
Replace left/right with start/end for Gravity / LayoutParams / Padding - see bug #5429822 UI should be mirrored for RTL locales (Arabic, Hebrew, farsi) Change-Id: Id9af5375fb9b0edeae5232c77e52ecd497bd2e67
/frameworks/base/core/java/android/service/wallpaper/WallpaperService.java
|
5702d4dfb5b81491f873a3617f8d8fc8dc5279e6 |
|
30-Jun-2012 |
Craig Mautner <cmautner@google.com> |
Notify client side of window movement. Add a one way method to notify Views that the window has moved on the screen. Fixes issues arising from the IME popping up and translating the window that uses it. Accessibility was left unaware of these movements and was drawing the box around the wrong widgets. Similarly PopupWindow used getLocationOnScreen to determine how much screen real estate was above and below the anchor point to determine where to put an anchored window. Fixes bug 6623031. Change-Id: I4731a94d5424c1ec77bf1729fba8fc9ea34cae46
/frameworks/base/core/java/android/service/wallpaper/WallpaperService.java
|
85afd1b6f871d471fdff1980134676a5f1690525 |
|
13-May-2012 |
Dianne Hackborn <hackbod@google.com> |
Implement new window cropping. The window manager now performs the crop internally, evaluating it every animation from, to be able to update it along with the surface position. Change-Id: I960a2161b9defb6fba4840fa35aee4e411c39b32
/frameworks/base/core/java/android/service/wallpaper/WallpaperService.java
|
5c58de3a523a384c47b0b1e0f5dd9728a74cd9f7 |
|
29-Apr-2012 |
Dianne Hackborn <hackbod@google.com> |
Add system insets to windows. This will be used to determine which parts of a window a completely hidden by system UI elements (status bar, nav bar, system bar) so that they can be clipped out from rendering. Change-Id: I2c6c6ac67dbdfeed82d2c089ef806fb483165bd9
/frameworks/base/core/java/android/service/wallpaper/WallpaperService.java
|
35be7560300a97fc3675bdd325910f28827d9508 |
|
19-Apr-2012 |
Jeff Sharkey <jsharkey@android.com> |
Move SystemUI out of system UID. Add permissions for various things it pokes. Create new permission to control launching non-exported activities from recents. Hidden API to relax WallpaperService checks. Change-Id: I547fdcd7c213dd153ae101533ce7c56cd8f86a0d
/frameworks/base/core/java/android/service/wallpaper/WallpaperService.java
|
32cbc3855c2a971aa5a801fd339fb6a37db91a1a |
|
01-Dec-2011 |
Jeff Brown <jeffbrown@google.com> |
Refactor InputQueue as InputEventReceiver. This change simplifies the code associated with receiving input events from input channels and makes it more robust. It also does a better job of ensuring that input events are properly recycled (sometimes we dropped them on the floor). This change also adds a sequence number to all events, which is handy for determining whether we are looking at the same event or a new one, particularly when events are recycled. Change-Id: I4ebd88f73b5f77f3e150778cd550e7f91956aac2
/frameworks/base/core/java/android/service/wallpaper/WallpaperService.java
|
4952dfd16a0f839559ffa78f5016394caf85294f |
|
01-Dec-2011 |
Jeff Brown <jeffbrown@google.com> |
Ensure input events are processed in-order in the application. As it turns out, it used to be possible for there to be multiple input events simultaneously in flight in an application. Although it worked, it made it hard to reason about what was going on. The problem was somewhat exacerbated by the introduction of a queue of "InputEventMessage" objects as part of an earlier latency optimization. This change restores order from chaos and greatly simplifies the invariants related to input event dispatch within the application. Change-Id: I6de5fe61c1fe2ac3dd33edf770d949044df8a019
/frameworks/base/core/java/android/service/wallpaper/WallpaperService.java
|
6d05fd3c795088ac60f86382df5a66d631e8a0cb |
|
19-Nov-2011 |
Dianne Hackborn <hackbod@google.com> |
Fix issue #5588689: Black camera preview after coming back from gmail Make surface management between SurfaceView and the window manager much more controlled, to ensure that SurfaceView always gets to report the current surface is destroyed before the window manager actually destroys it. Also a small tweak to allow windows that have a wallpaper background to still have a preview window. This makes launching home after it has been killed feel much more responsive. Change-Id: I0d22cf178a499601a770cb1dbadef7487e392d85
/frameworks/base/core/java/android/service/wallpaper/WallpaperService.java
|
a8e5a2bcd6a0d35893187c6df42425c03be005da |
|
28-Oct-2011 |
Chet Haase <chet@google.com> |
Optimize handling of scrolled wallpapers Swiping the home screen causes the WindowManagerService to do a bunch of work to keep the wallpapers in sync. First, it lays out and places all windows. Also, it notifies the SystemUI process that the wallpaper position has changed. The layout/place operation is too much work - we only need to set the position values for the wallpaper, not relayout the whole system. The notification mechanism must exist, but should be optional. Most wallpapers don't care (especially static ImageWallpapers). So we'll give them a new API (WallpaperService.Engine.setWantsOffsets()) to allow wallpapers to opt out of this process and avoid the performance overhead. Change-Id: I66c38375438937f14f6f5550565b28eb204b1e06
/frameworks/base/core/java/android/service/wallpaper/WallpaperService.java
|
9a230e01a1237749a8a19a5de8d46531b0c8ca6a |
|
06-Oct-2011 |
Dianne Hackborn <hackbod@google.com> |
Fix issue #5371530: SYSTEMUI_FLAG_HIDE_NAVIGATION reasserts itself immediately This cleans up how ui flags are managed between the client and window manager. It still reports the global UI mode state to the callback, but we now only clear certain flags when the system goes out of a state (currently this just means the hide nav bar mode), and don't corrupt other flags in the application when the global state changes. Also introduces a sequence number between the app and window manager, to avoid using bad old data coming from the app during these transitions. Change-Id: I40bbd12d9b7b69fc0ff1c7dc0cb58a933d4dfb23
/frameworks/base/core/java/android/service/wallpaper/WallpaperService.java
|
9fe6cb5cc2cc86a370d47afc44d27fa7086a15be |
|
09-Sep-2011 |
Dianne Hackborn <hackbod@google.com> |
Fix issue #5273986: The power usage of the mp3 background playback... ...increased from ~50mA to 260mA Change-Id: I24d7188185f4ec5ff9e1f29c15472ae56c851e5e
/frameworks/base/core/java/android/service/wallpaper/WallpaperService.java
|
9e4e727b4a164c17944e8ae6eb2d2532a98737f8 |
|
30-Aug-2011 |
Dianne Hackborn <hackbod@google.com> |
Fix issues #5233826 and #5209847 -- live wallpapers. 5233826 when a live wallpaper starts, it does so regardless of its visibility The WallpaperService is now very forceful about telling a wallpaper it is not visible when it first starts. 5209847 Make launcher turn off the wallpaper in all apps. Fix a bug in the window manager that would not correctly handle the wallpaper flag changing. Change-Id: Ie3314043a84664be72a1304a1705408efd789a15
/frameworks/base/core/java/android/service/wallpaper/WallpaperService.java
|
527de8e3de4c2bad9ba0fc0e50f8fb3f95ba4681 |
|
23-Aug-2011 |
Dianne Hackborn <hackbod@google.com> |
Debugging for issue #5180240: Wallpaper continues to consume CPU when screen off Add debug dump to the wallpaper service. Change-Id: I01502b10de93b6f9d2315fd66776f3f2210e6696
/frameworks/base/core/java/android/service/wallpaper/WallpaperService.java
|
6dd005b48138708762bfade0081d031a2a4a3822 |
|
18-Jul-2011 |
Dianne Hackborn <hackbod@google.com> |
I. Can. Not. Stand. ViewAncestor. It was done so we would have the name "ViewRoot" available for a public API. However, the name "ViewAncestor" just makes no sense. So instead, change it to ViewRootImpl. Change-Id: If9599ca67896f339f6fefa7d1dde121201171d97
/frameworks/base/core/java/android/service/wallpaper/WallpaperService.java
|
24572375323dee79e3b456af07640ca194fd40bf |
|
10-Jun-2011 |
Jeff Brown <jeffbrown@google.com> |
Optimize orientation changes. Modified setRotation to allow it to restart a rotation in progress as long as the rotation animation has not yet started. This enables the system to recover more quickly from mispredicted orientation changes. Removed the call to System.gc() when freezing the display, which added 60-80ms before we even started the orientation change. We used to need this to make it less likely that an upcoming GC would cause a pause during the window animation, but this is not longer a concern with the concurrent GC in place. Changed the wallpaper surface to be 32bit. This accelerates drawing and improves the overall appearance slightly. Reduced code duplication in the WallpaperManager. Change-Id: Ic6e5e8bdce4b970b11badddd0355baaed40df88a
/frameworks/base/core/java/android/service/wallpaper/WallpaperService.java
|
c6cc0f8c19d9eccf408a443fa2bf668af261dcd0 |
|
12-Apr-2011 |
Joe Onorato <joeo@google.com> |
Rename ViewRoot to ViewAncestor. ViewRoot is about to be a new public class for poking at ViewAncestor. Change-Id: Ie95d707c6d8bbb48f78d093d7b2667851812a7d5
/frameworks/base/core/java/android/service/wallpaper/WallpaperService.java
|
33bbfd2232ea9eaae9a9d87a05a95a430f09bd83 |
|
25-Feb-2011 |
Jeff Brown <jeffbrown@google.com> |
Add support for mouse hover and scroll wheel. Dispatch ACTION_HOVER_MOVE and ACTION_SCROLL through the View hierarchy as onGenericTouchEvent. Pointer events dispatched this way are delivered to the view under the pointer. Non-pointer events continue to be delivered to the focused view. Added scroll wheel support to AbsListView, ScrollView, HorizontalScrollView and WebView. Shift+VSCROLL is translated to HSCROLL as appropriate. Added logging of new pointer events in PointerLocationView. Fixed a problem in EventHub when a USB device is removed that resulted in a long stream of ENODEV errors being logged until INotify noticed the device was gone. Note that the new events are not supported by wallpapers at this time because the wallpaper engine only delivers touch events. Make all mouse buttons behave identically. (Effectively we only support one button.) Change-Id: I9ab445ffb63c813fcb07db6693987b02475f3756
/frameworks/base/core/java/android/service/wallpaper/WallpaperService.java
|
3b723ace405305e61ab25f96cb8ee1a321edcf9b |
|
02-Feb-2011 |
Michael Jurka <mikejurka@google.com> |
am 46ab5e13: Merge "add missing call to superclass method" into honeycomb * commit '46ab5e13f27324d634ff27b7fd75c5d432b915bf': add missing call to superclass method
|
b8f939fb5759fc25fced8df3304d6288b0c25430 |
|
02-Feb-2011 |
Michael Jurka <mikejurka@google.com> |
add missing call to superclass method
/frameworks/base/core/java/android/service/wallpaper/WallpaperService.java
|
d48ba867d69159542cf967d5fcaba41c5474f134 |
|
02-Feb-2011 |
Dianne Hackborn <hackbod@google.com> |
am e77f9914: Merge "Whoops, need to put this check back." into honeycomb * commit 'e77f99144f015d9044909a4c128fa916465b0671': Whoops, need to put this check back.
|
a48a37f025dd875bfb1e46b673a3a54fb8e6b26b |
|
02-Feb-2011 |
Dianne Hackborn <hackbod@google.com> |
Whoops, need to put this check back. We still don't want third party wallpapers to be able to do this, since it can't work with all window animations. Change-Id: I97c8ef78c36bd89bf47a7c4533ed1c244dcff4a6
/frameworks/base/core/java/android/service/wallpaper/WallpaperService.java
|
2a70a1e349cb982ae68196195d4745474d8f2568 |
|
02-Feb-2011 |
Dianne Hackborn <hackbod@google.com> |
am bd77ed7f: Merge "Make image wallpaper use a big surface." into honeycomb * commit 'bd77ed7fff87b79008e3b071115674dff2721994': Make image wallpaper use a big surface.
|
f185552f63fe4a4a1a8de602bc6fc6e57d3ff7fe |
|
02-Feb-2011 |
Dianne Hackborn <hackbod@google.com> |
Make image wallpaper use a big surface. Change-Id: I119f2bfee5fde08040520bd0da8574194a893ab5
/frameworks/base/core/java/android/service/wallpaper/WallpaperService.java
|
391ef42c92ab97e5c22a720973790696d30576ca |
|
25-Jan-2011 |
Jeff Brown <jeffbrown@google.com> |
am 3168a137: Merge "Fix surface frame size reporting." into honeycomb * commit '3168a13723ff0f3f87937457fe33c3518caa4bb9': Fix surface frame size reporting.
|
30bc34f191ca8a009af313fc751e5b4bff6e39a1 |
|
25-Jan-2011 |
Jeff Brown <jeffbrown@google.com> |
Fix surface frame size reporting. The SurfaceHolder provided by the wallpaper service was not reporting the correct size in getSurfaceFrame(). This broke an optimization in the ImageWallpaper. The old code happened to work because calling lockCanvas on the SurfaceHolder with a null dirty rectangle happened to have the side-effect of updating the SurfaceHolder's surface frame size field because it passed mSurfaceFrame as the dirty rect, causing mSurfaceFrame to be set to the size of the region to be drawn. However, relying on this side-effect is wrong. Among other things, the dirty region could actually be smaller than the surface frame. This patch fixes WallpaperService, SurfaceView and ViewRoot to ensure that the surface frame size is always set explicitly and is not modified by calls to lockCanvas. Change-Id: I10948f5ec269409ceaf0f7d32b3f6731e9499ebc
/frameworks/base/core/java/android/service/wallpaper/WallpaperService.java
|
b841fa63026803093c093ad25ab0ccbd4c49e45b |
|
13-Jan-2011 |
Brad Fitzpatrick <bradfitz@android.com> |
am 54f428a6: am bdb7aee0: Merge "Fix for crash when setting live wallpaper." * commit '54f428a63f33f4722c09b7688e6ca7960394f81f': Fix for crash when setting live wallpaper.
|
d9463f50c8c1aa8969502b117777a4c185971c08 |
|
12-Jan-2011 |
Mattias Petersson <mattias.petersson@sonyericsson.com> |
Fix for crash when setting live wallpaper. This fix prevents a crash that sometimes happens when setting a live wallpaper. It happened when pressing "Set wallpaper" button in the live wallpaper preview activity, before the preview was fully loaded. The crash happened in native code while updating the wallpaper surface when calling mInputChannel.registerInputChannel(), because the previous call to mSession.add(mWindow, mLayout, View.VISIBLE, mContentInsets, mInputChannel) had failed. The fix aborts the surface update when it is not possible to add the window. Change-Id: I0e79a851e5c7f7b15eb07043c63d1f4d78f14616
/frameworks/base/core/java/android/service/wallpaper/WallpaperService.java
|
9f3bdfe3eb04723efa07a2d0e6a7709da1191fa5 |
|
13-Oct-2010 |
Jeff Brown <jeffbrown@google.com> |
Add method for sending wallpaper commands directly to an engine. This enables the livewallpaper preview activity to send tap commands to the wallpaper so that the preview is more interactive. Also add a command for sending secondary pointer taps for multitouch enabled wallpapers. Change-Id: I9fa10cc47d92dfa9f1a1208aba44c66943eee3ec
/frameworks/base/core/java/android/service/wallpaper/WallpaperService.java
|
3915bb845b032dc184dba5e60970b803390ca3ed |
|
05-Nov-2010 |
Jeff Brown <jeffbrown@google.com> |
Tell system server whether the app handled input events. Refactored ViewRoot, NativeActivity and related classes to tell the dispatcher whether an input event was actually handled by the application. This will be used to move more of the global default key processing into the system server instead of the application. Change-Id: If06b98b6f45c543e5ac5b1eae2b3baf9371fba28
/frameworks/base/core/java/android/service/wallpaper/WallpaperService.java
|
dcfae5c0fdc917f15a3e9ab75ee1d819b6db26ba |
|
29-Oct-2010 |
Joe Onorato <joeo@android.com> |
Report the new size to wallpapers when the requested size changed. We were telling the app, but we weren't saving the data for ourselves. This also tells them to re-scroll when there's a new size. Bug: 3144373 Change-Id: I9d12b714119ff02dd7d7f1cfa997d8a44475b9e9
/frameworks/base/core/java/android/service/wallpaper/WallpaperService.java
|
840db1f678ed15f0f3e9c58310b1e80ebb1f331a |
|
22-Oct-2010 |
Jeff Brown <jeffbrown@google.com> |
Fix a race condition in wallpaper move throttling. Bug: 3099316 Change-Id: Ia3221975b5be7fae8359d6ab531bbecd0e29aee9
/frameworks/base/core/java/android/service/wallpaper/WallpaperService.java
|
62bf4a0283e855e2fb5f40f36909501e5b4a09eb |
|
09-Sep-2010 |
Mathias Agopian <mathias@google.com> |
Force wallpaper surface to 565. This is to maintain backward compatibility with badly programmed GL wallpapers. Wallpapers can call SurfaceHolder.setFormat() to request a different format. Change-Id: Ib42b0cf6c7040d1300cad239c3acfd5c4c6cd326
/frameworks/base/core/java/android/service/wallpaper/WallpaperService.java
|
c5ed5910c9ef066cec6a13bbb404ec57b1e92637 |
|
15-Jul-2010 |
Jeff Brown <jeffbrown@google.com> |
Add support for new input sources. Added several new coordinate values to MotionEvents to capture touch major/minor area, tool major/minor area and orientation. Renamed NDK input constants per convention. Added InputDevice class in Java which will eventually provide useful information about available input devices. Added APIs for manufacturing new MotionEvent objects with multiple pointers and all necessary coordinate data. Fixed a bug in the input dispatcher where it could get stuck with a pointer down forever. Fixed a bug in the WindowManager where the input window list could end up containing stale removed windows. Fixed a bug in the WindowManager where the input channel was being removed only after the final animation transition had taken place which caused spurious WINDOW DIED log messages to be printed. Change-Id: Ie55084da319b20aad29b28a0499b8dd98bb5da68
/frameworks/base/core/java/android/service/wallpaper/WallpaperService.java
|
1d28f9c0aabee7f9e1c38451a4baf13109244c18 |
|
14-Jul-2010 |
Dianne Hackborn <hackbod@google.com> |
Fix docs build. Change-Id: Ibb8e1e4b18ec1e92e28d354cdcce37676056b348
/frameworks/base/core/java/android/service/wallpaper/WallpaperService.java
|
d76b67c340d1564abf8d14d976fdaf83bf2b3320 |
|
14-Jul-2010 |
Dianne Hackborn <hackbod@google.com> |
IME events are now dispatched to native applications. And also: - APIs to show and hide the IME, and control its interaction with the app. - APIs to tell the app when its window resizes and needs to be redrawn. - API to tell the app the content rectangle of its window (to layout around the IME or status bar). There is still a problem with IME interaction -- we need a way for the app to deliver events to the IME before it handles them, so that for example the back key will close the IME instead of finishing the app. Change-Id: I37b75fc2ec533750ef36ca3aedd2f0cc0b5813cd
/frameworks/base/core/java/android/service/wallpaper/WallpaperService.java
|
00fa7bdd69f0868fd17ea7c881c771d785b2fbbd |
|
03-Jul-2010 |
Jeff Brown <jeffbrown@google.com> |
More native input dispatch work. Removed old input dispatch code. Refactored the policy callbacks. Pushed a tiny bit of the power manager state down to native. Fixed long press on MENU. Made the virtual key detection and cancelation a bit more precise. Change-Id: I5d8c1062f7ea0ab3b54c6fadb058c4d5f5a9e02e
/frameworks/base/core/java/android/service/wallpaper/WallpaperService.java
|
349703effce5acc53ed96f7ed8556131f0c65e18 |
|
22-Jun-2010 |
Jeff Brown <jeffbrown@google.com> |
Native input event dispatching. Target identification is now fully native. Fixed a couple of minor issues related to input injection. Native input enabled by default, can be disabled by setting WindowManagerPolicy.ENABLE_NATIVE_INPUT_DISPATCH to false. Change-Id: I7edf66ed3e987cc9306ad4743ac57a116af452ff
/frameworks/base/core/java/android/service/wallpaper/WallpaperService.java
|
46b9ac0ae2162309774a7478cd9d4e578747bfc2 |
|
23-Apr-2010 |
Jeff Brown <jeffbrown@google.com> |
Native input dispatch rewrite work in progress. The old dispatch mechanism has been left in place and continues to be used by default for now. To enable native input dispatch, edit the ENABLE_NATIVE_DISPATCH constant in WindowManagerPolicy. Includes part of the new input event NDK API. Some details TBD. To wire up input dispatch, as the ViewRoot adds a window to the window session it receives an InputChannel object as an output argument. The InputChannel encapsulates the file descriptors for a shared memory region and two pipe end-points. The ViewRoot then provides the InputChannel to the InputQueue. Behind the scenes, InputQueue simply attaches handlers to the native PollLoop object that underlies the MessageQueue. This way MessageQueue doesn't need to know anything about input dispatch per-se, it just exposes (in native code) a PollLoop that other components can use to monitor file descriptor state changes. There can be zero or more targets for any given input event. Each input target is specified by its input channel and some parameters including flags, an X/Y coordinate offset, and the dispatch timeout. An input target can request either synchronous dispatch (for foreground apps) or asynchronous dispatch (fire-and-forget for wallpapers and "outside" targets). Currently, finding the appropriate input targets for an event requires a call back into the WindowManagerServer from native code. In the future this will be refactored to avoid most of these callbacks except as required to handle pending focus transitions. End-to-end event dispatch mostly works! To do: event injection, rate limiting, ANRs, testing, optimization, etc. Change-Id: I8c36b2b9e0a2d27392040ecda0f51b636456de25
/frameworks/base/core/java/android/service/wallpaper/WallpaperService.java
|
dc8a7f69d7df5f1ca29763995a0d55acf7936fc6 |
|
10-May-2010 |
Dianne Hackborn <hackbod@google.com> |
Add new API to take over a window's Surface. Change-Id: Iad6245faadc95f19ea63c8e229a1c02e9188f69e
/frameworks/base/core/java/android/service/wallpaper/WallpaperService.java
|
18ee31e89766ec78f1c25f4e307306a16fe35818 |
|
28-Apr-2010 |
Dianne Hackborn <hackbod@google.com> |
Fix issue #2594388: WallpaperService doesn't always call onSurfaceDestroyed() Take care of the window manager destroying a surface, to report to the app that it has been destroyed. Make sure to perform a traversal when becoming visible to re-create the surface if needed. Change-Id: If3bc05e0106f90d4c3bad2d7575212667680fbc8
/frameworks/base/core/java/android/service/wallpaper/WallpaperService.java
|
ba3e31d9eed67291a51b501d12fdc27625af688e |
|
23-Apr-2010 |
Dianne Hackborn <hackbod@google.com> |
Some debugging help for issue #2594388 WallpaperService doesn't always call onSurfaceDestroyed() Just helps us see a little better what is going on. Change-Id: Ibe8efd9e343e880ca31df446c8b36c7fa3722e87
/frameworks/base/core/java/android/service/wallpaper/WallpaperService.java
|
694f79b5d1196640d1beb680b7d1fc68e6e77cbd |
|
18-Mar-2010 |
Dianne Hackborn <hackbod@google.com> |
Fix issue #2519590: Lock screen stuck in landscape mode Well, mostly. There is still a problem here where the first time you show the lock screen it just doesn't draw itself. I assume this is something breaking in the view hierarchy as it floounders around removing and adding new views as it is first being shown... but no idea at this point what is the actual case. Change-Id: Iba99ae3242931c8673b17b106c86fc99e2c52abe
/frameworks/base/core/java/android/service/wallpaper/WallpaperService.java
|
04cde3413cbdb004642267f3d2139e90f9c1072e |
|
05-Mar-2010 |
Romain Guy <romainguy@android.com> |
Report an offset change in a live wallpaper when the wallpaper is resized. Bug #2489288 Prior to this change, changing the display's orientation would not send an offset change, which could cause live wallpapers relying on pixel offsets to display the wrong position.
/frameworks/base/core/java/android/service/wallpaper/WallpaperService.java
|
e36d6e277e49475076b7872d36ea6a5c5b996e9d |
|
18-Feb-2010 |
Dianne Hackborn <hackbod@google.com> |
Work on issue #2263557: PMF3000 showing hybrid of portrait and landscape modes This is a bunch of reworking of how configuration changes are handled: - When orientation is changing (for whatever reason), the window manager no longer tries to pre-emptively compute a new configuration. Instead, it just determines change is happening and tells the window manager. - The activity manager is now responsible for giving the window manager the final configuration it is using. This is both so it knows whem the activity manager is done with its configuration updates, and so the window manager can use the "real" configuration. - When an orientation or other configuration change is happening, freeze the screen and keep it frozen until the activity manager has given us the final configuration. - The window manager can now send new configurations to its clients during its layout pass, as part of a resize, if it has determined that it has changed. This allows for a new View.onConfigurationChanged() API for any view to easily find out when the configuration has changed. - ViewRoot now also works with the activity thread to make sure the process's current resources are updated to the new configuration when it receives one from a window. This ensures that at the time onConfigurationChanged() and other view callbacks are happening, the correct configuration is in force. - There is now a sequence number associated with Configuration, which ActivityThread uses to avoid using stale configurations. This is needed now that it can receive configurations asynchronously from both the window manager and activity manager. - The hack for keeping the locale has been removed, and underlying problem fixed by having Configuration initialize its locale to "unknown" instead of a valid default value.
/frameworks/base/core/java/android/service/wallpaper/WallpaperService.java
|
d68478467e3f837511196c80891d7245d0e163df |
|
13-Jan-2010 |
Dianne Hackborn <hackbod@google.com> |
First pass at new device policy and administration APIs. This adds new DevicAdmin, DevicePolicyManager, and DeviceAdminInfo classes. See the java docs for each on documentation on them. Basically: a DeviceAdmin is what you derive from to administer a device; DevicePolicyManager is what you use to apply and check your policy requirements and perform other administration tasks.
/frameworks/base/core/java/android/service/wallpaper/WallpaperService.java
|
980a938c1c9a6a5791a8240e5a1e6638ab28dc77 |
|
09-Jan-2010 |
Romain Guy <romainguy@android.com> |
Deprecate fill_parent and introduce match_parent. Bug: #2361749.
/frameworks/base/core/java/android/service/wallpaper/WallpaperService.java
|
af1f42be96a6ffa7a9b63e199e1614281ea3282d |
|
21-Nov-2009 |
Dianne Hackborn <hackbod@google.com> |
Fix issue #2271668: Live Wallpaper Force-Close when changing from live wallpaper to picasa wallpaper The detach of the wallpaper engine was coming in after the containing service was destroyed. This was possible because these are different IPC interfaces so will not be serialized. The fix is to keep track of all of the active engines in the serice, and detach any remaining ones when the service is destroyed. Change-Id: I8810786a777dd4f7b15cfbd2e0da25866a4f3ec5
/frameworks/base/core/java/android/service/wallpaper/WallpaperService.java
|
e4260f4e7da4da32bfab2737018cf9cf75215894 |
|
19-Nov-2009 |
Dianne Hackborn <hackbod@google.com> |
Fix build. Change-Id: I3aeb4f374a99d5872ba19c04624aa1b5ca6cd5d0
/frameworks/base/core/java/android/service/wallpaper/WallpaperService.java
|
23ef7b4836d66d31430fedee2aac36275bb30d4b |
|
19-Nov-2009 |
Dianne Hackborn <hackbod@google.com> |
Fix most of issue #2271640: Fix wallpaper etc docs Only thing remaining is the live wallpaper feature. Change-Id: I8854c7978999d759bf618307f4f984c9c89d3fc8
/frameworks/base/core/java/android/service/wallpaper/WallpaperService.java
|
6adba2467ca524b4c4f3d775de6aa10a9ad57aea |
|
10-Nov-2009 |
Dianne Hackborn <hackbod@google.com> |
Fix issue #2170897: wallpaper touch-up event not seen when exiting lock screen Make sure to deliver events to the wallpaper until the final up. Also fix behavior in the case where a window goes away while the pointer is still down in it, which is a fairly novel situation introduced by the new lock screen. Also add infrastructure for delivering motion events during preview. Change-Id: I0de7979be27e00caf0b1eff794ea899a815142f6
/frameworks/base/core/java/android/service/wallpaper/WallpaperService.java
|
bf6956b1d95442e9d9c483894d578fe6b7044cbb |
|
10-Nov-2009 |
Marco Nelissen <marcone@google.com> |
Add a way for wallpapers to know the delta between virtual screens.
/frameworks/base/core/java/android/service/wallpaper/WallpaperService.java
|
13bf8260134d516cbcc982d360d9f21067f47fa6 |
|
06-Nov-2009 |
Dianne Hackborn <hackbod@google.com> |
Fix SDK build: a few things missing, a link that was wrong. Change-Id: I55c9c510b3f0866ce6085927afa00b9fb69dd8c5
/frameworks/base/core/java/android/service/wallpaper/WallpaperService.java
|
274b120f3975c8db6daeeab51a5fe08d6dede479 |
|
06-Nov-2009 |
Dianne Hackborn <hackbod@google.com> |
Fix issue #2243096: Need to expose live wallpaper APIs in SDK Change-Id: I7e996bf549922c1bb8e8c00d051650ffe12d818c
/frameworks/base/core/java/android/service/wallpaper/WallpaperService.java
|
7580493b014a2c7ea883cd291255798dc72ebbff |
|
21-Oct-2009 |
Dianne Hackborn <hackbod@google.com> |
Implement feature #2117336: Create event communication APIs for live wallpaper Note: currently only implements an async version (no result), and not yet actually tested. Change-Id: Id47ed045a4b0eb309ea8c58daf41a0e03eff1d3a
/frameworks/base/core/java/android/service/wallpaper/WallpaperService.java
|
ae87bd089aaa2f30b4e0d68fff25ea725a14aa9e |
|
17-Sep-2009 |
Marco Nelissen <marcone@google.com> |
Fix typo
/frameworks/base/core/java/android/service/wallpaper/WallpaperService.java
|
19382ac1a4e4e7c23a1346d299368763f149de9c |
|
12-Sep-2009 |
Dianne Hackborn <hackbod@google.com> |
Some optizations to wallpaper drawing/scrolling. First, fix some issues with the final wallpaper bitmap we use: ensure it is always 16bpp, and make sure dithering of its bitmap is turned off. We take of dithering when loading, to make sure we don't use it when drawing. Also add new APIs to return the wallpaper with the equivalent of Launcher's old FastBitmapDrawable. As doing this, also load the default wallpaper the same way as custom ones, taking care to resize it as needed at load time. Finally implement a mechanism for the window manager to wait for the wallpaper to redraw at its new position before returning from the application's call to change the offset. This ensures that the wallpaper better tracks the application. Note that there is a timeout in this wait that is relatively short, and if it expires we will run for a while without waiting. Change-Id: Ife449437746da85958bd447e0a6cf3d2223b398c
/frameworks/base/core/java/android/service/wallpaper/WallpaperService.java
|
bcbcaa7edd32ba67c6290d79f7e7821c4b5b39ac |
|
10-Sep-2009 |
Dianne Hackborn <hackbod@google.com> |
Wallpapers, animations, pending intent. Some more tweaks and fixes to wallpapers. Make sure wallpapers are told they are not visible when the screen is off. Add some new animations for transitions across tasks, and fiddle with many of the existing animations. Clean up the relationship between translucent activities and animations. Add new API to start a PendingIntent from an activity. Change-Id: Ie0bf45fe44081bb6982c75361257a55d9cd9d863
/frameworks/base/core/java/android/service/wallpaper/WallpaperService.java
|
eb034652c2037a47ebfd99779e8383bb8bb528af |
|
07-Sep-2009 |
Dianne Hackborn <hackbod@google.com> |
Implement all of the infrastructure for configuring wallpapers. Actually being able to configure a wallpaper relies on additional work in the launcher and wallpapers that will be in another change. Also note that this breaks all existing wallpapers, since they now need to include a meta-data item about themselves. This also will be fixed in another change. Change-Id: I97d2c2bd07237abc32f92b9147c32530a2f73c71
/frameworks/base/core/java/android/service/wallpaper/WallpaperService.java
|
0586a1b77a788a119166a37fccd909bf9ed65f23 |
|
07-Sep-2009 |
Dianne Hackborn <hackbod@google.com> |
Fix issue #2095422: Some fades from opaque to transparent don't work ViewRoot was using Surface.clear(), which has different behavior in different processes -- in the system process it would kill the surface, causing all windows in that process to immediately disappear instead of animating away. This change makes Surface.release() public and uses that instead. It also renames Surface.clear() to Surface.destroy(). Also fixed some issues in the window manager that were causing the wallpaper to not get immediately resized when the orientation changes and its target window is removed and re-added. Change-Id: I2a992e365cf5747511f0bf1193db32dc2525b218
/frameworks/base/core/java/android/service/wallpaper/WallpaperService.java
|
284ac93aa30642fda87d5c40263a1263677c21cd |
|
28-Aug-2009 |
Dianne Hackborn <hackbod@google.com> |
More work on wallpapers: animations, lifecycle, scaling, etc. Yet more work on improving the behavior of wallpapers. This fixes a few problems in their lifecycle (corresponding change in the picker also required for this), makes their animations better for hardware that supports alpha fades, adds animations for the wallpapers themselves, eliminates fixed size wallpapers, and adjusts the API for retrieving a wallpaper bitmap to take care of scaling the raw wallpaper image to match the current desired width and height. Change-Id: If1c0aaceba4ea4e175dcb7a8416ca7ddbb9bfa6f
/frameworks/base/core/java/android/service/wallpaper/WallpaperService.java
|
3be63c09309b21c01b535271625d4c39045690e5 |
|
21-Aug-2009 |
Dianne Hackborn <hackbod@google.com> |
Infrastructure for supporting wallpaper previews. Various things that will allow us to show previews of wallpapers. Also some fixes to animations across wallpapers.
/frameworks/base/core/java/android/service/wallpaper/WallpaperService.java
|
cbf15048240ecf460957ac3de98a7efbccbbb754 |
|
19-Aug-2009 |
Dianne Hackborn <hackbod@google.com> |
Don't call onSurfaceChanged() if nothing interesting has changed.
/frameworks/base/core/java/android/service/wallpaper/WallpaperService.java
|
8df8b2b405c60cacf7a66c4e2ca078dd3d7ec7bd |
|
18-Aug-2009 |
Dianne Hackborn <hackbod@google.com> |
Allow wallpapers to get touch events.
/frameworks/base/core/java/android/service/wallpaper/WallpaperService.java
|
7341d7a104b47996445d069a695e155a07184606 |
|
14-Aug-2009 |
Dianne Hackborn <hackbod@google.com> |
More work on wallpapers. - Do better about figuring out when to stop them and other related window management. - Fix problem where we were not redrawing the surface when the orientation changed. This was the cause of the device hang.
/frameworks/base/core/java/android/service/wallpaper/WallpaperService.java
|
72c82ab9923025a91bbabb32e56bfea27bfd083b |
|
12-Aug-2009 |
Dianne Hackborn <hackbod@google.com> |
Report wallpaper offset to the wallpaper, use this in the image wallpaper. Wallpapers can now be just the size of the screen, and get told when their scroll position should change to do the updating on their own.
/frameworks/base/core/java/android/service/wallpaper/WallpaperService.java
|
759a39e8d2a8b27ef07e102394629dce68aa186b |
|
10-Aug-2009 |
Dianne Hackborn <hackbod@google.com> |
Live wallpapers become a little more real. This adds a new theme for having a wallpaper, and fixes up the window manager to do the right thing when transitioning between a windows with and without wallpapers (between two windows with wallpapers is not yet addressed). The wallpaper API now has callbacks to tell you when to start/stop animating. Also fiddle the image wallpaper to be a little more interesting.
/frameworks/base/core/java/android/service/wallpaper/WallpaperService.java
|
4c62fc0e1e5ea9c69a12a7d1cf8b3ec8b2d114a3 |
|
09-Aug-2009 |
Dianne Hackborn <hackbod@google.com> |
Very primitive wallpapers in a surface. This is all of the basic pieces: - The WallpaperService now creates a surface with the window manager for its contents. - There is a simple service that displays a bitmap. - The wallpaper manager takes care of starting and stopping the service. - The window manager knows about wallpaper windows and how to layer them with the windows that want to be shown on top of wallpaper. Lots and lots of issues remain, but at this point you can actually write a wallpaper service, select it in the UI, and see it behind an activity.
/frameworks/base/core/java/android/service/wallpaper/WallpaperService.java
|
8cc6a5026aeb5cf9cc36529426fe0cc66714f5fb |
|
06-Aug-2009 |
Dianne Hackborn <hackbod@google.com> |
First bit of wallpaper work. This is mostly refactoring, adding a new WallpaperManager class that takes care of the old wallpaper APIs on Context, so we don't need to pollute Context with various new wallpaper APIs as they are needed. Also adds the first little definition of a wallpaper service, which is not yet used or useful.
/frameworks/base/core/java/android/service/wallpaper/WallpaperService.java
|