> Registering the receiver at runtime, only when it is required
> Using system property sys.boot_completed to check if boot completion
> This prevents unnecessary process startup during system bootup
Change-Id: I68f99ecf2e1ffd2ca7b6d15a99a282451bf67aec
-> enforce this at the activity level by giving it an empty affinity
-> the system should probably enforce this, so this is a work around for now
issue 21880868
Change-Id: Iaba4d87781c7fc82ee6c2838c013e01081cdbf9d
Settings observer doesn't work if a setting is modified in another
process, hence we instead register a receiver which listens for a signal
from the settings process that the rotation preference has changed.
Change-Id: I570e3c67bb64a32347e84ca00a8ac31d9010eac3
This CL adds a Settings activity along with the code needed to provide
a "Allow Rotation" setting to all phones and tablets. This setting is
set to false for phones and true for tablets. On changing the setting
from unlocked to locked, the launcher (and the Settings activity)
will get locked to the orientation the user was in when he disabled
"Allow Rotation". This is consistent with how the natural rotation
feature of Android works.
Change-Id: I8a1c59d1fa0bb9262530cad96e0a9bdbab0d9344
> Removing support due to its flacky design. Removing a shortcut
causes a full reload. Also we do not have any concept of owner, so
any app can remove any shortcut.
Bug: 11372484
Change-Id: I781c922fac7dc77ea82cd0a2af74a5fca22500de
> Widget previews are saved in data dir instead of cache dir
> Expiring widget previews similar to IconCache
> Removed support for setting thread priorities
Bug: 19865031
Change-Id: Ib6033c2b1ff8ae61bba8762ca994ccd8217d3c75
> Pending widget show a PreloadIconDrawable to indicate
installation progress
> Only the concerned widgets are reinflated on package
install and not the whole workspace.
> Adding support for storing default package icon in
IconCache
issue: 10779035
issue: 16737660
Change-Id: Id787ae4a5ef72d6e01aeb5a1bae5ab8840037679
> Launcher checkes for an apk in the system image with a broadcast
receiver for action:
com.android.launcher3.action.LAUNCHER_CUSTOMIZATION
> Default layout is parsed from that apk, which can also contain
icons and string resources used in the layout config
Change-Id: I44fc9e7c3134f525f7b5db29f4e8bb56e17ce445
When the app is restored, it displays placeholders for all pending widgets.
These placeholders can be moved and removed similar to a widget (size is fixed
to what defined in backup). Once the system notifies the launcher of the new
widget ids, the place holders are replaced with actual widgets.
issue: 10779035
Change-Id: I68cbe4da01e9ca2978cb4471a7c645d2aa592055
When opening the picker, the currently chosen wallpaper is
shown in the background.
In this change also the nullpointer was fixed when deleting
the currently selected wallpaper and setting it, because we
revert to the old wallpaper in that case.
When going into the same live wallpaper than the currently
selected we are going back to home if the user sets it or
goes back now, in order for the user not to loose state.
The real fix for this will be done later when the following
bug will be fixed: b/13241760
Bug: 12063773
Bug: 13219612
Change-Id: I7c6abb25755eca99c3255278e0884d1ff4749b55
The user will be able to request "icon migration", which is
not a direct mapping of the old workspace, but rather
follows this heuristic for bringing the user's favorite
icons (by dint of their existence on the workspace) into
Launcher3:
Workspace shortcuts are placed in lexicographic order on the workspace
starting at screen 0 (leaving the bottom row of screen 0 empty to make
sure there's room to move things around). Folders are preserved and
their contents sorted. Duplicate icons (that is, shortcuts
with the same intent, pursuant to some cleanups) are removed.
Hotseat icons are migrated in their original place, unless their new
location is not accommodated by the hotseat (i.e. the L3 hotseat is
too small on this device), in which case they're treated like any
other shortcut and tossed into the workspace.
To test, turn on Launcher.ENABLE_DEBUG_INTENTS and then:
$ adb shell am broadcast -a com.android.launcher3.action.DELETE_DATABASE
$ adb shell am broadcast -a com.android.launcher3.action.MIGRATE_DATABASE
Bug: 12416411
Change-Id: Ia5c56f36c11455867ea20a39f70210f595020a87
Also, unify WallpaperCropActivity so it's
identical to the system default version (mainly
removing Launcher dependencies)
Change-Id: I1ebc390bce23de62d76daced6f8cb44d57e4ac0c
Look for com.android.launcher3.action.LAUNCH to be sent when
an icon is clicked in Launcher. (Restricted to
com.android.launcher3.permission.RECEIVE_LAUNCH_BROADCASTS
which is a signature permission right now.
This is specifically tracking apps launched via shortcut
icon; any other method of launching apps (notifications,
recents, internal navigation, etc.) is outside of Launcher's
purview and hence not broadcast.
The broadcast currently includes, in the "intent" extra, the
Uri flattening of the specific shortcut clicked.
The file /data/data/<pkg>/files/launches.log contains a
binary log of all such launches, including additional info
like screen# that should probably be in the broadcast too.
This info is summarized in .../stats.log, which encodes a
simple histogram of app launches since basically forever.
This should probably be done over a sliding window, which
will require more processing on startup.
Bug: 10031590
Change-Id: Ifc5921d5dc20701c67678cbfdc89b03cacd62028
-> The overlay causes performance regressions so it's hard to evaluate
performance with it on.
-> Also, the WeightWatcher is still running regardless, so you can
always check it
-> Saved as a shared pref
Change-Id: Iad5ccbeca2c2b4e0ec86294879f3eb09caa594e9
The emailed file is now a zipfile containing one .ahprof
file for each process known to MemoryTracker.
Change-Id: If4a73df9afd38756cc01ff37b2d249346e5f7e9f
Multiple processes may be tracked and viewed simultaneously.
Also, some changes to the graph:
* show uss and pss together
* adjust opacity controls
Change-Id: I20eebaa8cc8faf78b46af2a35d71ee538207f02b
-> load old provider
-> permute pages
-> strip all duplicates from workspace
-> add [allapps minus workspaceapps] to apps folder
Change-Id: Id319d532c6bf1d78370ecc736e95a9475d831de8
Changes include
- moving from com.android.launcher{,2} to
com.android.launcher3
- removing wallpapers
- new temporary icon
Change-Id: I1eabd06059e94a8f3bdf6b620777bd1d2b7c212b
- add basic RTL support in the AndroidManifest so that Widgets will be able
to support RTL too
- force LTR layout direction to AppsCustomizeTabHost so that we dont have to
deal with layout mirroring yet
(do not need to force also LTR layout direction to Wallpaper activity and fragment
as another CL is removing the ActionBar on them)
Change-Id: I66623a3fcec0d7adef62b0ab8c8b2170e09f1b1b
In a future version of Android, the default value for
<provider android:exported> will change from true to false.
Explicitly set android:exported="true"
Bug: 3306452
Change-Id: I8fcce3af6949eb245ea97b6e64c191f465f0ae5f
Adds a receiver that populates the default
workspace. It can be called by the system when
it's ready for launcher to preload.
Change-Id: If885fcfd931c459f87e9bb0df4c8bca00906f3c1
Recently Android Beam was also enabled by default for
all system applications. For some system apps this
makes sense, but for an app such as launcher it doesn't.
This meta-data entry prevents the default Beam behavior
for Launcher.
Bug: 6257668
Change-Id: I1d2188969da1c87734190c19c0528ce4d3ce6825
-> in some workspace configs, bringing up the IME wasn't
properly sliding up launcher to expose the text field
Change-Id: Id98ae732fd8709cff08f156660ae1656feb5bf75
The wallpaper preview covers the whole screen,
with background protection for the gallery items and button.
Change-Id: Ice31c4fea6503d1a59b59d6fbffb5e4a28eb2143
This is an Android Dream, which is kind of like an
interactive screensaver implemented as an Activity.
The Rocket Launcher uses the Launcher's own icon cache to
show the user's installed apps in hyperspace. Tap the screen
to slow down to impulse power. Then, tap an icon to launch.
(depends on I4559a95 for android.dreams in support lib)
Change-Id: Ie6ce34ec1c863667faeada4f39b225f3946e8633
-Fixed b/3271838
-On a phone, Fragment would not remember its
previous state and crash on rotation
Change-Id: Ida923fba0c7f4622b090e2838fd932328ad68c63
- Updated WallpaperChooser to use FragmentDialogs
- Backwards compatible with old WallpaperChooser
UI on non XLarge screens
- There is a known bug with AlertDialogs (b/3225529)
that prevents an AlertDialog to expand to fit its
content. The squishing of the GridView is caused
by that bug.
Change-Id: I49381aab4aa24362e8c92da284797fce0e63823c
-> Added a button to the top left of Launcher which switches
between landscape and portrait. For testing purposes only.
Change-Id: I01f8cfcf92c8ba7727eeba0e59a0b8ff055598fe
This fiddles the manifest to allow the app's shared user id and
process to be changed at build time via resource overlays, so we
can build launcher to run in the acore process for low-end devices.
Also switches the cert of launcher back to shared, to allow for
this. (Note this only really matters if the shared user id is set,
otherwise launcher will still get its own uid.)
Change-Id: I0bd0a06e1442c4bfe5ceb2d438cb58f29d911578
Also cherry-picks this from launcher 1
Fix issue #2133206: dialogs/menus should auto-dismiss when screen turns off
Close things out in various ways. This should be done for Launcher2 as well.
Change-Id: Id4f1c78e35180b437144c54ddcbf10069cc09071
Conflicts:
AndroidManifest.xml
src/com/android/launcher2/Launcher.java
This change requires changing the signature and shared user id of Launcher2, we
will have to revert this once we move the wallpapers picker back to Settings.