All these properties have getters and setters since API 11 and
should be accessed via those.
Bug: 117521221
Bug: 117520719
Bug: 117521672
Test: none
Change-Id: Id96421370abf6d9417d7411698aae7603c1e0ff1
This data is directly accessible via getMinimumWidth (API 16)
and setMinimumWidth (API 1). Also exposed in androidX via
ViewCompat
Identical for Height methods
Bug: 117521509
Bug: 117521475
Test: none
Change-Id: I2e92574acd053aecec9c992a89ee57fd9785415e
Let each display have one status bar and one navigation bar. This is
so on each display, status bar and navigation bar can be laid out with
apps and produce proper insets.
Bug: 117474929
Test: atest com.android.server.wm
Test: Watch YouTube video in fullscreen mode, and see if status bar
and navigation will be hidden as expected. Swipe on the edge
of screen and see if status bar and navigation bar are both
shown as expected.
Change-Id: I1550659b7cd1dd1676bf04483c5b68376ef42905
It's not properly ignoring events when the service is not set, which is causing
issues on some apps.
Fixes: 119659731
Test: manual verification
Change-Id: Ie271b8fcfde0bc2a5d6bf7c73b88bd6c48d50fdb
NativeActivities do not receive onNativeWindowDestroyed callback when the activity is stopped. If
the app still uses the window object after the window is destroyed, the app can crash.
Test: run native-plasma from Android NDK. Launch activity & press home. Verify from the logs app
receives onNativeWindowDestroyed callback when its stopped.
Bug: b/111948775
Change-Id: I1de76feb7f4974b77b42b56e592ff6444713c699
That method was returning a boolean to indicate whether the IntelligenceManager
should be notify, so views with virtual hierarchy could return false.
But now it returns void and always notify, which makes the API easier to
understand and use.
Bug: 117944706
Test: m -j update-api doc-comment-check-docs
Test: atest CtsAutoFillServiceTestCases
Change-Id: I216cacb6edb144239b6eabe56ab177fc2582e1aa
This change puts the expand caret at the end of the notification header
if the new interruption model is turned on, and moves the bell icon on
noisy notifications from the end of the header to directly after the
header text.
Test: manually
Change-Id: I2a97f80920598f5f99f2d9c3b14d58858e1de1bb
Once we switch to a model of passing InputWindowInfo through
SurfaceFlinger, the handles will be parcelled and we will
no longer receive the same literal object back from "interceptKeyBeforeQueueing"
or other input callbacks. This means the approach of saddling a WindowState
on to the object for later retreival will no longer work. Instead we pass
the IBinder WindowState#mClient in when registering the input channel, and modify the
input system to pass it back to us as a sort of UUID.
Bug: 80101428
Bug: 113136004
Bug: 111440400
Test: Home button still works.
Change-Id: I0f41e0d08b034aa037518c3a8fb21be1453565da
The standard SurfaceControl plumbing, plus moving InputWindowInfo from
the services jar to the framework jar so that it is accessible from
SurfaceControl.
Bug: 80101428
Bug: 113136004
Bug: 111440400
Test: None
Change-Id: I3443a98cd04ac6b36977e1874641a34c6befca34
- Refactored onProvideStructureForAssistOrAutofillOrViewCapture() into a common,
hidden onProvideStructure(viewFor) method on View that (hopefully :-) makes
it easier to understand / extend.
- Renamed / documentted some methods on TextView.
Bug: 111276913
Test: atest CtsAutoFillServiceTestCases CtsAssistTestCases \
AssistFrameworksCoreTests:AssistStructureTest
Change-Id: I328ce3f26a42e7408015cc0014a3f707801ebeb9
Fixes issues arising from mistakenly turning consumed insets to zero insets
in the legacy Rect constructor.
Change-Id: Ie531fca0fba28eba25843004acfb5444ca6669cd
Fixes: 119310980
Test: atest android.view.WindowInsetsTest
Size is currently used to bound a layer and its child layers. There are
scenarios where we do not want to restrict a layer or its children to any
specific size but have it expand to fill its parent bounds (in the case of a
color layer) or use the size of its buffer. Currently this is achived by providing
a large enough size so that the layer or its children do not get cropped incorrectly.
To fix this, we start by modifying computeBounds and computeScreenBounds
to ignore a layer's size. We calculate the bounds by using the layer's buffer size
and/or crop. In WM, we set the layer's crop property if we want to crop the layer
or child layer to a particular bounds.
Bug: 114413815
Test: go/wm-smoke
Change-Id: I633669876ae434d996532c4d808badabfe3f6787
I9e6f44b07a170574a905f42338282c4bb7e95f56 changed the way the light
source alphas were set for renderers - the alphas were passed as ints
between 0 and 255 before, while now they are passed as a double between
0 and 1. This CL updates SimpleRenderer, which is only used by the
magnifier, to use the API correctly. Before this CL, the incorrect usage
was causing the value validation to fail and apps to crash when the
magnifier was trigerred.
Bug: 119423778
Test: manually tested the magnifier
Change-Id: I8978ac16aca38906ec2cf4ae30a83beddfc9e941
TODO: Construct RemoteAction for contextual actions.
TODO: Map Person object to user id.
TODO: Consider to use LangID to infer the locale. And get a new model when locale is changed.
BUG: 111437455
BUG: 111406942
Test: atest ./core/tests/coretests/src/android/view/textclassifier/TextClassificationManagerTest.java
Change-Id: Id35066455918b3321fcd30df0ff215e30586a4b3
In previous design, the IME focus is changed when receiving
window focus change from ViewRootImpl.
For Multi-Display concept, it should be needed to aware the top
display focus changed in different displays but both are already
had the focused window without change case.
Sending REPORT_FOCUS_CHANGE when top display focus changed for
ViewRootImpl, let IMM can re-focus IME window on right display.
Bug: 117491872
Test: atest ActivityManagerMultiDisplayTests
Test: atest FrameworksServicesTests:DisplayContentTests
Change-Id: Ia46738a5da6dbc334bf937b0f6656a57523c28a7
There are 4 new APIs on View:
- boolean setImportantForContentCapture()
- boolean getImportantForContentCapture()
- boolean isImportantForContentCapture()
- boolean onProvideContentCaptureStructure()
And 4 on IntelligenceManager:
- void notifyViewAppeared()
- void notifyViewDisappeared()
- void notifyViewTextChanged()
- ViewStructure newVirtualViewStructure()
These methods are similar to the equivalent methods that are used for Autofill
and/or Assist, except for the following differences:
- The view hierarchy nodes are reported as they are rendered, rather than at
once in a tree, recursively. Hence, the ViewStructure implementation does
not implement the methods that add children to it, and views that provide
virtual hierarchies must manually call IntelligenceManager to create the
ViewStructure to their children and notify when their children are added and
removed.
- It does not support methods added for Autofill to handle HTML pages (such
as setHtmlInfo() and setWewbDomain()), as they're not important in the
Content Capture context.
- Similarly, it also does not support setDataIsSensitive(), because the
Intelligence service does not have the same restrictions as the Autofill
service.
The CL also provides the initial implementation of these APIs, although still
full of TODOs (for example, we're not holding the events to send as a batch
yet).
Test: m -j update-api doc-comment-check-docs
Bug: 117944706
Change-Id: I43f06ce82bfe3b14d8d13fb3b2ebee223db83284