Commit Graph

5978 Commits

Author SHA1 Message Date
Adam Powell
f1be67f3ea am 8e8d8655: am dd9488c1: Merge "Provide a public API for View#computeFitSystemWindows" into lmp-dev
* commit '8e8d86559e4938daed3bb018afb61336e643e2e3':
  Provide a public API for View#computeFitSystemWindows
2014-09-13 02:37:35 +00:00
Adam Powell
d72068b38e Provide a public API for View#computeFitSystemWindows
The current hidden API is necessary to perform correct inset behavior
for support libraries like appcompat. Provide a public method
consistent with the new WindowInsets APIs.

Bug 17411097

Change-Id: I71a63eea0238b94cae6b5c6f1721d5567560ba81
2014-09-12 16:51:28 -07:00
Yohei Yukawa
6468b783c6 am 5bdb322f: am b7dd9519: Merge "API Review: Clean up removed APIs" into lmp-dev
* commit '5bdb322f8cdbc89113df20d79054d3f6c5d1ad44':
  API Review: Clean up removed APIs
2014-09-12 08:27:06 +00:00
Craig Mautner
6ec7cd9dab am a7027783: am 31632435: Merge changes Ia6fe9724,I682b9acb into lmp-dev
* commit 'a7027783e39e4da9ef6cc66a200746ffb81e720e':
  Show all windows from activity that hides keyguard
  Make sure FLAG_DISMISS_KEYGUARD brings up bouncer
2014-09-12 05:47:14 +00:00
Adam Powell
9c8cfa5a3b am e82480b3: am 51eee88c: Merge "Remove View methods that can\'t be used safely from the SDK" into lmp-dev
* commit 'e82480b3a5ba0c342225035fac94020e41e5170a':
  Remove View methods that can't be used safely from the SDK
2014-09-12 05:45:37 +00:00
George Mount
b6d4a7f141 am 9ace814b: am 3081e360: Merge "Have Activity Transitions activited by a new window attribute." into lmp-dev
* commit '9ace814b28d582e9cd08f13919ba5b672e2b72ef':
  Have Activity Transitions activited by a new window attribute.
2014-09-12 05:44:51 +00:00
Chet Haase
dcce4a5119 am e58831a6: am 05cafed0: Merge "Make starting window hw-accelerated" into lmp-dev
* commit 'e58831a6a0edce3114686cb8168652a50e956031':
  Make starting window hw-accelerated
2014-09-12 05:43:45 +00:00
Yohei Yukawa
3fadee4791 API Review: Clean up removed APIs
This CL removes old API signatures marked as @removed
in the follow CLs.
- Ic8c6fab58c01206872a34e7ee604cdda1581364d
- Ia8cbb9f6b41cd9509fc0147fd68763dfde593ffc
- I772c48ff18918e48a81e807b48ff907614485c09

This is just a clean-up CL. No behavior change is intended.

BUG: 17200900
BUG: 17320996
BUG: 17365414
Change-Id: Ibfbd5cc1cdebb8851c73477cff55c9b2d631fdea
2014-09-12 11:32:31 +09:00
Craig Mautner
cbc771f50e Merge changes Ia6fe9724,I682b9acb into lmp-dev
* changes:
  Show all windows from activity that hides keyguard
  Make sure FLAG_DISMISS_KEYGUARD brings up bouncer
2014-09-12 01:45:29 +00:00
Craig Mautner
7d7808fcf8 Show all windows from activity that hides keyguard
Popup windows from the activity hiding the keyguard weren't being
shown. This change retrieves that activity from PhoneWindowManager
and applies the show or hide call to the windows that match the
activity.

Fixes bug 16479813.

Change-Id: Ia6fe97240aec85c5233eee9038138f7d48095a6e
2014-09-11 18:02:38 -07:00
Adam Powell
fb008d6ac3 Merge "Remove View methods that can't be used safely from the SDK" into lmp-dev 2014-09-11 23:12:27 +00:00
Adam Powell
5eb3ffc24c Remove View methods that can't be used safely from the SDK
View methods that previously accepted a TypedArray to initialize
parameters parsed from xml cannot be used correctly by apps. The
TypedArray passed must always be obtained from a context using the
filter array com.android.internal.R.styleable.View, which is not
visible to the SDK.

A previous change already made this safe for existing apps already
using it so that they don't crash, this change removes these methods
from the SDK entirely.

Change-Id: I62099087ad6fd5bf8363e863b04fd0434b8cdfca
2014-09-11 15:38:55 -07:00
George Mount
db352c7835 Merge "Have Activity Transitions activited by a new window attribute." into lmp-dev 2014-09-11 21:54:13 +00:00
Chet Haase
969e543b32 Merge "Make starting window hw-accelerated" into lmp-dev 2014-09-11 19:32:00 +00:00
Chet Haase
4f52b34206 Make starting window hw-accelerated
An earlier fix in L disabled hw acceleration for the starting window
after the system process became hw accelerated. This was done to preserve
the old behavior of the starting window having some default behavior
(in particular, being filled with a default color). However, this ends up
being a memory and performance problem on some platforms (memory because
some platforms have backing store for software surfaces, performance
because it takes far longer to create a screen-size software surface than
a hardware surface).

The fix is to allow the starting window to inherit the hw acceleration
behavior of its process, and to detect when we are drawing the contents
of that starting window and to fill it with a default color (black).

Issue #17443449 use hardware rendering for app preview window

Change-Id: I8be8111d9e38c51fbbc07185acca065815ce26dc
2014-09-11 12:28:29 -07:00
George Mount
9826f636ad Have Activity Transitions activited by a new window attribute.
Bug 17006497

Window content transitions were being enabled by default in
the Material Theme so that Activity Transitions could be
enabled by default. Unfortunately, this gave the effect that
many applications did not want -- the default transition between
window content is a fade out/in. Here, a new attribute is
added: windowActivityTransitions that is enabled by default
in the Material theme and windowContentTransitions is disabled
by default in all themes.

Change-Id: Iab453d608f00a48ff7ab7f09ce84b52cf5f20294
2014-09-11 12:23:17 -07:00
Jon Miranda
7296d609f9 am a8ced922: am cfb0664e: Merge "Tries to resolve reference resource names instead of its data." into lmp-dev
* commit 'a8ced9220ac8f946d5bc5d1584981434eecb562b':
  Tries to resolve reference resource names instead of its data.
2014-09-10 20:53:25 +00:00
Jon Miranda
83e3ec9d4e Merge "Tries to resolve reference resource names instead of its data." into lmp-dev 2014-09-10 20:34:08 +00:00
Yohei Yukawa
6f6734c6cb am d72d7869: am 107505bd: Merge "Use public APIs to instantiate InputMethodSubtype" into lmp-dev
* commit 'd72d7869702f36911429da0ee8390e089a6f0a79':
  Use public APIs to instantiate InputMethodSubtype
2014-09-10 09:31:46 +00:00
Yohei Yukawa
443c2bafd8 Use public APIs to instantiate InputMethodSubtype
This is a groundwork for subsequent CLs that are
supposed to improve default input method selection
logics.

Historically we have had a @hide constructor of
InputMethodSubtype. However, this contructor is
a bit obsolete because we can not specify some
parameters that were added in recent platform
releases. We should use InputMethodSubtypeBuilder
instead.

BUG: 17347871
Change-Id: I72ad79682a58344e14380eb20e26edf98aee37cd
2014-09-10 15:42:14 +09:00
Jon Miranda
7c744bdbf3 Tries to resolve reference resource names instead of its data.
Example: @16974751 can be resolved to android:style/TextApperance.Material.

Bug: 17446752
Change-Id: I3ffede3ecc8689badd646a27d50a7a73ce45cf86
2014-09-09 17:06:31 -07:00
Riley Andrews
4ef0f50c29 am f41b1485: am 4b7c14bf: Merge "Use surfaceflinger for recents thumbnail rotations." into lmp-dev
* commit 'f41b14855e6fd1bcf2ddaa843d0e177825010023':
  Use surfaceflinger for recents thumbnail rotations.
2014-09-09 21:55:38 +00:00
Riley Andrews
0b81adcaea Merge "Use surfaceflinger for recents thumbnail rotations." into lmp-dev 2014-09-09 19:59:15 +00:00
Dianne Hackborn
aadc76edb1 am 2146dc79: am 0ad9e247: Merge "Add new wallpaper features for insets and offsets." into lmp-dev
* commit '2146dc791c53895b60161d8819b25b4277290c4b':
  Add new wallpaper features for insets and offsets.
2014-09-09 16:55:06 +00:00
Dianne Hackborn
bb8c483461 Merge "Add new wallpaper features for insets and offsets." into lmp-dev 2014-09-09 16:41:44 +00:00
Riley Andrews
1d13406538 Use surfaceflinger for recents thumbnail rotations.
+ This removes 30ms of latency on app to home transitions
  on volantis.
Change-Id: Ia3747b8f8be0d41b9b3d095753edfe1df185c84d
2014-09-09 03:15:48 +00:00
Dianne Hackborn
067e5f68b9 Add new wallpaper features for insets and offsets.
Issue #17394151: WallpaperService / Engines need to get notified
of WindowInsets

Issue #17394203 Wallpapers need a system API to be shifted in order
to support burn in protection

Adds a new API on WallpaperManager to set additional offsets to
make wallpapers extend beyond the display size.

Insets are now reported to wallpapers, to use as they may.  This
includes information about the above offsets, so they can place
their content within the visible area.  And to help with this, also
expose the stable offsets APIs in WindowInsets which is also very
useful information for the wallpaper.

Another new API on WallpaperManager to set a raw offset to apply
to the wallpaper window, forcing it to move on the screen regardless
of what the wallpaper is drawing.

Fix wallpapers when used with overscan enabled, so they still extend
out across the entire screen.  Conveniently, the above new window
insets information is very useful for this case as well!

And a new wallpaper test app for all this stuff.

Change-Id: I287ee36581283dd34607609fcd3170d99d120d8e
2014-09-08 18:02:18 -07:00
Elliott Hughes
4656e69bf3 resolved conflicts for merge of 2008cff7 to lmp-dev-plus-aosp
Change-Id: I5148eda624e8504f12dbc1288cd4a7a5b7c10850
2014-09-08 13:08:43 -07:00
Svet Ganov
2bb02c799c Merge "Clicking on partially coverd views by other views or windows." into lmp-dev 2014-09-08 18:45:04 +00:00
Svet Ganov
7498efdc5e Clicking on partially coverd views by other views or windows.
In touch exploration mode an accessibility service can move
accessibility focus in response to user gestures. In this case
when the user double-taps the system is sending down and up
events at the center of the acessibility focused view. This
works fine until the clicked view's center is covered by another
clickable view. In such a scenario the user thinks he is clicking
on one view but the click is handled by another. Terrible.

This change solves the problem of clicking on the wrong view
and also solves the problem of clicking on the wrong window.
The key idea is that when the system detects a double tap or
a double tap and hold it asks the accessibility focused node
(if such) to compute a point at which a click can be performed.
In respinse to that the node is asking the source view to
compute this.

If a view is partially covered by siblings or siblings of
predecessors that are clickable, the click point will be
properly computed to ensure the click occurs on the desired
view. The click point is also bounded in the interactive
part of the host window.

The current approach has rare edge cases that may produce false
positives or false negatives. For example, a portion of the
view may be covered by an interactive descendant of a
predecessor, which we do not compute (we check only siblings of
predecessors). Also a view may be handling raw touch events
instead of registering click listeners, which we cannot compute.
Despite these limitations this approach will work most of the
time and it is a huge improvement over just blindly sending
the down and up events in the center of the view.

Note that the additional computational complexity is incurred
only when the user wants to click on the accessibility focused
view which is very a rare event and this is a good tradeoff.

bug:15696993

Change-Id: I85927a77d6c24f7550b0d5f9f762722a8230830f
2014-09-07 23:36:20 -07:00
Yohei Yukawa
5f183f0671 L API proposal: Introduce IS_RTL flag
This CL introduces CursorAnchorInfo.FLAG_IS_RTL for better
RTL support. This CL also renames *CharacterRect() with
*CharacterBounds() so that they can look more consistent
with other existing APIs.

Rationale:

CursorAnchorInfo.FLAG_IS_RTL addresses following issues.
1. There is no way to associate the RTL information with
   the insertion marker.
2. Returning mirrored (right < left) RectF for RTL in
   CursorAnchorInfo#getCharacterRect() is turned out
   to be bug-prone. Such usage of RectF is not fully
   supported. For example, RectF#isEmpty() always returns
   false when right < left.
3. There is no reliable to provide the RTL information
   when CursorAnchorInfo#getCharacterRect() returns an
   empty (right == left) RectF. Perhaps we could use +0.0
   and -0.0, but I'm afraid that it is also bug-prone.

BUG: 17365414
BUG: 17335734
Change-Id: Ic8c6fab58c01206872a34e7ee604cdda1581364d
2014-09-08 02:17:54 +00:00
Winson Chung
2e7f3bdcc9 Removing unnecessary delays, ensuring transition thumbnail is the size of the header. (Bug. 16987565)
Change-Id: Ic104876c5fe16997eca00e0a2b3d8644c927120c
2014-09-07 20:08:40 +00:00
Jon Miranda
05cc48292b Merge "Added getStyleAttributes to access all Theme attributes." into lmp-dev 2014-09-06 00:27:20 +00:00
John Reck
3207ffe120 Merge "Disable RT-anim for AnimatorSet" into lmp-dev 2014-09-06 00:22:25 +00:00
Alan Viverette
9ffe8c06e5 Merge "Propagate drawable hotspots when duplicate parent state is enabled" into lmp-dev 2014-09-06 00:15:09 +00:00
Jon Miranda
042ad633bc Added getStyleAttributes to access all Theme attributes.
ViewDebug uses getStyleAttributes to get the attributes, and then gets the
attribute name and value so that Hierarchy Viewer can display it.

Bug: 17407087
Change-Id: I3577e32ae99668383701dc908bb46db14a75c3c4
2014-09-05 16:19:08 -07:00
John Reck
f5945a0c8b Disable RT-anim for AnimatorSet
Bug: 17317184

 Unfortunately this will disable *all* RT animations in a scene,
 but we don't have more selective targetting currently

Change-Id: I57e1c0ae43957f45229473bdcdaf34c05825fab7
2014-09-05 15:58:26 -07:00
Chris Craik
83eb430270 Merge "Add shadow/clipping properties to HierarchyViewer" into lmp-dev 2014-09-05 22:36:41 +00:00
Chris Craik
5c75c52e04 Add shadow/clipping properties to HierarchyViewer
bug:15777980

Change-Id: Ic3d24326f585d2d2b9889486f0ed322eb98b5af8
2014-09-05 15:23:08 -07:00
Mark Doliner
d0646dca40 Small documentation fixes across many files.
Change-Id: I3e8787ce4bc6018ea1dc9aef2a2cd4e0a8dde663
2014-09-05 13:57:51 -07:00
Alan Viverette
a3e49a4b1d Propagate drawable hotspots when duplicate parent state is enabled
Makes hotspot-centered ripples "just work" everywhere that old-style
pressed states work.

BUG: 17407652
Change-Id: Id4802662aea537959122f029e85aa576cf51b641
2014-09-05 13:10:12 -07:00
Michael Wright
a6863ad622 Merge "Allow for event dispatching when in non-interactive states." into lmp-dev 2014-09-05 19:58:12 +00:00
Chris Craik
def8a37128 Merge "Replace native crash with IAE when calling picture.draw() w/ a HW canvas" into lmp-dev 2014-09-05 17:49:20 +00:00
Chris Craik
96890564bd Replace native crash with IAE when calling picture.draw() w/ a HW canvas
bug:17397958
Change-Id: I75f942db0e604f9fd6ab31e6c81f718c0f57b16a
2014-09-05 10:33:39 -07:00
Svetoslav
53dcd394aa Update FrameStats API per api-council request.
bug:17390382

Change-Id: I50518834569f4d0ec394709294537256f03530e0
2014-09-05 10:07:02 -07:00
Michael Wright
70af00abf7 Allow for event dispatching when in non-interactive states.
We need to allow for event dispatching in non-interactive states so
that we can enable a richer set of interactions when a device is
dozing (i.e. is in a low power state with an Always-on-Display).

Bug: 17167296
Change-Id: I8ae0f544a8106cb91ff38c2309b8b57cbe2f2c72
2014-09-04 19:48:39 -07:00
Chris Craik
2d3f9033f8 Merge "Prioritize reveal clipping over Outline clipping" into lmp-dev 2014-09-04 21:06:10 +00:00
Chris Craik
e83cbd4518 Prioritize reveal clipping over Outline clipping
bug:15780987
bug:17350602

Also update docs around clipping nesting behavior,
and some Z ordering behavior.

Change-Id: Iaa204350a0adfdcbd8c4b821fb4a9c0ae22f2613
2014-09-04 14:05:10 -07:00
Alan Viverette
c65e9a480a Merge "Fix clip rect when drawing accessibility focus rect" into lmp-dev 2014-09-04 20:44:38 +00:00
Alan Viverette
eb3ca22426 Fix clip rect when drawing accessibility focus rect
BUG: 17320910
Change-Id: I4112c2c9c10187d4b085c7eb96112fab090612ce
2014-09-04 13:09:34 -07:00