diff options
author | Raj Yengisetty <rajesh@cyngn.com> | 2014-06-11 11:48:36 -0700 |
---|---|---|
committer | Abhisek Devkota <ciwrl@cyanogenmod.com> | 2014-06-13 22:30:02 +0000 |
commit | 087502d2d3ff3a638e59d9873930a7e0c553ff66 (patch) | |
tree | c4b39cc73293a05ed17e407c0327ca0f3eed171a | |
parent | 8816c012cae3581a545781a424a16c13c773536c (diff) | |
download | android_packages_apps_Trebuchet-087502d2d3ff3a638e59d9873930a7e0c553ff66.tar.gz android_packages_apps_Trebuchet-087502d2d3ff3a638e59d9873930a7e0c553ff66.tar.bz2 android_packages_apps_Trebuchet-087502d2d3ff3a638e59d9873930a7e0c553ff66.zip |
Trebuchet : Default workspace improvements
This reverts commit b54b34edd5c87e6d0702793b423b14dc24fb1076
Fix bug for mdpi devices crash loop.
Revert requires overlays to know if GSF installed,
adding a run time check to load default workspaces.
Add in additional overlays per density for new LauncherModel
and LauncherProvider 4.4.3 logic.
Change-Id: I5709182521e80d273e892eb3310abd68acac95ad
-rw-r--r-- | res/xml-sw600dp/default_workspace.xml | 75 | ||||
-rw-r--r-- | res/xml-sw600dp/default_workspace_gapps.xml | 171 | ||||
-rw-r--r-- | res/xml-sw600dp/default_workspace_no_telephony.xml | 75 | ||||
-rw-r--r-- | res/xml-sw600dp/default_workspace_no_telephony_gapps.xml | 171 | ||||
-rw-r--r-- | res/xml-sw720dp/default_workspace.xml | 75 | ||||
-rw-r--r-- | res/xml-sw720dp/default_workspace_gapps.xml | 170 | ||||
-rw-r--r-- | res/xml-sw720dp/default_workspace_no_telephony.xml | 75 | ||||
-rw-r--r-- | res/xml-sw720dp/default_workspace_no_telephony_gapps.xml | 171 | ||||
-rw-r--r-- | res/xml/default_workspace.xml | 66 | ||||
-rw-r--r-- | res/xml/default_workspace_gapps.xml | 163 | ||||
-rw-r--r-- | res/xml/default_workspace_no_all_apps.xml | 35 | ||||
-rw-r--r-- | res/xml/default_workspace_no_all_apps_gapps.xml | 56 | ||||
-rw-r--r-- | res/xml/default_workspace_no_telephony.xml | 63 | ||||
-rw-r--r-- | res/xml/default_workspace_no_telephony_gapps.xml | 154 | ||||
-rw-r--r-- | src/com/android/launcher3/LauncherModel.java | 151 | ||||
-rw-r--r-- | src/com/android/launcher3/LauncherProvider.java | 68 |
16 files changed, 1168 insertions, 571 deletions
diff --git a/res/xml-sw600dp/default_workspace.xml b/res/xml-sw600dp/default_workspace.xml index e0502aa13..b8034e320 100644 --- a/res/xml-sw600dp/default_workspace.xml +++ b/res/xml-sw600dp/default_workspace.xml @@ -26,37 +26,6 @@ launcher:spanX="5" launcher:spanY="3" /> <favorite - launcher:packageName="com.android.vending" - launcher:className="com.android.vending.AssetBrowserActivity" - launcher:container="-100" - launcher:screen="1" - launcher:x="4" - launcher:y="4" /> - <folder - launcher:screen="1" - launcher:x="0" - launcher:y="4" - launcher:title="@string/google_title"> - <favorite - launcher:className="com.google.android.maps.MapsActivity" - launcher:packageName="com.google.android.apps.maps" /> - <favorite - launcher:className="com.google.android.gm.ConversationListActivityGmail" - launcher:packageName="com.google.android.gm" /> - <favorite - launcher:className="com.google.android.apps.plus.phone.HomeActivity" - launcher:packageName="com.google.android.apps.plus" /> - <favorite - launcher:className="com.android.calendar.AllInOneActivity" - launcher:packageName="com.google.android.calendar" /> - <favorite - launcher:className="com.google.android.maps.driveabout.app.DestinationActivity" - launcher:packageName="com.google.android.apps.maps" /> - <favorite - launcher:className="com.google.android.apps.plus.phone.ConversationListActivity" - launcher:packageName="com.google.android.apps.plus" /> - </folder> - <favorite launcher:packageName="com.andrew.apollo" launcher:className="com.andrew.apollo.ui.activities.HomeActivity" launcher:screen="1" @@ -71,13 +40,6 @@ <!-- Screen [2] --> <favorite - launcher:packageName="com.cyanogenmod.gallerynext" - launcher:className="com.cyanogenmod.gallerynext.app.GalleryActivity" - launcher:container="-100" - launcher:screen="2" - launcher:x="0" - launcher:y="4" /> - <favorite launcher:packageName="com.android.gallery3d" launcher:className="com.android.gallery3d.app.Gallery" launcher:container="-100" @@ -92,15 +54,6 @@ launcher:x="4" launcher:y="4" /> <appwidget - launcher:packageName="com.android.vending" - launcher:className="com.google.android.finsky.widget.consumption.NowPlayingWidgetProvider" - launcher:container="-100" - launcher:screen="2" - launcher:x="0" - launcher:y="0" - launcher:spanX="5" - launcher:spanY="4" /> - <appwidget launcher:packageName="com.android.mms" launcher:className="com.android.mms.widget.MmsWidgetProvider" launcher:container="-100" @@ -112,13 +65,6 @@ <!-- Hotseat --> <favorite - launcher:packageName="com.google.android.talk" - launcher:className="com.google.android.talk.SigningInActivity" - launcher:container="-101" - launcher:screen="4" - launcher:x="4" - launcher:y="0" /> - <favorite launcher:packageName="com.android.mms" launcher:className="com.android.mms.ui.ConversationList" launcher:container="-101" @@ -126,13 +72,6 @@ launcher:x="4" launcher:y="0" /> <favorite - launcher:packageName="com.android.chrome" - launcher:className="com.google.android.apps.chrome.Main" - launcher:container="-101" - launcher:screen="5" - launcher:x="5" - launcher:y="0" /> - <favorite launcher:packageName="com.android.browser" launcher:className="com.android.browser.BrowserActivity" launcher:container="-101" @@ -140,13 +79,6 @@ launcher:x="5" launcher:y="0" /> <favorite - launcher:packageName="com.google.android.music" - launcher:className="com.android.music.activitymanagement.TopLevelActivity" - launcher:container="-101" - launcher:screen="2" - launcher:x="2" - launcher:y="0" /> - <favorite launcher:packageName="com.android.camera2" launcher:className="com.android.camera.CameraLauncher" launcher:container="-101" @@ -154,13 +86,6 @@ launcher:x="2" launcher:y="0" /> <favorite - launcher:packageName="com.google.android.youtube" - launcher:className="com.google.android.youtube.app.honeycomb.Shell$HomeActivity" - launcher:container="-101" - launcher:screen="1" - launcher:x="1" - launcher:y="0" /> - <favorite launcher:packageName="com.android.contacts" launcher:className="com.android.contacts.activities.PeopleActivity" launcher:container="-101" diff --git a/res/xml-sw600dp/default_workspace_gapps.xml b/res/xml-sw600dp/default_workspace_gapps.xml new file mode 100644 index 000000000..8be9f421d --- /dev/null +++ b/res/xml-sw600dp/default_workspace_gapps.xml @@ -0,0 +1,171 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- + Copyright (C) 2013-2014 The CyanogenMod Project + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. +--> +<favorites xmlns:launcher="http://schemas.android.com/apk/res/com.android.launcher3"> + <!-- Screen [1] --> + <appwidget + launcher:packageName="com.cyanogenmod.lockclock" + launcher:className="com.cyanogenmod.lockclock.ClockWidgetProvider" + launcher:container="-100" + launcher:screen="1" + launcher:x="0" + launcher:y="0" + launcher:spanX="5" + launcher:spanY="3" /> + <favorite + launcher:packageName="com.android.vending" + launcher:className="com.android.vending.AssetBrowserActivity" + launcher:container="-100" + launcher:screen="1" + launcher:x="4" + launcher:y="4" /> + <folder + launcher:screen="1" + launcher:x="0" + launcher:y="4" + launcher:title="@string/google_title"> + <favorite + launcher:className="com.google.android.maps.MapsActivity" + launcher:packageName="com.google.android.apps.maps" /> + <favorite + launcher:className="com.google.android.gm.ConversationListActivityGmail" + launcher:packageName="com.google.android.gm" /> + <favorite + launcher:className="com.google.android.apps.plus.phone.HomeActivity" + launcher:packageName="com.google.android.apps.plus" /> + <favorite + launcher:className="com.android.calendar.AllInOneActivity" + launcher:packageName="com.google.android.calendar" /> + <favorite + launcher:className="com.google.android.maps.driveabout.app.DestinationActivity" + launcher:packageName="com.google.android.apps.maps" /> + <favorite + launcher:className="com.google.android.apps.plus.phone.ConversationListActivity" + launcher:packageName="com.google.android.apps.plus" /> + </folder> + <favorite + launcher:packageName="com.andrew.apollo" + launcher:className="com.andrew.apollo.ui.activities.HomeActivity" + launcher:screen="1" + launcher:x="0" + launcher:y="4" /> + <favorite + launcher:packageName="com.bel.android.dspmanager" + launcher:className="com.bel.android.dspmanager.activity.DSPManager" + launcher:screen="1" + launcher:x="4" + launcher:y="4" /> + + <!-- Screen [2] --> + <favorite + launcher:packageName="com.cyngn.gallerynext" + launcher:className="com.cyngn.gallerynext.app.GalleryActivity" + launcher:container="-100" + launcher:screen="2" + launcher:x="0" + launcher:y="4" /> + <favorite + launcher:packageName="com.android.gallery3d" + launcher:className="com.android.gallery3d.app.Gallery" + launcher:container="-100" + launcher:screen="2" + launcher:x="0" + launcher:y="4" /> + <favorite + launcher:packageName="com.android.settings" + launcher:className="com.android.settings.Settings" + launcher:container="-100" + launcher:screen="2" + launcher:x="4" + launcher:y="4" /> + <appwidget + launcher:packageName="com.android.vending" + launcher:className="com.google.android.finsky.widget.consumption.NowPlayingWidgetProvider" + launcher:container="-100" + launcher:screen="2" + launcher:x="0" + launcher:y="0" + launcher:spanX="5" + launcher:spanY="4" /> + <appwidget + launcher:packageName="com.android.mms" + launcher:className="com.android.mms.widget.MmsWidgetProvider" + launcher:container="-100" + launcher:screen="2" + launcher:x="0" + launcher:y="0" + launcher:spanX="5" + launcher:spanY="2" /> + + <!-- Hotseat --> + <favorite + launcher:packageName="com.google.android.talk" + launcher:className="com.google.android.talk.SigningInActivity" + launcher:container="-101" + launcher:screen="4" + launcher:x="4" + launcher:y="0" /> + <favorite + launcher:packageName="com.android.mms" + launcher:className="com.android.mms.ui.ConversationList" + launcher:container="-101" + launcher:screen="4" + launcher:x="4" + launcher:y="0" /> + <favorite + launcher:packageName="com.android.chrome" + launcher:className="com.google.android.apps.chrome.Main" + launcher:container="-101" + launcher:screen="5" + launcher:x="5" + launcher:y="0" /> + <favorite + launcher:packageName="com.android.browser" + launcher:className="com.android.browser.BrowserActivity" + launcher:container="-101" + launcher:screen="5" + launcher:x="5" + launcher:y="0" /> + <favorite + launcher:packageName="com.google.android.music" + launcher:className="com.android.music.activitymanagement.TopLevelActivity" + launcher:container="-101" + launcher:screen="2" + launcher:x="2" + launcher:y="0" /> + <favorite + launcher:packageName="com.android.camera2" + launcher:className="com.android.camera.CameraLauncher" + launcher:container="-101" + launcher:screen="2" + launcher:x="2" + launcher:y="0" /> + <favorite + launcher:packageName="com.google.android.youtube" + launcher:className="com.google.android.youtube.app.honeycomb.Shell$HomeActivity" + launcher:container="-101" + launcher:screen="1" + launcher:x="1" + launcher:y="0" /> + <favorite + launcher:packageName="com.android.contacts" + launcher:className="com.android.contacts.activities.PeopleActivity" + launcher:container="-101" + launcher:screen="1" + launcher:x="1" + launcher:y="0" /> + +</favorites> diff --git a/res/xml-sw600dp/default_workspace_no_telephony.xml b/res/xml-sw600dp/default_workspace_no_telephony.xml index 3d90372e0..522640a4d 100644 --- a/res/xml-sw600dp/default_workspace_no_telephony.xml +++ b/res/xml-sw600dp/default_workspace_no_telephony.xml @@ -26,37 +26,6 @@ launcher:spanX="5" launcher:spanY="3" /> <favorite - launcher:packageName="com.android.vending" - launcher:className="com.android.vending.AssetBrowserActivity" - launcher:container="-100" - launcher:screen="1" - launcher:x="4" - launcher:y="4" /> - <folder - launcher:screen="1" - launcher:x="0" - launcher:y="4" - launcher:title="@string/google_title"> - <favorite - launcher:className="com.google.android.maps.MapsActivity" - launcher:packageName="com.google.android.apps.maps" /> - <favorite - launcher:className="com.google.android.gm.ConversationListActivityGmail" - launcher:packageName="com.google.android.gm" /> - <favorite - launcher:className="com.google.android.apps.plus.phone.HomeActivity" - launcher:packageName="com.google.android.apps.plus" /> - <favorite - launcher:className="com.android.calendar.AllInOneActivity" - launcher:packageName="com.google.android.calendar" /> - <favorite - launcher:className="com.google.android.maps.driveabout.app.DestinationActivity" - launcher:packageName="com.google.android.apps.maps" /> - <favorite - launcher:className="com.google.android.apps.plus.phone.ConversationListActivity" - launcher:packageName="com.google.android.apps.plus" /> - </folder> - <favorite launcher:packageName="com.andrew.apollo" launcher:className="com.andrew.apollo.ui.activities.HomeActivity" launcher:screen="1" @@ -71,13 +40,6 @@ <!-- Screen [2] --> <favorite - launcher:packageName="com.cyanogenmod.gallerynext" - launcher:className="com.cyanogenmod.gallerynext.app.GalleryActivity" - launcher:container="-100" - launcher:screen="2" - launcher:x="0" - launcher:y="4" /> - <favorite launcher:packageName="com.android.gallery3d" launcher:className="com.android.gallery3d.app.Gallery" launcher:container="-100" @@ -92,15 +54,6 @@ launcher:x="4" launcher:y="4" /> <appwidget - launcher:packageName="com.android.vending" - launcher:className="com.google.android.finsky.widget.consumption.NowPlayingWidgetProvider" - launcher:container="-100" - launcher:screen="2" - launcher:x="0" - launcher:y="0" - launcher:spanX="5" - launcher:spanY="4"/> - <appwidget launcher:packageName="com.android.settings" launcher:className="com.android.settings.widget.SettingsAppWidgetProvider" launcher:container="-100" @@ -112,13 +65,6 @@ <!-- Hotseat --> <favorite - launcher:packageName="com.google.android.talk" - launcher:className="com.google.android.talk.SigningInActivity" - launcher:container="-101" - launcher:screen="4" - launcher:x="4" - launcher:y="0" /> - <favorite launcher:packageName="com.android.email" launcher:className="com.android.email.activity.Welcome" launcher:container="-101" @@ -126,13 +72,6 @@ launcher:x="4" launcher:y="0" /> <favorite - launcher:packageName="com.android.chrome" - launcher:className="com.google.android.apps.chrome.Main" - launcher:container="-101" - launcher:screen="5" - launcher:x="5" - launcher:y="0" /> - <favorite launcher:packageName="com.android.browser" launcher:className="com.android.browser.BrowserActivity" launcher:container="-101" @@ -140,13 +79,6 @@ launcher:x="5" launcher:y="0" /> <favorite - launcher:packageName="com.google.android.music" - launcher:className="com.android.music.activitymanagement.TopLevelActivity" - launcher:container="-101" - launcher:screen="2" - launcher:x="2" - launcher:y="0" /> - <favorite launcher:packageName="com.android.camera2" launcher:className="com.android.camera.CameraLauncher" launcher:container="-101" @@ -154,13 +86,6 @@ launcher:x="2" launcher:y="0" /> <favorite - launcher:packageName="com.google.android.youtube" - launcher:className="com.google.android.youtube.app.honeycomb.Shell$HomeActivity" - launcher:container="-101" - launcher:screen="1" - launcher:x="1" - launcher:y="0" /> - <favorite launcher:packageName="com.android.contacts" launcher:className="com.android.contacts.activities.PeopleActivity" launcher:container="-101" diff --git a/res/xml-sw600dp/default_workspace_no_telephony_gapps.xml b/res/xml-sw600dp/default_workspace_no_telephony_gapps.xml new file mode 100644 index 000000000..ba1dfbc86 --- /dev/null +++ b/res/xml-sw600dp/default_workspace_no_telephony_gapps.xml @@ -0,0 +1,171 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- + Copyright (C) 2013-2014 The CyanogenMod Project + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. +--> +<favorites xmlns:launcher="http://schemas.android.com/apk/res/com.android.launcher3"> + <!-- Screen [1] --> + <appwidget + launcher:packageName="com.cyanogenmod.lockclock" + launcher:className="com.cyanogenmod.lockclock.ClockWidgetProvider" + launcher:container="-100" + launcher:screen="1" + launcher:x="0" + launcher:y="0" + launcher:spanX="5" + launcher:spanY="3" /> + <favorite + launcher:packageName="com.android.vending" + launcher:className="com.android.vending.AssetBrowserActivity" + launcher:container="-100" + launcher:screen="1" + launcher:x="4" + launcher:y="4" /> + <folder + launcher:screen="1" + launcher:x="0" + launcher:y="4" + launcher:title="@string/google_title"> + <favorite + launcher:className="com.google.android.maps.MapsActivity" + launcher:packageName="com.google.android.apps.maps" /> + <favorite + launcher:className="com.google.android.gm.ConversationListActivityGmail" + launcher:packageName="com.google.android.gm" /> + <favorite + launcher:className="com.google.android.apps.plus.phone.HomeActivity" + launcher:packageName="com.google.android.apps.plus" /> + <favorite + launcher:className="com.android.calendar.AllInOneActivity" + launcher:packageName="com.google.android.calendar" /> + <favorite + launcher:className="com.google.android.maps.driveabout.app.DestinationActivity" + launcher:packageName="com.google.android.apps.maps" /> + <favorite + launcher:className="com.google.android.apps.plus.phone.ConversationListActivity" + launcher:packageName="com.google.android.apps.plus" /> + </folder> + <favorite + launcher:packageName="com.andrew.apollo" + launcher:className="com.andrew.apollo.ui.activities.HomeActivity" + launcher:screen="1" + launcher:x="0" + launcher:y="4" /> + <favorite + launcher:packageName="com.bel.android.dspmanager" + launcher:className="com.bel.android.dspmanager.activity.DSPManager" + launcher:screen="1" + launcher:x="4" + launcher:y="4" /> + + <!-- Screen [2] --> + <favorite + launcher:packageName="com.cyngn.gallerynext" + launcher:className="com.cyngn.gallerynext.app.GalleryActivity" + launcher:container="-100" + launcher:screen="2" + launcher:x="0" + launcher:y="4" /> + <favorite + launcher:packageName="com.android.gallery3d" + launcher:className="com.android.gallery3d.app.Gallery" + launcher:container="-100" + launcher:screen="2" + launcher:x="0" + launcher:y="4" /> + <favorite + launcher:packageName="com.android.settings" + launcher:className="com.android.settings.Settings" + launcher:container="-100" + launcher:screen="2" + launcher:x="4" + launcher:y="4" /> + <appwidget + launcher:packageName="com.android.vending" + launcher:className="com.google.android.finsky.widget.consumption.NowPlayingWidgetProvider" + launcher:container="-100" + launcher:screen="2" + launcher:x="0" + launcher:y="0" + launcher:spanX="5" + launcher:spanY="4"/> + <appwidget + launcher:packageName="com.android.settings" + launcher:className="com.android.settings.widget.SettingsAppWidgetProvider" + launcher:container="-100" + launcher:screen="2" + launcher:x="0" + launcher:y="0" + launcher:spanX="5" + launcher:spanY="1" /> + + <!-- Hotseat --> + <favorite + launcher:packageName="com.google.android.talk" + launcher:className="com.google.android.talk.SigningInActivity" + launcher:container="-101" + launcher:screen="4" + launcher:x="4" + launcher:y="0" /> + <favorite + launcher:packageName="com.android.email" + launcher:className="com.android.email.activity.Welcome" + launcher:container="-101" + launcher:screen="4" + launcher:x="4" + launcher:y="0" /> + <favorite + launcher:packageName="com.android.chrome" + launcher:className="com.google.android.apps.chrome.Main" + launcher:container="-101" + launcher:screen="5" + launcher:x="5" + launcher:y="0" /> + <favorite + launcher:packageName="com.android.browser" + launcher:className="com.android.browser.BrowserActivity" + launcher:container="-101" + launcher:screen="5" + launcher:x="5" + launcher:y="0" /> + <favorite + launcher:packageName="com.google.android.music" + launcher:className="com.android.music.activitymanagement.TopLevelActivity" + launcher:container="-101" + launcher:screen="2" + launcher:x="2" + launcher:y="0" /> + <favorite + launcher:packageName="com.android.camera2" + launcher:className="com.android.camera.CameraLauncher" + launcher:container="-101" + launcher:screen="2" + launcher:x="2" + launcher:y="0" /> + <favorite + launcher:packageName="com.google.android.youtube" + launcher:className="com.google.android.youtube.app.honeycomb.Shell$HomeActivity" + launcher:container="-101" + launcher:screen="1" + launcher:x="1" + launcher:y="0" /> + <favorite + launcher:packageName="com.android.contacts" + launcher:className="com.android.contacts.activities.PeopleActivity" + launcher:container="-101" + launcher:screen="1" + launcher:x="1" + launcher:y="0" /> + +</favorites> diff --git a/res/xml-sw720dp/default_workspace.xml b/res/xml-sw720dp/default_workspace.xml index 1b94256d9..85920d732 100644 --- a/res/xml-sw720dp/default_workspace.xml +++ b/res/xml-sw720dp/default_workspace.xml @@ -26,37 +26,6 @@ launcher:spanX="6" launcher:spanY="3" /> <favorite - launcher:packageName="com.android.vending" - launcher:className="com.android.vending.AssetBrowserActivity" - launcher:container="-100" - launcher:screen="1" - launcher:x="7" - launcher:y="4" /> - <folder - launcher:screen="1" - launcher:x="0" - launcher:y="4" - launcher:title="@string/google_title"> - <favorite - launcher:className="com.google.android.maps.MapsActivity" - launcher:packageName="com.google.android.apps.maps" /> - <favorite - launcher:className="com.google.android.gm.ConversationListActivityGmail" - launcher:packageName="com.google.android.gm" /> - <favorite - launcher:className="com.google.android.apps.plus.phone.HomeActivity" - launcher:packageName="com.google.android.apps.plus" /> - <favorite - launcher:className="com.android.calendar.AllInOneActivity" - launcher:packageName="com.google.android.calendar" /> - <favorite - launcher:className="com.google.android.maps.driveabout.app.DestinationActivity" - launcher:packageName="com.google.android.apps.maps" /> - <favorite - launcher:className="com.google.android.apps.plus.phone.ConversationListActivity" - launcher:packageName="com.google.android.apps.plus" /> - </folder> - <favorite launcher:packageName="com.bel.android.dspmanager" launcher:className="com.bel.android.dspmanager.activity.DSPManager" launcher:screen="1" @@ -71,13 +40,6 @@ <!-- Screen [2] --> <favorite - launcher:packageName="com.cyanogenmod.gallerynext" - launcher:className="com.cyanogenmod.gallerynext.app.GalleryActivity" - launcher:container="-100" - launcher:screen="2" - launcher:x="0" - launcher:y="4" /> - <favorite launcher:packageName="com.android.gallery3d" launcher:className="com.android.gallery3d.app.Gallery" launcher:container="-100" @@ -92,15 +54,6 @@ launcher:x="7" launcher:y="4" /> <appwidget - launcher:packageName="com.android.vending" - launcher:className="com.google.android.finsky.widget.consumption.NowPlayingWidgetProvider" - launcher:container="-100" - launcher:screen="2" - launcher:x="1" - launcher:y="0" - launcher:spanX="6" - launcher:spanY="4"/> - <appwidget launcher:packageName="com.android.mms" launcher:className="com.android.mms.widget.MmsWidgetProvider" launcher:screen="2" @@ -111,13 +64,6 @@ <!-- Hotseat --> <favorite - launcher:packageName="com.google.android.talk" - launcher:className="com.google.android.talk.SigningInActivity" - launcher:container="-101" - launcher:screen="5" - launcher:x="5" - launcher:y="0" /> - <favorite launcher:packageName="com.android.mms" launcher:className="com.android.mms.ui.ConversationList" launcher:container="-101" @@ -125,13 +71,6 @@ launcher:x="5" launcher:y="0" /> <favorite - launcher:packageName="com.android.chrome" - launcher:className="com.google.android.apps.chrome.Main" - launcher:container="-101" - launcher:screen="6" - launcher:x="6" - launcher:y="0" /> - <favorite launcher:packageName="com.android.browser" launcher:className="com.android.browser.BrowserActivity" launcher:container="-101" @@ -139,13 +78,6 @@ launcher:x="6" launcher:y="0" /> <favorite - launcher:packageName="com.google.android.music" - launcher:className="com.android.music.activitymanagement.TopLevelActivity" - launcher:container="-101" - launcher:screen="3" - launcher:x="3" - launcher:y="0" /> - <favorite launcher:packageName="com.android.camera2" launcher:className="com.android.camera.CameraLauncher" launcher:container="-101" @@ -153,13 +85,6 @@ launcher:x="3" launcher:y="0" /> <favorite - launcher:packageName="com.google.android.youtube" - launcher:className="com.google.android.youtube.app.honeycomb.Shell$HomeActivity" - launcher:container="-101" - launcher:screen="2" - launcher:x="2" - launcher:y="0" /> - <favorite launcher:packageName="com.android.contacts" launcher:className="com.android.contacts.activities.PeopleActivity" launcher:container="-101" diff --git a/res/xml-sw720dp/default_workspace_gapps.xml b/res/xml-sw720dp/default_workspace_gapps.xml new file mode 100644 index 000000000..2a65712cc --- /dev/null +++ b/res/xml-sw720dp/default_workspace_gapps.xml @@ -0,0 +1,170 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- + Copyright (C) 2013-2014 The CyanogenMod Project + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. +--> +<favorites xmlns:launcher="http://schemas.android.com/apk/res/com.android.launcher3"> + <!-- Screen [1] --> + <appwidget + launcher:packageName="com.cyanogenmod.lockclock" + launcher:className="com.cyanogenmod.lockclock.ClockWidgetProvider" + launcher:container="-100" + launcher:screen="1" + launcher:x="1" + launcher:y="0" + launcher:spanX="6" + launcher:spanY="3" /> + <favorite + launcher:packageName="com.android.vending" + launcher:className="com.android.vending.AssetBrowserActivity" + launcher:container="-100" + launcher:screen="1" + launcher:x="7" + launcher:y="4" /> + <folder + launcher:screen="1" + launcher:x="0" + launcher:y="4" + launcher:title="@string/google_title"> + <favorite + launcher:className="com.google.android.maps.MapsActivity" + launcher:packageName="com.google.android.apps.maps" /> + <favorite + launcher:className="com.google.android.gm.ConversationListActivityGmail" + launcher:packageName="com.google.android.gm" /> + <favorite + launcher:className="com.google.android.apps.plus.phone.HomeActivity" + launcher:packageName="com.google.android.apps.plus" /> + <favorite + launcher:className="com.android.calendar.AllInOneActivity" + launcher:packageName="com.google.android.calendar" /> + <favorite + launcher:className="com.google.android.maps.driveabout.app.DestinationActivity" + launcher:packageName="com.google.android.apps.maps" /> + <favorite + launcher:className="com.google.android.apps.plus.phone.ConversationListActivity" + launcher:packageName="com.google.android.apps.plus" /> + </folder> + <favorite + launcher:packageName="com.bel.android.dspmanager" + launcher:className="com.bel.android.dspmanager.activity.DSPManager" + launcher:screen="1" + launcher:x="7" + launcher:y="4" /> + <favorite + launcher:packageName="com.andrew.apollo" + launcher:className="com.andrew.apollo.ui.activities.HomeActivity" + launcher:screen="1" + launcher:x="0" + launcher:y="4" /> + + <!-- Screen [2] --> + <favorite + launcher:packageName="com.cyngn.gallerynext" + launcher:className="com.cyngn.gallerynext.app.GalleryActivity" + launcher:container="-100" + launcher:screen="2" + launcher:x="0" + launcher:y="4" /> + <favorite + launcher:packageName="com.android.gallery3d" + launcher:className="com.android.gallery3d.app.Gallery" + launcher:container="-100" + launcher:screen="2" + launcher:x="0" + launcher:y="4" /> + <favorite + launcher:packageName="com.android.settings" + launcher:className="com.android.settings.Settings" + launcher:container="-100" + launcher:screen="2" + launcher:x="7" + launcher:y="4" /> + <appwidget + launcher:packageName="com.android.vending" + launcher:className="com.google.android.finsky.widget.consumption.NowPlayingWidgetProvider" + launcher:container="-100" + launcher:screen="2" + launcher:x="1" + launcher:y="0" + launcher:spanX="6" + launcher:spanY="4"/> + <appwidget + launcher:packageName="com.android.mms" + launcher:className="com.android.mms.widget.MmsWidgetProvider" + launcher:screen="2" + launcher:x="2" + launcher:y="0" + launcher:spanX="4" + launcher:spanY="2" /> + + <!-- Hotseat --> + <favorite + launcher:packageName="com.google.android.talk" + launcher:className="com.google.android.talk.SigningInActivity" + launcher:container="-101" + launcher:screen="5" + launcher:x="5" + launcher:y="0" /> + <favorite + launcher:packageName="com.android.mms" + launcher:className="com.android.mms.ui.ConversationList" + launcher:container="-101" + launcher:screen="5" + launcher:x="5" + launcher:y="0" /> + <favorite + launcher:packageName="com.android.chrome" + launcher:className="com.google.android.apps.chrome.Main" + launcher:container="-101" + launcher:screen="6" + launcher:x="6" + launcher:y="0" /> + <favorite + launcher:packageName="com.android.browser" + launcher:className="com.android.browser.BrowserActivity" + launcher:container="-101" + launcher:screen="6" + launcher:x="6" + launcher:y="0" /> + <favorite + launcher:packageName="com.google.android.music" + launcher:className="com.android.music.activitymanagement.TopLevelActivity" + launcher:container="-101" + launcher:screen="3" + launcher:x="3" + launcher:y="0" /> + <favorite + launcher:packageName="com.android.camera2" + launcher:className="com.android.camera.CameraLauncher" + launcher:container="-101" + launcher:screen="3" + launcher:x="3" + launcher:y="0" /> + <favorite + launcher:packageName="com.google.android.youtube" + launcher:className="com.google.android.youtube.app.honeycomb.Shell$HomeActivity" + launcher:container="-101" + launcher:screen="2" + launcher:x="2" + launcher:y="0" /> + <favorite + launcher:packageName="com.android.contacts" + launcher:className="com.android.contacts.activities.PeopleActivity" + launcher:container="-101" + launcher:screen="2" + launcher:x="2" + launcher:y="0" /> + +</favorites> diff --git a/res/xml-sw720dp/default_workspace_no_telephony.xml b/res/xml-sw720dp/default_workspace_no_telephony.xml index cfbd6e2c1..df557bff9 100644 --- a/res/xml-sw720dp/default_workspace_no_telephony.xml +++ b/res/xml-sw720dp/default_workspace_no_telephony.xml @@ -26,37 +26,6 @@ launcher:spanX="6" launcher:spanY="3"/> <favorite - launcher:packageName="com.android.vending" - launcher:className="com.android.vending.AssetBrowserActivity" - launcher:container="-100" - launcher:screen="1" - launcher:x="7" - launcher:y="4" /> - <folder - launcher:screen="1" - launcher:x="0" - launcher:y="4" - launcher:title="@string/google_title"> - <favorite - launcher:className="com.google.android.maps.MapsActivity" - launcher:packageName="com.google.android.apps.maps" /> - <favorite - launcher:className="com.google.android.gm.ConversationListActivityGmail" - launcher:packageName="com.google.android.gm" /> - <favorite - launcher:className="com.google.android.apps.plus.phone.HomeActivity" - launcher:packageName="com.google.android.apps.plus" /> - <favorite - launcher:className="com.android.calendar.AllInOneActivity" - launcher:packageName="com.google.android.calendar" /> - <favorite - launcher:className="com.google.android.maps.driveabout.app.DestinationActivity" - launcher:packageName="com.google.android.apps.maps" /> - <favorite - launcher:className="com.google.android.apps.plus.phone.ConversationListActivity" - launcher:packageName="com.google.android.apps.plus" /> - </folder> - <favorite launcher:packageName="com.bel.android.dspmanager" launcher:className="com.bel.android.dspmanager.activity.DSPManager" launcher:screen="1" @@ -71,13 +40,6 @@ <!-- Screen [2] --> <favorite - launcher:packageName="com.cyanogenmod.gallerynext" - launcher:className="com.cyanogenmod.gallerynext.app.GalleryActivity" - launcher:container="-100" - launcher:screen="2" - launcher:x="0" - launcher:y="4" /> - <favorite launcher:packageName="com.android.gallery3d" launcher:className="com.android.gallery3d.app.Gallery" launcher:container="-100" @@ -92,15 +54,6 @@ launcher:x="7" launcher:y="4" /> <appwidget - launcher:packageName="com.android.vending" - launcher:className="com.google.android.finsky.widget.consumption.NowPlayingWidgetProvider" - launcher:container="-100" - launcher:screen="2" - launcher:x="1" - launcher:y="0" - launcher:spanX="6" - launcher:spanY="4"/> - <appwidget launcher:packageName="com.android.settings" launcher:className="com.android.settings.widget.SettingsAppWidgetProvider" launcher:container="-100" @@ -112,13 +65,6 @@ <!-- Hotseat --> <favorite - launcher:packageName="com.google.android.talk" - launcher:className="com.google.android.talk.SigningInActivity" - launcher:container="-101" - launcher:screen="5" - launcher:x="5" - launcher:y="0" /> - <favorite launcher:packageName="com.android.email" launcher:className="com.android.email.activity.Welcome" launcher:container="-101" @@ -126,13 +72,6 @@ launcher:x="5" launcher:y="0" /> <favorite - launcher:packageName="com.android.chrome" - launcher:className="com.google.android.apps.chrome.Main" - launcher:container="-101" - launcher:screen="6" - launcher:x="6" - launcher:y="0" /> - <favorite launcher:packageName="com.android.browser" launcher:className="com.android.browser.BrowserActivity" launcher:container="-101" @@ -140,13 +79,6 @@ launcher:x="6" launcher:y="0" /> <favorite - launcher:packageName="com.google.android.music" - launcher:className="com.android.music.activitymanagement.TopLevelActivity" - launcher:container="-101" - launcher:screen="3" - launcher:x="3" - launcher:y="0" /> - <favorite launcher:packageName="com.android.camera2" launcher:className="com.android.camera.CameraLauncher" launcher:container="-101" @@ -154,13 +86,6 @@ launcher:x="3" launcher:y="0" /> <favorite - launcher:packageName="com.google.android.youtube" - launcher:className="com.google.android.youtube.app.honeycomb.Shell$HomeActivity" - launcher:container="-101" - launcher:screen="2" - launcher:x="2" - launcher:y="0" /> - <favorite launcher:packageName="com.android.contacts" launcher:className="com.android.contacts.activities.PeopleActivity" launcher:container="-101" diff --git a/res/xml-sw720dp/default_workspace_no_telephony_gapps.xml b/res/xml-sw720dp/default_workspace_no_telephony_gapps.xml new file mode 100644 index 000000000..2deae95e4 --- /dev/null +++ b/res/xml-sw720dp/default_workspace_no_telephony_gapps.xml @@ -0,0 +1,171 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- + Copyright (C) 2013-2014 The CyanogenMod Project + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. +--> +<favorites xmlns:launcher="http://schemas.android.com/apk/res/com.android.launcher3"> + <!-- Screen [1] --> + <appwidget + launcher:packageName="com.cyanogenmod.lockclock" + launcher:className="com.cyanogenmod.lockclock.ClockWidgetProvider" + launcher:container="-100" + launcher:screen="1" + launcher:x="1" + launcher:y="0" + launcher:spanX="6" + launcher:spanY="3"/> + <favorite + launcher:packageName="com.android.vending" + launcher:className="com.android.vending.AssetBrowserActivity" + launcher:container="-100" + launcher:screen="1" + launcher:x="7" + launcher:y="4" /> + <folder + launcher:screen="1" + launcher:x="0" + launcher:y="4" + launcher:title="@string/google_title"> + <favorite + launcher:className="com.google.android.maps.MapsActivity" + launcher:packageName="com.google.android.apps.maps" /> + <favorite + launcher:className="com.google.android.gm.ConversationListActivityGmail" + launcher:packageName="com.google.android.gm" /> + <favorite + launcher:className="com.google.android.apps.plus.phone.HomeActivity" + launcher:packageName="com.google.android.apps.plus" /> + <favorite + launcher:className="com.android.calendar.AllInOneActivity" + launcher:packageName="com.google.android.calendar" /> + <favorite + launcher:className="com.google.android.maps.driveabout.app.DestinationActivity" + launcher:packageName="com.google.android.apps.maps" /> + <favorite + launcher:className="com.google.android.apps.plus.phone.ConversationListActivity" + launcher:packageName="com.google.android.apps.plus" /> + </folder> + <favorite + launcher:packageName="com.bel.android.dspmanager" + launcher:className="com.bel.android.dspmanager.activity.DSPManager" + launcher:screen="1" + launcher:x="7" + launcher:y="4" /> + <favorite + launcher:packageName="com.andrew.apollo" + launcher:className="com.andrew.apollo.ui.activities.HomeActivity" + launcher:screen="1" + launcher:x="0" + launcher:y="4" /> + + <!-- Screen [2] --> + <favorite + launcher:packageName="com.cyngn.gallerynext" + launcher:className="com.cyngn.gallerynext.app.GalleryActivity" + launcher:container="-100" + launcher:screen="2" + launcher:x="0" + launcher:y="4" /> + <favorite + launcher:packageName="com.android.gallery3d" + launcher:className="com.android.gallery3d.app.Gallery" + launcher:container="-100" + launcher:screen="2" + launcher:x="0" + launcher:y="4" /> + <favorite + launcher:packageName="com.android.settings" + launcher:className="com.android.settings.Settings" + launcher:container="-100" + launcher:screen="2" + launcher:x="7" + launcher:y="4" /> + <appwidget + launcher:packageName="com.android.vending" + launcher:className="com.google.android.finsky.widget.consumption.NowPlayingWidgetProvider" + launcher:container="-100" + launcher:screen="2" + launcher:x="1" + launcher:y="0" + launcher:spanX="6" + launcher:spanY="4"/> + <appwidget + launcher:packageName="com.android.settings" + launcher:className="com.android.settings.widget.SettingsAppWidgetProvider" + launcher:container="-100" + launcher:screen="2" + launcher:x="2" + launcher:y="0" + launcher:spanX="4" + launcher:spanY="1" /> + + <!-- Hotseat --> + <favorite + launcher:packageName="com.google.android.talk" + launcher:className="com.google.android.talk.SigningInActivity" + launcher:container="-101" + launcher:screen="5" + launcher:x="5" + launcher:y="0" /> + <favorite + launcher:packageName="com.android.email" + launcher:className="com.android.email.activity.Welcome" + launcher:container="-101" + launcher:screen="5" + launcher:x="5" + launcher:y="0" /> + <favorite + launcher:packageName="com.android.chrome" + launcher:className="com.google.android.apps.chrome.Main" + launcher:container="-101" + launcher:screen="6" + launcher:x="6" + launcher:y="0" /> + <favorite + launcher:packageName="com.android.browser" + launcher:className="com.android.browser.BrowserActivity" + launcher:container="-101" + launcher:screen="6" + launcher:x="6" + launcher:y="0" /> + <favorite + launcher:packageName="com.google.android.music" + launcher:className="com.android.music.activitymanagement.TopLevelActivity" + launcher:container="-101" + launcher:screen="3" + launcher:x="3" + launcher:y="0" /> + <favorite + launcher:packageName="com.android.camera2" + launcher:className="com.android.camera.CameraLauncher" + launcher:container="-101" + launcher:screen="3" + launcher:x="3" + launcher:y="0" /> + <favorite + launcher:packageName="com.google.android.youtube" + launcher:className="com.google.android.youtube.app.honeycomb.Shell$HomeActivity" + launcher:container="-101" + launcher:screen="2" + launcher:x="2" + launcher:y="0" /> + <favorite + launcher:packageName="com.android.contacts" + launcher:className="com.android.contacts.activities.PeopleActivity" + launcher:container="-101" + launcher:screen="2" + launcher:x="2" + launcher:y="0" /> + +</favorites> diff --git a/res/xml/default_workspace.xml b/res/xml/default_workspace.xml index 8cb7bbfeb..4174bc818 100644 --- a/res/xml/default_workspace.xml +++ b/res/xml/default_workspace.xml @@ -24,44 +24,6 @@ launcher:y="0" launcher:spanX="4" launcher:spanY="2" /> - <folder launcher:screen="1" launcher:x="0" launcher:y="3" launcher:title="@string/google_title"> - <favorite - launcher:className="com.google.android.gm.ConversationListActivityGmail" - launcher:packageName="com.google.android.gm" /> - <favorite - launcher:className="com.google.android.apps.plus.phone.HomeActivity" - launcher:packageName="com.google.android.apps.plus" /> - <favorite - launcher:className="com.google.android.maps.MapsActivity" - launcher:packageName="com.google.android.apps.maps" /> - <favorite - launcher:className="com.android.music.activitymanagement.TopLevelActivity" - launcher:packageName="com.google.android.music" /> - <favorite - launcher:className="com.google.android.youtube.videos.EntryPoint" - launcher:packageName="com.google.android.videos" /> - <favorite - launcher:className="com.google.android.apps.books.app.BooksActivity" - launcher:packageName="com.google.android.apps.books" /> - <favorite - launcher:className="com.google.apps.dots.android.app.activity.CurrentsStartActivity" - launcher:packageName="com.google.android.apps.magazines" /> - <favorite - launcher:className="com.google.android.gms.games.ui.destination.main.MainActivity" - launcher:packageName="com.google.android.play.games" /> - <favorite - launcher:className="com.google.android.apps.docs.app.NewMainProxyActivity" - launcher:packageName="com.google.android.apps.docs" /> - <favorite - launcher:className="com.google.android.youtube.app.honeycomb.Shell$HomeActivity" - launcher:packageName="com.google.android.youtube" /> - <favorite - launcher:className="com.google.android.apps.plus.phone.ConversationListActivity" - launcher:packageName="com.google.android.apps.plus" /> - <favorite - launcher:className="com.google.android.talk.SigningInActivity" - launcher:packageName="com.google.android.talk" /> - </folder> <favorite launcher:packageName="com.andrew.apollo" launcher:className="com.andrew.apollo.ui.activities.HomeActivity" @@ -83,14 +45,6 @@ <!-- Screen [2] --> <appwidget - launcher:packageName="com.android.vending" - launcher:className="com.google.android.finsky.widget.consumption.NowPlayingWidgetProvider" - launcher:screen="2" - launcher:x="0" - launcher:y="0" - launcher:spanX="4" - launcher:spanY="2" /> - <appwidget launcher:packageName="com.android.mms" launcher:className="com.android.mms.widget.MmsWidgetProvider" launcher:screen="2" @@ -99,12 +53,6 @@ launcher:spanX="4" launcher:spanY="2" /> <favorite - launcher:packageName="com.cyanogenmod.gallerynext" - launcher:className="com.cyanogenmod.gallerynext.app.GalleryActivity" - launcher:screen="2" - launcher:x="0" - launcher:y="3" /> - <favorite launcher:packageName="com.android.gallery3d" launcher:className="com.android.gallery3d.app.Gallery" launcher:screen="2" @@ -133,13 +81,6 @@ launcher:x="1" launcher:y="0" /> <favorite - launcher:packageName="com.android.chrome" - launcher:className="com.google.android.apps.chrome.Main" - launcher:container="-101" - launcher:screen="3" - launcher:x="3" - launcher:y="0" /> - <favorite launcher:packageName="com.android.browser" launcher:className="com.android.browser.BrowserActivity" launcher:container="-101" @@ -147,13 +88,6 @@ launcher:x="3" launcher:y="0" /> <favorite - launcher:packageName="com.cyngn.cameranext" - launcher:className="com.android.camera.CameraLauncher" - launcher:container="-101" - launcher:screen="4" - launcher:x="4" - launcher:y="0" /> - <favorite launcher:packageName="com.android.camera2" launcher:className="com.android.camera.CameraLauncher" launcher:container="-101" diff --git a/res/xml/default_workspace_gapps.xml b/res/xml/default_workspace_gapps.xml new file mode 100644 index 000000000..b2b6cfc7f --- /dev/null +++ b/res/xml/default_workspace_gapps.xml @@ -0,0 +1,163 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- + Copyright (C) 2013-2014 The CyanogenMod Project + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. +--> +<favorites xmlns:launcher="http://schemas.android.com/apk/res/com.android.launcher3"> + <!-- Screen [1] --> + <appwidget + launcher:packageName="com.cyanogenmod.lockclock" + launcher:className="com.cyanogenmod.lockclock.ClockWidgetProvider" + launcher:screen="1" + launcher:x="0" + launcher:y="0" + launcher:spanX="4" + launcher:spanY="2" /> + <folder launcher:screen="1" launcher:x="0" launcher:y="3" launcher:title="@string/google_title"> + <favorite + launcher:className="com.google.android.gm.ConversationListActivityGmail" + launcher:packageName="com.google.android.gm" /> + <favorite + launcher:className="com.google.android.apps.plus.phone.HomeActivity" + launcher:packageName="com.google.android.apps.plus" /> + <favorite + launcher:className="com.google.android.maps.MapsActivity" + launcher:packageName="com.google.android.apps.maps" /> + <favorite + launcher:className="com.android.music.activitymanagement.TopLevelActivity" + launcher:packageName="com.google.android.music" /> + <favorite + launcher:className="com.google.android.youtube.videos.EntryPoint" + launcher:packageName="com.google.android.videos" /> + <favorite + launcher:className="com.google.android.apps.books.app.BooksActivity" + launcher:packageName="com.google.android.apps.books" /> + <favorite + launcher:className="com.google.apps.dots.android.app.activity.CurrentsStartActivity" + launcher:packageName="com.google.android.apps.magazines" /> + <favorite + launcher:className="com.google.android.gms.games.ui.destination.main.MainActivity" + launcher:packageName="com.google.android.play.games" /> + <favorite + launcher:className="com.google.android.apps.docs.app.NewMainProxyActivity" + launcher:packageName="com.google.android.apps.docs" /> + <favorite + launcher:className="com.google.android.youtube.app.honeycomb.Shell$HomeActivity" + launcher:packageName="com.google.android.youtube" /> + <favorite + launcher:className="com.google.android.apps.plus.phone.ConversationListActivity" + launcher:packageName="com.google.android.apps.plus" /> + <favorite + launcher:className="com.google.android.talk.SigningInActivity" + launcher:packageName="com.google.android.talk" /> + </folder> + <favorite + launcher:packageName="com.andrew.apollo" + launcher:className="com.andrew.apollo.ui.activities.HomeActivity" + launcher:screen="1" + launcher:x="0" + launcher:y="3" /> + <favorite + launcher:packageName="com.android.vending" + launcher:className="com.android.vending.AssetBrowserActivity" + launcher:screen="1" + launcher:x="3" + launcher:y="3" /> + <favorite + launcher:packageName="com.bel.android.dspmanager" + launcher:className="com.bel.android.dspmanager.activity.DSPManager" + launcher:screen="1" + launcher:x="3" + launcher:y="3" /> + + <!-- Screen [2] --> + <appwidget + launcher:packageName="com.android.vending" + launcher:className="com.google.android.finsky.widget.consumption.NowPlayingWidgetProvider" + launcher:screen="2" + launcher:x="0" + launcher:y="0" + launcher:spanX="4" + launcher:spanY="2" /> + <appwidget + launcher:packageName="com.android.mms" + launcher:className="com.android.mms.widget.MmsWidgetProvider" + launcher:screen="2" + launcher:x="0" + launcher:y="0" + launcher:spanX="4" + launcher:spanY="2" /> + <favorite + launcher:packageName="com.cyngn.gallerynext" + launcher:className="com.cyngn.gallerynext.app.GalleryActivity" + launcher:screen="2" + launcher:x="0" + launcher:y="3" /> + <favorite + launcher:packageName="com.android.gallery3d" + launcher:className="com.android.gallery3d.app.Gallery" + launcher:screen="2" + launcher:x="0" + launcher:y="3" /> + <favorite + launcher:packageName="com.android.settings" + launcher:className="com.android.settings.Settings" + launcher:screen="2" + launcher:x="3" + launcher:y="3" /> + + <!-- Hotseat (We use the screen as the position of the item in the hotseat) --> + <favorite + launcher:packageName="com.android.dialer" + launcher:className="com.android.dialer.DialtactsActivity" + launcher:container="-101" + launcher:screen="0" + launcher:x="0" + launcher:y="0" /> + <favorite + launcher:packageName="com.android.mms" + launcher:className="com.android.mms.ui.ConversationList" + launcher:container="-101" + launcher:screen="1" + launcher:x="1" + launcher:y="0" /> + <favorite + launcher:packageName="com.android.chrome" + launcher:className="com.google.android.apps.chrome.Main" + launcher:container="-101" + launcher:screen="3" + launcher:x="3" + launcher:y="0" /> + <favorite + launcher:packageName="com.android.browser" + launcher:className="com.android.browser.BrowserActivity" + launcher:container="-101" + launcher:screen="3" + launcher:x="3" + launcher:y="0" /> + <favorite + launcher:packageName="com.cyngn.cameranext" + launcher:className="com.android.camera.CameraLauncher" + launcher:container="-101" + launcher:screen="4" + launcher:x="4" + launcher:y="0" /> + <favorite + launcher:packageName="com.android.camera2" + launcher:className="com.android.camera.CameraLauncher" + launcher:container="-101" + launcher:screen="4" + launcher:x="4" + launcher:y="0" /> +</favorites> diff --git a/res/xml/default_workspace_no_all_apps.xml b/res/xml/default_workspace_no_all_apps.xml index 7e1301cef..9a46908d9 100644 --- a/res/xml/default_workspace_no_all_apps.xml +++ b/res/xml/default_workspace_no_all_apps.xml @@ -17,40 +17,5 @@ <favorites xmlns:launcher="http://schemas.android.com/apk/res-auto/com.android.launcher3"> <!-- Hotseat (We use the screen as the position of the item in the hotseat) --> <!-- Dialer Hangouts Maps Chrome Camera --> - <favorite - launcher:packageName="com.google.android.dialer" - launcher:className="com.google.android.dialer.extensions.GoogleDialtactsActivity" - launcher:container="-101" - launcher:screen="0" - launcher:x="0" - launcher:y="0" /> - <favorite - launcher:packageName="com.google.android.talk" - launcher:className="com.google.android.talk.SigningInActivity" - launcher:container="-101" - launcher:screen="1" - launcher:x="1" - launcher:y="0" /> - <favorite - launcher:packageName="com.google.android.apps.maps" - launcher:className="com.google.android.maps.MapsActivity" - launcher:container="-101" - launcher:screen="2" - launcher:x="2" - launcher:y="0"/> - <favorite - launcher:packageName="com.android.chrome" - launcher:className="com.google.android.apps.chrome.Main" - launcher:container="-101" - launcher:screen="3" - launcher:x="3" - launcher:y="0" /> - <favorite - launcher:packageName="com.google.android.GoogleCamera" - launcher:className="com.android.camera.CameraLauncher" - launcher:container="-101" - launcher:screen="4" - launcher:x="4" - launcher:y="0" /> </favorites> diff --git a/res/xml/default_workspace_no_all_apps_gapps.xml b/res/xml/default_workspace_no_all_apps_gapps.xml new file mode 100644 index 000000000..7e1301cef --- /dev/null +++ b/res/xml/default_workspace_no_all_apps_gapps.xml @@ -0,0 +1,56 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- Copyright (C) 2013 The Android Open Source Project + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. +--> + +<favorites xmlns:launcher="http://schemas.android.com/apk/res-auto/com.android.launcher3"> + <!-- Hotseat (We use the screen as the position of the item in the hotseat) --> + <!-- Dialer Hangouts Maps Chrome Camera --> + <favorite + launcher:packageName="com.google.android.dialer" + launcher:className="com.google.android.dialer.extensions.GoogleDialtactsActivity" + launcher:container="-101" + launcher:screen="0" + launcher:x="0" + launcher:y="0" /> + <favorite + launcher:packageName="com.google.android.talk" + launcher:className="com.google.android.talk.SigningInActivity" + launcher:container="-101" + launcher:screen="1" + launcher:x="1" + launcher:y="0" /> + <favorite + launcher:packageName="com.google.android.apps.maps" + launcher:className="com.google.android.maps.MapsActivity" + launcher:container="-101" + launcher:screen="2" + launcher:x="2" + launcher:y="0"/> + <favorite + launcher:packageName="com.android.chrome" + launcher:className="com.google.android.apps.chrome.Main" + launcher:container="-101" + launcher:screen="3" + launcher:x="3" + launcher:y="0" /> + <favorite + launcher:packageName="com.google.android.GoogleCamera" + launcher:className="com.android.camera.CameraLauncher" + launcher:container="-101" + launcher:screen="4" + launcher:x="4" + launcher:y="0" /> +</favorites> + diff --git a/res/xml/default_workspace_no_telephony.xml b/res/xml/default_workspace_no_telephony.xml index d01980d90..868ffbece 100644 --- a/res/xml/default_workspace_no_telephony.xml +++ b/res/xml/default_workspace_no_telephony.xml @@ -24,35 +24,6 @@ launcher:y="0" launcher:spanX="4" launcher:spanY="2" /> - <folder launcher:screen="1" launcher:x="0" launcher:y="3" launcher:title="@string/google_title"> - <favorite - launcher:className="com.google.android.maps.MapsActivity" - launcher:packageName="com.google.android.apps.maps" /> - <favorite - launcher:className="com.google.android.gm.ConversationListActivityGmail" - launcher:packageName="com.google.android.gm" /> - <favorite - launcher:className="com.google.android.apps.plus.phone.HomeActivity" - launcher:packageName="com.google.android.apps.plus" /> - <favorite - launcher:className="com.android.music.activitymanagement.TopLevelActivity" - launcher:packageName="com.google.android.music" /> - <favorite - launcher:className="com.google.android.youtube.app.honeycomb.Shell$HomeActivity" - launcher:packageName="com.google.android.youtube" /> - <favorite - launcher:className="com.google.android.talk.SigningInActivity" - launcher:packageName="com.google.android.talk" /> - <favorite - launcher:className="com.android.calendar.AllInOneActivity" - launcher:packageName="com.google.android.calendar" /> - <favorite - launcher:className="com.google.android.maps.driveabout.app.DestinationActivity" - launcher:packageName="com.google.android.apps.maps" /> - <favorite - launcher:className="com.google.android.apps.plus.phone.ConversationListActivity" - launcher:packageName="com.google.android.apps.plus" /> - </folder> <favorite launcher:packageName="com.andrew.apollo" launcher:className="com.andrew.apollo.ui.activities.HomeActivity" @@ -60,12 +31,6 @@ launcher:x="0" launcher:y="3" /> <favorite - launcher:packageName="com.android.vending" - launcher:className="com.android.vending.AssetBrowserActivity" - launcher:screen="1" - launcher:x="3" - launcher:y="3" /> - <favorite launcher:packageName="com.bel.android.dspmanager" launcher:className="com.bel.android.dspmanager.activity.DSPManager" launcher:screen="1" @@ -74,14 +39,6 @@ <!-- Screen [2] --> <appwidget - launcher:packageName="com.android.vending" - launcher:className="com.google.android.finsky.widget.consumption.NowPlayingWidgetProvider" - launcher:screen="2" - launcher:x="0" - launcher:y="0" - launcher:spanX="4" - launcher:spanY="2" /> - <appwidget launcher:packageName="com.android.settings" launcher:className="com.android.settings.widget.SettingsAppWidgetProvider" launcher:screen="2" @@ -90,12 +47,6 @@ launcher:spanX="4" launcher:spanY="1" /> <favorite - launcher:packageName="com.cyanogenmod.gallerynext" - launcher:className="com.cyanogenmod.gallerynext.app.GalleryActivity" - launcher:screen="2" - launcher:x="0" - launcher:y="3" /> - <favorite launcher:packageName="com.android.gallery3d" launcher:className="com.android.gallery3d.app.Gallery" launcher:screen="2" @@ -117,13 +68,6 @@ launcher:x="0" launcher:y="0" /> <favorite - launcher:packageName="com.google.android.gm" - launcher:className="com.google.android.gm.ConversationListActivityGmail" - launcher:container="-101" - launcher:screen="1" - launcher:x="1" - launcher:y="0" /> - <favorite launcher:packageName="com.android.email" launcher:className="com.android.email.activity.Welcome" launcher:container="-101" @@ -131,13 +75,6 @@ launcher:x="1" launcher:y="0" /> <favorite - launcher:packageName="com.android.chrome" - launcher:className="com.google.android.apps.chrome.Main" - launcher:container="-101" - launcher:screen="3" - launcher:x="3" - launcher:y="0" /> - <favorite launcher:packageName="com.android.browser" launcher:className="com.android.browser.BrowserActivity" launcher:container="-101" diff --git a/res/xml/default_workspace_no_telephony_gapps.xml b/res/xml/default_workspace_no_telephony_gapps.xml new file mode 100644 index 000000000..f23d12bf4 --- /dev/null +++ b/res/xml/default_workspace_no_telephony_gapps.xml @@ -0,0 +1,154 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- + Copyright (C) 2013-2014 The CyanogenMod Project + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. +--> +<favorites xmlns:launcher="http://schemas.android.com/apk/res/com.android.launcher3"> + <!-- Screen [1] --> + <appwidget + launcher:packageName="com.cyanogenmod.lockclock" + launcher:className="com.cyanogenmod.lockclock.ClockWidgetProvider" + launcher:screen="1" + launcher:x="0" + launcher:y="0" + launcher:spanX="4" + launcher:spanY="2" /> + <folder launcher:screen="1" launcher:x="0" launcher:y="3" launcher:title="@string/google_title"> + <favorite + launcher:className="com.google.android.maps.MapsActivity" + launcher:packageName="com.google.android.apps.maps" /> + <favorite + launcher:className="com.google.android.gm.ConversationListActivityGmail" + launcher:packageName="com.google.android.gm" /> + <favorite + launcher:className="com.google.android.apps.plus.phone.HomeActivity" + launcher:packageName="com.google.android.apps.plus" /> + <favorite + launcher:className="com.android.music.activitymanagement.TopLevelActivity" + launcher:packageName="com.google.android.music" /> + <favorite + launcher:className="com.google.android.youtube.app.honeycomb.Shell$HomeActivity" + launcher:packageName="com.google.android.youtube" /> + <favorite + launcher:className="com.google.android.talk.SigningInActivity" + launcher:packageName="com.google.android.talk" /> + <favorite + launcher:className="com.android.calendar.AllInOneActivity" + launcher:packageName="com.google.android.calendar" /> + <favorite + launcher:className="com.google.android.maps.driveabout.app.DestinationActivity" + launcher:packageName="com.google.android.apps.maps" /> + <favorite + launcher:className="com.google.android.apps.plus.phone.ConversationListActivity" + launcher:packageName="com.google.android.apps.plus" /> + </folder> + <favorite + launcher:packageName="com.andrew.apollo" + launcher:className="com.andrew.apollo.ui.activities.HomeActivity" + launcher:screen="1" + launcher:x="0" + launcher:y="3" /> + <favorite + launcher:packageName="com.android.vending" + launcher:className="com.android.vending.AssetBrowserActivity" + launcher:screen="1" + launcher:x="3" + launcher:y="3" /> + <favorite + launcher:packageName="com.bel.android.dspmanager" + launcher:className="com.bel.android.dspmanager.activity.DSPManager" + launcher:screen="1" + launcher:x="3" + launcher:y="3" /> + + <!-- Screen [2] --> + <appwidget + launcher:packageName="com.android.vending" + launcher:className="com.google.android.finsky.widget.consumption.NowPlayingWidgetProvider" + launcher:screen="2" + launcher:x="0" + launcher:y="0" + launcher:spanX="4" + launcher:spanY="2" /> + <appwidget + launcher:packageName="com.android.settings" + launcher:className="com.android.settings.widget.SettingsAppWidgetProvider" + launcher:screen="2" + launcher:x="0" + launcher:y="0" + launcher:spanX="4" + launcher:spanY="1" /> + <favorite + launcher:packageName="com.cyngn.gallerynext" + launcher:className="com.cyngn.gallerynext.app.GalleryActivity" + launcher:screen="2" + launcher:x="0" + launcher:y="3" /> + <favorite + launcher:packageName="com.android.gallery3d" + launcher:className="com.android.gallery3d.app.Gallery" + launcher:screen="2" + launcher:x="0" + launcher:y="3" /> + <favorite + launcher:packageName="com.android.settings" + launcher:className="com.android.settings.Settings" + launcher:screen="2" + launcher:x="3" + launcher:y="3" /> + + <!-- Hotseat (We use the screen as the position of the item in the hotseat) --> + <favorite + launcher:packageName="com.android.contacts" + launcher:className="com.android.contacts.activities.PeopleActivity" + launcher:container="-101" + launcher:screen="0" + launcher:x="0" + launcher:y="0" /> + <favorite + launcher:packageName="com.google.android.gm" + launcher:className="com.google.android.gm.ConversationListActivityGmail" + launcher:container="-101" + launcher:screen="1" + launcher:x="1" + launcher:y="0" /> + <favorite + launcher:packageName="com.android.email" + launcher:className="com.android.email.activity.Welcome" + launcher:container="-101" + launcher:screen="1" + launcher:x="1" + launcher:y="0" /> + <favorite + launcher:packageName="com.android.chrome" + launcher:className="com.google.android.apps.chrome.Main" + launcher:container="-101" + launcher:screen="3" + launcher:x="3" + launcher:y="0" /> + <favorite + launcher:packageName="com.android.browser" + launcher:className="com.android.browser.BrowserActivity" + launcher:container="-101" + launcher:screen="3" + launcher:x="3" + launcher:y="0" /> + <favorite + launcher:packageName="com.android.camera2" + launcher:className="com.android.camera.CameraLauncher" + launcher:container="-101" + launcher:screen="4" + launcher:x="4" + launcher:y="0" /> +</favorites> diff --git a/src/com/android/launcher3/LauncherModel.java b/src/com/android/launcher3/LauncherModel.java index 9579272d7..9fe0bf3a5 100644 --- a/src/com/android/launcher3/LauncherModel.java +++ b/src/com/android/launcher3/LauncherModel.java @@ -1447,75 +1447,6 @@ public class LauncherModel extends BroadcastReceiver { return false; } - // check & update map of what's occupied; used to discard overlapping/invalid items - public boolean checkItemPlacement(HashMap<Long, ItemInfo[][]> occupied, ItemInfo item, - AtomicBoolean deleteOnItemOverlap) { - LauncherAppState app = LauncherAppState.getInstance(); - DeviceProfile grid = app.getDynamicGrid().getDeviceProfile(); - - long containerIndex = item.screenId; - if (item.container == LauncherSettings.Favorites.CONTAINER_HOTSEAT) { - if (occupied.containsKey((long) LauncherSettings.Favorites.CONTAINER_HOTSEAT)) { - if (occupied.get((long) LauncherSettings.Favorites.CONTAINER_HOTSEAT) - [(int) item.screenId][0] != null) { - Log.e(TAG, "Error loading shortcut into hotseat " + item - + " into position (" + item.screenId + ":" + item.cellX + "," - + item.cellY + ") occupied by " - + occupied.get((long) LauncherSettings.Favorites.CONTAINER_HOTSEAT) - [(int) item.screenId][0]); - if (occupied.get((long) LauncherSettings.Favorites.CONTAINER_HOTSEAT) - [(int) item.screenId][0].itemType == LauncherSettings.Favorites.ITEM_TYPE_ALLAPPS) { - deleteOnItemOverlap.set(true); - } - return false; - } else { - ItemInfo[][] hotseatItems = occupied.get( - (long) LauncherSettings.Favorites.CONTAINER_HOTSEAT); - hotseatItems[(int) item.screenId][0] = item; - return true; - } - } else { - ItemInfo[][] items = new ItemInfo[(int) grid.numHotseatIcons][1]; - items[(int) item.screenId][0] = item; - occupied.put((long) LauncherSettings.Favorites.CONTAINER_HOTSEAT, items); - return true; - } - } else if (item.container != LauncherSettings.Favorites.CONTAINER_DESKTOP) { - // Skip further checking if it is not the hotseat or workspace container - return true; - } - - int countX = (int) grid.numColumns; - int countY = (int) grid.numRows; - - if (!occupied.containsKey(item.screenId)) { - ItemInfo[][] items = new ItemInfo[countX + 1][countY + 1]; - occupied.put(item.screenId, items); - } - - ItemInfo[][] screens = occupied.get(item.screenId); - // Check if any workspace icons overlap with each other - for (int x = item.cellX; x < (item.cellX+item.spanX); x++) { - for (int y = item.cellY; y < (item.cellY+item.spanY); y++) { - if (screens[x][y] != null) { - Log.e(TAG, "Error loading shortcut " + item - + " into cell (" + containerIndex + "-" + item.screenId + ":" - + x + "," + y - + ") occupied by " - + screens[x][y]); - return false; - } - } - } - for (int x = item.cellX; x < (item.cellX+item.spanX); x++) { - for (int y = item.cellY; y < (item.cellY+item.spanY); y++) { - screens[x][y] = item; - } - } - - return true; - } - /** * Runnable for the thread that loads the contents of the launcher: * - workspace icons @@ -1778,6 +1709,88 @@ public class LauncherModel extends BroadcastReceiver { } } + private boolean checkItemPlacement(HashMap<Long, ItemInfo[][]> occupied, ItemInfo item, + AtomicBoolean deleteOnInvalidPlacement) { + LauncherAppState app = LauncherAppState.getInstance(); + DeviceProfile grid = app.getDynamicGrid().getDeviceProfile(); + final int countX = (int) grid.numColumns; + final int countY = (int) grid.numRows; + long containerIndex = item.screenId; + if (item.container == LauncherSettings.Favorites.CONTAINER_HOTSEAT) { + // Return early if we detect that an item is under the hotseat button + if (mCallbacks == null) { + deleteOnInvalidPlacement.set(true); + Log.e(TAG, "Error loading shortcut into hotseat " + item + + " into position (" + item.screenId + ":" + item.cellX + "," + + item.cellY + ") occupied by all apps"); + return false; + } + final ItemInfo[][] hotseatItems = + occupied.get((long) LauncherSettings.Favorites.CONTAINER_HOTSEAT); + if (item.screenId >= grid.numHotseatIcons) { + Log.e(TAG, "Error loading shortcut " + item + + " into hotseat position " + item.screenId + + ", position out of bounds: (0 to " + (grid.numHotseatIcons - 1) + + ")"); + return false; + } + if (hotseatItems != null) { + if (hotseatItems[(int) item.screenId][0] != null) { + Log.e(TAG, "Error loading shortcut into hotseat " + item + + " into position (" + item.screenId + ":" + item.cellX + "," + + item.cellY + ") occupied by " + + occupied.get(LauncherSettings.Favorites.CONTAINER_HOTSEAT) + [(int) item.screenId][0]); + return false; + } else { + hotseatItems[(int) item.screenId][0] = item; + return true; + } + } else { + final ItemInfo[][] items = new ItemInfo[(int) grid.numHotseatIcons][1]; + items[(int) item.screenId][0] = item; + occupied.put((long) LauncherSettings.Favorites.CONTAINER_HOTSEAT, items); + return true; + } + } else if (item.container != LauncherSettings.Favorites.CONTAINER_DESKTOP) { + // Skip further checking if it is not the hotseat or workspace container + return true; + } + if (!occupied.containsKey(item.screenId)) { + ItemInfo[][] items = new ItemInfo[countX + 1][countY + 1]; + occupied.put(item.screenId, items); + } + final ItemInfo[][] screens = occupied.get(item.screenId); + if (item.container == LauncherSettings.Favorites.CONTAINER_DESKTOP && + item.cellX < 0 || item.cellY < 0 || + item.cellX + item.spanX > countX || item.cellY + item.spanY > countY) { + Log.e(TAG, "Error loading shortcut " + item + + " into cell (" + containerIndex + "-" + item.screenId + ":" + + item.cellX + "," + item.cellY + + ") out of screen bounds ( " + countX + "x" + countY + ")"); + return false; + } + // Check if any workspace icons overlap with each other + for (int x = item.cellX; x < (item.cellX+item.spanX); x++) { + for (int y = item.cellY; y < (item.cellY+item.spanY); y++) { + if (screens[x][y] != null) { + Log.e(TAG, "Error loading shortcut " + item + + " into cell (" + containerIndex + "-" + item.screenId + ":" + + x + "," + y + + ") occupied by " + + screens[x][y]); + return false; + } + } + } + for (int x = item.cellX; x < (item.cellX+item.spanX); x++) { + for (int y = item.cellY; y < (item.cellY+item.spanY); y++) { + screens[x][y] = item; + } + } + return true; + } + /** Clears all the sBg data structures */ private void clearSBgDataStructures() { synchronized (sBgLock) { diff --git a/src/com/android/launcher3/LauncherProvider.java b/src/com/android/launcher3/LauncherProvider.java index 07f587fb5..9a2cb5070 100644 --- a/src/com/android/launcher3/LauncherProvider.java +++ b/src/com/android/launcher3/LauncherProvider.java @@ -32,6 +32,7 @@ import android.content.Intent; import android.content.OperationApplicationException; import android.content.SharedPreferences; import android.content.pm.ActivityInfo; +import android.content.pm.PackageInfo; import android.content.pm.PackageManager; import android.content.res.Resources; import android.content.res.TypedArray; @@ -64,10 +65,8 @@ import java.io.File; import java.io.IOException; import java.net.URISyntaxException; import java.util.ArrayList; -import java.util.HashMap; import java.util.HashSet; import java.util.List; -import java.util.concurrent.atomic.AtomicBoolean; public class LauncherProvider extends ContentProvider { private static final String TAG = "Launcher.LauncherProvider"; @@ -304,7 +303,13 @@ public class LauncherProvider extends ContentProvider { if (workspaceResId == 0) { TelephonyManager tm = (TelephonyManager) getContext().getSystemService(Context.TELEPHONY_SERVICE); if (tm.getPhoneType() == TelephonyManager.PHONE_TYPE_NONE) { - workspaceResId = sp.getInt(DEFAULT_WORKSPACE_RESOURCE_ID, R.xml.default_workspace_no_telephony); + if (areGAppsInstalled()) { + workspaceResId = sp.getInt(DEFAULT_WORKSPACE_RESOURCE_ID, + R.xml.default_workspace_no_telephony_gapps); + } else { + workspaceResId = sp.getInt(DEFAULT_WORKSPACE_RESOURCE_ID, + R.xml.default_workspace_no_telephony); + } } else { workspaceResId = sp.getInt(DEFAULT_WORKSPACE_RESOURCE_ID, getDefaultWorkspaceResourceId()); } @@ -323,16 +328,34 @@ public class LauncherProvider extends ContentProvider { } } + private boolean areGAppsInstalled() { + PackageManager pm = getContext().getPackageManager(); + try { + PackageInfo info = pm.getPackageInfo("com.google.android.gsf",PackageManager.GET_META_DATA); + } catch (PackageManager.NameNotFoundException e) { + return false; + } + return true; + } + public void migrateLauncher2Shortcuts() { mOpenHelper.migrateLauncher2Shortcuts(mOpenHelper.getWritableDatabase(), LauncherSettings.Favorites.OLD_CONTENT_URI); } - private static int getDefaultWorkspaceResourceId() { + private int getDefaultWorkspaceResourceId() { if (LauncherAppState.isDisableAllApps()) { - return R.xml.default_workspace_no_all_apps; + if (areGAppsInstalled()){ + return R.xml.default_workspace_no_all_apps_gapps; + } else { + return R.xml.default_workspace_no_all_apps; + } } else { - return R.xml.default_workspace; + if (areGAppsInstalled()){ + return R.xml.default_workspace_gapps; + } else { + return R.xml.default_workspace; + } } } @@ -1224,10 +1247,6 @@ public class LauncherProvider extends ContentProvider { final int depth = parser.getDepth(); - final HashMap<Long, ItemInfo[][]> occupied = new HashMap<Long, ItemInfo[][]>(); - LauncherModel model = LauncherAppState.getInstance().getModel(); - AtomicBoolean deleteItem = new AtomicBoolean(); - int type; while (((type = parser.next()) != XmlPullParser.END_TAG || parser.getDepth() > depth) && type != XmlPullParser.END_DOCUMENT) { @@ -1279,18 +1298,6 @@ public class LauncherProvider extends ContentProvider { values.put(LauncherSettings.Favorites.CELLX, x); values.put(LauncherSettings.Favorites.CELLY, y); - ItemInfo info = new ItemInfo(); - info.container = container; - info.spanX = a.getInt(R.styleable.Favorite_spanX, 1); - info.spanY = a.getInt(R.styleable.Favorite_spanY, 1); - info.cellX = a.getInt(R.styleable.Favorite_x, 0); - info.cellY = a.getInt(R.styleable.Favorite_y, 0); - info.screenId = a.getInt(R.styleable.Favorite_screen, 0); - - if (!model.checkItemPlacement(occupied, info, deleteItem)) { - continue; - } - if (LOGD) { final String title = a.getString(R.styleable.Favorite_title); final String pkg = a.getString(R.styleable.Favorite_packageName); @@ -1377,22 +1384,7 @@ public class LauncherProvider extends ContentProvider { added = false; } } - if (added) { - i++; - } else { - long containerIndex = info.screenId; - if (info.container == LauncherSettings.Favorites.CONTAINER_HOTSEAT) { - occupied.get((long) LauncherSettings.Favorites.CONTAINER_HOTSEAT) - [(int) info.screenId][0] = null; - } else { - ItemInfo[][] screens = occupied.get(info.screenId); - for (int gridX = info.cellX; gridX < (info.cellX+info.spanX); gridX++) { - for (int gridY = info.cellY; gridY < (info.cellY+info.spanY); gridY++) { - screens[gridX][gridY] = null; - } - } - } - } + if (added) i++; a.recycle(); } } catch (XmlPullParserException e) { |