Commit Graph

2345 Commits

Author SHA1 Message Date
Gilles Debunne
893eace609 Merge "Sub display list in TextView" 2012-01-13 14:53:54 -08:00
Dianne Hackborn
f88d1493aa am 10065177: am 2e282f35: Merge "Fix issue #5823276: home repaints after full-screen app is exited" into ics-mr1
* commit '100651779fde99f7ae2a10719d688b51115f08e9':
  Fix issue #5823276: home repaints after full-screen app is exited
2012-01-13 13:01:48 -08:00
Romain Guy
44d79747b5 Remove unused parameter
Change-Id: I0896b2cdb9f1fa9c5e191e4ea425e22ac6f10f29
2012-01-13 12:12:09 -08:00
Ken Wakasa
c8f4183669 Bring LatinIME's privateImeOptions "forceAscii" to a formal public API
bug: 5850605
Change-Id: I6ab6076909c735a3e0729b457de68d0b5301184d
2012-01-13 09:45:41 +09:00
Gilles Debunne
b35ab7b729 Sub display list in TextView
TextView uses a sub-display list to 'cache' the rendering of its
text. This saves time when drawing an editable text, where the blinking
cursor forces a re-draw twice per second, which creates pauses during
scrolling.

Added a sub-display list invalidation when an appearance span is
modified/added/removed.

Also added an invalidation of the display list when selection range
is changed.

Change-Id: I41e8068a12902b8a745c5bb77de8c77def76a270
2012-01-12 15:56:37 -08:00
Dianne Hackborn
01b02a734d Fix issue #5823276: home repaints after full-screen app is exited
Don't consider a window as a candidate for the top fullscreen window
if it is not going to be a candiate for layout.

Also don't consider windows a candidate for layout if their app token
is hidden.  This fixes a transient state where we are preparing to
unhide the window but have not done so yet.

Change-Id: Ife5299ffa003c1df1a4f787b7a2809cbf614ec16
2012-01-12 14:05:03 -08:00
satok
11299b1b8c Make public SpellChecker utilities
Bug: 5639238
Change-Id: Id7dd2263a6305cc6ba0cf8f4d8ad8fb0d39a48ff
2012-01-12 13:54:53 +09:00
Fabrice Di Meglio
7d5178e9fb Merge "Add textDirection="locale"" 2012-01-09 10:46:03 -08:00
Fabrice Di Meglio
4c1e00a8c2 Add textDirection="locale"
- also fix and update unit tests
- see bug #5242821

Change-Id: I29e029bab8ade336a430f9a2a5073caaf11b8dda
2012-01-06 11:29:18 -08:00
Ken Wakasa
9a74476c0a Comment clean up for InputMethodSubtype.
Change-Id: I50bca715f4caa669cb341b36a3d46358e1ad1ded
2012-01-06 12:32:15 +09:00
Chet Haase
0041861a04 Fix behavior of AnimationSet and fillBefore
The previous logic in AnimationSet when starting an animation
ignored the fillBefore behavior of its child animations. This caused
a bug where a delayed AlphaAnimation would automatically cause the
target view to become transparent, even though it was supposed to wait
until after some delay to do so.
The fix checks the fillBefore behavior of each child animation before
concatenating its transform with the transform of the AnimationSet.

Change-Id: I76a2dafbe6dd338dc5281b17612eae87af168d86
2011-12-20 15:56:15 -08:00
Chet Haase
7d4045b3f2 Merge "Make behavior of ABSOLUTE pivot values more intuitive" 2011-12-20 10:49:02 -08:00
Chet Haase
84c949f3b1 Make behavior of ABSOLUTE pivot values more intuitive
Currently, you must call initialize() on RotateAnimation or
ScaleAnimation prior to calling start(). The reason is that the
actual pivot point used in calculating the transform is not set
until that method is called. This makes sense in the typical case
where the animation is running on a View and is using values relative
to the size of the View or of its parent. But if the caller sets the
values to be ABSOLUTE types instead, the sizes of the view and the parent
are irrelevant and the call to initialize() should not be needed (and
is not intuitive).

This fix automatically sets the internal pivot values in the case where
the value types are ABSOLUTE.

Change-Id: I74a0e462486efae08aa76e72c0d19d82f2a2677e
2011-12-20 10:38:31 -08:00
Chet Haase
2d46fcc669 Minor small fixes to old Animation code and docs.
Change-Id: Ib8a1ba2d12e26cc42a2cec48312a5229bb6d4e8a
2011-12-20 07:57:23 -08:00
Chet Haase
d47f1531d0 Make Property objects in View final
The various Properties added to View in 4.0 (ALPHA, TRANSLATION_X, etc.)
were not final, making it possible to assign on property to another.
Not something that someone would want to do, but we should try to prevent
that kind of mess. This API change makes those properties final.

Change-Id: I7d0c7f738eb2074d0781b1ba6a7c19339bac4477
2011-12-16 13:44:01 -08:00
Dianne Hackborn
b5052de757 resolved conflicts for merge of a80bab37 to master
Change-Id: Id71cc68a617e1ea0dd2f3932d454be6dba336eef
2011-12-13 16:31:43 -08:00
Dianne Hackborn
33b8ee509f Fix issue #5756204: Crespo IME briefly appears shortened when...
...rotating to landscape

When doing spell checking in the same process as the spell checker, we
need to make sure it is still done asynchronously.

Putting this in I noticed quite a few threading issues in this code, so
I also addressed those (which became very obviously a problem with the
async stuff here now).

Also tweaked the service side to run spell checking at background priority.

Change-Id: I01bafe3bec6bceeca911d6bf2f61a486a2fd4c48
2011-12-13 15:15:33 -08:00
Dianne Hackborn
ee4d45f305 am 0be53567: am 19a06fe9: Merge "Fix issue #5755172: Soft menu key disappears when menu is open" into ics-mr1
* commit '0be53567c1c2299c548d3204d2b9240108fbd53a':
  Fix issue #5755172: Soft menu key disappears when menu is open
2011-12-13 13:44:14 -08:00
Dianne Hackborn
73ab6a49db Fix issue #5755172: Soft menu key disappears when menu is open
We need to work more like before in determining whether the menu
key is needed -- in some cases look back in the window list to
determine this if we don't know the value from the current window.

This requires adding a new private flag indicating whether the
compat menu state is known for a window, which is set by
PhoneWindow as part of its existing process of computing the flag
for its own windows.

Now we can have a new API on WindowState to determine the value
of this flag for a window, which if needed walks back in the window list
to find a window the value is known for (or stops at what the policy
has determined is the top full-screen window, so we stop like we used
to at things like the lock screen or the bottom of an application).

Change-Id: I829de6d629b5af8bcb422cb85249ee4041c7205e
2011-12-13 11:32:11 -08:00
Adam Powell
f8c2abcadd am bffe0be3: am 9c92fcd9: Merge "Bug 5727679 - CTS test ViewGroupTest#testGetChildVisibleRect" into ics-mr1
* commit 'bffe0be3af2bd19a392e7d332cbfda9a60b8e057':
  Bug 5727679 - CTS test ViewGroupTest#testGetChildVisibleRect
2011-12-12 17:49:21 -08:00
Adam Powell
f93bb6d8fd Bug 5727679 - CTS test ViewGroupTest#testGetChildVisibleRect
Preserve the ability to call getChildVisibleRect without the view
being attached to a window.

Change-Id: I702b19fa1625c346eb22fda4a4ffb6e8f790b689
2011-12-12 15:23:12 -08:00
Amith Yamasani
549d5f88bf Merge "Show the current stream's volume in the volume panel." 2011-12-12 09:56:26 -08:00
Jeff Brown
bdc18b28eb am 03e63427: am 8e0ecbfc: Merge "Shortcut keys should be handled on down, not up." into ics-mr1
* commit '03e634270d880407316b51fac2278e604fc82703':
  Shortcut keys should be handled on down, not up.
2011-12-09 14:25:41 -08:00
Romain Guy
9477c6e658 Enable dirty regions on newly created EGL surfaces
This change fixes an issue on some tiler architectures that do not
enable the swap buffer behavior by default on EGL surfaces.

Change-Id: Ibda1ae582da1a20afad3be9c3361080e72df5206
2011-12-09 12:27:21 -08:00
Amith Yamasani
8df9609768 Show the current stream's volume in the volume panel.
Bug: 5409969

If the current stream being displayed is different from the
stream being adjusted, rearrange the sliders, unless multiple
sliders are being shown.

Change-Id: Ia48986c1046305d7fee7a32177d78d8ffd84a11b
2011-12-08 17:03:54 -08:00
Jeff Brown
8e0ecbfc97 Merge "Shortcut keys should be handled on down, not up." into ics-mr1 2011-12-07 23:29:52 -08:00
Jeff Brown
7bedf24490 Shortcut keys should be handled on down, not up.
Bug: 5720360
Change-Id: I3afc278e576ea992c76f024c8b6bad14b214239c
2011-12-07 21:37:19 -08:00
Dave Burke
9650b018e3 am e118c1de: am ef8913c0: Merge "Remove dangerous and useless optimization Bug #5525888" into ics-mr1
* commit 'e118c1de0037e6732b66b9f52903567caa961c31':
  Remove dangerous and useless optimization Bug #5525888
2011-12-07 20:43:18 -08:00
Dave Burke
ef8913c035 Merge "Remove dangerous and useless optimization Bug #5525888" into ics-mr1 2011-12-07 20:40:10 -08:00
Romain Guy
c7ee3cab56 Remove dangerous and useless optimization
Bug #5525888

Change-Id: I553828c0da09b15d0dce3727e4c26a9d0bcf72ea
2011-12-07 19:10:04 -08:00
Adam Powell
243657993c resolved conflicts for merge of db81dc72 to master
Change-Id: Ie7e1d9a255934e45d8b241b15e9674046cff2444
2011-12-07 18:18:58 -08:00
Adam Powell
6720a87ad1 Raise touch slop value from previous experiment
Change-Id: I7681c401803643f309fd988824602169a830de29
2011-12-07 17:53:46 -08:00
Gilles Debunne
e6513486ee Merge "Minor tweak in getLocationInWindow" 2011-12-07 10:40:28 -08:00
Jeff Brown
2b621bc5bb Merge "Disable postponing performTraversals(), for now." 2011-12-06 18:09:35 -08:00
Gilles Debunne
6583ce5b89 Minor tweak in getLocationInWindow
Change-Id: Ib3f30dbfb3aee7c46c58e1f7832e3394702c0ff6
2011-12-06 18:09:02 -08:00
Jeff Brown
90a3c5f51d Disable postponing performTraversals(), for now.
Bug: 5715378
Bug: 5721047
Change-Id: I89c674306665b6caa3a63b8a9d2b4b7c9ed020ae
2011-12-06 18:01:37 -08:00
Adam Powell
e49e8cc4e7 Merge "resolved conflicts for merge of 6a828712 to master" 2011-12-06 16:57:35 -08:00
Adam Powell
e4b8ff8068 resolved conflicts for merge of 6a828712 to master
Change-Id: I73c804667a890bcc9924951ff655137c1345541a
2011-12-06 16:53:47 -08:00
Romain Guy
bdfe770e08 Merge "Discard framebuffer rendering queues when discarding layers Bug #5581817" 2011-12-06 16:37:58 -08:00
Romain Guy
9c4b79af22 Discard framebuffer rendering queues when discarding layers
Bug #5581817

Change-Id: Ie30700a29059d2ea60eb7bd3f8bd20ac48a149ab
2011-12-06 16:37:10 -08:00
Jeff Brown
07069a04ef Fix PIN pad.
Some widgets apparently inject keys into the ViewRoot by sending
a DISPATCH_KEY message to its handler.  Ugh.

Bug: 5711577
Change-Id: Ibe9aaf705095d152ec866c536f31f5d85e27b97f
2011-12-06 16:15:22 -08:00
Adam Powell
7d39f85acf Lower touch slop in ViewConfiguration.
Our typical touchscreens are now good enough that we don't need the
touch slop to be as large as it once was. Lower it to increase
responsiveness while scrolling.

Move the touch slop constant to the config resource
config_viewConfigurationTouchSlop so that it may be more easily
tweaked in device-specific overlays.

Change-Id: I7c11d8affcb98e91654203beb13a26cfeec18f7c
2011-12-06 12:08:47 -08:00
Jeff Brown
96e942dabe Use a Choreographer to schedule animation and drawing.
Both animations and drawing need to march to the beat of
the same drum, but the animation system doesn't know
abgout the view system and vice-versa so neither one
can drive the other.

We introduce the Choreographer as a drummer to keep
everyone in time and ensure a magnificent performance.

This patch enabled VSync based animations and drawing by
default.  Two system properties are provided for testing
purposes to control the behavior.

"debug.choreographer.vsync": Enables vsync based animation
timing.  Defaults to true.  When false, animations are
timed by posting delayed messages to a message queue in
the same way they used to be before this patch.

"debug.choreographer.animdraw": Enables the use of the animation
timer to drive drawing such that drawing is synchronized with
animations (in other words, with vsync or the timing loop).
Defaults to true.  When false, layout traversals and drawing
are posted to the message queue for execution without any delay or
synchronization in the same way they used to be before this patch.

Stubbed out part of the layoutlib animation code because it
depends on the old timing loop (opened bug 5712395)

Change-Id: I186d9518648e89bc3e809e393e9a9148bbbecc4d
2011-12-05 16:39:59 -08:00
Jeff Brown
0a0a1248cf Add a new class to receive vsync events.
Change-Id: I4e384336d2813752a6d65fda6a77e86113a4510c
2011-12-05 11:16:07 -08:00
Dianne Hackborn
315e468763 am 803caff1: am 003c15d7: Merge "Fix issue #5614559: Registering surface error in..." into ics-mr1
* commit '803caff1dc307a8895e9f3560112f969fa3f6f39':
  Fix issue #5614559: Registering surface error in...
2011-12-05 10:45:16 -08:00
Jeff Brown
f3a0a60917 Merge "Remove type tests when recycling input events." 2011-12-03 17:35:19 -08:00
Jeff Brown
92cc2d8dc3 Remove type tests when recycling input events.
Change-Id: I1c2d5980a763c457a0546bbf601e686c601a4c03
2011-12-03 17:31:17 -08:00
Dianne Hackborn
61566cc193 Fix issue #5614559: Registering surface error in...
...Background Replacement on Stingray

This is how I should have done it in the first place.  We get the
new surface from the window manager, and then just copy it in to
the constant Surface object we have for the holder.

Change-Id: I537a9e413829a18f689dfb46687014676b27156e
2011-12-03 11:16:49 -08:00
Gilles Debunne
f240ac99d6 am 0c7e894e: am 2f1e1e4a: Merge "Handle animations in Views\' rectangle clipping methods." into ics-mr1
* commit '0c7e894e79bea35f979d30e4e3bb6115b102cafd':
  Handle animations in Views' rectangle clipping methods.
2011-12-02 17:57:31 -08:00
Gilles Debunne
2f1e1e4ab9 Merge "Handle animations in Views' rectangle clipping methods." into ics-mr1 2011-12-02 15:28:56 -08:00