Now remote views contain the application info for the app on whose
behalf they should show content. The application info contains the
user id and the package name which makes it unique in the multi
user environment. If the app which creates the remote views does
not have the same package as the one passed in the contructor of
the remote views, we lookup the app info for the target package.
There is a special hidden overload that allows creating a remote
views instance that represents an app in given package and user
(requires interact across users) permission. The latter is used
by SystemUi when creating remote views for apps that posted a
notification.
bug:16838651
Change-Id: I2daa974629f89a2446848e59300d994dadcf4439
Using the TextView's context instead when resolving these icons from
the theme causes issues if a dark action bar theme is in use.
Bug 16686041
Change-Id: I44cb4a83516d8610103b6ebaf604860b67ac84dd
The ViscousFluid interpolator simply returns the input value and not the
interpolation of that value.
Issue #16815073 Scroller.ViscousFluidInterpolator short circuited
Change-Id: Ifa189026c1396a42a2348260a2a54cf0c3caad08
The current code ignores the parameter and sets the internal modal
value to true. This has probably gone unnoticed because all framework
usage of this method calls it with 'true', except for one case where
it sets it to 'false' temporarily, and then to 'true'.
Issue #16815832 ListPopupWindow setModal broken
Change-Id: I4ac7ab31b4ab91c9959efd4ccf2264a8e381708f
The goal of this change is to enable support for appwidget from
user profiles to the user main profile. A user profile is a user
which is associated as a child of the main user profile. For example,
a user may have a personal (parent) and corporate (child) profile.
The device policy should be able to control whether adding a widget
from a child profile and given packages is allowed. This change
assumes that all packages from managed profiles are white listed.
Another change will add the device policy changes.
Change-Id: I267260b55d74c48b112a29979a9f59eef7a8194e
In order to use the ExportedProperty annotation, I needed a public non-void
method which is why I created a new "public int[] getLocationOnScreen()."
The formatToHexString method is used to convert an int or byte to a hex string
prefixed with "0x". I set the value to true on these flags: mGravity,
mPrivateFlags, mSystemUiVisibility, mViewFlags, mGroupFlags, mMarginFlags,
and flags.
Change-Id: I5914992ba19b80643dfcc6caa487398452e18cbc
Removes the time and date picker specific themes and defaults their
theme attributes to use the alert dialog theme attribute's value.
BUG: 14973897
Change-Id: Id5cc74ea0c1a379fc1ee76b354a1bb5ba329585a
Also moves the setNavigationIcon(int) method closer to the one that
takes a Drawable.
BUG: 16491458
Change-Id: Ia02f05e6270c9d420f61f7ab34117b4c7e6548ec
This patch removes the @hide annotations and public reference from the
new letterSpacing attribute, so the docs will build. It's still not an
ideal state because a test app can't find the attribute, but at least it
unbreaks the build.
Change-Id: I5425fbe3d63f7a759fabe43bd2136196c7112eed
LayoutParams without a specified layout_width value automatically
get a default of 0. This works in most cases, when the view is pinned by
various constraints (such as alignParentLeft and alignParentRight),
but breaks down when the child lies in negative coordinates.
Negative coordinates are supposed to be a signal, in RelativeLayout, that
that coordinate is variable. However, negative margins can cause a negative
value to be calculated, at which point it should be used as a concrete value,
not a behavior trigger.
The fix is to use Integer.MIN_VALUe as the tirgger instead, to distinguish that
impossible value from negative values which could reasonably have been computed
during measurement.
Also, removes dead code from earlier attempt at rtl.
Issue #10606777 Time picker can't display 10, 11, or 12 oclock when font size is huge
Issue #16516577 resolveLayoutDirection doesn't act as intended
Change-Id: Ia564603012f3c45636e69cd3776205fb544fda48
...even when I hit back or close the activity in UI
Change the semantics of NEW_DOCUMENT to have the recents entry be
removed by default when its activity is finished, with various ways
to explicitly turn off this behavior.
Change-Id: Idc717706d27de80f28b53ad76f9e375d85118d71
While this is a convenient idea, it effectively means that any styling
directly applied to a Toolbar in a layout gets stomped by the
theme-global ActionBar style. Obey the more local, specific styling
from the Toolbar instead.
Change-Id: Ief6a7cb90052bdced87f1dc0925c1dfbc0df4792
Give the maximum amount of room to "real" content views before taking
up space for the title and subtitle of a toolbar.
Bug 16039951
Change-Id: I10da9cdc39e84e6fb3975ee40958c57031002dd5
When Toolbar is acting in the role of an action bar it needs to handle
the case where app code calls setLayoutParams on a custom view with an
ActionBar.LayoutParams instance. Run the newly set LayoutParams
through the check/generate routine normally performed when adding a
child view whenever LayoutParams are set on an existing child to
correct for it.
This might not be a bad thing to generalize someday but it would make
for very confusing compatibility behavior when running code that
was written to expect it on older platform versions.
Bug 16219488
Change-Id: I568a335fe8ebbbaa666690d1f0e95f313abd2f1e
Leanback theme uses a legacy layout with a done button, but
apps won't necessarily have target apilevel L.
Change-Id: Ib38b08df1fe07bd8fb4e64e93633ce0b7eb12567
- the old DatePicker widget is still there for obvious layout compatibility reasons
- add a new delegate implementation for having a new UI
- use the new delegate only for the DatePickerDialog (which does not need to be
the same)
- added support for Theming and light/dark Themes
- added support for RTL
- added support for Accessibility
- verified support for Keyboard
- verified that CTS tests for DatePicker are passing (for both the legacy and the
new widgets)
Also added a new HapticFeedbackConstants.CALENDAR_DATE and its related code for
enabling day selection vibration
Change-Id: I256bd7c21edd8f3b910413ca15ce26d3a5ef7d9c
Also fixes switch animation during scrolling, unnecessary call to
requestLayout() on drawable invalidate, and potential NPE.
BUG: 16225972
BUG: 4312303
Change-Id: I015d1f03206dd2c812592b0abfa4214a3de73d3f
- use Alert Theme and make the TimePickerDialog show its done button
in the legacy mode
- if targetSdkVersion < L or if TV UI show the legacy TimePicker
Change-Id: I19ca6dbbcb50599c7e230262a23956c185f53a5c
This CL addresses feedbacks from internal customers for new
input method APIs that are mainly used for physical keyboard
support in L.
For performance reasons, #onUpdateCursorAnchorInfo is not called
back by default and each input method has to enable this
event notification explicitly whenever fine-grained character
locations are needed.
In L-preview, InputMethodSession#setCursorAnchorMonitorMode was
introduced for this purpose. However, we got several feedbacks
to be addressed.
- The effect of #setCursorAnchorMonitorMode is not preserved
during focus change. IMEs need to call
#setCursorAnchorMonitorMode every time when #onStartInput is
called. This is tricky and hard to understand.
- As #onUpdateCursorAnchorInfo is a new API, not all
applications/text editors have supported it. Therefore IMEs
can't always rely on it. However, there is no way to query
if the attached target is supporting this new API or not.
It would helpful for IME authors if we can provide a
reliable way to query if the attached input target is
supporting the new API or not.
In order to address these issues, the triggering method has
moved from InputMethodSession to InputConnection in this CL,
as an analogy of existing InputConnection#getExtractedText API,
which has provided similar functionality including optional
reactive event callbacks from the application to the IME.
BUG: 15812658
BUG: 16118603
Change-Id: I3c6b69bd9d79b199afe68d838f25effa6048e5cc
This CL allows application authors and input method authors to
communicate with each other more precisely on the visibility of
insertion marker and composing characters. Now we can describe
the situation where the coordinates of them are available but
they are overlapped by other UI elements.
This change is based on feedbacks from internal customers of
this preview API.
Change-Id: I82eba0e844a6f8b99ba11a68fad272399034cc24
BUG: 16118303