am: b9878f0c5a
* commit 'b9878f0c5aab4b540180fb7e36a8e0b41b5e50c2':
Use ICU's Calendar class in date picker & related classes
Change-Id: I6c9f2c9208cb46ccb4e83f196dfa8ff8ae5ec710
am: cfbca5640c
* commit 'cfbca5640ca435e1b501254c9cf8b66746799d7e':
Use ICU's Calendar class in date picker & related classes
Change-Id: Ideb570415bab784778bb12709d04a37ad3c29275
am: ed39b3b166
* commit 'ed39b3b1666cff34e34c394029fad0ad9e426968':
Hide work profile key in user credentials screen
Change-Id: I18cefc9f365ed83db5262676a1f4b9cc28b20c07
am: 2281b83051
* commit '2281b83051f8f2d14dfc0a366ed54b1716370412':
Do not allow DPM.resetPassword() when child profile exists or user is locked
Change-Id: Ia43caa8b23eced60a8ef187ed100b106aedb74a3
am: d398244513
* commit 'd398244513c62c9ea14a0f1c6ffef832e803c16f':
Hide work profile key in user credentials screen
Change-Id: I5273b53b07cb80d45bac61c8dcc5cba8f6b11b3a
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: If87e0c523af3fdbd5d0f0182037fba0758cb4cfb
am: 977ade26dd
* commit '977ade26dd8bc6a442be2db2470459058246844f':
Do not allow DPM.resetPassword() when child profile exists or user is locked
Change-Id: I05277051a8f30c4d020440dd01b5dc284d552fd4
am: ef68474698
* commit 'ef684746980061bb5950ae2505229648d9f146d6':
Make IMM more robust to spurious window focus-in
Change-Id: I77ae5953aa9afc64ef1cd3252d6d2ff936890b62
am: 50c33d1ca1
* commit '50c33d1ca1218ec00eb37f66a7c11315603c9ef7':
Make IMM more robust to spurious window focus-in
Change-Id: I1d9a138798d982f2164907b49713a7b90cec9adc
am: 50c33d1ca1
* commit '50c33d1ca1218ec00eb37f66a7c11315603c9ef7':
Make IMM more robust to spurious window focus-in
Change-Id: I3c80320a5c6711bf3aaeb3043fe54c741c127966
am: 7b77768d39
* commit '7b77768d39fdc1de95bbf32a809b52eb26c9e10d':
Use original theme for SuggestsionsPopupWindow
Change-Id: Iadf842b82cb178bcaf69c7790051ae3f17b5bd34
am: 7c8305bcfe
* commit '7c8305bcfeef206e8bd00f20077f8106bb66fa6b':
Use original theme for SuggestsionsPopupWindow
Change-Id: Ib724b88ace6e27a499578c473acfd2a909f62068
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
am: 9746deefbb
* commit '9746deefbbfa3f6561bdf27e7d697cc352853f13':
Add a flag to toggle the automatic storage manager on and off.
Change-Id: Icd5688b8ea9c72c6bab9dbb0eedd895bd0b09aca
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