OSDN Git Service

Add show actions to list of default long-click actions
authorjruesga <jorge@ruesga.com>
Fri, 28 Sep 2012 13:50:21 +0000 (15:50 +0200)
committerjruesga <jorge@ruesga.com>
Fri, 28 Sep 2012 13:50:21 +0000 (15:50 +0200)
res/values/arrays.xml
res/values/strings.xml
src/com/cyanogenmod/explorer/activities/NavigationActivity.java
src/com/cyanogenmod/explorer/activities/SearchActivity.java
src/com/cyanogenmod/explorer/preferences/DefaultLongClickAction.java
src/com/cyanogenmod/explorer/ui/widgets/NavigationView.java

index c0b9b87..f11b0a0 100644 (file)
@@ -43,6 +43,7 @@
     <item>@string/pref_default_longclick_action_select_deselect</item>
     <item>@string/pref_default_longclick_action_open_with</item>
     <item>@string/pref_default_longclick_action_show_properties</item>
+    <item>@string/pref_default_longclick_action_show_actions</item>
   </string-array>
   <string-array name="default_longclick_action_values" translable="false">
     <item>0</item>
@@ -50,6 +51,7 @@
     <item>2</item>
     <item>3</item>
     <item>4</item>
+    <item>5</item>
   </string-array>
 
   <!-- General. Disk usage warning level -->
index 5652cd0..98ba532 100644 (file)
   <string name="pref_default_longclick_action_open_with">Open with</string>
   <!-- Preferences * General * Default long-click action * Show properties -->
   <string name="pref_default_longclick_action_show_properties">Show properties</string>
+  <!-- Preferences * General * Default long-click action * Show actions -->
+  <string name="pref_default_longclick_action_show_actions">Show actions</string>
   <!-- Preferences * General *Disk usage warning level title -->
   <string name="pref_disk_usage_warning_level">Disk usage warning</string>
   <!-- Preferences * General * Disk usage warning level summary -->
index ba431cc..be4a09b 100644 (file)
@@ -647,10 +647,7 @@ public class NavigationActivity extends Activity
             //Action Bar buttons
             //######################
             case R.id.ab_actions:
-                ActionsDialog dialog = new ActionsDialog(this);
-                dialog.setOnRequestRefreshListener(this);
-                dialog.setOnSelectionListener(getCurrentNavigationView());
-                dialog.show();
+                openActions();
                 break;
 
             case R.id.ab_bookmarks:
@@ -1111,6 +1108,16 @@ public class NavigationActivity extends Activity
     }
 
     /**
+     * Method that opens the actions dialog
+     */
+    private void openActions() {
+        ActionsDialog dialog = new ActionsDialog(this);
+        dialog.setOnRequestRefreshListener(this);
+        dialog.setOnSelectionListener(getCurrentNavigationView());
+        dialog.show();
+    }
+
+    /**
      * Method that opens the bookmarks activity.
      */
     private void openBookmarks() {
index e81e4a5..8fe4dc2 100644 (file)
@@ -782,18 +782,25 @@ public class SearchActivity extends Activity
             ActionsPolicy.showContentDescription(this, fso);
         }
 
+        // Open with
+        else if (this.mDefaultLongClickAction.compareTo(
+                DefaultLongClickAction.OPEN_WITH) == 0) {
+            // FIXME Invoke ActionPolicy open with
+        }
+
         // Show properties
         else if (this.mDefaultLongClickAction.compareTo(
                 DefaultLongClickAction.SHOW_PROPERTIES) == 0) {
             ActionsPolicy.showPropertiesDialog(this, fso, this);
         }
 
-        // Open with
+        // Show actions
         else if (this.mDefaultLongClickAction.compareTo(
-                DefaultLongClickAction.OPEN_WITH) == 0) {
-            // FIXME Invoke ActionPolicy open with
+                DefaultLongClickAction.SHOW_ACTIONS) == 0) {
+            onRequestMenu(fso);
         }
 
+
         return true; //Always consume the event
     }
 
index ab31f6a..244bd3a 100644 (file)
@@ -32,7 +32,7 @@ public enum DefaultLongClickAction implements ObjectStringIdentifier {
     /**
      * Select/deselect the item
      */
-    SELECT_DESELECT("2"), //$NON-NLS-1$
+    SELECT_DESELECT("2"), //$NON-NLS-1$T
     /**
      * Open the item with ...
      */
@@ -40,7 +40,11 @@ public enum DefaultLongClickAction implements ObjectStringIdentifier {
     /**
      * Show the item properties
      */
-    SHOW_PROPERTIES("4"); //$NON-NLS-1$
+    SHOW_PROPERTIES("4"), //$NON-NLS-1$
+    /**
+     * Show the item actions
+     */
+    SHOW_ACTIONS("5"); //$NON-NLS-1$
 
     private String mId;
 
index 9416d3b..3333e7c 100644 (file)
@@ -286,7 +286,7 @@ public class NavigationView extends RelativeLayout implements
      */
     public void setDefaultLongClickAction(DefaultLongClickAction mDefaultLongClickAction) {
         this.mDefaultLongClickAction = mDefaultLongClickAction;
-        
+
         // Register the long-click listener only if needed
         if (this.mDefaultLongClickAction.compareTo(
                 DefaultLongClickAction.NONE) != 0) {
@@ -692,16 +692,22 @@ public class NavigationView extends RelativeLayout implements
             ActionsPolicy.showContentDescription(getContext(), fso);
         }
 
+        // Open with
+        else if (this.mDefaultLongClickAction.compareTo(
+                DefaultLongClickAction.OPEN_WITH) == 0) {
+            // FIXME Invoke ActionPolicy open with
+        }
+
         // Show properties
         else if (this.mDefaultLongClickAction.compareTo(
                 DefaultLongClickAction.SHOW_PROPERTIES) == 0) {
             ActionsPolicy.showPropertiesDialog(getContext(), fso, this);
         }
 
-        // Open with
+        // Show actions
         else if (this.mDefaultLongClickAction.compareTo(
-                DefaultLongClickAction.OPEN_WITH) == 0) {
-            // FIXME Invoke ActionPolicy open with
+                DefaultLongClickAction.SHOW_ACTIONS) == 0) {
+            onRequestMenu(fso);
         }
 
         return true; //Always consume the event