Commit Graph

2047 Commits

Author SHA1 Message Date
Fabrice Di Meglio
8b5a8b5bed Merge "Code cleaning" 2011-09-01 11:41:42 -07:00
Svetoslav Ganov
6a13dd5544 Merge "Accessibility hover events are fired if hover otside of modal window." 2011-09-01 11:27:37 -07:00
Jeff Brown
7552c044fc Increase orientation settle time.
Bug: 4981385

Improves noise tolerance and reduces the chance of mispredicted
orientation changes.

Change-Id: I27f2c05a981ae93b0de41c542d41377b2ea25450
2011-08-31 22:22:24 -07:00
Svetoslav Ganov
4c1c101a91 Accessibility hover events are fired if hover otside of modal window.
1. Added a check whether the received hover event is in the bounds
   if the view before sending accessiiblity hover events. Hence, if
   a widnow gets a hover event and it gets to its topmost view the
   latter will not fire an accessibility event.

bug:5233588

Change-Id: I61e81fbf0ce59a7f57377262ce066bcf8db98f56
2011-08-31 20:14:41 -07:00
Fabrice Di Meglio
7d892dcc8a Code cleaning
- remove unused constant
- fix spelling

Change-Id: I0053129b33c2ee472db84e14d4b2ace5d97d20a8
2011-08-31 19:31:51 -07:00
Dianne Hackborn
d040edbae9 Use floating point window positions.
Gets rid of gapps between windows during animations.

Change-Id: I17d2ef0af214008f0eabd7eb19268f145fe83b39
2011-08-31 14:18:32 -07:00
Jeff Brown
9d4bc852ea Merge "Fix input channel leak. Bug: 5156144" 2011-08-31 13:01:16 -07:00
satok
bfe561c54a Merge "Add a comment for setAdditionalInputMethodSubtypes" 2011-08-31 08:43:59 -07:00
satok
75917b603f Add a comment for setAdditionalInputMethodSubtypes
Change-Id: I3a19471b80a6f8a68473cba6f0fc934bd052af10
2011-09-01 00:33:40 +09:00
satok
0158a1e9ff Add a functionality to disable the spell checker
Change-Id: I1c2292f457d1911c149d594c175e638c92ad3917
2011-08-31 21:15:17 +09:00
satok
b669d6d8d8 Improve the fallback of the locale of the spell checker
Change-Id: I79655dd13e60f221b07346596fb05cf7d3d5cf7d
2011-08-31 18:07:06 +09:00
Jeff Brown
cc4f7db698 Fix input channel leak.
Bug: 5156144

Input channels could leak or simply live longer than they should
in some cases.

1. Monitor channels (used by the pointer location overlay) are never
   unregistered, so they would leak.

   Added code to handle failures in the receive callback by closing
   the input channel.

2. The DragState held onto its input window and application handles
   even after the input channel was disposed.

   Added code to null these handles out when they are no longer needed.

3. Input channels previously used as input event targets would stick
   around until the targets were cleared (usually on the next
   event).

   Added code to detect when the input dispatcher is in
   an idle state and to proactively clear the targets then
   to ensure that resources are released promptly.

4. Native input window handles held onto the input channel even
   after the input window was removed from the input dispatcher.
   Consequently, the input channel would not be disposed until
   the input window handle itself was freed.  Since the input
   window handle is held from managed code, this meant that the
   window's input channel could stick around until the next GC.

   Refactored the input window handle to separate the properties
   (info) and identify (handle) state into different objects.
   Then modified the dispatcher to release the properties (info)
   when no longer needed, including the input channel.

7. The pointer location overlay does not actually use its
   standard input channel, only the monitor input channel.

   Added INPUT_FEATURE_NO_INPUT_CHANNEL to allow windows to
   request that they not be provided with an input channel
   at all.

Improved some of the error handling logic to emit the status
code as part of the exception message.

Change-Id: I01988d4391a70c6678c8b0e936ca051af680b1a5
2011-08-30 21:40:28 -07:00
Mathias Agopian
c21843a8b5 Merge "fix Surface positions are not floats" 2011-08-30 19:24:04 -07:00
Mathias Agopian
34cb9f2a96 fix Surface positions are not floats
Added Surface.setPosition(float, float) which allows to set a surface's
position in float.

Bug: 5239859
Change-Id: I903aef4ad5b5999142202fb8ea30fe216d805711
2011-08-30 18:51:54 -07:00
Jamie Gennis
8d102eb672 Merge changes I33f59705,Ia4c8c822,I2fb695ab,I2e587afc
* changes:
  MediaDump: use the MediaPlayer#setSurface method
  HTML5VideoView: switch to MediaPlayer#setSurface
  MediaPlayer: unhide the setSurface method
  Surface: unhide the SurfaceTexture ctor
2011-08-30 14:38:56 -07:00
Chet Haase
32901b4fec Merge "Fixed bug with invalidation in top-level Views." 2011-08-29 14:39:47 -07:00
Chet Haase
e4e6e20695 Fixed bug with invalidation in top-level Views.
There was a bug in an InputMethod app, where popups for the keys
would not pop-down again. The problem was that they were being
marked INVISIBLE, but the new invalidation logic noop'd the
invalidate() call that used to take place. Adding to that was logic
in setFlags() that only invalidated a parent for parents that are
instanceof ViewGroup. In this case, the parent is a ViewRootImpl.

Fix is to call invalidateChild() on the parent if it's not a ViewGroup.

Change-Id: I2c2352072d383cee1367ea7ee6c2207077721fd5
2011-08-29 14:34:30 -07:00
Jamie Gennis
0db3aef9f8 Surface: unhide the SurfaceTexture ctor
This change unhides the Surface constructor that creates a Surface that
pushes frames to a SurfaceTexture.

Change-Id: I2e587afc52c9838d25b8681cae7421734b3e7b6e
2011-08-29 13:56:44 -07:00
Jamie Gennis
df0c84f908 Surface: move the SurfaceTexture ctor
This change moves the Surface ctor that takes a SurfaceTexture to the
portion of the file containing the public APIs.

Change-Id: I192df7bf5c0e6d0d0607bd577d72646312b2f717
2011-08-28 15:09:17 -07:00
Chet Haase
aceafe63ee Fixed error in invalidation/LayoutTransition logic
A recent fix for invalidation noop'd calls to invalidate() on
GONE/INVISIBLE views. This logic also noop'd views which might
be GONE, but which are in the process of fading in/out via
LayoutTransition animations. These views should invalidate as
usual.

Change-Id: Ie90a340f70290391a3aa4e68df535c6aabf4e5eb
2011-08-26 16:05:29 -07:00
Romain Guy
80122c2a7a Merge "Prevent crash in VPN settings Bug #5217245" 2011-08-26 13:37:35 -07:00
Romain Guy
eca9b1f53c Prevent crash in VPN settings
Bug #5217245

Change-Id: Ibacf4cbd40537cd417f1518b5ac4367a3f3d7d03
2011-08-26 13:36:37 -07:00
satok
7926f62a07 Fix newSpellCheckerSession
Change-Id: Ia862dba70666c69b81d18836561b7e9a1c2d81b3
2011-08-26 21:13:35 +09:00
satok
b387954a92 Support system locale as the locale of the spell checkers
Bug: 5212035

Change-Id: I18d27e54b936cc7f4d6cc3c7100bce57f77f8f9f
2011-08-26 18:35:58 +09:00
satok
fbedf1a397 Fix NPE in setCurrentSpellCheckerSubtype
Change-Id: I9fce999f91dcccd2f877a0326c4f2e3ac9024f85
2011-08-26 16:00:23 +09:00
satok
2388a7ba62 Add getServiceInfo to SpellCheckerInfo
Change-Id: I11634b88cf65182465869b131cfdcc8815e74965
2011-08-26 14:35:09 +09:00
satok
c714531952 Add getDisplayName to SpellCheckerSubtype
Change-Id: Ic4d1f494a1fb67eda73ffc8e3be1caf690a602ce
2011-08-26 14:04:46 +09:00
satok
4bc554b371 Merge "Fix setCurrentSpellCheckerSubtype" 2011-08-25 21:34:44 -07:00
satok
3cb5b39a0e Fix setCurrentSpellCheckerSubtype
Change-Id: Ib42a3b4377b8700ceaf4b7e13150848464d073c1
2011-08-26 12:39:42 +09:00
Mathias Agopian
ca07e34f13 fix logging of eglMakeCurrent() errors
Change-Id: Ie22cabff822a8fb3186f082491234b9503b431c3
2011-08-25 18:38:24 -07:00
Romain Guy
27bf191327 Merge "Optimize display lists" 2011-08-25 14:08:13 -07:00
Romain Guy
04c9d8c2ff Optimize display lists
Remove redundant or useless operations

Change-Id: If989b4eaa9143eef4254c38b39959aeed1f2b9ab
2011-08-25 14:01:48 -07:00
Romain Guy
8d8533a9f0 Merge "Implement saveLayer*() correctly" 2011-08-25 11:46:25 -07:00
Romain Guy
189887e0ae Implement saveLayer*() correctly
When the Rect parameter is null, the layer's bounds must match the
clip rect.

Change-Id: Idbb3973af039bf319e840d1095b7037bf1015f35
2011-08-25 11:45:13 -07:00
Svetoslav Ganov
12bde60b39 Merge "Intra-process view hierarchy interrogation does not work." 2011-08-25 08:54:29 -07:00
satok
1e3fac8bc6 Merge "Add functions to enable / disable spell checker" 2011-08-25 01:21:05 -07:00
satok
a33c4fc5be Add functions to enable / disable spell checker
Bug: 5057977

Change-Id: I2b27bd5f55feb305368034d7e95f83257ac4b3e6
2011-08-25 17:08:19 +09:00
Chet Haase
c93fcdce22 Merge "Fix issue with views becoming visible with stale content." 2011-08-25 00:54:14 -07:00
Chet Haase
4324eadc89 Fix issue with views becoming visible with stale content.
An earlier fix nooop'd invalidate calls on non-visible views. This
caused an issue where changes to the view while it was not visible
(such as changing the text of a TextView) would not get picked up
by the invalidation process.

The fix is to automatically invalidate() a view when it becomes
visible, to account for any changes that may have occurred to its
content while it was not visible.

Change-Id: Ia0f8fb42ca627b5a38f08761fa622b23f2dfa38b
2011-08-24 21:31:03 -07:00
Dianne Hackborn
6ff0037792 Merge "Fix to show the correct HW accel background in the preview window." 2011-08-24 20:56:05 -07:00
Dianne Hackborn
07213e6d88 Fix to show the correct HW accel background in the preview window.
Also tweak wallpaper service to do a cleaner transition to a
static wallpaper.

Change-Id: I876a32091f92dd5a529d7fd809d3b8e730bb7d2a
2011-08-24 20:05:39 -07:00
Gilles Debunne
f874c4f934 Merge "Spell checking in TextViews" 2011-08-24 17:53:42 -07:00
Dianne Hackborn
c2644096b7 Merge "Fix issue #5050039: Launcher is sometimes rendering underneath the system/status bar" 2011-08-24 17:39:07 -07:00
Romain Guy
c39e8e89eb Merge "Add OpenGL backend to ImageWallpaper Bug #5204874" 2011-08-24 17:09:30 -07:00
Romain Guy
407ec78b82 Add OpenGL backend to ImageWallpaper
Bug #5204874

Currently disabled.

Change-Id: I5e7b35dce2981b0691f107e39c6394b260466543
2011-08-24 17:06:58 -07:00
Dianne Hackborn
fa6b35be12 Fix issue #5050039: Launcher is sometimes rendering underneath the system/status bar
It looks like this is caused by the change in HC to stop activities when
the screen is off.  ViewRootImpl (a.k.a. ViewRoot) has special code to
avoid doing work when it is stopped, and it is now stopped when the screen
is off.  The problem here is if the window's activity is stopped when the
window is first displayed, then it would never do the initial fitSystemWindows()
with the status bar offsets given by the window manager, and never do this
again until the status bar changes.

Also included here is some re-arranging of the code dealing with the offsets
changing, because it was dealt with in two places and only one had a bunch of
code dealing with HW accelerated drawing and performing the fade transition
between states.  Now all of that is unified into one place.

Change-Id: I9828f02664cc622dbf186effb1f685a8aa4456a1
2011-08-24 17:03:54 -07:00
Svetoslav Ganov
8bd69610aa Intra-process view hierarchy interrogation does not work.
The content retrieval APIs are synchronous from a client's
perspective but internally they are asynchronous. The client thread
calls into the system requesting an action and providing a callback
to receive the result after which it waits up to a timeout for that
result. The system enforces security and then delegates the request
to a given view hierarchy where a message is posted (from a binder
thread) describing what to be performed by the main UI thread the
result of which it delivered via the mentioned callback. However,
the blocked client thread and the main UI thread of the target view
hierarchy can be the same one, for example an accessibility service
and an activity run in the same process, thus they are executed on the
same main thread. In such a case the retrieval will fail since the UI
thread that has to process the message describing the work to be done
is blocked waiting for a result is has to compute! To avoid this scenario
when making a call the client also passes its process and thread ids so
the accessed view hierarchy can detect if the client making the request
is running in its main UI thread. In such a case the view hierarchy,
specifically the binder thread performing the IPC to it, does not post a
message to be run on the UI thread but passes it to the singleton
interaction client through which all interactions occur and the latter is
responsible to execute the message before starting to wait for the
asynchronous result delivered via the callback. In this case the expected
result is already received so no waiting is performed.

bug:5138933

Change-Id: I382e2d8689f5189110226613c2387f553df98bd3
2011-08-24 16:26:43 -07:00
Dianne Hackborn
a4bacb8b74 Fix animation scale to also scale start offset.
Also more better info in meminfo dump.

Change-Id: I45ab41821cd8dd81b61605de6a0cf7074e76c71a
2011-08-24 15:12:38 -07:00
Chet Haase
4694b7f186 Merge "Fix docs for fill behavior in Animation class." 2011-08-24 11:38:23 -07:00
Chet Haase
d8991c4ab0 Fix docs for fill behavior in Animation class.
Change-Id: I9230e9b9841dbecead51a6716195749b0c5a0e39
2011-08-24 07:20:53 -07:00