OSDN Git Service

allow hooking for the native fragment for CM.
authorKoushik Dutta <koushd@gmail.com>
Thu, 7 Mar 2013 20:48:02 +0000 (12:48 -0800)
committerKoushik Dutta <koushd@gmail.com>
Thu, 7 Mar 2013 20:48:02 +0000 (12:48 -0800)
CM requested feature to change the stylings.

Change-Id: Icc7d6fe6506f11c97dd4da76cec03408d3a75bd6

Superuser/src/com/koushikdutta/superuser/PolicyFragmentInternal.java
Superuser/src/com/koushikdutta/superuser/PolicyNativeFragment.java

index 6298f5d..aee66fc 100644 (file)
@@ -143,6 +143,10 @@ public class PolicyFragmentInternal extends ListContentFragmentInternal {
         return new LogNativeFragment();
     }
     
+    protected SettingsNativeFragment createSettingsNativeFragment() {
+        return new SettingsNativeFragment();
+    }
+
     FragmentInterfaceWrapper setContentNative(final ListItem li, final UidPolicy up) {
         LogNativeFragment l = createLogNativeFragment();
         l.getInternal().setUidPolicy(up);
@@ -170,10 +174,7 @@ public class PolicyFragmentInternal extends ListContentFragmentInternal {
         
         setContent(mContent, up == null, up == null ? getString(R.string.logs) : up.getName());
     }
-    
-    protected SettingsNativeFragment createSettingsNativeFragment() {
-        return new SettingsNativeFragment();
-    }
+
     
     @Override
     public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
index 6b2e9d2..adbaa4f 100644 (file)
@@ -24,6 +24,7 @@ import android.view.LayoutInflater;
 import android.view.View;
 import android.view.ViewGroup;
 
+import com.koushikdutta.widgets.FragmentInterfaceWrapper;
 import com.koushikdutta.widgets.NativeFragment;
 
 @SuppressLint("NewApi")
@@ -37,19 +38,38 @@ public class PolicyNativeFragment extends NativeFragment<PolicyFragmentInternal>
         return mWrapper;
     }
 
+    protected class FragmentInternal extends PolicyFragmentInternal {
+        public FragmentInternal(FragmentInterfaceWrapper fragment) {
+            super(fragment);
+        }
+
+        @Override
+        public Context getContext() {
+            return PolicyNativeFragment.this.getContext();
+        }
+        
+        @Override
+        protected int getListFragmentResource() {
+            return R.layout.policy_list_content;
+        }
+        
+        @Override
+        protected LogNativeFragment createLogNativeFragment() {
+            // factory hook.
+            return super.createLogNativeFragment();
+        }
+        
+        @Override
+        protected SettingsNativeFragment createSettingsNativeFragment() {
+            // factory hook.
+            return super.createSettingsNativeFragment();
+        }
+    };
+    
     @Override
     public PolicyFragmentInternal createFragmentInterface() {
-        return new PolicyFragmentInternal(this) {
-            @Override
-            public Context getContext() {
-                return PolicyNativeFragment.this.getContext();
-            }
-            
-            @Override
-            protected int getListFragmentResource() {
-                return R.layout.policy_list_content;
-            }
-        };
+        // factory hook.
+        return new FragmentInternal(this);
     }
     
     @Override