Allow launcher to see and attempt to launch non-crypto
aware application when profile is locked.
Hide unlock notification until parent user is unlocked.
Have unlock notitication use confirm credentials to unlock
the profile.
Updated notification strings as per suggestions in mocks
to make it clearer between users and profiles.
Bug: 27038260
Change-Id: If2d2c8148670d814544f4edd44193d15da32a289
Currently there is an internal hidden class named
ControlledInputConnectionWrapper which works as a proxy in the
application process to receive incoming binder calls from input method
and dispatch those method calls again on an appropriate thread.
Although this is a kind of implementation details, basically you can see
the same design everywhere in the Android.
Currently ControlledInputConnectionWrapper is initialized with
view.getHandler(), where the view here is the View which was used to
call View#onCreateInputConnection(). This is actually a reasonable
behavior because we have generally assumed that there the only
reasonable way to implement InputConnection is to extend
BaseInputConnection, which is designed to be able to work only on the
UI-thread associated with the target view.
However, on Android N and onward, we are going to ensure that
BaseInputConnection can be re-implemented on top of public APIs [1].
Although most of applications should not try to do that, for certain
applications such as web browsers and WebView it may make sense to let
custom InputConnection implementation run with a custom Handler so that
the application can respond to the IME without blocking the UI thread.
To do that, this CL introduces a new method
InputConnection#getHandler(), which changes nothing as long as it
returns null, but if it returns non-null Handler, InputMethodManager
will use it to initialize ControlledInputConnectionWrapper.
Note that InputConnection#getHandler() is not for IME developers.
It just returns null when called in the IME process.
[1] See Bug 24688781 for details.
Bug: 26945674
Change-Id: Id9e579bb3e2966986cdcb1c34bc8cacfeca2e1a9
Also clarify the expected behaviors when an error has occurred in a
recording session.
Bug: 27110861
Change-Id: I811197e45ea94b1b0e151d534a1f030a84b89d10
Removed classes come from openJdk 1.7 and were never
implemented before. We lack a testing suite to verify that
they are working correctly. Those clasess might by
re-added in further releases
Bug: 27117463
Change-Id: Ia7554a9182507b9fa1c1b6db9573ab68cb641f36
(cherry picked from commit 5fbc42d6a2baae747ddf660d5e64bc82b1795d4e)
It's protected, as it was before openJdk switch. Added
hidden public method getFD$ for tests.
Bug: 26689841
Change-Id: I18f53356a108c1f7e0525c6f2f8130eac173e81e
(cherry picked from commit ce41c4ee22dbf4d53c2ba5a21a63a0a3081bd732)
This method shouldn't be public + can be replaced by
the #getAddress method
Bug: 26689841
Change-Id: Ic0f9e0b03979d141c5648772ad94ba2c651ba6e7
(cherry picked from commit 1f3148c27db5f80c50cf326cc898387ba9d00b9a)
Clients of the NetworkStatsManager public APIs may get UIDs belonging
to other users, and UIDs which don't actually represent applications.
These APIs allow clients to understand whether a given ID belongs to
the same user as themselves, and whether an ID represents an
application or something else (e.g. a system UID).
Change-Id: Ia56d5891521ce98e5594c41da8f9d756819deb66
INPUT_ID can be retrieved from CHANNEL_ID. But, even if the channel
is removed, recording should be playable. So INPUT_ID is needed.
Change-Id: I7042a19758ce71e77ca2ae7613015e4d22f0d41f
- Deprecate the broken version that takes a byte argument.
- Implement a new version that takes a byte buffer argument.
Bug 19478262
Change-Id: I5ea4f11940e93b5964b66dbf5700b7ff8b80339e
- Rename to FrameMetrics to avoid collision with existing
android.view.FrameStats class
- Make FrameMetricsObserver implementation detail,
exposing FrameMetricsListener interface as public API
and wrapping in FrameStatsObserver to maintain state
- Remove dropped frame count call, in favor of passing as
parameter to callback method.
- Move away from raw timestamp access in favor of Metric IDs
which represent higher-level, more stable stages in a frame
lifecycle and match the categories exposed in the onscreen
bars.
- Support many-to-many Window<->FrameMetricsListener relationship
Change-Id: I00e741d664d4c868b1b6d0131a23f8316bd8c5c2
Bug: 26874366
On Multiarch apps, it might be necessary to prioritize 32bit Abi ahead
of 64bit ones. The use32bitAbi flag enables this.
This CL also reverts the public api changes in I2c1fd1d036efe72b28b5fe996416df69a583959f and Ie3ecea6d84e2cb1522e736a21c3a3a24ac62eb27. Previously
the same functionality was provided using a raw abi string that
utilized cpuabioverride flag.
Change-Id: Idce3cbfedd11ef9079ce8a2901e69d30b1cf9ef4
It is required to receive intent SMS_EMERGENCY_CB_RECEIVED_ACTION
which is already public.
Bug: 24914029
Change-Id: I2d5461fcedb2cb347c818ab6f94577008f6af242
(cherry picked from commit 45d9b36fc6a609893022b812084987cda3e3717d)
Save arbitrarily nested fragments across config changes as
nonconfiguration objects. This permits the use of retain-instance
child fragments as arbitrary opaque dependencies within other
fragments.
Change-Id: Ia6640b76cfcf7ec28ba252628957a0c14863e957
(cherry picked from commit 7466be66263d5ebffb786ea402d9ed6e36c254f0)
Offer commitNow and commitNowAllowingStateLoss methods on Fragment for
use by encapsulated components using fragments as implementation
details. This can help prevent unexpected ordering side effects at the
app level when a call to a library method wants to commit and
immediately initialize a fragment as an implementation detail.
Note that this change still does not permit reentrant FragmentManager
operations. It is still an error to add/remove/change fragments in the
same FragmentManager while a fragment transaction is being executed.
Have the commonly used ViewPager adapters use commitNow instead of
executePendingTransactions.
Change-Id: Ia37a871234a287423063f0c2c3e4c93d69116cad
(cherry picked from commit f6b30662f87f7339d0d3946dcf71e930c2fead9b)
- Remove the LocaleList#getPrimary() API. It had become confusing
after locale negotiation was completely implemented. For example,
it could create the confusion that calling getPrimary() on the
default locale list would provide the default locale, etc.
- Use the adjusted locale list from LocaleList.getAdjustedDefault()
in Paints created with no locale list provided.
- Change LocaleList#get() to treat out of bound indexes from both
negative indexes and too large indexes the same way.
Bug: 26984092
Bug: 26193251
Bug: 26834387
Change-Id: I75f77aea6b75e38793ed8477e5e5a4420d5e6d85
Premature submission. Need to wait until stubs support 1.8.
This reverts commit 311a97e7f41c494bc355f5d77adc276e2a400970.
Change-Id: Iba1361b90f75cad139f94044184c5295483fedcd
ServiceInfo.FLAG_EXTERNAL_SERVICE is set when the service is
exported with the new public manifest attribute "android:externalService"
Context.BIND_EXTERNAL_SERVICE is used by clients when they
are binding such service.
Bug: 22084679
Bug: 21643067
Change-Id: Ifd708f90b47a1571cd54c5ec9fc217f0567d5ff4