am: e747160509
* commit 'e747160509e71a05430168b1c8a28400b6a18403':
Fix TextView layout reuse when maxLines is set
Change-Id: Iaf30b66b1a328f34d31efe723e394d817f74d65f
am: dfe232c763
* commit 'dfe232c7636d16379191442bdb2bac59d7a60f5c':
API council feedback: hide and document.
Change-Id: Icfcb4e2a9892ecc5dab61cb78598e48fa7714a26
am: 39e8022a75
* commit '39e8022a75507be06179c3de7358cebb1bb22e06':
Force pending transactions to flush before screenshot.
Change-Id: Ib8dd84af143226e2b62cdfa51066e68ba7802d28
am: 7c17e70f2f
* commit '7c17e70f2f795ca06006ff2560c8b8211ce1dd52':
Changes based on API council feedback for performContextClick
Change-Id: Ief8c3036b93c28b27ba2f117ec656d38a1562fcf
When maxLines is set on StaticLayout and the text is wrapped, during
onMeasure TextView couldn’t recognize the wrap in the layout and tried
to reuse the layout which in turn caused width calculation problems.
This CL checks if maxLines is set, and if there is a text cut-off in
order to reuse existing layout.
Bug: 28468120
Change-Id: Ide43df8512a09112715067cbadf29cc64fd53247
- Throwing SecurityExceptionand and IllegalArgumentException instead of null for new APIs
- removing @removed APIs
Bug:27530098,27379882
Change-Id: Ifbe65bfc5051aa33aff2baa22cfa8e67b0f7c358
am: cfbca5640c
* commit 'cfbca5640ca435e1b501254c9cf8b66746799d7e':
Use ICU's Calendar class in date picker & related classes
Change-Id: Ideb570415bab784778bb12709d04a37ad3c29275
am: d398244513
* commit 'd398244513c62c9ea14a0f1c6ffef832e803c16f':
Hide work profile key in user credentials screen
Change-Id: I7609dc8bc68e9c9eb2a969b58b31815d27d7fc4a
am: 977ade26dd
* commit '977ade26dd8bc6a442be2db2470459058246844f':
Do not allow DPM.resetPassword() when child profile exists or user is locked
Change-Id: I05277051a8f30c4d020440dd01b5dc284d552fd4
am: 50c33d1ca1
* commit '50c33d1ca1218ec00eb37f66a7c11315603c9ef7':
Make IMM more robust to spurious window focus-in
Change-Id: I3c80320a5c6711bf3aaeb3043fe54c741c127966
am: 7c8305bcfe
* commit '7c8305bcfeef206e8bd00f20077f8106bb66fa6b':
Use original theme for SuggestsionsPopupWindow
Change-Id: I77ed2205c4dc34786c1b931a00f64187a878395e
When disconnecting from a default network X and falling back on another
connected network Y as the new default, ConnectivityService was
attempting to record this event as a X -> Y "atomic" transition.
In practice the default network connectivity is actually lost and
recovering default network takes some non-zero time.
This patch changes the event recording to always record disconnection as
X -> 0 events. At the same time, if there is a fallback network that is
elected as the new default ConnectivityService will also record a 0 -> Y
event.
This patch also improves pretty-printing of DefaultNetworkEvent.
Extract from $ adb shell dumpsys connectivity_metrics_logger --events
17:51:00.086: DefaultNetworkEvent(0 -> 100:CELLULAR)
17:51:25.232: DefaultNetworkEvent(100:IPv4 -> 101:WIFI) # wifi goes on
17:51:44.064: DefaultNetworkEvent(101:DUAL -> 0) # wifi goes off
17:51:44.187: DefaultNetworkEvent(0 -> 100:CELLULAR)
Bug: 28204408
Change-Id: I63252633235bf6ba833b9ac431a80dda75a93e67
InputMethodManager (IMM) has a latch switch named IMM#mHasBeenInactive
to forcefully refresh IME focus state when an inactive client
(IMM#mActive == false) is gaining window focus. However, it turns out
that there is a race condition where the latch could be unexpectedly
turned off. This is probably what we have been chasing in bug 25373872.
Imagine the following scenario:
1. An app receives MSG_WINDOW_FOCUS_CHANGED w/ hasWindowFocus=false
2. IMM inside the app receives MSG_SET_ACTIVE w/ active=false
3. The app receives MSG_WINDOW_FOCUS_CHANGED w/ hasWindowFocus=true
4. The app receives MSG_WINDOW_FOCUS_CHANGED w/ hasWindowFocus=false
5. The app receives MSG_WINDOW_FOCUS_CHANGED w/ hasWindowFocus=true
Here, our current strategy has been:
A. Turn on the latch when MSG_SET_ACTIVE (w/active=false) is handled.
B. Turn off the latch and ask IMMS to start input when
MSG_WINDOW_FOCUS_CHANGED (w/ hasWindowFocus=true) is handled.
The problem is that in the step B IMMS can reject the request if
WindowManagerService (WMS) tells that the window in question no longer
has window focus. This is not surprising because the app is
just handling messages in the message queue sequentially. As a result,
the IME focus is not updated expectedly in the step 5, because the latch
is no longer enabled as we expected.
With this CL, the latch will be re-enabled if the app fails to start
input while IMM#mActive is false as a short-term solution.
In future we may want to address this issue in protocol level so that
we can address other known issues such as bug 26851566 at the same time.
Bug: 28281870
Change-Id: I60adb38013b063918b074c7b947649eada77b2c8
Previous change hid this constructor. Now removing it entirely for completeness.
Issue #28296200 API Review: LocaleList
Change-Id: I43476994070b101999d338ec1f5d1a1a0a2a7658