Commit Graph

6728 Commits

Author SHA1 Message Date
Roozbeh Pournader
b51222a301 Add more firstStrong alternatives for textDirection.
The current firstStrong value of textDirection is locale-dependent,
and can create problems when consistent display of text across
locales of potentially different direction is desired.

This adds two new values for textDirection, firstStrongLtr and
firstStrongRtl, which don't use the locale or the view's direction as
fallback, but explicit values of LTR or RTL.

Using firstStrongLtr also guarantees the exact algorithm defined in
the Unicode Bidirectional Algorithm to be used for determining
direction.

Bug: 13428339
Change-Id: I450d4f6b5197763ace7f9506c72cf87a90da4218
2015-04-13 15:01:43 -07:00
Chris Craik
f518a3ab70 Merge "Deprecate and disable legacy caching APIs" 2015-04-13 19:46:32 +00:00
Chris Craik
5a6bbae6fc Deprecate and disable legacy caching APIs
bug:20159889

Change-Id: Ib25bb6bceaee27b4d04a64e8ad298db9977b2719
2015-04-13 11:13:52 -07:00
Tim Kilbourn
6a975b3c35 Save search context when dispatching onSearchRequested.
The InputDevice used to trigger the search is saved in a SearchEvent
so an application implementing onSearchRequested determine the device
triggering the search.

Bug: 15374820
Change-Id: If2cd14f77ce572a5ee131697cd63145fbea63f27
2015-04-13 09:39:24 -07:00
Clara Bayarri
28e7ba6644 Merge "Show and trigger activities that implement Text Processing actions" 2015-04-12 19:46:42 +00:00
Doris Liu
0084e37095 Distance based animation duration
In order to preserve the same look and feel of an animation across different
devices, we need to maintain the same angular velocity for the animation in
users' field of view. Since the animation path may span different angles on
different devices, we need to therefore adjust the duration accordingly.

Change-Id: Ia37f213e5a894a046edbb1a45a4ced04e406d85d
2015-04-10 14:09:30 -07:00
Clara Bayarri
d5bf3ed9b0 Show and trigger activities that implement Text Processing actions
This CL adds the Activities that support Intent.ACTION_PROCESS_TEXT
to the Text Selection Action Mode in Editor, and triggers an intent
with the currently selected text when they are selected.

It also adds the required mechanism to allow a View to request an
intent to be started, and return the activity result back to it.

Change-Id: I62ec618010edf01da41338c8c1a7dd4292a15227
2015-04-10 16:28:35 +01:00
Tim Kilbourn
6d85cf2bd7 Simplify input-audio device mapping
Instead of matching on unique ids, allow an .idc file to specify
whether the input device also has a mic.

Bug: 15374820
Change-Id: Ib5f934f1f37f6b98bb906a5be86c6bfa9a5f09c8
2015-04-08 15:44:03 -07:00
Clara Bayarri
2f92e9710a Merge "Floating toolbar: Create the FloatingActionMode and use it in DecorView." 2015-04-08 08:00:01 +00:00
Jeff Brown
b4140e4251 Merge "Fix animation start jank due to expensive layout operations." 2015-04-07 19:28:57 +00:00
Jeff Brown
c42b28dda4 Fix animation start jank due to expensive layout operations.
The Choreographer carefully schedules animation updates to occur
after input but before traversals occur.  This ensures that the
effects of animations are perceived immediately in the next frame.
The start time of animation is usually set the moment the animator
first runs.  The start time serves as a reference for timing the
remainder of the animation.

Setting the start time during the animation callback works well except
when traversals take a long time to complete.  In that case, we may
end up drawing the initial frame of the animation then skipping several
following frames (because a lot of time has already passed since the
animation start time was set), effectively shortening the duration
of the animation.

To resolve this issue, we introduce a new COMMIT phase within the
Choreographer.  The COMMIT callback runs after traversals complete
and may provide an updated frame time that more accurately reflects
the time when the frame finished drawing.

In the case where an animation is just starting, we note the fact
that its initial start time has not yet been committed (the user
hasn't actually seen anything on screen yet).  Then, during the
COMMIT phase, we adjust the animation start time to better reflect
the time when the animation's first frame was drawn, effectively
causing the animation actually start after the expensive traversal
operations occurred such that no frames will be skipped.

Bug: 17258911
Change-Id: I279603d01fd4ed1de8f51a77c62f4fec5e9b746a
2015-04-07 12:27:17 -07:00
Alan Viverette
61cbc1f74f Merge "Add accessibility action for scrolling to a collection position" 2015-04-07 17:21:08 +00:00
George Mount
b6d8a84336 Merge "Fix NPE in getForegroundTintList" 2015-04-07 15:52:59 +00:00
Clara Bayarri
838e36cda7 Floating toolbar: Create the FloatingActionMode and use it in DecorView.
This CL
- Creates a new FloatingActionMode
- Uses it for action mode requests of type floating
- Plumbs in the positioning invalidation logic

Change-Id: I379de5b0a87b256946d0a6d8014299cfb78e6734
2015-04-07 11:24:06 +01:00
Alan Viverette
23f4432437 Add accessibility action for scrolling to a collection position
Cleans up verbose R package in GridView, accessibility action docs,
and some lint warnings in AccessibilityNodeInfo. Makes the action IDs
for SHOW_ON_SCREEN and SCROLL_TO_POSITION public so that we can
guarantee they won't change (and thus reference them in support lib).

Change-Id: Ica53b7be7a68b84054b9bac1fc7958a21a42e089
2015-04-06 16:04:56 -07:00
George Mount
db22741540 Fix NPE in getForegroundTintList
Bug 20068789

Change-Id: I658c6f4504ca78ea839d635f497c48c35e1de6ca
2015-04-03 14:13:43 -07:00
Jorim Jaggi
64e71cd6cc Merge changes from topic 'assist'
* changes:
  Add test assist to implement motion study
  Implement new assist gesture and motion
  Add flag to voice interactor for supporting assist gesture
  Add more internal API's for assist
  Add ability to start voice interaction session directly
2015-04-03 18:26:41 +00:00
Jorim Jaggi
225d3b5449 Add more internal API's for assist
- When starting a voice interaction session from SysUI, a callback
can be passed to know when voice interaction has successfully started
- Add a new window type for the voice interaction starting window,
which resides behind the voice interaction layer.
- SystemUI now also inspects the voice interaction service to get the
logo asset for the starting window.
- Make VoiceInteractionSession window fullscreen, to accomodate for
the visuals.

Change-Id: If8c3c445e8b39841f48e8d153e6d1ba81e447286
2015-04-03 11:12:03 -07:00
Dianne Hackborn
5688b03f7f Add quick and dirty async AssistStructure building.
New APIs on ViewAssistStructure all the app to request to
build a sub-tree asynchronously and indicate when it is done
with that.  The overall AssistStructure is now only flattened
and transfered on-demand, when the app receiving it requests
its data -- and at that point we can wait for any asynchronous
building to complete.

New AsyncStructure view is a very simple example of using this
to asynchronously build a child view.

Change-Id: I14f9199bee64915ad3dc80b2190916ec874308af
2015-04-02 18:43:31 -07:00
Chris Craik
ec3c97d27f Merge "Add compat path for restore underflow" 2015-04-02 22:38:49 +00:00
Chris Craik
3891f3ad59 Add compat path for restore underflow
bug:19829784

Change-Id: Ia761664208ab80c055ca11174db3ddc74457b92b
2015-04-02 15:30:32 -07:00
Dianne Hackborn
9e57a25495 Merge "Rework assist to walk down the view hierarchy." 2015-04-02 18:18:42 +00:00
Filip Gruszczynski
ad0eacb917 Merge "Provide size hint inside UNSPECIFIED measure spec." 2015-04-02 15:57:08 +00:00
Dianne Hackborn
6251f0d42b Rework assist to walk down the view hierarchy.
Instead of collecting all of the data directly in AssistStructure,
we now have a dispatch mechanism down the hierarchy to do so.
While doing this, also added the ability to automatically collect
assist data from AccessibilityNodeProviders attached to views
(so now we see all of the data in for example Calendar).

This is a first step needed towards being able to asynchronously
populate assist data.

Change-Id: I59ee1ea104ca8207bad8df7a38195d93da1adea7
2015-04-01 17:08:27 -07:00
Alan Viverette
1579edcaba Fix docs
Bug: 20011464
Change-Id: Ifcda3e562a3baea474b824e5ac2adcd36e17ae60
2015-04-01 13:23:06 -07:00
Mady Mellor
d032091fec Merge "Recognizes the stylus scale gesture in ScaleGestureDetector" 2015-03-31 17:11:44 +00:00
John Reck
c74e289a65 Merge "Add GraphicsStatsService" 2015-03-30 19:39:27 +00:00
Alan Viverette
34457f51e0 Fix ViewRootImpl handling of content changes, fix ViewPager parenting
Previously content changes were only handled if they came directly from
the focused host, which meant that changes that occurred higher in the
tree were ignored. As a result, scrolling in ViewPager that contained
virtual nodes would fail to update the focus position.

Change-Id: I028bd8c670f1210339da331626e1986c5b5d4b87
2015-03-30 12:15:25 -07:00
Alan Viverette
60b674e07b Clean up date picker attributes, add carets
Bug: 19819283
Bug: 19431364
Change-Id: Idd66f4ceb99d598c0f256d85c43bff6e25ccdd8f
2015-03-30 12:15:25 -07:00
Mady Mellor
847d17fcba Recognizes the stylus scale gesture in ScaleGestureDetector
If a user drags with a stylus (or mouse) across the screen with
the stylus primary (or mouse secondary) button clicked, this will
initiate a scale gesture that functions similarly to the quick
scale gesture: drag below starting point zooms in, drag above
starting point zooms out.

Combines some of the logic for quick scale and button
scale due to similarities.

Bug: 19620246
Change-Id: Ic53499d07cf6cef48b467dbb41f83cea433febad
2015-03-30 09:42:12 -07:00
Mathieu Chartier
f37c099c70 am 2169c68a: am d9dddea5: am 631565ab: Merge "Change getDeclaredFieldsUnchecked call to new return value"
* commit '2169c68aa330670ab340ec7faaedb5e5a9a59360':
  Change getDeclaredFieldsUnchecked call to new return value
2015-03-30 00:36:51 +00:00
Mathieu Chartier
d9dddea504 am 631565ab: Merge "Change getDeclaredFieldsUnchecked call to new return value"
* commit '631565abd6cadd65befe197afa7bac0d44f70fb2':
  Change getDeclaredFieldsUnchecked call to new return value
2015-03-29 22:42:53 +00:00
Mathieu Chartier
3d529c5b0a Change getDeclaredFieldsUnchecked call to new return value
Required for related libcore change.

Bug: 19264997
Change-Id: I17ca0cf4b9ba853e59f4a6eff3a05d9d90cf23f9
2015-03-27 18:55:50 -07:00
John Spurlock
0f09c3d0b6 Merge "Fix a few found doc problems." 2015-03-27 21:13:22 +00:00
John Reck
edc524c905 Add GraphicsStatsService
More S's for More Speed

Split JankTracker's backing data from the
class to allow for data relocation to/from ashmem regions

Pack the jank tracking data to fit in 256 bytes

Change-Id: Ife86a64b71a328fbd0c8075fe6a0404e081f725b
2015-03-27 11:50:56 -07:00
Filip Gruszczynski
415ab1ab83 Provide size hint inside UNSPECIFIED measure spec.
Change-Id: I1802ea0f6a94af0a87be81abd5fd1adfb758e854
2015-03-26 15:44:57 -07:00
Adam Powell
9c66583379 Merge "Fix default gravity for View foreground drawables" 2015-03-26 02:17:49 +00:00
Adam Powell
6579f5090a Fix default gravity for View foreground drawables
Use the expected default gravity of Gravity.FILL as FrameLayout used
to do. Reset the bounds correctly when a new drawable is set.

Bug 19922909

Change-Id: I80181923c37e33ba308e364e322d84f3cc86e93b
2015-03-25 19:14:12 -07:00
Alan Viverette
26c44eeecf Add accessibility action for making a node visible on screen
Bug: 19872425
Change-Id: I39c971f949d08d6573da2e5567dca1e187a17d7e
2015-03-25 14:54:13 -07:00
Prerepa Viswanadham
e564c00e2b Merge "Merge remote-tracking branch 'goog/mirror-m-wireless-internal-release' into master_merge" 2015-03-25 20:02:29 +00:00
Adam Powell
16e30f5e5f Merge "Fix right click to context menu behavior of View." 2015-03-25 02:26:26 +00:00
John Spurlock
bc4cf00dc5 Fix a few found doc problems.
Change-Id: I98567f4a0fc96f501c00bf361688e2c55232f78d
2015-03-24 21:51:20 -04:00
Jun Mukai
33e3036a38 Fix right click to context menu behavior of View.
When the View opens the context menu, the mouse-down event is
already handled. Therefore, the next ACTION_UP should be canceled,
otherwise, single right click shows the context menu and then
invokes the normal click actions.

Also, the right-down event should always be consumed regardless
of the context menu support. "the right click opens the context
menu on some views, but it behaves as a normal click on some
other views" would confuse users.

Bug: 19641497
Change-Id: Ibbc18fe641745cf42382129b81858d8f3d14768b
2015-03-24 17:24:10 -07:00
Adam Powell
cd9db854dc Merge "Move foreground drawable down from FrameLayout into View" 2015-03-24 23:26:59 +00:00
Adam Powell
2b25e2eee0 Move foreground drawable down from FrameLayout into View
This will allow any View to include foreground drawables. This is
useful for cases where a foreground drawable is a more appropriate
place to put a state list to show focus or touch highlighting.

Also add View#onDrawForeground as a public API hook for drawing
decorations after primary view content and child views such as
scrollbars, foreground drawables and EdgeEffects.

Change-Id: If1e4700af69db6876970f8f4ad5e3eab11b8034c
2015-03-24 16:19:20 -07:00
John Spurlock
b4f01b966b Remove the ability to disable audio service.
Running in a configuration without audio service is not fully tested.
Remove the configuration option for now. Also remove unused delegation
layer in SoundPool.

Bug: 19891112
Change-Id: I47be0e32d54b8ef8fa25cf47b85eacf8a4969500
2015-03-24 17:22:13 -04:00
Prerepa Viswanadham
4209a28270 Merge remote-tracking branch 'goog/mirror-m-wireless-internal-release' into master_merge
Change-Id: I49aab437af220f1139cfd2d0a9c362acce31074e
2015-03-24 13:46:08 -07:00
Griff Hazen
daf5c0ebd0 Merge commit '583c7c56' into master
Change-Id: I89c2c63005fbb6b1c058b2022f4469be5244505f
2015-03-23 16:34:11 -07:00
Jeff Brown
04bf45a300 Merge "resolved conflicts for merge of 13d81b6d to master" 2015-03-23 21:02:30 +00:00
Jeff Brown
221a8277dc resolved conflicts for merge of 13d81b6d to master
Change-Id: Icb72123fcf4b74e97d9a62504caf8a17eb65c9e6
2015-03-23 13:53:09 -07:00