OSDN Git Service

Trebuchet: Open settings panel when clicking settings
authorcretin45 <cretin45@gmail.com>
Thu, 11 Feb 2016 18:11:22 +0000 (10:11 -0800)
committercretin45 <cretin45@gmail.com>
Thu, 11 Feb 2016 18:11:44 +0000 (10:11 -0800)
Issue-id: CYNGNOS-2002

Change-Id: I4fc2ffd17febc8f1e5fa804e6a26feaa51a29c4b

src/com/android/launcher3/Launcher.java

index 929e393..186ebee 100644 (file)
@@ -284,7 +284,7 @@ public class Launcher extends Activity
     private boolean mHiddenFolderAuth = false;
 
     @Thunk Hotseat mHotseat;
-    private ViewGroup mOverviewPanel;
+    private VerticalSlidingPanel mOverviewPanel;
     private View mDarkPanel;
     OverviewSettingsPanel mOverviewSettingsPanel;
 
@@ -1351,17 +1351,6 @@ public class Launcher extends Activity
         }
     }
 
-    protected void startSettings() {
-        Intent settings;
-        settings = new Intent(android.provider.Settings.ACTION_SETTINGS);
-        startActivity(settings);
-        LauncherApplication.getLauncherStats().sendSettingsOpenedEvent(
-                LauncherStats.ORIGIN_TREB_LONGPRESS);
-        if (mWorkspace.isInOverviewMode()) {
-            mWorkspace.exitOverviewMode();
-        }
-    }
-
     public void addToCustomContentPage(View customContent,
             CustomContentCallbacks callbacks, String description) {
         mWorkspace.addToCustomContentPage(customContent, callbacks, description);
@@ -1526,7 +1515,7 @@ public class Launcher extends Activity
         }
 
         // Setup the overview panel
-        mOverviewPanel = (ViewGroup) findViewById(R.id.overview_panel);
+        mOverviewPanel = (VerticalSlidingPanel) findViewById(R.id.overview_panel);
         mOverviewSettingsPanel = new OverviewSettingsPanel(this);
         mOverviewSettingsPanel.initializeAdapter();
 
@@ -1580,20 +1569,19 @@ public class Launcher extends Activity
         });
         defaultScreenButton.setOnTouchListener(getHapticFeedbackTouchListener());
 
-        final VerticalSlidingPanel verticalSlidingPanel = ((VerticalSlidingPanel) mOverviewPanel);
-        verticalSlidingPanel.setPanelSlideListener(new SettingsPanelSlideListener());
-        verticalSlidingPanel.setEnableDragViewTouchEvents(true);
+        mOverviewPanel.setPanelSlideListener(new SettingsPanelSlideListener());
+        mOverviewPanel.setEnableDragViewTouchEvents(true);
 
         View settingsPaneHeader = mOverviewPanel.findViewById(R.id.settings_pane_header);
         if (settingsPaneHeader != null) {
-            verticalSlidingPanel.setDragView(settingsPaneHeader);
+            mOverviewPanel.setDragView(settingsPaneHeader);
             settingsPaneHeader.setOnClickListener(new OnClickListener() {
                 @Override
                 public void onClick(View v) {
-                    if (verticalSlidingPanel.isExpanded()) {
-                        verticalSlidingPanel.collapsePane();
+                    if (mOverviewPanel.isExpanded()) {
+                        mOverviewPanel.collapsePane();
                     } else {
-                        verticalSlidingPanel.expandPane();
+                        mOverviewPanel.expandPane();
                     }
                 }
             });
@@ -3186,7 +3174,11 @@ public class Launcher extends Activity
         if (mLauncherCallbacks != null) {
             mLauncherCallbacks.onClickSettingsButton(v);
         } else {
-            startSettings();
+            if (mOverviewPanel.isExpanded()) {
+                mOverviewPanel.collapsePane();
+            } else {
+                mOverviewPanel.expandPane();
+            }
         }
     }
 
@@ -5277,6 +5269,9 @@ public class Launcher extends Activity
 
             AnimationDrawable frameAnimation = (AnimationDrawable) mAnimatedArrow.getBackground();
             frameAnimation.start();
+
+            LauncherApplication.getLauncherStats().sendSettingsOpenedEvent(
+                    LauncherStats.ORIGIN_TREB_LONGPRESS);
         }
 
         @Override