添加15种特效

This commit is contained in:
yuchuangu85 committed 2017-05-15 14:55:05 +08:00
1 parent d359dd18c1
commit 96a8a5df5d
298 files changed
+1956 -3707

No files matched your search

+2 -2
View File
@@ -18,7 +18,7 @@
*/
-->
<manifest
package="com.codemx.launcher3"
package="com.android.launcher3"
xmlns:android="http://schemas.android.com/apk/res/android">
<uses-sdk
@@ -48,7 +48,7 @@
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"/>
<application
android:backupAgent="com.codemx.launcher3.LauncherBackupAgent"
android:backupAgent="com.android.launcher3.LauncherBackupAgent"
android:fullBackupContent="@xml/backupscheme"
android:fullBackupOnly="true"
android:hardwareAccelerated="true"
+11 -11
View File
@@ -18,7 +18,7 @@
*/
-->
<manifest
package="com.codemx.launcher3"
package="com.android.launcher3"
xmlns:android="http://schemas.android.com/apk/res/android">
<uses-sdk
@@ -35,13 +35,13 @@
name in the permissions. eq com.mypackage.permission.READ_SETTINGS
-->
<permission
android:name="com.codemx.launcher3.permission.READ_SETTINGS"
android:name="com.android.launcher3.permission.READ_SETTINGS"
android:description="@string/permdesc_read_settings"
android:label="@string/permlab_read_settings"
android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
android:protectionLevel="normal"/>
<permission
android:name="com.codemx.launcher3.permission.WRITE_SETTINGS"
android:name="com.android.launcher3.permission.WRITE_SETTINGS"
android:description="@string/permdesc_write_settings"
android:label="@string/permlab_write_settings"
android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
@@ -49,11 +49,11 @@
<uses-permission android:name="com.android.launcher.permission.READ_SETTINGS"/>
<uses-permission android:name="com.android.launcher.permission.WRITE_SETTINGS"/>
<uses-permission android:name="com.codemx.launcher3.permission.READ_SETTINGS"/>
<uses-permission android:name="com.codemx.launcher3.permission.WRITE_SETTINGS"/>
<uses-permission android:name="com.android.launcher3.permission.READ_SETTINGS"/>
<uses-permission android:name="com.android.launcher3.permission.WRITE_SETTINGS"/>
<application
android:backupAgent="com.codemx.launcher3.LauncherBackupAgent"
android:backupAgent="com.android.launcher3.LauncherBackupAgent"
android:fullBackupContent="@xml/backupscheme"
android:fullBackupOnly="true"
android:hardwareAccelerated="true"
@@ -93,7 +93,7 @@
The settings activity. When extending keep the intent filter present
-->
<activity
android:name="com.codemx.launcher3.SettingsActivity"
android:name="com.android.launcher3.SettingsActivity"
android:autoRemoveFromRecents="true"
android:label="@string/settings_button_text">
<intent-filter>
@@ -108,11 +108,11 @@
represent the package name.
-->
<provider
android:name="com.codemx.launcher3.LauncherProvider"
android:authorities="com.codemx.launcher3.settings"
android:name="com.android.launcher3.LauncherProvider"
android:authorities="com.android.launcher3.settings"
android:exported="true"
android:readPermission="com.codemx.launcher3.permission.READ_SETTINGS"
android:writePermission="com.codemx.launcher3.permission.WRITE_SETTINGS"/>
android:readPermission="com.android.launcher3.permission.READ_SETTINGS"
android:writePermission="com.android.launcher3.permission.WRITE_SETTINGS"/>
<!-- ENABLE_FOR_TESTING
+1 -19
View File
@@ -21,7 +21,7 @@
</configuration>
</facet>
</component>
<component name="NewModuleRootManager" LANGUAGE_LEVEL="JDK_1_7" inherit-compiler-output="false">
<component name="NewModuleRootManager" LANGUAGE_LEVEL="JDK_1_7">
<output url="file://$MODULE_DIR$/build/intermediates/classes/aosp/debug" />
<output-test url="file://$MODULE_DIR$/build/intermediates/classes/test/aosp/debug" />
<exclude-output />
@@ -113,33 +113,15 @@
<sourceFolder url="file://$MODULE_DIR$/src/test/java" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/src/test/rs" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/src/test/shaders" isTestSource="true" />
<excludeFolder url="file://$MODULE_DIR$/build/.DS_Store" />
<excludeFolder url="file://$MODULE_DIR$/build/android-profile" />
<excludeFolder url="file://$MODULE_DIR$/build/extracted-include-protos" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/.DS_Store" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/assets" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/blame" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/classes" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/dex-cache" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/incremental" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/incremental-classes" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/incremental-runtime-classes" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/incremental-safeguard" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/incremental-verifier" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/instant-run-resources" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/instant-run-support" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/jniLibs" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/manifests" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/reload-dex" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/res" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/restart-dex" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/rs" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/shaders" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/split-apk" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/symbols" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/transforms" />
<excludeFolder url="file://$MODULE_DIR$/build/outputs" />
<excludeFolder url="file://$MODULE_DIR$/build/tmp" />
</content>
<orderEntry type="jdk" jdkName="Android API 25 Platform" jdkType="Android SDK" />
<orderEntry type="sourceFolder" forTests="false" />
+20 -4
View File
@@ -19,18 +19,18 @@
* AndroidManifest.xml中的所有"com.android.launcher3"的改成对应的包名
* 代码中ProviderConfig.java中的"com.android.launcher3.settings"改成对应包名,同时修改AndroidManifest中的
provider中的android:authorities="com.android.launcher3.settings"以及 android:name="com.codemx.launcher3.LauncherProvider"
provider中的android:authorities="com.android.launcher3.settings"以及 android:name="com.android.launcher3.LauncherProvider"
改成对应包名,以及provider中的writePermission和readPermission权限的包名也要改成对应包名,这个权限对应:
<permission
android:name="com.codemx.launcher3.permission.READ_SETTINGS"
android:name="com.android.launcher3.permission.READ_SETTINGS"
android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
android:protectionLevel="normal"
android:label="@string/permlab_read_settings"
android:description="@string/permdesc_read_settings"/>
<permission
android:name="com.codemx.launcher3.permission.WRITE_SETTINGS"
android:name="com.android.launcher3.permission.WRITE_SETTINGS"
android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
android:protectionLevel="signatureOrSystem"
android:label="@string/permlab_write_settings"
@@ -46,7 +46,23 @@ provider中的android:authorities="com.android.launcher3.settings"以及 android
* 其实就是所有"com.android.launcher3"的都改,没有"3"的都不改
#### 4.预览图
#### 4.添加特效(15种)
workspace类中的screenScrolled方法中添加:
startScrollWithAnim(screenCenter);
以及:
// add:mx---特效----------start----
...
// add:mx---特效----------end包含的代码----
#### 5.预览图
<img width="320" src="/art/launcher1.jpg"/> <img width="320" src="/art/launcher2.jpg"/>
+5 -5
View File
@@ -1,9 +1,9 @@
buildscript {
repositories {
mavenCentral()
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:2.3.1'
classpath 'com.android.tools.build:gradle:2.4.0-alpha7'
classpath 'com.google.protobuf:protobuf-gradle-plugin:0.8.0'
}
}
@@ -13,7 +13,7 @@ apply plugin: 'com.google.protobuf'
android {
compileSdkVersion 25
buildToolsVersion '25.0.2'
buildToolsVersion '25.0.3'
defaultConfig {
minSdkVersion 21
@@ -31,8 +31,8 @@ android {
productFlavors {
aosp {
applicationId 'com.codemx.launcher3'
testApplicationId 'com.codemx.launcher3.tests'
applicationId 'com.android.launcher3'
testApplicationId 'com.android.launcher3.tests'
}
}
sourceSets {
+2 -2
View File
@@ -1,6 +1,6 @@
#Sat Apr 15 11:08:31 CST 2017
#Mon May 15 10:17:00 CST 2017
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-3.3-all.zip
distributionUrl=https\://services.gradle.org/distributions/gradle-3.4.1-all.zip
+1 -1
View File
@@ -15,7 +15,7 @@
*/
syntax = "proto2";
option java_package = "com.codemx.launcher3.userevent.nano";
option java_package = "com.android.launcher3.userevent.nano";
option java_outer_classname = "LauncherLogProto";
package userevent;
+6 -6
View File
@@ -15,7 +15,7 @@
-->
<!-- Full screen view projects under the status bar and contains the background -->
<com.codemx.launcher3.LauncherRootView
<com.android.launcher3.LauncherRootView
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:launcher="http://schemas.android.com/apk/res-auto"
android:id="@+id/launcher"
@@ -23,7 +23,7 @@
android:layout_height="match_parent"
android:fitsSystemWindows="true">
<com.codemx.launcher3.dragndrop.DragLayer
<com.android.launcher3.dragndrop.DragLayer
android:id="@+id/drag_layer"
android:clipChildren="false"
android:clipToPadding="false"
@@ -34,7 +34,7 @@
<!-- The workspace contains 5 screens of cells -->
<!-- DO NOT CHANGE THE ID -->
<com.codemx.launcher3.Workspace
<com.android.launcher3.Workspace
android:id="@+id/workspace"
android:layout_width="match_parent"
android:layout_height="match_parent"
@@ -57,7 +57,7 @@
android:id="@+id/overview_panel"
android:visibility="gone" />
<com.codemx.launcher3.pageindicators.PageIndicatorCaretLandscape
<com.android.launcher3.pageindicators.PageIndicatorCaretLandscape
android:id="@+id/page_indicator"
android:layout_width="@dimen/dynamic_grid_page_indicator_height"
android:layout_height="@dimen/dynamic_grid_page_indicator_height"
@@ -81,6 +81,6 @@
android:layout_height="match_parent"
android:visibility="invisible" />
</com.codemx.launcher3.dragndrop.DragLayer>
</com.android.launcher3.dragndrop.DragLayer>
</com.codemx.launcher3.LauncherRootView>
</com.android.launcher3.LauncherRootView>
+6 -6
View File
@@ -15,7 +15,7 @@
-->
<!-- Full screen view projects under the status bar and contains the background -->
<com.codemx.launcher3.LauncherRootView
<com.android.launcher3.LauncherRootView
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:launcher="http://schemas.android.com/apk/res-auto"
@@ -24,7 +24,7 @@
android:layout_height="match_parent"
android:fitsSystemWindows="true">
<com.codemx.launcher3.dragndrop.DragLayer
<com.android.launcher3.dragndrop.DragLayer
android:id="@+id/drag_layer"
android:clipChildren="false"
android:importantForAccessibility="no"
@@ -35,13 +35,13 @@
<!-- The workspace contains 5 screens of cells -->
<!-- DO NOT CHANGE THE ID -->
<com.codemx.launcher3.Workspace
<com.android.launcher3.Workspace
android:id="@+id/workspace"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_gravity="center"
launcher:pageIndicator="@+id/page_indicator">
</com.codemx.launcher3.Workspace>
</com.android.launcher3.Workspace>
<!-- DO NOT CHANGE THE ID -->
<include layout="@layout/hotseat"
@@ -79,6 +79,6 @@
android:layout_height="match_parent"
android:visibility="invisible"
launcher:layout_ignoreInsets="true" />
</com.codemx.launcher3.dragndrop.DragLayer>
</com.android.launcher3.dragndrop.DragLayer>
</com.codemx.launcher3.LauncherRootView>
</com.android.launcher3.LauncherRootView>
+6 -6
View File
@@ -15,7 +15,7 @@
-->
<!-- Full screen view projects under the status bar and contains the background -->
<com.codemx.launcher3.LauncherRootView
<com.android.launcher3.LauncherRootView
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:launcher="http://schemas.android.com/apk/res-auto"
android:id="@+id/launcher"
@@ -23,7 +23,7 @@
android:layout_height="match_parent"
android:fitsSystemWindows="true">
<com.codemx.launcher3.dragndrop.DragLayer
<com.android.launcher3.dragndrop.DragLayer
android:id="@+id/drag_layer"
android:clipChildren="false"
android:clipToPadding="false"
@@ -34,13 +34,13 @@
<!-- The workspace contains 5 screens of cells -->
<!-- DO NOT CHANGE THE ID -->
<com.codemx.launcher3.Workspace
<com.android.launcher3.Workspace
android:layout_gravity="center"
android:id="@+id/workspace"
android:layout_width="match_parent"
android:layout_height="match_parent"
launcher:pageIndicator="@id/page_indicator">
</com.codemx.launcher3.Workspace>
</com.android.launcher3.Workspace>
<!-- DO NOT CHANGE THE ID -->
<include layout="@layout/hotseat"
@@ -78,6 +78,6 @@
android:layout_height="match_parent"
android:visibility="invisible"
launcher:layout_ignoreInsets="true" />
</com.codemx.launcher3.dragndrop.DragLayer>
</com.android.launcher3.dragndrop.DragLayer>
</com.codemx.launcher3.LauncherRootView>
</com.android.launcher3.LauncherRootView>
+6 -6
View File
@@ -16,7 +16,7 @@
<!-- The top and bottom paddings are defined in this container, but since we want
the list view to span the full width (for touch interception purposes), we
will bake the left/right padding into that view's background itself. -->
<com.codemx.launcher3.allapps.AllAppsContainerView xmlns:android="http://schemas.android.com/apk/res/android"
<com.android.launcher3.allapps.AllAppsContainerView xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:launcher="http://schemas.android.com/apk/res-auto"
android:id="@+id/apps_view"
android:layout_width="match_parent"
@@ -33,7 +33,7 @@
android:visibility="invisible" />
<com.codemx.launcher3.allapps.AllAppsRecyclerViewContainerView
<com.android.launcher3.allapps.AllAppsRecyclerViewContainerView
android:id="@+id/main_content"
android:layout_width="match_parent"
android:layout_height="match_parent"
@@ -44,7 +44,7 @@
android:visibility="gone">
<!-- DO NOT CHANGE THE ID -->
<com.codemx.launcher3.allapps.AllAppsRecyclerView
<com.android.launcher3.allapps.AllAppsRecyclerView
android:id="@+id/apps_list_view"
android:layout_width="match_parent"
android:layout_height="match_parent"
@@ -65,7 +65,7 @@
android:orientation="horizontal"
android:saveEnabled="false">
<com.codemx.launcher3.ExtendedEditText
<com.android.launcher3.ExtendedEditText
android:id="@+id/search_box_input"
android:layout_width="match_parent"
android:layout_height="match_parent"
@@ -83,7 +83,7 @@
android:textSize="16sp" />
</FrameLayout>
</com.codemx.launcher3.allapps.AllAppsRecyclerViewContainerView>
</com.android.launcher3.allapps.AllAppsRecyclerViewContainerView>
<View
android:id="@+id/nav_bar_bg"
android:layout_width="match_parent"
@@ -92,4 +92,4 @@
android:background="@color/all_apps_navbar_color"
android:focusable="false"
android:visibility="invisible" />
</com.codemx.launcher3.allapps.AllAppsContainerView>
</com.android.launcher3.allapps.AllAppsContainerView>
+1 -1
View File
@@ -13,7 +13,7 @@
See the License for the specific language governing permissions and
limitations under the License.
-->
<com.codemx.launcher3.BubbleTextView
<com.android.launcher3.BubbleTextView
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:launcher="http://schemas.android.com/apk/res-auto"
style="@style/Icon.AllApps"
+1 -1
View File
@@ -14,6 +14,6 @@
limitations under the License.
-->
<com.codemx.launcher3.BubbleTextView xmlns:android="http://schemas.android.com/apk/res/android"
<com.android.launcher3.BubbleTextView xmlns:android="http://schemas.android.com/apk/res/android"
style="@style/Icon"
android:focusable="true" />
+3 -3
View File
@@ -14,14 +14,14 @@
limitations under the License.
-->
<com.codemx.launcher3.shortcuts.DeepShortcutView
<com.android.launcher3.shortcuts.DeepShortcutView
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="@dimen/bg_pill_width"
android:layout_height="@dimen/bg_pill_height"
android:elevation="@dimen/deep_shortcuts_elevation"
android:background="@drawable/bg_white_pill">
<com.codemx.launcher3.shortcuts.DeepShortcutTextView
<com.android.launcher3.shortcuts.DeepShortcutTextView
android:id="@+id/deep_shortcut"
style="@style/Icon.DeepShortcut"
android:layout_width="match_parent"
@@ -36,4 +36,4 @@
android:layout_margin="@dimen/deep_shortcut_padding_start"
android:layout_gravity="start" />
</com.codemx.launcher3.shortcuts.DeepShortcutView>
</com.android.launcher3.shortcuts.DeepShortcutView>
+2 -2
View File
@@ -14,7 +14,7 @@
limitations under the License.
-->
<com.codemx.launcher3.shortcuts.DeepShortcutsContainer
<com.android.launcher3.shortcuts.DeepShortcutsContainer
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/deep_shortcuts_container"
android:layout_width="wrap_content"
@@ -26,4 +26,4 @@
android:elevation="@dimen/deep_shortcuts_elevation"
android:orientation="vertical">
</com.codemx.launcher3.shortcuts.DeepShortcutsContainer>
</com.android.launcher3.shortcuts.DeepShortcutsContainer>
+5 -5
View File
@@ -14,7 +14,7 @@
See the License for the specific language governing permissions and
limitations under the License.
-->
<com.codemx.launcher3.DropTargetBar
<com.android.launcher3.DropTargetBar
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:launcher="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
@@ -29,7 +29,7 @@
<!-- Delete target -->
<com.codemx.launcher3.DeleteDropTarget
<com.android.launcher3.DeleteDropTarget
launcher:hideParentOnDisable="true"
android:layout_width="wrap_content"
android:layout_height="match_parent"
@@ -47,7 +47,7 @@
<!-- App Info -->
<com.codemx.launcher3.InfoDropTarget
<com.android.launcher3.InfoDropTarget
launcher:hideParentOnDisable="true"
android:layout_width="wrap_content"
android:layout_height="match_parent"
@@ -65,7 +65,7 @@
<!-- Uninstall target -->
<com.codemx.launcher3.UninstallDropTarget
<com.android.launcher3.UninstallDropTarget
launcher:hideParentOnDisable="true"
android:layout_width="wrap_content"
android:layout_height="match_parent"
@@ -76,4 +76,4 @@
android:text="@string/uninstall_drop_target_label" />
</FrameLayout>
</com.codemx.launcher3.DropTargetBar>
</com.android.launcher3.DropTargetBar>
+5 -5
View File
@@ -14,7 +14,7 @@
See the License for the specific language governing permissions and
limitations under the License.
-->
<com.codemx.launcher3.DropTargetBar
<com.android.launcher3.DropTargetBar
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="@dimen/dynamic_grid_drop_target_size"
android:orientation="vertical"
@@ -24,7 +24,7 @@
android:paddingTop="@dimen/vert_drop_target_vertical_gap" >
<!-- Delete target -->
<com.codemx.launcher3.DeleteDropTarget
<com.android.launcher3.DeleteDropTarget
android:layout_width="match_parent"
android:layout_height="@dimen/dynamic_grid_drop_target_size"
android:gravity="center"
@@ -34,7 +34,7 @@
android:textColor="@android:color/white" />
<!-- Uninstall target -->
<com.codemx.launcher3.UninstallDropTarget
<com.android.launcher3.UninstallDropTarget
android:layout_width="match_parent"
android:layout_height="@dimen/dynamic_grid_drop_target_size"
android:gravity="center"
@@ -50,7 +50,7 @@
android:layout_weight="1" />
<!-- App Info -->
<com.codemx.launcher3.InfoDropTarget
<com.android.launcher3.InfoDropTarget
android:layout_width="match_parent"
android:layout_height="@dimen/dynamic_grid_drop_target_size"
android:gravity="center"
@@ -60,4 +60,4 @@
android:textColor="@android:color/white"
android:layout_marginBottom="64dp"/>
</com.codemx.launcher3.DropTargetBar>
</com.android.launcher3.DropTargetBar>
+1 -1
View File
@@ -14,6 +14,6 @@
limitations under the License.
-->
<com.codemx.launcher3.BubbleTextView xmlns:android="http://schemas.android.com/apk/res/android"
<com.android.launcher3.BubbleTextView xmlns:android="http://schemas.android.com/apk/res/android"
style="@style/Icon.Folder"
android:focusable="true" />
+3 -3
View File
@@ -14,16 +14,16 @@
limitations under the License.
-->
<com.codemx.launcher3.folder.FolderIcon
<com.android.launcher3.folder.FolderIcon
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:focusable="true" >
<com.codemx.launcher3.BubbleTextView
<com.android.launcher3.BubbleTextView
style="@style/Icon"
android:id="@+id/folder_icon_name"
android:layout_gravity="top"
android:layout_width="match_parent"
android:layout_height="match_parent" />
</com.codemx.launcher3.folder.FolderIcon>
</com.android.launcher3.folder.FolderIcon>
+3 -3
View File
@@ -13,12 +13,12 @@
See the License for the specific language governing permissions and
limitations under the License.
-->
<com.codemx.launcher3.Hotseat
<com.android.launcher3.Hotseat
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:launcher="http://schemas.android.com/apk/res-auto">
<com.codemx.launcher3.CellLayout
<com.android.launcher3.CellLayout
android:id="@+id/layout"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_gravity="center" />
</com.codemx.launcher3.Hotseat>
</com.android.launcher3.Hotseat>
+2 -2
View File
@@ -14,7 +14,7 @@
limitations under the License.
-->
<com.codemx.launcher3.pageindicators.PageIndicatorLineCaret
<com.android.launcher3.pageindicators.PageIndicatorLineCaret
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="@dimen/dynamic_grid_page_indicator_height">
@@ -24,4 +24,4 @@
android:layout_height="match_parent"
android:layout_gravity="center"
android:scaleType="centerInside"/>
</com.codemx.launcher3.pageindicators.PageIndicatorLineCaret>
</com.android.launcher3.pageindicators.PageIndicatorLineCaret>
+1 -1
View File
@@ -14,7 +14,7 @@
See the License for the specific language governing permissions and
limitations under the License.
-->
<com.codemx.launcher3.QsbBlockerView
<com.android.launcher3.QsbBlockerView
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent" />
+3 -3
View File
@@ -14,7 +14,7 @@
See the License for the specific language governing permissions and
limitations under the License.
-->
<com.codemx.launcher3.QsbContainerView
<com.android.launcher3.QsbContainerView
xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="match_parent"
@@ -23,8 +23,8 @@
android:padding="0dp" >
<fragment
android:name="com.codemx.launcher3.QsbContainerView$QsbFragment"
android:name="com.android.launcher3.QsbContainerView$QsbFragment"
android:layout_width="match_parent"
android:tag="qsb_view"
android:layout_height="match_parent"/>
</com.codemx.launcher3.QsbContainerView>
</com.android.launcher3.QsbContainerView>
+5 -5
View File
@@ -14,7 +14,7 @@
See the License for the specific language governing permissions and
limitations under the License.
-->
<com.codemx.launcher3.folder.Folder xmlns:android="http://schemas.android.com/apk/res/android"
<com.android.launcher3.folder.Folder xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:launcher="http://schemas.android.com/apk/res-auto"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
@@ -22,7 +22,7 @@
android:elevation="5dp"
android:orientation="vertical" >
<com.codemx.launcher3.folder.FolderPagedView
<com.android.launcher3.folder.FolderPagedView
android:id="@+id/folder_content"
android:layout_width="match_parent"
android:layout_height="match_parent"
@@ -40,7 +40,7 @@
android:paddingLeft="12dp"
android:paddingRight="12dp" >
<com.codemx.launcher3.ExtendedEditText
<com.android.launcher3.ExtendedEditText
android:id="@+id/folder_name"
android:layout_width="0dp"
android:layout_height="wrap_content"
@@ -60,7 +60,7 @@
android:textColorHint="#ff808080"
android:textSize="@dimen/folder_label_text_size" />
<com.codemx.launcher3.pageindicators.PageIndicatorDots
<com.android.launcher3.pageindicators.PageIndicatorDots
android:id="@+id/folder_page_indicator"
android:layout_gravity="center_vertical"
android:layout_width="wrap_content"
@@ -70,4 +70,4 @@
</LinearLayout>
</com.codemx.launcher3.folder.Folder>
</com.android.launcher3.folder.Folder>
+5 -5
View File
@@ -14,7 +14,7 @@
See the License for the specific language governing permissions and
limitations under the License.
-->
<com.codemx.launcher3.folder.Folder xmlns:android="http://schemas.android.com/apk/res/android"
<com.android.launcher3.folder.Folder xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:launcher="http://schemas.android.com/apk/res-auto"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
@@ -22,7 +22,7 @@
android:elevation="5dp"
android:orientation="vertical" >
<com.codemx.launcher3.folder.FolderPagedView
<com.android.launcher3.folder.FolderPagedView
android:id="@+id/folder_content"
android:layout_width="match_parent"
android:layout_height="match_parent"
@@ -40,7 +40,7 @@
android:paddingLeft="12dp"
android:paddingRight="12dp" >
<com.codemx.launcher3.ExtendedEditText
<com.android.launcher3.ExtendedEditText
android:id="@+id/folder_name"
android:layout_width="0dp"
android:layout_height="wrap_content"
@@ -60,7 +60,7 @@
android:textColorHint="#ff808080"
android:textSize="@dimen/folder_label_text_size" />
<com.codemx.launcher3.pageindicators.PageIndicatorDots
<com.android.launcher3.pageindicators.PageIndicatorDots
android:id="@+id/folder_page_indicator"
android:layout_gravity="center_vertical"
android:layout_width="wrap_content"
@@ -70,4 +70,4 @@
</LinearLayout>
</com.codemx.launcher3.folder.Folder>
</com.android.launcher3.folder.Folder>
+3 -3
View File
@@ -13,7 +13,7 @@
See the License for the specific language governing permissions and
limitations under the License.
-->
<com.codemx.launcher3.widget.WidgetCell
<com.android.launcher3.widget.WidgetCell
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:launcher="http://schemas.android.com/apk/res-auto"
android:layout_width="wrap_content"
@@ -66,9 +66,9 @@
<!-- The image of the widget. This view does not support padding. Any placement adjustment
should be done using margins. -->
<com.codemx.launcher3.widget.WidgetImageView
<com.android.launcher3.widget.WidgetImageView
android:id="@+id/widget_preview"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="1" />
</com.codemx.launcher3.widget.WidgetCell>
</com.android.launcher3.widget.WidgetCell>
+1 -1
View File
@@ -26,7 +26,7 @@
<!-- Section info -->
<com.codemx.launcher3.BubbleTextView
<com.android.launcher3.BubbleTextView
android:id="@+id/section"
android:layout_width="match_parent"
android:layout_height="@dimen/widget_section_height"
+3 -3
View File
@@ -16,7 +16,7 @@
<!-- The top and bottom paddings are defined in this container, but since we want
the list view to span the full width (for touch interception purposes), we
will bake the left/right padding into that view's background itself. -->
<com.codemx.launcher3.widget.WidgetsContainerView
<com.android.launcher3.widget.WidgetsContainerView
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:launcher="http://schemas.android.com/apk/res-auto"
android:id="@+id/widgets_view"
@@ -43,7 +43,7 @@
android:layout_width="match_parent"
android:layout_height="match_parent">
<com.codemx.launcher3.widget.WidgetsRecyclerView
<com.android.launcher3.widget.WidgetsRecyclerView
android:id="@+id/widgets_list_view"
android:theme="@style/CustomOverscroll.Dark"
android:layout_width="match_parent"
@@ -57,4 +57,4 @@
</FrameLayout>
</com.codemx.launcher3.widget.WidgetsContainerView>
</com.android.launcher3.widget.WidgetsContainerView>
+1 -1
View File
@@ -14,7 +14,7 @@
limitations under the License.
-->
<com.codemx.launcher3.CellLayout
<com.android.launcher3.CellLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:launcher="http://schemas.android.com/apk/res-auto"
android:layout_width="wrap_content"
+1 -1
View File
@@ -1,4 +1,4 @@
<?xml version="1.0" encoding="utf-8"?>
<com.codemx.launcher3.testing.WeightWatcher xmlns:android="http://schemas.android.com/apk/res/android"
<com.android.launcher3.testing.WeightWatcher xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent" />
+1 -1
View File
@@ -15,7 +15,7 @@
limitations under the License.
-->
<resolve xmlns:launcher="http://schemas.android.com/apk/res-auto/com.codemx.launcher3" >
<resolve xmlns:launcher="http://schemas.android.com/apk/res-auto/com.android.launcher3" >
<favorite launcher:uri="#Intent;action=android.intent.action.MAIN;category=android.intent.category.APP_BROWSER;end" />
<favorite launcher:uri="http://www.example.com/" />
+1 -1
View File
@@ -15,7 +15,7 @@
limitations under the License.
-->
<resolve xmlns:launcher="http://schemas.android.com/apk/res-auto/com.codemx.launcher3" >
<resolve xmlns:launcher="http://schemas.android.com/apk/res-auto/com.android.launcher3" >
<favorite launcher:uri="#Intent;action=android.media.action.STILL_IMAGE_CAMERA;end" />
<favorite launcher:uri="#Intent;action=android.intent.action.CAMERA_BUTTON;end" />
+1 -1
View File
@@ -15,7 +15,7 @@
limitations under the License.
-->
<resolve xmlns:launcher="http://schemas.android.com/apk/res-auto/com.codemx.launcher3" >
<resolve xmlns:launcher="http://schemas.android.com/apk/res-auto/com.android.launcher3" >
<favorite launcher:uri="#Intent;action=android.intent.action.MAIN;category=android.intent.category.APP_EMAIL;end" />
<favorite launcher:uri="mailto:" />
+1 -1
View File
@@ -15,7 +15,7 @@
limitations under the License.
-->
<resolve xmlns:launcher="http://schemas.android.com/apk/res-auto/com.codemx.launcher3" >
<resolve xmlns:launcher="http://schemas.android.com/apk/res-auto/com.android.launcher3" >
<favorite launcher:uri="#Intent;action=android.intent.action.MAIN;category=android.intent.category.APP_GALLERY;end" />
<favorite launcher:uri="#Intent;type=images/*;end" />
+1 -1
View File
@@ -15,7 +15,7 @@
limitations under the License.
-->
<resolve xmlns:launcher="http://schemas.android.com/apk/res-auto/com.codemx.launcher3" >
<resolve xmlns:launcher="http://schemas.android.com/apk/res-auto/com.android.launcher3" >
<favorite launcher:uri="#Intent;action=android.intent.action.MAIN;category=android.intent.category.APP_MESSAGING;end" />
<favorite launcher:uri="sms:" />
+1 -1
View File
@@ -15,7 +15,7 @@
limitations under the License.
-->
<resolve xmlns:launcher="http://schemas.android.com/apk/res-auto/com.codemx.launcher3" >
<resolve xmlns:launcher="http://schemas.android.com/apk/res-auto/com.android.launcher3" >
<favorite launcher:uri="#Intent;action=android.intent.action.DIAL;end" />
<favorite launcher:uri="tel:123" />
+1 -1
View File
@@ -2,6 +2,6 @@
<full-backup-content xmlns:android="http://schemas.android.com/apk/res/android">
<include domain="database" path="launcher.db" />
<include domain="sharedpref" path="com.codemx.launcher3.prefs.xml" />
<include domain="sharedpref" path="com.android.launcher3.prefs.xml" />
</full-backup-content>
+1 -1
View File
@@ -14,7 +14,7 @@
limitations under the License.
-->
<favorites xmlns:launcher="http://schemas.android.com/apk/res-auto/com.codemx.launcher3">
<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) -->
<!-- Messaging, [All Apps], Dialer -->
+1 -1
View File
@@ -14,7 +14,7 @@
limitations under the License.
-->
<favorites xmlns:launcher="http://schemas.android.com/apk/res-auto/com.codemx.launcher3">
<favorites xmlns:launcher="http://schemas.android.com/apk/res-auto/com.android.launcher3">
<!-- Hotseat -->
<include launcher:workspace="@xml/dw_phone_hotseat" />
+1 -1
View File
@@ -14,7 +14,7 @@
limitations under the License.
-->
<favorites xmlns:launcher="http://schemas.android.com/apk/res-auto/com.codemx.launcher3">
<favorites xmlns:launcher="http://schemas.android.com/apk/res-auto/com.android.launcher3">
<!-- Hotseat -->
<include launcher:workspace="@xml/dw_phone_hotseat" />
+1 -1
View File
@@ -14,7 +14,7 @@
limitations under the License.
-->
<favorites xmlns:launcher="http://schemas.android.com/apk/res-auto/com.codemx.launcher3">
<favorites xmlns:launcher="http://schemas.android.com/apk/res-auto/com.android.launcher3">
<!-- Hotseat -->
<include launcher:workspace="@xml/dw_tablet_hotseat" />
+1 -1
View File
@@ -14,7 +14,7 @@
limitations under the License.
-->
<favorites xmlns:launcher="http://schemas.android.com/apk/res-auto/com.codemx.launcher3">
<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, Messaging, [All Apps], Browser, Camera -->
<resolve
+1 -1
View File
@@ -14,7 +14,7 @@
limitations under the License.
-->
<favorites xmlns:launcher="http://schemas.android.com/apk/res-auto/com.codemx.launcher3">
<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) -->
<!-- Messaging, Email, Browser, [All Apps], Music, Gallery, Camera -->
<resolve
@@ -14,7 +14,7 @@
* limitations under the License.
*/
package com.codemx.launcher3;
package com.android.launcher3;
import android.os.Handler;
import android.os.SystemClock;
@@ -14,16 +14,16 @@
* limitations under the License.
*/
package com.codemx.launcher3;
package com.android.launcher3;
import android.content.ComponentName;
import android.content.Context;
import com.codemx.launcher3.compat.LauncherActivityInfoCompat;
import com.codemx.launcher3.compat.LauncherAppsCompat;
import com.codemx.launcher3.compat.UserHandleCompat;
import com.codemx.launcher3.util.FlagOp;
import com.codemx.launcher3.util.StringFilter;
import com.android.launcher3.compat.LauncherActivityInfoCompat;
import com.android.launcher3.compat.LauncherAppsCompat;
import com.android.launcher3.compat.UserHandleCompat;
import com.android.launcher3.util.FlagOp;
import com.android.launcher3.util.StringFilter;
import java.util.ArrayList;
import java.util.HashSet;
@@ -14,7 +14,7 @@
* limitations under the License.
*/
package com.codemx.launcher3;
package com.android.launcher3;
import android.content.Context;
import android.graphics.PointF;
@@ -1,4 +1,4 @@
package com.codemx.launcher3;
package com.android.launcher3;
import android.content.ComponentName;
import android.text.TextUtils;
@@ -14,7 +14,7 @@
* limitations under the License.
*/
package com.codemx.launcher3;
package com.android.launcher3;
import android.content.ComponentName;
import android.content.Context;
@@ -22,11 +22,11 @@ import android.content.Intent;
import android.graphics.Bitmap;
import android.util.Log;
import com.codemx.launcher3.compat.LauncherActivityInfoCompat;
import com.codemx.launcher3.compat.UserHandleCompat;
import com.codemx.launcher3.compat.UserManagerCompat;
import com.codemx.launcher3.util.ComponentKey;
import com.codemx.launcher3.util.PackageManagerHelper;
import com.android.launcher3.compat.LauncherActivityInfoCompat;
import com.android.launcher3.compat.UserHandleCompat;
import com.android.launcher3.compat.UserManagerCompat;
import com.android.launcher3.util.ComponentKey;
import com.android.launcher3.util.PackageManagerHelper;
import java.util.ArrayList;
@@ -1,6 +1,6 @@
package com.codemx.launcher3;
package com.android.launcher3;
import com.codemx.launcher3.dragndrop.DragLayer;
import com.android.launcher3.dragndrop.DragLayer;
import android.animation.AnimatorSet;
import android.animation.ObjectAnimator;
@@ -19,8 +19,8 @@ import android.view.View;
import android.widget.FrameLayout;
import android.widget.ImageView;
import com.codemx.launcher3.accessibility.DragViewStateAnnouncer;
import com.codemx.launcher3.util.FocusLogic;
import com.android.launcher3.accessibility.DragViewStateAnnouncer;
import com.android.launcher3.util.FocusLogic;
public class AppWidgetResizeFrame extends FrameLayout implements View.OnKeyListener {
private static final int SNAP_DURATION = 150;
@@ -1,4 +1,4 @@
package com.codemx.launcher3;
package com.android.launcher3;
import android.appwidget.AppWidgetHost;
import android.appwidget.AppWidgetManager;
@@ -11,7 +11,7 @@ import android.content.Intent;
import android.database.Cursor;
import android.util.Log;
import com.codemx.launcher3.LauncherSettings.Favorites;
import com.android.launcher3.LauncherSettings.Favorites;
public class AppWidgetsRestoredReceiver extends BroadcastReceiver {
@@ -14,7 +14,7 @@
* limitations under the License.
*/
package com.codemx.launcher3;
package com.android.launcher3;
import android.appwidget.AppWidgetHost;
import android.content.ComponentName;
@@ -34,9 +34,9 @@ import android.util.Log;
import android.util.Pair;
import android.util.Patterns;
import com.codemx.launcher3.LauncherSettings.Favorites;
import com.codemx.launcher3.config.FeatureFlags;
import com.codemx.launcher3.util.Thunk;
import com.android.launcher3.LauncherSettings.Favorites;
import com.android.launcher3.config.FeatureFlags;
import com.android.launcher3.util.Thunk;
import org.xmlpull.v1.XmlPullParser;
import org.xmlpull.v1.XmlPullParserException;
@@ -647,7 +647,7 @@ public class AutoInstallsLayout {
*/
protected static String getAttributeValue(XmlResourceParser parser, String attribute) {
String value = parser.getAttributeValue(
"http://schemas.android.com/apk/res-auto/com.codemx.launcher3", attribute);
"http://schemas.android.com/apk/res-auto/com.android.launcher3", attribute);
if (value == null) {
value = parser.getAttributeValue(null, attribute);
}
@@ -661,7 +661,7 @@ public class AutoInstallsLayout {
protected static int getAttributeResourceValue(XmlResourceParser parser, String attribute,
int defaultValue) {
int value = parser.getAttributeResourceValue(
"http://schemas.android.com/apk/res-auto/com.codemx.launcher3", attribute,
"http://schemas.android.com/apk/res-auto/com.android.launcher3", attribute,
defaultValue);
if (value == defaultValue) {
value = parser.getAttributeResourceValue(null, attribute, defaultValue);
@@ -14,7 +14,7 @@
* limitations under the License.
*/
package com.codemx.launcher3;
package com.android.launcher3;
import android.content.Context;
import android.content.res.TypedArray;
@@ -25,8 +25,8 @@ import android.util.AttributeSet;
import android.view.View;
import android.widget.FrameLayout;
import com.codemx.launcher3.allapps.AllAppsContainerView;
import com.codemx.launcher3.config.FeatureFlags;
import com.android.launcher3.allapps.AllAppsContainerView;
import com.android.launcher3.config.FeatureFlags;
/**
* A base container view, which supports resizing.
@@ -14,7 +14,7 @@
* limitations under the License.
*/
package com.codemx.launcher3;
package com.android.launcher3;
import android.content.Context;
import android.graphics.Canvas;
@@ -22,7 +22,7 @@ import android.graphics.Rect;
import android.support.v7.widget.RecyclerView;
import android.util.AttributeSet;
import android.view.MotionEvent;
import com.codemx.launcher3.util.Thunk;
import com.android.launcher3.util.Thunk;
/**
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package com.codemx.launcher3;
package com.android.launcher3;
import android.animation.AnimatorSet;
import android.animation.ArgbEvaluator;
@@ -29,7 +29,7 @@ import android.graphics.Rect;
import android.view.MotionEvent;
import android.view.ViewConfiguration;
import com.codemx.launcher3.util.Thunk;
import com.android.launcher3.util.Thunk;
/**
* The track and scrollbar that shows when you scroll the list.
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package com.codemx.launcher3;
package com.android.launcher3;
import android.animation.Animator;
import android.animation.ObjectAnimator;
@@ -14,7 +14,7 @@
* limitations under the License.
*/
package com.codemx.launcher3;
package com.android.launcher3;
import android.annotation.TargetApi;
import android.content.Context;
@@ -40,8 +40,8 @@ import android.view.ViewDebug;
import android.view.ViewParent;
import android.widget.TextView;
import com.codemx.launcher3.folder.FolderIcon;
import com.codemx.launcher3.model.PackageItemInfo;
import com.android.launcher3.folder.FolderIcon;
import com.android.launcher3.model.PackageItemInfo;
import java.text.NumberFormat;
@@ -14,7 +14,7 @@
* limitations under the License.
*/
package com.codemx.launcher3;
package com.android.launcher3;
import android.animation.AnimatorSet;
import android.animation.FloatArrayEvaluator;
@@ -41,11 +41,11 @@ import android.view.animation.DecelerateInterpolator;
import android.view.animation.LinearInterpolator;
import android.widget.TextView;
import com.codemx.launcher3.dragndrop.DragController;
import com.codemx.launcher3.dragndrop.DragLayer;
import com.codemx.launcher3.dragndrop.DragOptions;
import com.codemx.launcher3.dragndrop.DragView;
import com.codemx.launcher3.util.Thunk;
import com.android.launcher3.dragndrop.DragController;
import com.android.launcher3.dragndrop.DragLayer;
import com.android.launcher3.dragndrop.DragOptions;
import com.android.launcher3.dragndrop.DragView;
import com.android.launcher3.util.Thunk;
/**
* Implements a DropTarget.
@@ -14,7 +14,7 @@
* limitations under the License.
*/
package com.codemx.launcher3;
package com.android.launcher3;
import android.animation.Animator;
import android.animation.AnimatorListenerAdapter;
@@ -46,18 +46,18 @@ import android.view.ViewGroup;
import android.view.accessibility.AccessibilityEvent;
import android.view.animation.DecelerateInterpolator;
import com.codemx.launcher3.BubbleTextView.BubbleTextShadowHandler;
import com.codemx.launcher3.accessibility.DragAndDropAccessibilityDelegate;
import com.codemx.launcher3.accessibility.FolderAccessibilityHelper;
import com.codemx.launcher3.accessibility.WorkspaceAccessibilityHelper;
import com.codemx.launcher3.config.FeatureFlags;
import com.codemx.launcher3.config.ProviderConfig;
import com.codemx.launcher3.folder.FolderIcon;
import com.codemx.launcher3.graphics.DragPreviewProvider;
import com.codemx.launcher3.util.CellAndSpan;
import com.codemx.launcher3.util.GridOccupancy;
import com.codemx.launcher3.util.ParcelableSparseArray;
import com.codemx.launcher3.util.Thunk;
import com.android.launcher3.BubbleTextView.BubbleTextShadowHandler;
import com.android.launcher3.accessibility.DragAndDropAccessibilityDelegate;
import com.android.launcher3.accessibility.FolderAccessibilityHelper;
import com.android.launcher3.accessibility.WorkspaceAccessibilityHelper;
import com.android.launcher3.config.FeatureFlags;
import com.android.launcher3.config.ProviderConfig;
import com.android.launcher3.folder.FolderIcon;
import com.android.launcher3.graphics.DragPreviewProvider;
import com.android.launcher3.util.CellAndSpan;
import com.android.launcher3.util.GridOccupancy;
import com.android.launcher3.util.ParcelableSparseArray;
import com.android.launcher3.util.Thunk;
import java.util.ArrayList;
import java.util.Arrays;
@@ -2861,4 +2861,45 @@ public class CellLayout extends ViewGroup implements BubbleTextShadowHandler {
public boolean isRegionVacant(int x, int y, int spanX, int spanY) {
return mOccupied.isRegionVacant(x, y, spanX, spanY);
}
// add:mx----------start-------
private boolean mScrollingTransformsDirty = false;
private Drawable mOverScrollForegroundDrawable;
private Drawable mOverScrollLeft;
private Drawable mOverScrollRight;
private Rect mBackgroundRect;
private int mForegroundAlpha = 0;
public void resetOverscrollTransforms() {
if (mScrollingTransformsDirty) {
setOverScrollTransformsDirty(false);
setTranslationX(0);
setRotationY(0);
// It doesn't matter if we pass true or false here, the important thing is that we
// pass 0, which results in the overscroll drawable not being drawn any more.
setOverScrollAmount(0, false);
setPivotX(getMeasuredWidth() / 2);
setPivotY(getMeasuredHeight() / 2);
}
}
public void setOverScrollTransformsDirty(boolean dirty) {
mScrollingTransformsDirty = dirty;
}
public void setOverScrollAmount(float r, boolean left) {
if (left && mOverScrollForegroundDrawable != mOverScrollLeft) {
mOverScrollForegroundDrawable = mOverScrollLeft;
} else if (!left && mOverScrollForegroundDrawable != mOverScrollRight) {
mOverScrollForegroundDrawable = mOverScrollRight;
}
mForegroundAlpha = Math.round((r * 255));
invalidate();
}
// add:mx----------end-------
}
@@ -14,11 +14,11 @@
* limitations under the License.
*/
package com.codemx.launcher3;
package com.android.launcher3;
import android.view.View;
import com.codemx.launcher3.util.Thunk;
import com.android.launcher3.util.Thunk;
public class CheckLongPressHelper {
@@ -14,7 +14,7 @@
* limitations under the License.
*/
package com.codemx.launcher3;
package com.android.launcher3;
import android.content.Context;
import android.graphics.Bitmap;
@@ -14,7 +14,7 @@
* limitations under the License.
*/
package com.codemx.launcher3;
package com.android.launcher3;
import android.content.ContentValues;
import android.content.Context;
@@ -23,9 +23,9 @@ import android.content.res.XmlResourceParser;
import android.database.sqlite.SQLiteDatabase;
import android.util.Log;
import com.codemx.launcher3.AutoInstallsLayout.LayoutParserCallback;
import com.codemx.launcher3.LauncherSettings.Favorites;
import com.codemx.launcher3.util.Thunk;
import com.android.launcher3.AutoInstallsLayout.LayoutParserCallback;
import com.android.launcher3.LauncherSettings.Favorites;
import com.android.launcher3.util.Thunk;
import org.xmlpull.v1.XmlPullParserException;
@@ -1,4 +1,4 @@
package com.codemx.launcher3;
package com.android.launcher3;
public interface CustomAppWidget {
public String getLabel();
@@ -1,4 +1,4 @@
package com.codemx.launcher3;
package com.android.launcher3;
import android.appwidget.AppWidgetHost;
import android.appwidget.AppWidgetManager;
@@ -15,8 +15,8 @@ import android.os.Bundle;
import android.text.TextUtils;
import android.util.Log;
import com.codemx.launcher3.LauncherSettings.Favorites;
import com.codemx.launcher3.util.Thunk;
import com.android.launcher3.LauncherSettings.Favorites;
import com.android.launcher3.util.Thunk;
import org.xmlpull.v1.XmlPullParser;
import org.xmlpull.v1.XmlPullParserException;
@@ -14,14 +14,14 @@
* limitations under the License.
*/
package com.codemx.launcher3;
package com.android.launcher3;
import android.os.Handler;
import android.os.Looper;
import android.os.Message;
import android.os.MessageQueue;
import com.codemx.launcher3.util.Thunk;
import com.android.launcher3.util.Thunk;
import java.util.LinkedList;
@@ -14,7 +14,7 @@
* limitations under the License.
*/
package com.codemx.launcher3;
package com.android.launcher3;
import android.animation.TimeInterpolator;
import android.content.Context;
@@ -24,11 +24,11 @@ import android.util.AttributeSet;
import android.view.View;
import android.view.animation.AnimationUtils;
import com.codemx.launcher3.dragndrop.DragLayer;
import com.codemx.launcher3.dragndrop.DragOptions;
import com.codemx.launcher3.folder.Folder;
import com.codemx.launcher3.util.FlingAnimation;
import com.codemx.launcher3.util.Thunk;
import com.android.launcher3.dragndrop.DragLayer;
import com.android.launcher3.dragndrop.DragOptions;
import com.android.launcher3.folder.Folder;
import com.android.launcher3.util.FlingAnimation;
import com.android.launcher3.util.Thunk;
public class DeleteDropTarget extends ButtonDropTarget {
@@ -14,7 +14,7 @@
* limitations under the License.
*/
package com.codemx.launcher3;
package com.android.launcher3;
import android.appwidget.AppWidgetHostView;
import android.content.ComponentName;
@@ -29,7 +29,7 @@ import android.view.ViewGroup;
import android.view.ViewGroup.LayoutParams;
import android.widget.FrameLayout;
import com.codemx.launcher3.config.FeatureFlags;
import com.android.launcher3.config.FeatureFlags;
import java.util.ArrayList;
@@ -14,11 +14,11 @@
* limitations under the License.
*/
package com.codemx.launcher3;
package com.android.launcher3;
import android.view.View;
import com.codemx.launcher3.logging.UserEventDispatcher;
import com.android.launcher3.logging.UserEventDispatcher;
/**
* Interface defining an object that can originate a drag.
@@ -14,14 +14,14 @@
* limitations under the License.
*/
package com.codemx.launcher3;
package com.android.launcher3;
import com.codemx.launcher3.dragndrop.DragView;
import com.android.launcher3.dragndrop.DragView;
import android.graphics.PointF;
import android.graphics.Rect;
import com.codemx.launcher3.accessibility.DragViewStateAnnouncer;
import com.android.launcher3.accessibility.DragViewStateAnnouncer;
/**
* Interface defining an object that can receive a drag.
@@ -14,7 +14,7 @@
* limitations under the License.
*/
package com.codemx.launcher3;
package com.android.launcher3;
import android.animation.TimeInterpolator;
import android.content.Context;
@@ -26,8 +26,8 @@ import android.view.accessibility.AccessibilityManager;
import android.view.animation.AccelerateInterpolator;
import android.widget.LinearLayout;
import com.codemx.launcher3.dragndrop.DragController;
import com.codemx.launcher3.dragndrop.DragOptions;
import com.android.launcher3.dragndrop.DragController;
import com.android.launcher3.dragndrop.DragOptions;
/*
* The top bar containing various drop targets: Delete/App Info/Uninstall.
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package com.codemx.launcher3;
package com.android.launcher3;
import android.content.Context;
import android.util.AttributeSet;
@@ -14,7 +14,7 @@
* limitations under the License.
*/
package com.codemx.launcher3;
package com.android.launcher3;
import android.animation.AnimatorSet;
import android.animation.ObjectAnimator;
@@ -14,7 +14,7 @@
* limitations under the License.
*/
package com.codemx.launcher3;
package com.android.launcher3;
import android.animation.Animator;
import android.animation.AnimatorListenerAdapter;
@@ -24,7 +24,7 @@ import android.view.View;
import android.view.ViewPropertyAnimator;
import android.view.ViewTreeObserver;
import com.codemx.launcher3.util.Thunk;
import com.android.launcher3.util.Thunk;
/*
* This is a helper class that listens to updates from the corresponding animation.
@@ -14,7 +14,7 @@
* limitations under the License.
*/
package com.codemx.launcher3;
package com.android.launcher3;
import android.util.Log;
import android.view.KeyEvent;
@@ -22,11 +22,11 @@ import android.view.SoundEffectConstants;
import android.view.View;
import android.view.ViewGroup;
import com.codemx.launcher3.config.ProviderConfig;
import com.codemx.launcher3.folder.Folder;
import com.codemx.launcher3.folder.FolderPagedView;
import com.codemx.launcher3.util.FocusLogic;
import com.codemx.launcher3.util.Thunk;
import com.android.launcher3.config.ProviderConfig;
import com.android.launcher3.folder.Folder;
import com.android.launcher3.folder.FolderPagedView;
import com.android.launcher3.util.FocusLogic;
import com.android.launcher3.util.Thunk;
/**
* A keyboard listener we set on all the workspace icons.
@@ -14,12 +14,12 @@
* limitations under the License.
*/
package com.codemx.launcher3;
package com.android.launcher3;
import android.content.ContentValues;
import android.content.Context;
import com.codemx.launcher3.compat.UserHandleCompat;
import com.android.launcher3.compat.UserHandleCompat;
import java.util.ArrayList;
@@ -14,7 +14,7 @@
* limitations under the License.
*/
package com.codemx.launcher3;
package com.android.launcher3;
import android.content.Context;
import android.content.res.Resources;
@@ -29,7 +29,7 @@ import android.graphics.Rect;
import android.graphics.drawable.Drawable;
import android.util.SparseArray;
import com.codemx.launcher3.config.ProviderConfig;
import com.android.launcher3.config.ProviderConfig;
import java.nio.ByteBuffer;
@@ -14,7 +14,7 @@
* limitations under the License.
*/
package com.codemx.launcher3;
package com.android.launcher3;
import android.animation.Animator;
import android.animation.AnimatorListenerAdapter;
@@ -35,11 +35,11 @@ import android.view.ViewDebug;
import android.widget.FrameLayout;
import android.widget.TextView;
import com.codemx.launcher3.config.FeatureFlags;
import com.codemx.launcher3.dynamicui.ExtractedColors;
import com.codemx.launcher3.logging.UserEventDispatcher;
import com.codemx.launcher3.userevent.nano.LauncherLogProto;
import com.codemx.launcher3.userevent.nano.LauncherLogProto.Target;
import com.android.launcher3.config.FeatureFlags;
import com.android.launcher3.dynamicui.ExtractedColors;
import com.android.launcher3.logging.UserEventDispatcher;
import com.android.launcher3.userevent.nano.LauncherLogProto;
import com.android.launcher3.userevent.nano.LauncherLogProto.Target;
public class Hotseat extends FrameLayout
implements UserEventDispatcher.LaunchSourceProvider {
@@ -14,7 +14,7 @@
* limitations under the License.
*/
package com.codemx.launcher3;
package com.android.launcher3;
import android.content.ComponentName;
import android.content.ContentValues;
@@ -42,15 +42,15 @@ import android.os.SystemClock;
import android.text.TextUtils;
import android.util.Log;
import com.codemx.launcher3.compat.LauncherActivityInfoCompat;
import com.codemx.launcher3.compat.LauncherAppsCompat;
import com.codemx.launcher3.compat.UserHandleCompat;
import com.codemx.launcher3.compat.UserManagerCompat;
import com.codemx.launcher3.config.FeatureFlags;
import com.codemx.launcher3.model.PackageItemInfo;
import com.codemx.launcher3.util.ComponentKey;
import com.codemx.launcher3.util.SQLiteCacheHelper;
import com.codemx.launcher3.util.Thunk;
import com.android.launcher3.compat.LauncherActivityInfoCompat;
import com.android.launcher3.compat.LauncherAppsCompat;
import com.android.launcher3.compat.UserHandleCompat;
import com.android.launcher3.compat.UserManagerCompat;
import com.android.launcher3.config.FeatureFlags;
import com.android.launcher3.model.PackageItemInfo;
import com.android.launcher3.util.ComponentKey;
import com.android.launcher3.util.SQLiteCacheHelper;
import com.android.launcher3.util.Thunk;
import java.util.Collections;
import java.util.HashMap;
@@ -79,7 +79,8 @@ public class IconCache {
@Thunk
static final Object ICON_UPDATE_TOKEN = new Object();
@Thunk static class CacheEntry {
@Thunk
static class CacheEntry {
public Bitmap icon;
public CharSequence title = "";
public CharSequence contentDescription = "";
@@ -87,19 +88,23 @@ public class IconCache {
}
private final HashMap<UserHandleCompat, Bitmap> mDefaultIcons = new HashMap<>();
@Thunk final MainThreadExecutor mMainThreadExecutor = new MainThreadExecutor();
@Thunk
final MainThreadExecutor mMainThreadExecutor = new MainThreadExecutor();
private final Context mContext;
private final PackageManager mPackageManager;
private IconProvider mIconProvider;
@Thunk final UserManagerCompat mUserManager;
@Thunk
final UserManagerCompat mUserManager;
private final LauncherAppsCompat mLauncherApps;
private final HashMap<ComponentKey, CacheEntry> mCache =
new HashMap<ComponentKey, CacheEntry>(INITIAL_ICON_CACHE_CAPACITY);
private final int mIconDpi;
@Thunk final IconDB mIconDb;
@Thunk
final IconDB mIconDb;
@Thunk final Handler mWorkerHandler;
@Thunk
final Handler mWorkerHandler;
// The background color used for activity icons. Since these icons are displayed in all-apps
// and folders, this would be same as the light quantum panel background. This color
@@ -203,13 +208,13 @@ public class IconCache {
*/
private void removeFromMemCacheLocked(String packageName, UserHandleCompat user) {
HashSet<ComponentKey> forDeletion = new HashSet<ComponentKey>();
for (ComponentKey key: mCache.keySet()) {
for (ComponentKey key : mCache.keySet()) {
if (key.componentName.getPackageName().equals(packageName)
&& key.user.equals(user)) {
forDeletion.add(key);
}
}
for (ComponentKey condemned: forDeletion) {
for (ComponentKey condemned : forDeletion) {
mCache.remove(condemned);
}
}
@@ -267,10 +272,11 @@ public class IconCache {
/**
* Updates the persistent DB, such that only entries corresponding to {@param apps} remain in
* the DB and are updated.
*
* @return The set of packages for which icons have updated.
*/
private void updateDBIcons(UserHandleCompat user, List<LauncherActivityInfoCompat> apps,
Set<String> ignorePackages) {
Set<String> ignorePackages) {
long userSerial = mUserManager.getSerialNumberForUser(user);
PackageManager pm = mContext.getPackageManager();
HashMap<String, PackageInfo> pkgInfoMap = new HashMap<String, PackageInfo>();
@@ -354,8 +360,9 @@ public class IconCache {
}
}
@Thunk void addIconToDBAndMemCache(LauncherActivityInfoCompat app, PackageInfo info,
long userSerial) {
@Thunk
void addIconToDBAndMemCache(LauncherActivityInfoCompat app, PackageInfo info,
long userSerial) {
// Reuse the existing entry if it already exists in the DB. This ensures that we do not
// create bitmap if it was already created during loader.
ContentValues values = updateCacheAndGetContentValues(app, false);
@@ -364,10 +371,11 @@ public class IconCache {
/**
* Updates {@param values} to contain versoning information and adds it to the DB.
*
* @param values {@link ContentValues} containing icon & title
*/
private void addIconToDB(ContentValues values, ComponentName key,
PackageInfo info, long userSerial) {
PackageInfo info, long userSerial) {
values.put(IconDB.COLUMN_COMPONENT, key.flattenToString());
values.put(IconDB.COLUMN_USER, userSerial);
values.put(IconDB.COLUMN_LAST_UPDATED, info.lastUpdateTime);
@@ -375,8 +383,9 @@ public class IconCache {
mIconDb.insertOrReplace(values);
}
@Thunk ContentValues updateCacheAndGetContentValues(LauncherActivityInfoCompat app,
boolean replaceExisting) {
@Thunk
ContentValues updateCacheAndGetContentValues(LauncherActivityInfoCompat app,
boolean replaceExisting) {
final ComponentKey key = new ComponentKey(app.getComponentName(), app.getUser());
CacheEntry entry = null;
if (!replaceExisting) {
@@ -403,6 +412,7 @@ public class IconCache {
/**
* Fetches high-res icon for the provided ItemInfo and updates the caller when done.
*
* @return a request ID that can be used to cancel the request.
*/
public IconLoadRequest updateIconInBackground(final BubbleTextView caller, final ItemInfo info) {
@@ -442,7 +452,7 @@ public class IconCache {
* Fill in "application" with the icon and label for "info."
*/
public synchronized void getTitleAndIcon(AppInfo application,
LauncherActivityInfoCompat info, boolean useLowResIcon) {
LauncherActivityInfoCompat info, boolean useLowResIcon) {
UserHandleCompat user = info == null ? application.user : info.getUser();
CacheEntry entry = cacheLocked(application.componentName, info, user,
false, useLowResIcon);
@@ -487,7 +497,7 @@ public class IconCache {
* corresponding activity is not found, it reverts to the package icon.
*/
public synchronized void getTitleAndIcon(ShortcutInfo shortcutInfo, Intent intent,
UserHandleCompat user, boolean useLowResIcon) {
UserHandleCompat user, boolean useLowResIcon) {
ComponentName component = intent.getComponent();
// null info means not installed, but if we have a component from the intent then
// we should still look in the cache for restored app icons.
@@ -544,9 +554,17 @@ public class IconCache {
/**
* Retrieves the entry from the cache. If the entry is not present, it creates a new entry.
* This method is not thread safe, it must be called from a synchronized method.
*
* @param componentName 组件,包含:包名,类名
* @param info APK第一次启动的Activity的对象
* @param user 设备上的一个用户对象
* @param usePackageIcon 是否使用包的Icon
* @param useLowResIcon 是否使用低分辨率的Icon
*
* @return
*/
private CacheEntry cacheLocked(ComponentName componentName, LauncherActivityInfoCompat info,
UserHandleCompat user, boolean usePackageIcon, boolean useLowResIcon) {
UserHandleCompat user, boolean usePackageIcon, boolean useLowResIcon) {
ComponentKey cacheKey = new ComponentKey(componentName, user);
CacheEntry entry = mCache.get(cacheKey);
if (entry == null || (entry.isLowResIcon && !useLowResIcon)) {
@@ -592,7 +610,7 @@ public class IconCache {
* when the cache is flushed.
*/
public synchronized void cachePackageInstallInfo(String packageName, UserHandleCompat user,
Bitmap icon, CharSequence title) {
Bitmap icon, CharSequence title) {
removeFromMemCacheLocked(packageName, user);
ComponentKey cacheKey = getPackageKey(packageName, user);
@@ -617,11 +635,11 @@ public class IconCache {
}
/**
* Gets an entry for the package, which can be used as a fallback entry for various components.
* Gets an entry for the package, which can be used as a fallback(回退) entry for various components.
* This method is not thread safe, it must be called from a synchronized method.
*/
private CacheEntry getEntryForPackageLocked(String packageName, UserHandleCompat user,
boolean useLowResIcon) {
boolean useLowResIcon) {
ComponentKey cacheKey = getPackageKey(packageName, user);
CacheEntry entry = mCache.get(cacheKey);
@@ -633,7 +651,7 @@ public class IconCache {
if (!getEntryFromDB(cacheKey, entry, useLowResIcon)) {
try {
int flags = UserHandleCompat.myUserHandle().equals(user) ? 0 :
PackageManager.GET_UNINSTALLED_PACKAGES;
PackageManager.GET_UNINSTALLED_PACKAGES;
PackageInfo info = mPackageManager.getPackageInfo(packageName, flags);
ApplicationInfo appInfo = info.applicationInfo;
if (appInfo == null) {
@@ -644,7 +662,7 @@ public class IconCache {
// only keep the low resolution icon instead of the larger full-sized icon
Bitmap icon = Utilities.createBadgedIconBitmap(
appInfo.loadIcon(mPackageManager), user, mContext);
Bitmap lowResIcon = generateLowResIcon(icon, mPackageBgColor);
Bitmap lowResIcon = generateLowResIcon(icon, mPackageBgColor);
entry.title = appInfo.loadLabel(mPackageManager);
entry.contentDescription = mUserManager.getBadgedLabelForUser(entry.title, user);
entry.icon = useLowResIcon ? lowResIcon : icon;
@@ -673,16 +691,16 @@ public class IconCache {
/**
* Pre-load an icon into the persistent cache.
*
* <p>
* <P>Queries for a component that does not exist in the package manager
* will be answered by the persistent cache.
*
* @param componentName the icon should be returned for this component
* @param icon the icon to be persisted
* @param dpi the native density of the icon
* @param icon the icon to be persisted
* @param dpi the native density of the icon
*/
public void preloadIcon(ComponentName componentName, Bitmap icon, int dpi, String label,
long userSerial, InvariantDeviceProfile idp) {
long userSerial, InvariantDeviceProfile idp) {
// TODO rescale to the correct native DPI
try {
PackageManager packageManager = mContext.getPackageManager();
@@ -702,15 +720,24 @@ public class IconCache {
mIconDb.insertOrReplace(values);
}
/**
* 从数据库获取Shortcut的信息:包含描述,名称,icon
*
* @param cacheKey 缓存的key
* @param entry 缓存条目
* @param lowRes 是否是低分辨率资源
*
* @return 数据库中是否存在该图标,如果存在则添加到传入参数entry中
*/
private boolean getEntryFromDB(ComponentKey cacheKey, CacheEntry entry, boolean lowRes) {
Cursor c = null;
try {
c = mIconDb.query(
new String[]{lowRes ? IconDB.COLUMN_ICON_LOW_RES : IconDB.COLUMN_ICON,
IconDB.COLUMN_LABEL},
IconDB.COLUMN_COMPONENT + " = ? AND " + IconDB.COLUMN_USER + " = ?",
new String[]{cacheKey.componentName.flattenToString(),
Long.toString(mUserManager.getSerialNumberForUser(cacheKey.user))});
new String[]{lowRes ? IconDB.COLUMN_ICON_LOW_RES : IconDB.COLUMN_ICON,
IconDB.COLUMN_LABEL},
IconDB.COLUMN_COMPONENT + " = ? AND " + IconDB.COLUMN_USER + " = ?",
new String[]{cacheKey.componentName.flattenToString(),
Long.toString(mUserManager.getSerialNumberForUser(cacheKey.user))});
if (c.moveToNext()) {
entry.icon = loadIconNoResize(c, 0, lowRes ? mLowResOptions : null);
entry.isLowResIcon = lowRes;
@@ -753,16 +780,18 @@ public class IconCache {
* LauncherActivityInfoCompat list. Items are updated/added one at a time, so that the
* worker thread doesn't get blocked.
*/
@Thunk class SerializedIconUpdateTask implements Runnable {
@Thunk
class SerializedIconUpdateTask implements Runnable {
private final long mUserSerial;
private final HashMap<String, PackageInfo> mPkgInfoMap;
private final Stack<LauncherActivityInfoCompat> mAppsToAdd;
private final Stack<LauncherActivityInfoCompat> mAppsToUpdate;
private final HashSet<String> mUpdatedPackages = new HashSet<String>();
@Thunk SerializedIconUpdateTask(long userSerial, HashMap<String, PackageInfo> pkgInfoMap,
Stack<LauncherActivityInfoCompat> appsToAdd,
Stack<LauncherActivityInfoCompat> appsToUpdate) {
@Thunk
SerializedIconUpdateTask(long userSerial, HashMap<String, PackageInfo> pkgInfoMap,
Stack<LauncherActivityInfoCompat> appsToAdd,
Stack<LauncherActivityInfoCompat> appsToUpdate) {
mUserSerial = userSerial;
mPkgInfoMap = pkgInfoMap;
mAppsToAdd = appsToAdd;
@@ -850,7 +879,7 @@ public class IconCache {
}
private ContentValues newContentValues(Bitmap icon, Bitmap lowResIcon, String label,
String packageName) {
String packageName) {
ContentValues values = new ContentValues();
values.put(IconDB.COLUMN_ICON, Utilities.flattenBitmap(icon));
values.put(IconDB.COLUMN_ICON_LOW_RES, Utilities.flattenBitmap(lowResIcon));
@@ -867,8 +896,8 @@ public class IconCache {
private Bitmap generateLowResIcon(Bitmap icon, int lowResBackgroundColor) {
if (lowResBackgroundColor == Color.TRANSPARENT) {
return Bitmap.createScaledBitmap(icon,
icon.getWidth() / LOW_RES_SCALE_FACTOR,
icon.getHeight() / LOW_RES_SCALE_FACTOR, true);
icon.getWidth() / LOW_RES_SCALE_FACTOR,
icon.getHeight() / LOW_RES_SCALE_FACTOR, true);
} else {
Bitmap lowResIcon = Bitmap.createBitmap(icon.getWidth() / LOW_RES_SCALE_FACTOR,
icon.getHeight() / LOW_RES_SCALE_FACTOR, Bitmap.Config.RGB_565);
@@ -1,11 +1,11 @@
package com.codemx.launcher3;
package com.android.launcher3;
import android.content.Context;
import android.graphics.drawable.Drawable;
import android.text.TextUtils;
import android.util.Log;
import com.codemx.launcher3.compat.LauncherActivityInfoCompat;
import com.android.launcher3.compat.LauncherActivityInfoCompat;
import java.lang.reflect.InvocationTargetException;
import java.util.Locale;
@@ -14,7 +14,7 @@
* limitations under the License.
*/
package com.codemx.launcher3;
package com.android.launcher3;
import android.content.ActivityNotFoundException;
import android.content.ComponentName;
@@ -25,7 +25,7 @@ import android.util.AttributeSet;
import android.util.Log;
import android.widget.Toast;
import com.codemx.launcher3.compat.LauncherAppsCompat;
import com.android.launcher3.compat.LauncherAppsCompat;
public class InfoDropTarget extends UninstallDropTarget {
@@ -14,7 +14,7 @@
* limitations under the License.
*/
package com.codemx.launcher3;
package com.android.launcher3;
import android.graphics.Rect;
@@ -1,4 +1,4 @@
package com.codemx.launcher3;
package com.android.launcher3;
import android.content.Context;
import android.content.res.TypedArray;
@@ -14,7 +14,7 @@
* limitations under the License.
*/
package com.codemx.launcher3;
package com.android.launcher3;
import android.content.BroadcastReceiver;
import android.content.Context;
@@ -29,12 +29,12 @@ import android.text.TextUtils;
import android.util.Base64;
import android.util.Log;
import com.codemx.launcher3.compat.LauncherActivityInfoCompat;
import com.codemx.launcher3.compat.LauncherAppsCompat;
import com.codemx.launcher3.compat.UserHandleCompat;
import com.codemx.launcher3.compat.UserManagerCompat;
import com.codemx.launcher3.util.PackageManagerHelper;
import com.codemx.launcher3.util.Thunk;
import com.android.launcher3.compat.LauncherActivityInfoCompat;
import com.android.launcher3.compat.LauncherAppsCompat;
import com.android.launcher3.compat.UserHandleCompat;
import com.android.launcher3.compat.UserManagerCompat;
import com.android.launcher3.util.PackageManagerHelper;
import com.android.launcher3.util.Thunk;
import org.json.JSONException;
import org.json.JSONObject;
@@ -14,14 +14,14 @@
* limitations under the License.
*/
package com.codemx.launcher3;
package com.android.launcher3;
import android.animation.Animator;
import android.animation.AnimatorListenerAdapter;
import android.animation.ValueAnimator;
import android.view.View;
import com.codemx.launcher3.util.Thunk;
import com.android.launcher3.util.Thunk;
/**
* A convenience class for two-way animations, e.g. a fadeIn/fadeOut animation.
@@ -14,7 +14,7 @@
* limitations under the License.
*/
package com.codemx.launcher3;
package com.android.launcher3;
import android.annotation.TargetApi;
import android.content.Context;
@@ -26,9 +26,9 @@ import android.util.Xml;
import android.view.Display;
import android.view.WindowManager;
import com.codemx.launcher3.config.FeatureFlags;
import com.codemx.launcher3.config.ProviderConfig;
import com.codemx.launcher3.util.Thunk;
import com.android.launcher3.config.FeatureFlags;
import com.android.launcher3.config.ProviderConfig;
import com.android.launcher3.util.Thunk;
import org.xmlpull.v1.XmlPullParser;
import org.xmlpull.v1.XmlPullParserException;
@@ -14,7 +14,7 @@
* limitations under the License.
*/
package com.codemx.launcher3;
package com.android.launcher3;
import android.content.ComponentName;
import android.content.ContentValues;
@@ -22,8 +22,8 @@ import android.content.Context;
import android.content.Intent;
import android.graphics.Bitmap;
import com.codemx.launcher3.compat.UserHandleCompat;
import com.codemx.launcher3.compat.UserManagerCompat;
import com.android.launcher3.compat.UserHandleCompat;
import com.android.launcher3.compat.UserManagerCompat;
/**
* Represents an item in the launcher.
@@ -14,7 +14,7 @@
* limitations under the License.
*/
package com.codemx.launcher3;
package com.android.launcher3;
import android.Manifest;
import android.animation.Animator;
@@ -86,45 +86,45 @@ import android.widget.ImageView;
import android.widget.TextView;
import android.widget.Toast;
import com.codemx.launcher3.accessibility.LauncherAccessibilityDelegate;
import com.codemx.launcher3.allapps.AllAppsContainerView;
import com.codemx.launcher3.allapps.AllAppsTransitionController;
import com.codemx.launcher3.allapps.DefaultAppSearchController;
import com.codemx.launcher3.compat.AppWidgetManagerCompat;
import com.codemx.launcher3.compat.LauncherActivityInfoCompat;
import com.codemx.launcher3.compat.LauncherAppsCompat;
import com.codemx.launcher3.compat.UserHandleCompat;
import com.codemx.launcher3.compat.UserManagerCompat;
import com.codemx.launcher3.config.FeatureFlags;
import com.codemx.launcher3.config.ProviderConfig;
import com.codemx.launcher3.dragndrop.DragController;
import com.codemx.launcher3.dragndrop.DragLayer;
import com.codemx.launcher3.dragndrop.DragOptions;
import com.codemx.launcher3.dragndrop.DragView;
import com.codemx.launcher3.dynamicui.ExtractedColors;
import com.codemx.launcher3.folder.Folder;
import com.codemx.launcher3.folder.FolderIcon;
import com.codemx.launcher3.keyboard.ViewGroupFocusHelper;
import com.codemx.launcher3.logging.FileLog;
import com.codemx.launcher3.logging.UserEventDispatcher;
import com.codemx.launcher3.model.WidgetsModel;
import com.codemx.launcher3.pageindicators.PageIndicator;
import com.codemx.launcher3.shortcuts.DeepShortcutManager;
import com.codemx.launcher3.shortcuts.DeepShortcutsContainer;
import com.codemx.launcher3.shortcuts.ShortcutKey;
import com.codemx.launcher3.userevent.nano.LauncherLogProto;
import com.codemx.launcher3.util.ActivityResultInfo;
import com.codemx.launcher3.util.ComponentKey;
import com.codemx.launcher3.util.ItemInfoMatcher;
import com.codemx.launcher3.util.MultiHashMap;
import com.codemx.launcher3.util.PackageManagerHelper;
import com.codemx.launcher3.util.PendingRequestArgs;
import com.codemx.launcher3.util.TestingUtils;
import com.codemx.launcher3.util.Thunk;
import com.codemx.launcher3.util.ViewOnDrawExecutor;
import com.codemx.launcher3.widget.PendingAddWidgetInfo;
import com.codemx.launcher3.widget.WidgetHostViewLoader;
import com.codemx.launcher3.widget.WidgetsContainerView;
import com.android.launcher3.accessibility.LauncherAccessibilityDelegate;
import com.android.launcher3.allapps.AllAppsContainerView;
import com.android.launcher3.allapps.AllAppsTransitionController;
import com.android.launcher3.allapps.DefaultAppSearchController;
import com.android.launcher3.compat.AppWidgetManagerCompat;
import com.android.launcher3.compat.LauncherActivityInfoCompat;
import com.android.launcher3.compat.LauncherAppsCompat;
import com.android.launcher3.compat.UserHandleCompat;
import com.android.launcher3.compat.UserManagerCompat;
import com.android.launcher3.config.FeatureFlags;
import com.android.launcher3.config.ProviderConfig;
import com.android.launcher3.dragndrop.DragController;
import com.android.launcher3.dragndrop.DragLayer;
import com.android.launcher3.dragndrop.DragOptions;
import com.android.launcher3.dragndrop.DragView;
import com.android.launcher3.dynamicui.ExtractedColors;
import com.android.launcher3.folder.Folder;
import com.android.launcher3.folder.FolderIcon;
import com.android.launcher3.keyboard.ViewGroupFocusHelper;
import com.android.launcher3.logging.FileLog;
import com.android.launcher3.logging.UserEventDispatcher;
import com.android.launcher3.model.WidgetsModel;
import com.android.launcher3.pageindicators.PageIndicator;
import com.android.launcher3.shortcuts.DeepShortcutManager;
import com.android.launcher3.shortcuts.DeepShortcutsContainer;
import com.android.launcher3.shortcuts.ShortcutKey;
import com.android.launcher3.userevent.nano.LauncherLogProto;
import com.android.launcher3.util.ActivityResultInfo;
import com.android.launcher3.util.ComponentKey;
import com.android.launcher3.util.ItemInfoMatcher;
import com.android.launcher3.util.MultiHashMap;
import com.android.launcher3.util.PackageManagerHelper;
import com.android.launcher3.util.PendingRequestArgs;
import com.android.launcher3.util.TestingUtils;
import com.android.launcher3.util.Thunk;
import com.android.launcher3.util.ViewOnDrawExecutor;
import com.android.launcher3.widget.PendingAddWidgetInfo;
import com.android.launcher3.widget.WidgetHostViewLoader;
import com.android.launcher3.widget.WidgetsContainerView;
import java.io.FileDescriptor;
import java.io.PrintWriter;
@@ -174,10 +174,10 @@ public class Launcher extends Activity
// The Intent extra that defines whether to ignore the launch animation
static final String INTENT_EXTRA_IGNORE_LAUNCH_ANIMATION =
"com.codemx.launcher3.intent.extra.shortcut.INGORE_LAUNCH_ANIMATION";
"com.android.launcher3.intent.extra.shortcut.INGORE_LAUNCH_ANIMATION";
public static final String ACTION_APPWIDGET_HOST_RESET =
"com.codemx.launcher3.intent.ACTION_APPWIDGET_HOST_RESET";
"com.android.launcher3.intent.ACTION_APPWIDGET_HOST_RESET";
// Type: int
private static final String RUNTIME_STATE_CURRENT_SCREEN = "launcher.current_screen";
@@ -4501,4 +4501,20 @@ public class Launcher extends Activity
setOrientation();
}
}
public void changeBackgroundAlpha(float alpha) {
View currentPage = null;
if (mWorkspace != null) {
currentPage = mWorkspace.getPageAt(mWorkspace.getCurrentPage());
}
if (currentPage != null) {
currentPage.setAlpha(alpha);
}
if (mHotseat != null) {
mHotseat.setAlpha(alpha);
}
// if (mPageIndicators != null) {
// mPageIndicators.setAlpha(alpha);
// }
}
}
@@ -14,7 +14,7 @@
* limitations under the License.
*/
package com.codemx.launcher3;
package com.android.launcher3;
import android.animation.Animator;
import android.animation.AnimatorSet;
@@ -14,7 +14,7 @@
* limitations under the License.
*/
package com.codemx.launcher3;
package com.android.launcher3;
import android.content.BroadcastReceiver;
import android.content.Context;
@@ -22,17 +22,17 @@ import android.content.Intent;
import android.content.IntentFilter;
import android.util.Log;
import com.codemx.launcher3.compat.LauncherAppsCompat;
import com.codemx.launcher3.compat.PackageInstallerCompat;
import com.codemx.launcher3.compat.UserManagerCompat;
import com.codemx.launcher3.config.ProviderConfig;
import com.codemx.launcher3.dynamicui.ExtractionUtils;
import com.codemx.launcher3.logging.FileLog;
import com.codemx.launcher3.shortcuts.DeepShortcutManager;
import com.codemx.launcher3.shortcuts.ShortcutCache;
import com.codemx.launcher3.util.ConfigMonitor;
import com.codemx.launcher3.util.TestingUtils;
import com.codemx.launcher3.util.Thunk;
import com.android.launcher3.compat.LauncherAppsCompat;
import com.android.launcher3.compat.PackageInstallerCompat;
import com.android.launcher3.compat.UserManagerCompat;
import com.android.launcher3.config.ProviderConfig;
import com.android.launcher3.dynamicui.ExtractionUtils;
import com.android.launcher3.logging.FileLog;
import com.android.launcher3.shortcuts.DeepShortcutManager;
import com.android.launcher3.shortcuts.ShortcutCache;
import com.android.launcher3.util.ConfigMonitor;
import com.android.launcher3.util.TestingUtils;
import com.android.launcher3.util.Thunk;
import java.lang.ref.WeakReference;
@@ -14,7 +14,7 @@
* limitations under the License.
*/
package com.codemx.launcher3;
package com.android.launcher3;
import android.appwidget.AppWidgetHost;
import android.appwidget.AppWidgetHostView;
@@ -14,7 +14,7 @@
* limitations under the License.
*/
package com.codemx.launcher3;
package com.android.launcher3;
import android.appwidget.AppWidgetHostView;
import android.appwidget.AppWidgetProviderInfo;
@@ -30,7 +30,7 @@ import android.view.ViewGroup;
import android.view.accessibility.AccessibilityNodeInfo;
import android.widget.RemoteViews;
import com.codemx.launcher3.dragndrop.DragLayer.TouchCompleteListener;
import com.android.launcher3.dragndrop.DragLayer.TouchCompleteListener;
import java.util.ArrayList;
@@ -14,7 +14,7 @@
* limitations under the License.
*/
package com.codemx.launcher3;
package com.android.launcher3;
import android.appwidget.AppWidgetHostView;
import android.content.ComponentName;
@@ -22,7 +22,7 @@ import android.content.ContentValues;
import android.content.Context;
import android.content.Intent;
import com.codemx.launcher3.compat.UserHandleCompat;
import com.android.launcher3.compat.UserHandleCompat;
/**
* Represents a widget (either instantiated or about to be) in the Launcher.
@@ -1,4 +1,4 @@
package com.codemx.launcher3;
package com.android.launcher3;
import android.annotation.TargetApi;
import android.appwidget.AppWidgetHostView;
@@ -1,11 +1,11 @@
package com.codemx.launcher3;
package com.android.launcher3;
import android.app.backup.BackupAgent;
import android.app.backup.BackupDataInput;
import android.app.backup.BackupDataOutput;
import android.os.ParcelFileDescriptor;
import com.codemx.launcher3.provider.RestoreDbTask;
import com.android.launcher3.provider.RestoreDbTask;
public class LauncherBackupAgent extends BackupAgent {
@@ -14,16 +14,16 @@
* limitations under the License.
*/
package com.codemx.launcher3;
package com.android.launcher3;
import android.content.Intent;
import android.os.Bundle;
import android.view.Menu;
import android.view.View;
import com.codemx.launcher3.allapps.AllAppsSearchBarController;
import com.codemx.launcher3.logging.UserEventDispatcher;
import com.codemx.launcher3.util.ComponentKey;
import com.android.launcher3.allapps.AllAppsSearchBarController;
import com.android.launcher3.logging.UserEventDispatcher;
import com.android.launcher3.util.ComponentKey;
import java.io.FileDescriptor;
import java.io.PrintWriter;
@@ -14,7 +14,7 @@
* limitations under the License.
*/
package com.codemx.launcher3;
package com.android.launcher3;
import android.content.Context;
@@ -14,13 +14,13 @@
* limitations under the License.
*/
package com.codemx.launcher3;
package com.android.launcher3;
import android.content.SharedPreferences;
/**
* This interface defines the set of methods that the Launcher activity exposes. Methods
* here should be safe to call from classes outside of com.codemx.launcher3.*
* here should be safe to call from classes outside of com.android.launcher3.*
*/
public interface LauncherExterns {
@@ -1,4 +1,4 @@
package com.codemx.launcher3;
package com.android.launcher3;
import java.util.Arrays;
import java.util.Collections;
@@ -15,10 +15,10 @@ public class LauncherFiles {
private static final String XML = ".xml";
public static final String LAUNCHER_DB = "launcher.db";
public static final String SHARED_PREFERENCES_KEY = "com.codemx.launcher3.prefs";
public static final String MANAGED_USER_PREFERENCES_KEY = "com.codemx.launcher3.managedusers.prefs";
public static final String SHARED_PREFERENCES_KEY = "com.android.launcher3.prefs";
public static final String MANAGED_USER_PREFERENCES_KEY = "com.android.launcher3.managedusers.prefs";
// This preference file is not backed up to cloud.
public static final String DEVICE_PREFERENCES_KEY = "com.codemx.launcher3.device.prefs";
public static final String DEVICE_PREFERENCES_KEY = "com.android.launcher3.device.prefs";
public static final String WIDGET_PREVIEWS_DB = "widgetpreviews.db";
public static final String APP_ICONS_DB = "app_icons.db";
@@ -14,7 +14,7 @@
* limitations under the License.
*/
package com.codemx.launcher3;
package com.android.launcher3;
import android.appwidget.AppWidgetProviderInfo;
import android.content.BroadcastReceiver;
@@ -45,37 +45,37 @@ import android.util.LongSparseArray;
import android.util.MutableInt;
import android.util.Pair;
import com.codemx.launcher3.compat.AppWidgetManagerCompat;
import com.codemx.launcher3.compat.LauncherActivityInfoCompat;
import com.codemx.launcher3.compat.LauncherAppsCompat;
import com.codemx.launcher3.compat.PackageInstallerCompat;
import com.codemx.launcher3.compat.UserHandleCompat;
import com.codemx.launcher3.compat.UserManagerCompat;
import com.codemx.launcher3.config.FeatureFlags;
import com.codemx.launcher3.config.ProviderConfig;
import com.codemx.launcher3.dynamicui.ExtractionUtils;
import com.codemx.launcher3.folder.Folder;
import com.codemx.launcher3.folder.FolderIcon;
import com.codemx.launcher3.logging.FileLog;
import com.codemx.launcher3.model.GridSizeMigrationTask;
import com.codemx.launcher3.model.WidgetsModel;
import com.codemx.launcher3.provider.ImportDataTask;
import com.codemx.launcher3.provider.LauncherDbUtils;
import com.codemx.launcher3.shortcuts.DeepShortcutManager;
import com.codemx.launcher3.shortcuts.ShortcutInfoCompat;
import com.codemx.launcher3.shortcuts.ShortcutKey;
import com.codemx.launcher3.util.ComponentKey;
import com.codemx.launcher3.util.CursorIconInfo;
import com.codemx.launcher3.util.FlagOp;
import com.codemx.launcher3.util.GridOccupancy;
import com.codemx.launcher3.util.LongArrayMap;
import com.codemx.launcher3.util.ManagedProfileHeuristic;
import com.codemx.launcher3.util.MultiHashMap;
import com.codemx.launcher3.util.PackageManagerHelper;
import com.codemx.launcher3.util.Preconditions;
import com.codemx.launcher3.util.StringFilter;
import com.codemx.launcher3.util.Thunk;
import com.codemx.launcher3.util.ViewOnDrawExecutor;
import com.android.launcher3.compat.AppWidgetManagerCompat;
import com.android.launcher3.compat.LauncherActivityInfoCompat;
import com.android.launcher3.compat.LauncherAppsCompat;
import com.android.launcher3.compat.PackageInstallerCompat;
import com.android.launcher3.compat.UserHandleCompat;
import com.android.launcher3.compat.UserManagerCompat;
import com.android.launcher3.config.FeatureFlags;
import com.android.launcher3.config.ProviderConfig;
import com.android.launcher3.dynamicui.ExtractionUtils;
import com.android.launcher3.folder.Folder;
import com.android.launcher3.folder.FolderIcon;
import com.android.launcher3.logging.FileLog;
import com.android.launcher3.model.GridSizeMigrationTask;
import com.android.launcher3.model.WidgetsModel;
import com.android.launcher3.provider.ImportDataTask;
import com.android.launcher3.provider.LauncherDbUtils;
import com.android.launcher3.shortcuts.DeepShortcutManager;
import com.android.launcher3.shortcuts.ShortcutInfoCompat;
import com.android.launcher3.shortcuts.ShortcutKey;
import com.android.launcher3.util.ComponentKey;
import com.android.launcher3.util.CursorIconInfo;
import com.android.launcher3.util.FlagOp;
import com.android.launcher3.util.GridOccupancy;
import com.android.launcher3.util.LongArrayMap;
import com.android.launcher3.util.ManagedProfileHeuristic;
import com.android.launcher3.util.MultiHashMap;
import com.android.launcher3.util.PackageManagerHelper;
import com.android.launcher3.util.Preconditions;
import com.android.launcher3.util.StringFilter;
import com.android.launcher3.util.Thunk;
import com.android.launcher3.util.ViewOnDrawExecutor;
import java.lang.ref.WeakReference;
import java.net.URISyntaxException;
@@ -14,7 +14,7 @@
* limitations under the License.
*/
package com.codemx.launcher3;
package com.android.launcher3;
import android.annotation.TargetApi;
import android.appwidget.AppWidgetHost;
@@ -49,20 +49,20 @@ import android.os.UserManager;
import android.text.TextUtils;
import android.util.Log;
import com.codemx.launcher3.AutoInstallsLayout.LayoutParserCallback;
import com.codemx.launcher3.LauncherSettings.Favorites;
import com.codemx.launcher3.LauncherSettings.WorkspaceScreens;
import com.codemx.launcher3.compat.UserHandleCompat;
import com.codemx.launcher3.compat.UserManagerCompat;
import com.codemx.launcher3.config.FeatureFlags;
import com.codemx.launcher3.config.ProviderConfig;
import com.codemx.launcher3.dynamicui.ExtractionUtils;
import com.codemx.launcher3.provider.LauncherDbUtils;
import com.codemx.launcher3.provider.RestoreDbTask;
import com.codemx.launcher3.util.ManagedProfileHeuristic;
import com.codemx.launcher3.util.NoLocaleSqliteContext;
import com.codemx.launcher3.util.Preconditions;
import com.codemx.launcher3.util.Thunk;
import com.android.launcher3.AutoInstallsLayout.LayoutParserCallback;
import com.android.launcher3.LauncherSettings.Favorites;
import com.android.launcher3.LauncherSettings.WorkspaceScreens;
import com.android.launcher3.compat.UserHandleCompat;
import com.android.launcher3.compat.UserManagerCompat;
import com.android.launcher3.config.FeatureFlags;
import com.android.launcher3.config.ProviderConfig;
import com.android.launcher3.dynamicui.ExtractionUtils;
import com.android.launcher3.provider.LauncherDbUtils;
import com.android.launcher3.provider.RestoreDbTask;
import com.android.launcher3.util.ManagedProfileHeuristic;
import com.android.launcher3.util.NoLocaleSqliteContext;
import com.android.launcher3.util.Preconditions;
import com.android.launcher3.util.Thunk;
import java.net.URISyntaxException;
import java.util.ArrayList;
@@ -1,4 +1,4 @@
package com.codemx.launcher3;
package com.android.launcher3;
/**
* This class is a listener for {@link LauncherProvider} changes. It gets notified in the
Loaded 100 of 298 files, more files were not shown because too many files have changed in this diff. Show more