Commit Graph

4898 Commits

Author SHA1 Message Date
Ashok Bhat
a0398430fc AArch64: Make graphics classes 64-bit compatible
Changes in this patch include

[x] Long is used to store native pointers as they can
    be 64-bit.

[x] Some minor changes have been done to conform with
    standard JNI practice (e.g. use of jint instead of int
    in JNI function prototypes)

[x] AssetAtlasManager is not completely 64-bit compatible
    yet. Specifically mAtlasMap member has to be converted
    to hold native pointer using long. Added a TODO to
    AssetAtlasManager.java to indicate the change required.

Change-Id: I940433f601c6db998c1a8ffff338f5361200d5ed
Signed-off-by: Ashok Bhat <ashok.bhat@arm.com>
Signed-off-by: Craig Barber <craig.barber@arm.com>
Signed-off-by: Kévin PETIT <kevin.petit@arm.com>
Signed-off-by: Marcus Oakland <marcus.oakland@arm.com>
2014-01-28 17:40:38 +00:00
Narayan Kamath
486544f763 Merge "AArch64: Use long for pointers in view/input classes" 2014-01-16 12:12:31 +00:00
Narayan Kamath
138d67c847 Merge "AArch64: Use long for pointers in MotionEvent class" 2014-01-16 12:11:55 +00:00
Narayan Kamath
d85bba8ebd Merge "AArch64: Use long for pointers in VelocityTracker class" 2014-01-16 12:11:51 +00:00
Ashok Bhat
a931d5218c AArch64: Use long for pointers in view/input classes
For storing pointers, long is used in view/input classes,
as native pointers can be 64-bit.

In addition, some minor changes have been done
to conform with standard JNI practice (e.g. use
of jint instead of int in JNI function prototypes)

Change-Id: Iafda9f4653c023bcba95b873637d935d0b569f5d
Signed-off-by: Ashok Bhat <ashok.bhat@arm.com>
Signed-off-by: Marcus Oakland <marcus.oakland@arm.com>
Signed-off-by: Kévin PETIT <kevin.petit@arm.com>
2014-01-09 15:12:04 +00:00
Ashok Bhat
96804bc8fb AArch64: Use long for pointers in VelocityTracker class
For storing pointers, long is used in VelocityTracker class,
as native pointers can be 64-bit.

Change-Id: I8c454663a97745c7440bb6f99ef49d28e9026876
Signed-off-by: Ashok Bhat <ashok.bhat@arm.com>
2014-01-08 18:48:19 +00:00
Ashok Bhat
99a1ef2b7f AArch64: Use long for pointers in MotionEvent class
For storing pointers, long is used in MotionEvent class,
as native pointers can be 64-bit.

Change-Id: I88ebfef26070b7f49c14945cad37aa3db209ec90
Signed-off-by: Ashok Bhat <ashok.bhat@arm.com>
Signed-off-by: Craig Barber <craig.barber@arm.com>
Signed-off-by: Kévin PETIT <kevin.petit@arm.com>
2014-01-08 18:31:59 +00:00
Ashok Bhat
0c3f921016 AArch64: Use long for pointers in KeyCharacterMap class
For storing pointers, long is used in KeyCharacterMap class,
as native pointers can be 64-bit.

Change-Id: Idc1b39874202e96b9231d7801e6707003787659b
Signed-off-by: Ashok Bhat <ashok.bhat@arm.com>
Signed-off-by: Marcus Oakland <marcus.oakland@arm.com>
Signed-off-by: Kévin PETIT <kevin.petit@arm.com>
2014-01-08 18:19:21 +00:00
Ashok Bhat
27285821b7 AArch64: Use long for pointers in DisplayEventReceiver
For storing pointers, long is used as
native pointers can be 64-bit.

In addition, some minor changes have been done
to conform with standard JNI practice (e.g. use
of jint instead of int in JNI function prototypes)

Change-Id: I3c0855373c0e4bedc172adb82b103586de9219dc
Signed-off-by: Ashok Bhat <ashok.bhat@arm.com>
2014-01-07 12:48:43 +00:00
Kenny Root
e6585b32ea Use java.util.Objects instead on internal API
Not needed since java.util.Objects implements all the needed
functionality.

Change-Id: Icd31d49a9801d1705427f028e9ac927d58e7d34c
2013-12-13 13:40:30 -08:00
Mindy Pereira
cce2e1944c am 5823352c: Cancel double tap mode on action_up
* commit '5823352c6c5bfa3824afacd023b01af537b5dfa0':
  Cancel double tap mode on action_up
2013-11-14 19:44:52 -08:00
Mindy Pereira
5823352c6c Cancel double tap mode on action_up
fixes b/11592408 Dragging immediately after double touch turns gesture into double touch drag

Change-Id: I3e7926a4f6f9ab4951f380bd004499c78b3bda69
2013-11-15 02:48:06 +00:00
Satoshi Kataoka
1b570b571a am 5fd5aa3d: Fix compatibility issue on InputMethodSubtype
* commit '5fd5aa3d066fc12c92b5b6541d85ac243556223f':
  Fix compatibility issue on InputMethodSubtype
2013-11-13 22:25:01 -08:00
Satoshi Kataoka
5fd5aa3d06 Fix compatibility issue on InputMethodSubtype
Bug: 11032428
Change-Id: If722bbbfb69d00e1830007582d46a33319203eea
2013-11-14 15:08:39 +09:00
Adam Powell
75ae898376 am 48d2bcf2: Reset padding flags when set programmatically or implicitly from background
* commit '48d2bcf2ce2305356c5a4f0dfbb928dc5a4c8331':
  Reset padding flags when set programmatically or implicitly from background
2013-11-13 19:41:07 -08:00
Adam Powell
48d2bcf2ce Reset padding flags when set programmatically or implicitly from background
Bug 11673480

Change-Id: I4f33c7ae46e937302e625bf1f3260adb25843645
2013-11-13 19:21:50 -08:00
Jean Chalard
d952ac4c17 am 218ecd43: Fix the docs build
* commit '218ecd43946001f07b60757db130ef5585d474d3':
  Fix the docs build
2013-11-12 22:27:47 -08:00
Jean Chalard
218ecd4394 Fix the docs build
Change-Id: I05f1f39aaa9d72201a7fd06377799246039cd505
2013-11-13 15:20:58 +09:00
Jean Chalard
383ef79d14 am 7d57b7a3: Merge "Improve documentation for InputType and EditorInfo." into klp-dev
* commit '7d57b7a35bd64d271b666f16aa1e85a4c2b99ca7':
  Improve documentation for InputType and EditorInfo.
2013-11-12 21:22:03 -08:00
Jean Chalard
7d57b7a35b Merge "Improve documentation for InputType and EditorInfo." into klp-dev 2013-11-13 05:19:36 +00:00
Craig Mautner
679ba4e86e am 6cd206b2: Merge "Relayout windows that handle their own config change." into klp-dev
* commit '6cd206b2aa0039c215fc0a4cc487471c4b3f1496':
  Relayout windows that handle their own config change.
2013-11-12 15:58:28 -08:00
Craig Mautner
6cd206b2aa Merge "Relayout windows that handle their own config change." into klp-dev 2013-11-12 23:56:21 +00:00
Craig Mautner
5d9f547720 Relayout windows that handle their own config change.
If a window claims to handle its own configuration change then we
won't destroy and recreate its window on a configuration change.
Normally that recreation triggers the first layout following
orientation change because mHaveFrame is false. Windows that handle
their own configuration changes never got a relayout pass following a
change in orientation.

This change passes the configuration changes that an application
handles into the AppWindowToken. If the app says it handles
orientation or screen size changes then a relayout will occur when the
configuration has changed.

Fixes bug 11647107.

Change-Id: Ie8d49fd050442ebbdcf0b805087894e3a2fc4be9
2013-11-12 14:02:52 -08:00
Fabrice Di Meglio
db976ea0fc am 3f183a23: Merge "Fix bug #11586041 Regression: text truncation in Clock" into klp-dev
* commit '3f183a234bef643080d4f9dce44bcaa68e5d4694':
  Fix bug #11586041 Regression: text truncation in Clock
2013-11-12 11:06:47 -08:00
Jean Chalard
c1a11f17a2 Improve documentation for InputType and EditorInfo.
Bug: 11245912
Change-Id: Ie92ba20079461f7f0e30d969ba3692fec3a3b97f
2013-11-12 14:13:55 +09:00
Fabrice Di Meglio
82d37b40c5 Fix bug #11586041 Regression: text truncation in Clock
Background padding should be used only and only if
- no padding is already defined into a layout file
- an explicit call to setBackground() / setBackgroundDrawable() has been done

Change-Id: I0a732c61b898e006ee86377bcbe7691740d68111
2013-11-11 16:52:49 -08:00
Jeff Brown
5182ea4bb2 am d40a4d74: Merge "Add media router service and integrate with remote displays." into klp-dev
* commit 'd40a4d74c623175c96a2e9d865a99826e56d1132':
  Add media router service and integrate with remote displays.
2013-11-07 17:41:44 -08:00
Jeff Brown
d40a4d74c6 Merge "Add media router service and integrate with remote displays." into klp-dev 2013-11-08 01:36:55 +00:00
Jeff Brown
69b07161be Add media router service and integrate with remote displays.
This change adds a new media router service whose purpose is to track
global state information associated with media routes.  This service
publishes routes to the media router instance in application processes
and handles requested state changes such as selecting or unselecting
global routes.  The service also binds to remote display provider
services which can offer new remote display routes to the system.

Includes a test application for manually verifying certain aspects
of the operation of the media router service.

The remote display provider interface is essentially a stripped down
media route provider interface as defined in the support library
media router implementation.  For now, it is designed to be used only
by first parties to publish remote display routes to the system so
it is not exposed as public API in the SDK.  In the future, the remote
display provider interface will most likely be deprecated and replaced
with a more featureful media route provider interface for third
party integration, similar to what is in the support library today.

Further patch sets integrate these new capabilities into the System UI
and Settings for connecting remote displays.

Bug: 11257292
Change-Id: I31109f23f17b474d17534d0f5f4503e388b081c2
2013-11-07 03:25:37 -08:00
Newton Allen
badb59cd5d am 47feee53: Merge "Fix some documentation typos." into klp-docs
* commit '47feee535f9e4e77165b93b6b9f10379e7aa4bbd':
  Fix some documentation typos.
2013-11-07 05:19:12 +00:00
Fabrice Di Meglio
f48bcd5b68 Merge "Fix bug #11256076 Spinner text is too close from the opening triangle in RTL Locales" into klp-dev 2013-11-05 00:46:19 +00:00
Fabrice Di Meglio
cad157b370 Merge "Fix bug #11252410 Recents items stuck behind hammerhead navigation panel in landscape" into klp-dev 2013-11-05 00:45:41 +00:00
Michael Wright
17d28ca3d7 Check view and focus invariants after calling into app
When we dispatch input events into the actual application, make sure
the input invariants we rely on haven't changed. If they have, we
drop the event and log why.

Bug: 11399505

Change-Id: Id772e41ca41dc332bb02725ab486e3b10a73c220
2013-11-01 19:13:20 +00:00
Newton Allen
ff236f5fc1 Fix some documentation typos.
Change-Id: I0360d468d54d970c87f313e24e50965245206f28
(cherry picked from commit c502744f2d)
2013-11-01 02:38:01 +00:00
John Spurlock
927d854ff4 Merge "Optimize sysui ui queue during keyguard unlock." into klp-dev 2013-10-29 20:55:04 +00:00
John Spurlock
e7c285725d Optimize sysui ui queue during keyguard unlock.
Target the two biggest offenders:
 - Coalesce keyguard setHidden(false) calls during unlock.
 - Make sysui->WM call async.

Found during investigation into b/11221659.

Bug: 11221659
Change-Id: Icab48376bc356a933e0f9940bc2f924e2e77ab22
2013-10-29 14:27:41 -04:00
Michael Wright
62ce65d6ed Speculatively schedule input consumption
With the new tuned vsync offset, vsyncs are likely to occur shortly
after the input is received, meaning we will empty the input queue,
and thus won't schedule input consumption until more input is
received. If an application then speculatively posts draw commands to
the main looper faster than 60 hz, it will eventually end up blocking
in eglSwapBuffers. Since we're blocking in eglSwapBuffers, we won't
even schedule consumption until after the current frame (8-16ms), and
it's entirely likely we won't actually get around to consuming input
until after the next frame (another 16 ms of latency). This means we
can often go 16-32ms without processing any input events, causing
very noticeable amounts of jank.

Rather than waiting for the next input event to schedule input
consumption, speculatively schedule it every frame as long as we've
consumed some motion batch during this frame.

Bug: 11398045
Change-Id: I25e46308e00e9f9de00a1d8906f6b0e0f2e845b4
2013-10-26 12:18:00 -07:00
Scott Main
5df0631003 add xml attributes to IME javadoc
Change-Id: I7a3505753188ba23777391a286d8595ed64777cb
2013-10-18 16:09:51 -07:00
Scott Main
96844ed886 fix javadoc link
Change-Id: I509fb12393ee0b8bf78ff4110fc18420739f7c58
2013-10-18 14:43:02 -07:00
Fabrice Di Meglio
600d7dd1c6 Fix bug #11256076 Spinner text is too close from the opening triangle in RTL Locales
Background Drawable padding was not taken into account in RTL Locales

- make sure the Drawables are resolved before resolving padding
- during padding resolution take care about background padding

Change-Id: Ib0c722adf5341ab4fa2182a0d0ac2ca639e85cfc
2013-10-18 11:26:48 -07:00
Fabrice Di Meglio
b77c586050 Fix bug #11252410 Recents items stuck behind hammerhead navigation panel in landscape
Right padding was wrong for the LinearLayout with id/recents_linear_layout. Its value
was first correctly set by the fitSystemWindows(Rect insets) call but then was reset
to "0" during padding resolution.

Thus make sure that the initial values for user padding left/righ are also set to the
ones coming from the computed ones.

Change-Id: I60390ff7a24286a8f7214eaff8606cb76268ee90
2013-10-17 17:00:36 -07:00
Jeff Brown
5182c780a8 Log view root, input and looper state in bug reports.
Bug: 10948648
Change-Id: I956cce2a0fb516c02f9bbbc021f6238bcb226891
2013-10-15 20:31:52 -07:00
John Spurlock
f803336028 Merge "Give IMEs the entire screen to use for measuring purposes." into klp-dev 2013-10-15 01:27:42 +00:00
John Spurlock
f8508272ad Give IMEs the entire screen to use for measuring purposes.
IMEs recently gained the ability to layout out under the nav bar,
but our core measuring logic does not give height=WRAP_CONTENT windows
the entire screen height when computing desired window height.

Since IMEs can be identified by type, let them use the entire screen
height for measuring purposes, to properly handle the cases where
space is constrained, making that unaccounted-for nav bar height
important.

Bug:11215678
Change-Id: I1d0b73454c0c629e7d669b9de70641c7e8c4d333
2013-10-14 21:06:52 -04:00
Adam Lesinski
cf18b47ed4 Wrap measurement optimization in targetSdk check
A measurement optimization has exposed some apps that are relying
on incidental layout requests to have themselves update. With the
optimization enabled, these apps break.

Apps targetted at older versions of Android should not
break due to this optimization.

bug:11192311
Change-Id: Id5fc7f83ec2cb1541d3d0d16f951cd57c0afaccd
2013-10-14 13:32:02 -07:00
Dianne Hackborn
021d243d6d Fix issue #11199654: Action bar enter animation skips frames when cleared by the system
We have become too aggressive about not allowing windows to draw while windw
animations are running, basically not allowing any drawing in any window when
there is any window animation.  So if you did a relayout while the status bars
were being animated, your window would stop drawing until that status bar
animation was complete.

This change relaxes those rules in two ways:

- A particular window will only be told to stop updating when *it* is
  currently involved in a window animation.  So animations in status bars
  will not stop app windows from update, and vice versa.

- If a window receives input events while it is in the "do not update"
  state, we will immediately terminate that state and start allowing it to
  draw.  If the user is actually interacting with a window, we don't want
  to wait to show feedback.

Change-Id: I72574eec048aee53115b46a78686cf27f42c42f7
2013-10-13 15:56:29 -07:00
Chris Craik
c09127a7c3 Document special case in hasOverlappingRendering
bug:11121809

Change-Id: I074ac47aa510bd2362cfda7dffc73930f07e925c
2013-10-11 17:00:16 -07:00
Alan Viverette
90abd6d1df Merge "Ensure accessibility node cache is synced with service state" into klp-dev 2013-10-10 18:19:25 +00:00
Alan Viverette
7e361d22e3 Fix accessibility state callbacks
BUG: 11141708
Change-Id: Ieff1fb90c4f894eba3c203089dd61e1dabdb7982
2013-10-09 17:20:43 -07:00
Alan Viverette
3d1c5a7236 Ensure accessibility node cache is synced with service state
BUG: 11152210
Change-Id: Ibffd2909b6b06568de9344e536a200d8a7abac9d
2013-10-09 17:10:21 -07:00