summaryrefslogtreecommitdiffstats
path: root/core/java/android/widget
Commit message (Collapse)AuthorAgeFilesLines
* Show icons of only background apps in ToastsMarcel Dopita2016-03-161-7/+12
| | | | | | | | | | | | | | | | | | | | | | | As implemented and discussed in I82bf23664eea134f3b1f89ad5a99f6be73906ba8, this patch disables the icons in Tosts for already foreground apps. It's useful, no questions about that but please be aware of: - Icons in Toasts are also displayed in "tooltips" of ActionBar (when you press and hold an action). I think that goes agains material design as the ActionBar component now doesn't even show app icon. - Toasts from Android OS contain the Green robot. (IMHO: It was never intended for system Toast to have an icon) - Toasts are intended "to be as unobtrusive as possible" and this kinds of break it. (From javadoc) - Icons should stay as workaround for finding that badly designed/intrusive app because: "Your app should not create a dialog or toast if it is not currently on screen." (From notifications design paterns) - Not that relevant but not all users welcome this aesthetic: https://www.reddit.com/r/cyanogenmod/comments/3oazh8/does_the_icon_in_the_toast_notification_bother/ https://www.reddit.com/r/cyanogenmod/comments/3jg5c2/icons_on_toasts/ etc. Change-Id: If748297bd422c7ddbf061da735b8e4ed0a41b425
* Merge tag 'android-6.0.1_r22' of ↵Steve Kondik2016-03-113-19/+46
|\ | | | | | | | | | | | | | | https://android.googlesource.com/platform/frameworks/base into cm-13.0 Android 6.0.1 release 22 Change-Id: I0d31899b234156a91accb61e0a7fb3d8d16d5062
| * Handle null result from getVirtualChildAt()Alan Viverette2016-01-122-16/+8
| | | | | | | | | | | | | | | | | | Also adds final where the method was being called, adds Nullable annotation to method, and updates docs. Bug: 25985497 Change-Id: I847a8507f2e3970f1340cddf4abf8650dda22b35 (cherry picked from commit ad52693cf3dfe3f5e84f5a22fe4c3787f2f2cbfb)
| * Fix crash on calling removeSelection with showing selection handlersYoshiki Iguchi2015-10-221-2/+10
| |\ | | | | | | | | | | | | | | | | | | am: 9582e15196 * commit '9582e151964be60457d4abd712857fb1e8a4586d': Fix crash on calling removeSelection with showing selection handlers
| * \ Merge "Fix toolbar flickering in ExtractedMode when longpressing." into ↵Andrei Stingaceanu2015-10-212-24/+14
| |\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | mnc-dr-dev am: ee4ab0a55b * commit 'ee4ab0a55b355b21168de0eb5615f2e321c2982f': Fix toolbar flickering in ExtractedMode when longpressing.
| * \ \ Merge "DO NOT MERGE Use correct param for heightMode in RelativeLayout ↵Alan Viverette2015-10-201-1/+1
| |\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | horizontal measure" into mnc-dr-dev am: 4823493647 * commit '482349364715dfcd87dc83e0913fc60dc6df0497': DO NOT MERGE Use correct param for heightMode in RelativeLayout horizontal measure
| * \ \ \ Merge "Re-set PROCESS_TEXT selection if nothing was returned." into mnc-dr-devAbodunrinwa Toki2015-10-201-0/+5
| |\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | am: 3bd3655fd0 * commit '3bd3655fd05a548f6e60cfccd4185a4b9ae2a7d6': Re-set PROCESS_TEXT selection if nothing was returned.
| * \ \ \ \ Merge "Update drawable matrix when bounds change in invalidateDrawable()" ↵Alan Viverette2015-10-201-0/+2
| |\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | into mnc-dr-dev am: 840f38905c * commit '840f38905c073044077cb2bef68d20971f5d3d39': Update drawable matrix when bounds change in invalidateDrawable()
| * | | | | | Adds an option to override RemoteViews transition.Gus Prevas2015-09-251-3/+38
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This change adds a configuration option, "config_overrideRemoteViewsActivityTransition", which is false by default and true on watches. If it's true, when a RemoteViews is clicked, it will use a new attribute on the active window animation style, "activityOpenRemoteViewsEnterAnimation", to determine the entry transition to use, instead of the current hard-coded default. Bug: 23534750 Change-Id: I91e92804a663ab71a3e46c3430fa579b87cc7931
* | | | | | | perf: Remove scroll / fling boostingSteve Kondik2016-03-102-12/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * This is being done by SystemGesturesPointerEventListener now. * PowerHAL will need an update Change-Id: I6b8e8181b5858fa96f520e656e67553cdbb9ce22
* | | | | | | Themes: Fix applying theme for notificationsd34d2016-01-171-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Notifications should be inflated using the current theme applied to SystemUI. This was not happening because the Context created when applying a RemoteView was returning a cahced context rather than one with the supplied theme applied. This patch also moves mCurrentTheme into BaseStatusBar so it can be used when inflating the remote views for notifications. Change-Id: I577ae30fc02028c7e497cd774f79029f8a045d1f TICKET: CYNGNOS-1608
* | | | | | | Merge tag 'android-6.0.1_r3' of ↵Steve Kondik2015-12-074-27/+32
|\ \ \ \ \ \ \ | | |_|_|_|_|/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | https://android.googlesource.com/platform/frameworks/base into cm-13.0 Android 6.0.1 release 3 Change-Id: I59b9e5a943e0860d43bcfb36ee0e8b8b072412ea
| * | | | | | Fix crash on calling removeSelection with showing selection handlersYoshiki Iguchi2015-10-221-2/+10
| | |_|_|_|/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | A crash occured on updating after calling removeSelection with showing selection handlers. This was because some selection-handler code didn't consider the case the selection index was -1 (-1 means there is no selection). This patch fixes this crash. Bug: 23299977 Change-Id: I736d315e073f773aec597522203015205a8da42b
| * | | | | Merge "Fix toolbar flickering in ExtractedMode when longpressing." into ↵Andrei Stingaceanu2015-10-212-24/+14
| |\ \ \ \ \ | | |_|_|_|/ | |/| | | | | | | | | | mnc-dr-dev
| | * | | | Fix toolbar flickering in ExtractedMode when longpressing.Andrei Stingaceanu2015-10-212-24/+14
| | |/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | onPreDraw starts an action mode in extract mode only which does not consider the type of motion event and since extracted mode never gets the focus event it never hides so it does not need to show again. Stop starting an action mode onPreDraw in extracted mode and let the onTouchEvent handle starting the mode. Also re-enabled dragging and dropping for ExtractedMode (most of the issues were caused by starting the action mode onPreDraw). Bug: 25102276 Change-Id: I90d8e9f42f395b6b529e4d023ba6939e0dfb147f
| * | | | Merge "DO NOT MERGE Use correct param for heightMode in RelativeLayout ↵Alan Viverette2015-10-201-1/+1
| |\ \ \ \ | | |_|_|/ | |/| | | | | | | | horizontal measure" into mnc-dr-dev
| | * | | DO NOT MERGE Use correct param for heightMode in RelativeLayout horizontal ↵Alan Viverette2015-10-201-1/+1
| | | |/ | | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | measure Bug: 22824701 Bug: 25107144 Change-Id: Ia0afd3edc20b8127605aef2653fa9b5472f41be2 (cherry picked from commit 130ce740d1aa4b9a7b024c76f8adec2c24278a81)
| * | | Merge "Re-set PROCESS_TEXT selection if nothing was returned." into mnc-dr-devAbodunrinwa Toki2015-10-201-0/+5
| |\ \ \ | | |/ / | |/| |
| | * | Re-set PROCESS_TEXT selection if nothing was returned.Abodunrinwa Toki2015-10-201-0/+5
| | |/ | | | | | | | | | | | | Bug: 25043887 Change-Id: If069a5e23f1adf6a2c3aac8fe7e3f19cff2e28ad
| * | Update drawable matrix when bounds change in invalidateDrawable()Alan Viverette2015-10-201-0/+2
| |/ | | | | | | | | Bug: 24797872 Change-Id: Ib2bcce6f7d6fab33633a915882821b00d94e4e44
* | To call TypedArray.recycle() when we are done with the array.ferro_chang2015-11-071-0/+1
| | | | | | | | Change-Id: I6d672ce6c4e6521d82ef873ce69076b1f1cded56
* | Merge tag 'android-6.0.0_r26' into HEADRicardo Cerqueira2015-11-054-15/+54
|\ \ | |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Android 6.0.0 release 26 Conflicts: cmds/bootanimation/BootAnimation.cpp core/java/android/accounts/AccountManager.java core/java/android/app/AppOpsManager.java core/java/android/os/PowerManagerInternal.java core/java/android/os/storage/IMountService.java core/java/android/provider/Settings.java core/java/com/android/internal/widget/ILockSettings.aidl core/res/res/values-mcc204-mnc12/config.xml core/res/res/values-mcc219-mnc02/config.xml core/res/res/values-mcc730-mnc07/config.xml core/res/res/values/config.xml core/res/res/values/symbols.xml packages/SystemUI/res/values/config.xml packages/SystemUI/src/com/android/systemui/doze/DozeService.java packages/SystemUI/src/com/android/systemui/statusbar/CommandQueue.java packages/SystemUI/src/com/android/systemui/statusbar/ExpandableOutlineView.java packages/SystemUI/src/com/android/systemui/statusbar/phone/DozeParameters.java packages/SystemUI/src/com/android/systemui/statusbar/phone/DozeScrimController.java packages/SystemUI/src/com/android/systemui/statusbar/phone/NavigationBarView.java packages/SystemUI/src/com/android/systemui/statusbar/phone/NotificationPanelView.java packages/SystemUI/src/com/android/systemui/statusbar/phone/PhoneStatusBar.java packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBarHeaderView.java packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBarKeyguardViewManager.java packages/SystemUI/src/com/android/systemui/statusbar/stack/StackScrollAlgorithm.java services/core/java/com/android/server/LocationManagerService.java services/core/java/com/android/server/am/ActivityManagerService.java services/core/java/com/android/server/pm/PackageManagerService.java services/core/java/com/android/server/power/PowerManagerService.java telecomm/java/android/telecom/Phone.java telephony/java/android/telephony/CarrierConfigManager.java telephony/java/android/telephony/RadioAccessFamily.java telephony/java/android/telephony/ServiceState.java telephony/java/android/telephony/SignalStrength.java telephony/java/android/telephony/TelephonyManager.java telephony/java/com/android/ims/ImsCallProfile.java telephony/java/com/android/ims/ImsReasonInfo.java telephony/java/com/android/ims/ImsSuppServiceNotification.aidl telephony/java/com/android/ims/ImsSuppServiceNotification.java telephony/java/com/android/ims/internal/IImsRegistrationListener.aidl telephony/java/com/android/internal/telephony/RILConstants.java Change-Id: I99c6edb8e25a77145b5adef97d0d55bfbe676959
| * Avoid OOBE when AbsListView layout is out of sync with adapterAlan Viverette2015-09-104-15/+54
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Views are not synchronized with adapter state until a layout pass occurs, which may cause an OOBE if a list item is removed and an accessibility node is obtained before the next layout pass. This CL caches the item's enabled state on the bound view's layout params, which allows us to avoid relying on the adapter to populate accessibility nodes. It also aborts actions if the target position is no longer valid. Updates the documentation on AdapterView to reflect that the result of getPositionForView() may not be synchronized with the adapter. Bug: 23943664 Change-Id: I90ca946bead1d87a179eab1c2f482a54bcce9c38
* | power: Add CM performance managerSteve Kondik2015-11-012-0/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Squashed commit of: power: Add CPU boosting interface * Boosts CPU using Power HAL for the given duration. * Duration is given in microseconds. * Power HAL must implement POWER_HINT_CPU_BOOST. Add CPU boosting hooks * Send boost hint during scrolling * Still relevant on even high-end hardware perf: Send a boost hint when a key on the navbar is pressed * A lot of stuff happens, especially when invoking recents. * Get ahead of the storm by sending a boost hint before kicking off the animations. perf: Send boost hint during initial launch perf: Per-app performance profiles * Performance Profiles is going to grow into a much more powerful feature which can apply advanced optimizations or power saving techniques depending on both the state of the hardware as well as the current applications in use. * Refactor the original code and move it into PowerManager so that it's managed from the same place. * Implement "automatic performance profiles". This feature will automatically select a profile when specific activities are running. Currently this list is static and engages performance mode for several benchmarks (trollface). * Added support for a new power hint, POWER_HINT_SET_PROFILE. Currently, these profiles are fired using a property trigger in init. This is easy, but the PowerHAL can do more. * Moved the setting to Settings.Secure and also wrapped calls to the service in the DEVICE_POWER permission. Nobody should mess with this stuff except the system. * Powersave profile will automatically activate Android's built-in low power mode. * Original patch by Jorge Ruesga TODO: * Implement API for per-app configuration by user * Quicksettings tile perf: Boost during animations * Reduce animation jank by preemptively boostin the CPUs. * Original idea taken from CodeAurora, modified for CM perf control. systemui: Boost when expanding the notification shade power: Add a new power hint for application launches * Some devices may prefer a different behavior when launching apps, particularly to avoid priority inversion issues. Add support for a new LAUNCH_BOOST hint which can be handled in the PowerHAL. power: Boost improvements * Boost when opening the panelview * Adjust launch boost to handle relaunch correctly PowerManager: change performance profile when disabling battery saver We need to be sure to update the performance profile when the system disables battery saver mode. This fixes the perf tile becoming out of sync - changing it to low power mode triggers power saver, but turning power saver off does not trigger the tile. Ref: CYNGNOS-1156 Signed-off-by: Roman Birg <roman@cyngn.com> base: cache power profiles support Signed-off-by: Jorge Ruesga <jorge@ruesga.com> perf: Add support for additional power profiles * Add support for bias power (efficiency) and bias performance (quick) modes if supported by a device. Change-Id: Id3a53eaacdaf6ae93ee899835cfcb21279d35ad4
* | Remove Qualcomm BoostFrameworkSteve Kondik2015-11-012-79/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * This is gonna get really sketchy with the proprietary bits, and we have our own solution. Revert all associated patches. Revert "BoostFramework: Adding config for disable packing params & scroll fix" This reverts commit a313bfae1213dcf8e0845e90f260aada5026685e. Revert "Perf: Adding hooks for IO prefetcher into framework" This reverts commit 96e75fcafbeb77427ff4407e80a5d05bf92ec732. Revert "frameworks/base: Add support for low resolution rendering" This reverts commit d5282e055963a44df64265e4a592750e31bd9901. Revert "frameworks/base: support for loading wfd whitelist dynamic libraries" This reverts commit 79a889bcf6e4c96db48bfb755b7c7e100f4800b1. Revert "ActivityTrigger: New class to invoke when activity starts/resumes" This reverts commit 20d6e3c9b06d790e5ede4b1aa585d43a7d72b560. Revert "BoostFramework to enchance performance during critical scenarios" This reverts commit 0c3a49a56f827e16d038542b0a81c0e257787995. Change-Id: Ibc81f3150f4bea572f869be688ebfade11b27307
* | Show icon of package associated with Toastd34d2015-10-271-0/+14
| | | | | | | | | | | | | | | | | | For all those times you have some random app or background service that posts a Toast and you have no idea who's posting it. This adds an icon badge to the top left corner of the Toast to show the app's icon the Toast belongs to. Change-Id: I82bf23664eea134f3b1f89ad5a99f6be73906ba8
* | Themes: Pass themePackageName to createApplicationContext()d34d2015-10-271-1/+1
| | | | | | | | | | | | | | | | It would probably help if we actually made use of themePackageName when getting a context for the resources used to inflate the remote views. Change-Id: I8782311715ec243486f96f04d019e0df844a337b
* | textclock: Update the time when performing a doze pulseChristopher R. Palmer2015-10-261-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Prior to this commit if your phone is deep sleeping then the TIME_TICK intents are not necessarily being delivered to the clock until you exit dreaming. This provides a poor UI when the clock is shown for a doze pulse (ambient display). For example, I often see the time change by 2-3 minutes (and up to 5 of more) when I simply touch the screen when it is doing a doze pulse. That change is caused by the ticks finally getting registered and but doesn't necessarily happen while still dreaming. This defeats one useful purpose of the ambient display which is to use it to see the current time. Change-Id: Ib6eb656b0aea21b09f2778c8138f39c4ab11337f
* | Themes: Port to CM13 [1/3]Andy Mast2015-10-261-2/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Themes: Aapt port Id: I106d447daf7935bada65e78911d8973ce0ca27ae Themes: Port our additions to idmap Id: I2e47cc23de4e7c0b884cccbd87c7d77079ac6824 Themes: remove legacy theme support from idmap Id: I17dfe35f9985d8cef790b26a8bcda738ea65917c Themes: Forward port changes to Installer.java Id: If64e856773e50f5ed74f2358e0c590abad724689 Themes: Add clean spec for aapt Id: I68f5f63f7e83b99230860dd2d8646e96da484b62 androidfw: Port CM overlay contributions Id: Id7b7f5f35011922c668fcea3a8aec5b42bd28653 androidfw: Port addOverlayPath and removeOverlayPath Id: I279db083af28fd8941f3227f2a7512ff094742c1 androidfw: Port addCommonOverlayPath Id: I12d2fe05a04f6a7e553c330505a475346374b507 androidfw: Port addIconPath Id: Ide3db28cde0c7f93edd9e7ad626ebace8d4105cc androidfw: Allow package ID to be overriden at runtime Id: Ieca3a0ae070a6c0ad0cf2b73b5944d83397d08b9 Aapt: Zip Parsing Test Cases w/ Refactoring Id: I28f9115700e186136432138d228111ebcfbd0480 Themes: Update tests for idmap Id: I3dae5bd376d122eab397863378599ae0ac7c6734 androidfw: Add test case for overriding package id Id: I2668c529e24a55cd6bc8437406fc284b853a75e7 androidfw: Add tests for bags The overlayOverridesStyleAttribute will currently fail since our changes to allow theming styles is not currently implemented. Id: Idfacc4382baf4152c839799a22b6cbe015ef2197 androidfw: Don't consider package ids 0x60 and 0x61 as dynamic Package IDs that are not 0x01 (system) or 0x7f (app) are treated as dynamic references. Overlays are assigned specific package ids that fall within the region of shared libraries. This patch treats them the same as system and app resource packages. Id: Ieecaa889bed50490796351302405a38f77c84f4e Theme Parsing & Info Id: I3583d7e8ca704402e3d8c6e1c7cea1645b91c06f Port ThemeUtils and its dependencies This is pretty much copy/paste from cm-11.0 Id: I406860a259136ccca107b981aca0369851df445e Themes: AndroidManifest and Intent port Id: Ib97e8539301d20d120fd8b49891fdaae8205fe42 ComposedIconInfo Port (w/ stubbed IconPackHelper) IconPackHelper is stubbed out so that PMService can reference it, we'll need to port the Resource stack before porting the implementation. Id: I59b680511de525e1d375a4f3be04347686b5e81b Port PackageManagerService and other dependencies Id: I11629d1e5eee21e01c060bc6c0393aae96034b69 Themes: Add in ThemeService See also: external/selinux. The policy must be added in order for the service to start without a security exception. Change-Id: Ic6f64796b264e430e9706a17a3fd2a35085fd1ca TODO: ThemeService / Keyguard interaction TODO: SystemServer - AppsLaunchFailure Add AppsLaunchFailure Id: I09a3826f89c62cb898866408e807f269616f48fc androidfw: Update bags tests The overlayOverridesStyleAttribute was updated such that it does not check the attribute of the theme before adding the overlay. The bag is cached on the first call and the next call, after the overlay is attached, returns that pre-computed bag so the test would always fail. We now simply check that the attribute matches the one in the overlay, and if so then the test passes. This patch also adds a new test to check that an overlay can reference and access resources that are unique to the overlay. Currently this test fails. Id: I3892df3f0d9443a73eaa11b3d5e97cfe86620a73 androidfw: Add test for referencing overlay styles as parents Id: I4fa3bd447c888e96176955924ebe7ee5c784ab55 androidfw: Allow referencing and retrieving overlay resources This patch allows a theme to reference it's own resources. Overlays get their own group which contains those resources that are not idmapped. Idmapped resources end up in the target's group. Id: Ibc119ddcdb35d44a8afec3c6152bcab2909cda18 androidfw: Fill in missing attributes from overlay style Id: I74051b379b73c728c6a2aa4bc62f3cd268a40b53 Protect windowNoTitle and windowActionBar attributes This patch creates a new method to define "protected" attributes. These are attributes like windowActionBar which should not be modified by a theme. Some apps (eg gmail) use the appcompat library which has its own Actionbar classes. When an app uses its own Actionbar it must not include the default actionbar which is achieved through the windowActionBar attribute. Some themes may try to change these attributes, which can will cause the app to crash. Id: Ie3bb7285eed09f3f13facf9d142ea9eb83796eec Themes: Use SYSTEM_DEFAULT in ThemeService Id: I52794dd98ca2f64aa50046ecdd7f79f27c21dd98 androidfw: Test missing parent attributes are merged in This test checks that an overlaid style contains any attributes that were in the original style but omitted in the overlaid style. Id: I6b496ef2eb0a7ef27b4fafdfda5bdf7ccffad989 androidfw: Add test case for protected attributes For this test to pass a protected attribute, such as windowNoTitle, must be equal to the original and not the value specified in the overlay. Id: Ic03f11214a1fc4139e3c48d7e72694a80f819023 Themes: Attach theme and icon resources from java Id: I9ffa0ce96a4af603b78b32d6b190f9698d3e4b4f Themes: Icons, icons, icons! Let there be icons. Legacy icons and composed icons are included in this patch. Id: I9fedafa270f1c4dc30c9c8ffd4cf619895e688e6 Themes: Retrieve explicitly themed context and resources Id: I4e41c251aee47361b183b60089bf5666540f653e Themes: Add themeChange config change to manifest Id: Ia84c0089a79637906e4f75fa38a56e8ff3b21a2b Themes: Register THEME_SERVICE in ContextImpl Id: I608a0b65c7e2ff0d69bae7bf343916f2b985f4a0 Themes: Remove legacy theme support Id: I25887843d31f705425aa40f9a23482fd2cafaef8 androidfw: correctly index paths in idmap Since we added the mtime values for the target and overlay, the indices are increased by two. Id: Ie0f5474d425945d58a12021cd2739240d2e98c0a androidfw: Fix opening assets from theme resources Id: Iedb51163a62b046cdf7fda1ad1b55cc1ee409047 Themes: Consider overlaid resource as "best fit" Id: Ife8342a49eb9502be52f085f88161b113332e9e6 Themes: Save and restore theme config Id: I3fcd445fb458aa6ed09397c05df6eb66d9be7235 Themes: Let ThemeService process additional themes Id: I45837f26948367d5cc6c520e8c53f9da60bd1fda AAPT: Don't applyVersionForCompatibility on android When compiling themes with aapt, we do not want aapt to call applyVersionForCompatibility as this causes the entries in the resource table to have an incorrect path. Id: Ie2c69533b3659c7b7458d6e4b7bdc84946d1be8e androidfw: Don't consider package id 0x5f as dynamic Package id 0x5f is reserved for common overlay resources and needs to be reserved so that it is not considered a dynamic. Id: Id27b8e0e2231ee8541365274d512e347afcfd05b AAPT: Include resources.arsc in apk Common resources needs the resources.arsc in the resources.apk so that it can be included when processing other overlays. Without it, common resources cannot be referenced. Id: I4aee29f660e4a0aa1909240dc0ca5680f0a2d135 Themes: Add keyguard wallpaper support to theme service Id: Ib8f8acd55ab4d2b6ef06ee0a630dc50c4f870beb Themes: Don't pre-process non .9.png images When creating a resources.apk we do not need to pre-process the normal .png images as those can be referenced directly from the theme's apk. Id: Iaf846a03ead9ecb1e68c040eac6e0ecbfc6e5875 Themes: Adjust offsets for idmap hashes Idmap now has a header so the indices to the hashes need to be incremented by one. Id: If1fb183cc116ef9e3ad6cb4e17b6e44763e9e72a Themes: Use single ThemeInfo instead of an array We only ever used the first index so there is no need to use an array of ThemeInfo(s) Id: I9e2af076bc17396a0c978be3c0d31c41277db3df New converter for Kitkat -> L fonts.xml L introduced a new fonts xml format. Its great, but our themes will keep using hte old format. This provides a converter and test cases. The parser was taken from the chooser and remains mostly unchanged with the exception of a getName() helper method. Id: Ia1d42c9e50eb7b52d2d98fe6dbeee530bef3adc2 Themes: Port theme bootanimation support to CM12 Id: Ie016884b0e3b77e08732308923ac44e0975e0116 Resources: Clear drawable cache Id: I04b5b78cce703194a2baeff9c51d2e4733b8ccc9 Font switching Id: Ia43060a7db624102cdcd9b0d9dc7148441401584 Zygote changes Id: Ie3681cf0d2b9929661cf1214e899cef9a5f37471 Recreate String Blocks Id: I4747ebd1a0908b76ae7214b0584948353d426fc5 add a getter for the x and y offsets of the wallpaper window Id: I35294bcac664e85cc5d344b50b5c4335a60d3f37 Themes: Don't spam logcat with CREATING STRING CACHE When processing resources with AAPT on the device, it spams the logcat with warning messages about CREATING STRING CACHE. Change ALOGW to ALOGV so it will only show when verbose logging is enabled. Id: I5b591c3336e176dd71cebe672d60721c29651b00 SystemUI: Audio Volume Panel Id: I78c471864af401b274597339b8451e65931fdb32 AmService uiContext port Id: Ida251d7f80797b0ec78b3d20cf60a795d6c4c1f0 Cleanly detach theme assets Types from an overlay are added to the target group's TypeList and need to be removed when the overlay assets are detached. Failing to remove these types results in resources not being retieved due to the erroneous types. Id: I4a9c624e30309e61fce905ced45c55acd3ac4845 Themes: GlobalAction Port Id: Ifd87e04f94a284e77f1c48bec9fd75d69c45c47e Themes: Do not store forward locked themes in ASEC containers If a theme is in a asec container and is applied, when the device is rebooted the device will get stuck in a nasty boot loop since the theme resources must be read and the asec container is not ready yet. Id: I1d93d8175d5c40b34c222974960c43352012a5ad Use systemui's applied theme for notifications. Notifications contain RemoteViews which are inflated using the application's context for which this notification belongs to. This can look out of place if SystemUI is using a different theme than the rest of the system. This patch will use SystemUIs theme when inflating the RemoteViews, giving us a more consistent look in the notification drawer. Id: I9514ce7fcc4858bad3d3c4190f55c1f5a1441d7c SysUI: Add theme support This ports over the changes needed to facilitate a theme change in SystemUI. Id: I673fb79db90994371a9c0627746a97414132f0ba Themes: Allow composing of VectorDrawable Base icons can be vector drawables. This patch allows them to be composed. Currently, VectorDrawables cannot have filters applied since they do not have a method to get the Paint object like BitmapDrawable and PaintDrawable. Id: I762c8e1f4d1c945b8ebc164bbd7944120324bd42 Themes: Add target api to ThemesContract This will allow the ThemesProvider to track the api a theme was built for. We may want to let the user know when a theme may not be designed for the version of CM installed on their device. Id: Idf0e6cef0ce9ac5e221ce5ff7e0b155ae0258d5f Access Themed ResTables from compiled theme apk [1/2] Before this patch the ResTable for a theme/app was created and accessed seperate from the compiled APK. Since the compiled APK has its own copy of the resources.arsc, we can just reuse the table in the APK instead. Id: I106a2434e74784bc04014831098f49fe128bc7e2 Themes: Port AppsLaunchFailureReceiver to CM12 Id: I5c3265e64aef1536ba5fceed0ec89082e786b686 Themes: Bump idmap hash version to 3 Due to changes in idmap, we need to force the recreation of resource cache when upgrading from CM11 to CM12. Id: I25c1e2c598bca889818e2d685651e3214c30ab3c Remove debug logs Id: Ia5cfa83ddf6da195e20526a94ba154864b8d0ecb Send target sdk version to aapt [1/2] If vector drawables are used in a theme we must have a minSdkVersion of 21 passed to aapt or else aapt will Segfault. Id: I687ee146f9f80543bbcdd06d93891cb3b23001c4 Add missing imports to ActivityThread Id: I09fe07807ed824ccb938e0e174b06653c613c403 Themes: Dynamically add/remove content from StatusBarWindow StatusBarWindowView has logic for resizing and fading content which doesn't always behave correctly if this view is not the root. Rather than create a container, this patch uses the existing StatusBarWindowView as the container and the inflated status bar is then added to this view. Id: Ia93d25a589419145f95d75b1b56eb3c2f300f935 Themes: don't use preloaded drawables when themed If we have themed assets we should try and load those rather than pulling from the preloaded drawables. This allows us to continue and preload drawables in ZygoteInit while maintaining the ability to theme those preloaded assets. Id: I68cfc099d328ece0791b6d0e5cf11d07097fd1fd CM11 -> CM12 Upgrade [1/3] - Introduce a new secure setting "THEME_PREV_BOOT_API_LEVEL". This field will always be set to the previous api level for themes. So if we upgrade from CM11 to CM12 this value will differ from the current API causing an upgrade to trigger - When moving from CM11 -> CM12, unapply incompatible overlays - Rename "holo" to "system" in secure settings themeConfig - Provide a testing downgrade script to put the secure settings db into a state similiar to CM11 (at least for themes) Id: I71be2c0ad83e60ffe8c574f913e5eaecb9700045 Themes: Add constant for system target API Id: I0a6caf65c9e8b0feeef1ae848ba4683235304e8c Change-Id: Ide6d4e1daf535a54efb1ec7cf39ef8b2fb8cf272
* | Allow adjusting progress on touch events.Danny Baumann2015-10-261-1/+8
| | | | | | | | Change-Id: Ide0a7ae057a62f3631a32eeaa63f3e04dec5bf54
* | BoostFramework: Adding config for disable packing params & scroll fixVarun Garg2015-10-062-7/+18
| | | | | | | | | | | | | | | | | | | | Adding config variable for disable packing, this will provide the flexibility to enable and disable packing on different targets. Fixing bug in launch boost while calling back to back perflock acquire using same Boostframework object. Fixed bug in scroll duration during scroll perflocks. Change-Id: Id42a6e350dfd852a43ec35ec3afef9b298707057
* | BoostFramework to enchance performance during critical scenariosShashi Shekar Shankar2015-10-062-0/+68
|/ | | | | | | | | Adding Boost APIs which can ensure the best possible resource availability during critical UX scenarios. These APIs can be either turned off or dynamically hooked to OEM specific performance optimizations Change-Id: Ib1be2400c2c3d2eab9a41667354667557e36605f
* Avoid NPE when getPositionForView() is called on detached viewAlan Viverette2015-08-261-6/+8
| | | | | Bug: 23557674 Change-Id: I76cb5f06081b2ac4c8f535df8d1a0aee17d2bb20
* Fix Insertion ActionMode not showing on RTL languagesClara Bayarri2015-08-121-1/+1
| | | | | | | | | | | | | | | | | | | When long pressing on an empty Text field with the system language set to RTL, the "paste" popup was not showing up. The Floating Toolbar requires a content rect to determine where the text is and place itself close to it. In the case of an empty field, we create a "fake" content rect by taking the placement of the cursor +1 pixel to the right. In RTL languages, this +1 causes the content rect to be considered off the bounds of the view, as the cursor is aligned to the right, and hence the Floating Toolbar is hidden. After making the rect a 0 width rect, we ran into the issue that it was considered out of bounds due to the calculation ignoring rects that simply touch the edge of the view's bounds. BUG: 22540083 Change-Id: I29c79b701f586970b2611178233eff082b802ec1
* Merge "Update anchor background on the correct view in PopupWindow" into mnc-devAlan Viverette2015-08-061-15/+18
|\
| * Update anchor background on the correct view in PopupWindowAlan Viverette2015-08-061-15/+18
| | | | | | | | | | | | | | | | We were always setting the background of the decor view when the "above anchor" state changed, rather than the background view. Bug: 22970244 Change-Id: I3cd7202767ee47cb415736bb3c07369801abccd8
* | Merge "Avoid changing internal state of shared drawable" into mnc-devChet Haase2015-08-061-0/+4
|\ \ | |/ |/|
| * Avoid changing internal state of shared drawableChet Haase2015-08-061-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | An optimization in ImageView nulled out the internal bitmap of a cached internal BitmapDrawable object created to wrap a bitmap set on the ImageView. However, apps can get ahold of that cached object via Drawable.getBitmap(), resulting in having the state of that object they may be using changing out from under them. The change is to null out the cached object when getDrawable() is called, to avoid leaking internal state that we may change. That way, the app can continue to use that object if they want to, but we are no longer relying on it internally, and will create a new one when needed. Issue #22930646 [1P Regression from L] ImageView is blanked out in Activity in Google Express Change-Id: Ic86cb93be4897b6ba247c1fabcda507e4ba01300
* | Keep OverScroller.SplineOverScroller state consistent.Vladislav Kaznacheev2015-08-041-4/+4
|/ | | | | | | | | | | | | | Currently update() bails out early if it is called too soon after mStartTime has been set. In this case mCurrentPosition remains holding an obsolete value from a previous animation. This causes some strange behavior (see the referenced bug). This patch makes sure that mCurrentPosition is updated every time that mStart is updated. Bug: 22950559 Change-Id: I07b92f30ebe29856f4e04dc19a4820123713fd7e
* Merge "Revert two changes to LinearLayout measurement" into mnc-devAlan Viverette2015-07-311-52/+81
|\
| * Revert two changes to LinearLayout measurementAlan Viverette2015-07-311-52/+81
| | | | | | | | | | | | | | | | | | | | | | | | | | "Include non-zero dimension views in excess space calculation" and "Always distribute excess space in LinearLayout measurement" changed LinearLayout behavior significantly in a way that wasn't covered by CTS tests. This reverts commits da2f3044092318d44173bdb9918f31c592b86a73 and 4fabc021583cfd5cc551eda7d7b9809683a6ca9a. Bug: 22862047 Change-Id: I8d37a525ccf295445d3239b80e5cacb10bf3c947
* | Merge "Change MNC codename to just M." into mnc-devDianne Hackborn2015-07-311-1/+1
|\ \ | |/ |/|
| * Change MNC codename to just M.Dianne Hackborn2015-07-291-1/+1
| | | | | | | | Change-Id: I4281d200ff6560791c47cf9073ceea1cb509361e
* | Make DateTimeView more robust to weird contexts.Dan Sandler2015-07-301-1/+2
| | | | | | | | | | | | | | | | | | | | In particular, some clients (*ahem* SystemUI) have been known to inflate RemoteViews with unusual derived contexts that may not have valid application contexts. DateTimeView can now resist this. Bug: 22852700 Change-Id: I5e91ae0e66859f5f5efd7b19c0ae6dfbc26bcc54
* | Make the RemoteViews context safe for Icons.Dan Sandler2015-07-301-0/+4
| | | | | | | | | | | | | | | | | | | | Icon needs the RemoteViews' internal context to reflect not just the Resources of the originating application, but its package name as well. Bug: 22840771 Bug: 22852700 Change-Id: I1164cd38d99283982b00daadcf927c7cf63539b3
* | Merge "Include non-zero dimension views in excess space calculation" into ↵Alan Viverette2015-07-301-18/+30
|\ \ | | | | | | | | | mnc-dev
| * | Include non-zero dimension views in excess space calculationAlan Viverette2015-07-301-18/+30
| | | | | | | | | | | | | | | Bug: 22840778 Change-Id: Iba44c59bbaa48f63b26f342e0510b4c421e8748b
* | | DateTimeView: don't assume you have an ApplicationContext.Dan Sandler2015-07-301-3/+7
|/ / | | | | | | | | Bug: 22840771 Change-Id: I3be6369936f90e9ce4e61a59ea81b0d3408a0f99
* | Merge changes from topic 'fix-media-notifications' into mnc-devDaniel Sandler2015-07-302-11/+120
|\ \ | | | | | | | | | | | | | | | * changes: Fully support Icons in Notification actions. Fix media notification action icons.
| * | Fully support Icons in Notification actions.Dan Sandler2015-07-292-11/+120
| | | | | | | | | | | | | | | | | | | | | | | | RemoteViews now allows Icons as TextView compound drawables in RemoteViews, but not yet as public API. Bug: 22600607 Change-Id: I986a0ce3bede09746f0b121884184679f39a79f5