diff options
-rw-r--r-- | packages/SystemUI/AndroidManifest_cm.xml | 11 | ||||
-rw-r--r-- | packages/SystemUI/src/com/android/systemui/tuner/TunerActivity.java | 34 |
2 files changed, 43 insertions, 2 deletions
diff --git a/packages/SystemUI/AndroidManifest_cm.xml b/packages/SystemUI/AndroidManifest_cm.xml index 0d96372..d3837b6 100644 --- a/packages/SystemUI/AndroidManifest_cm.xml +++ b/packages/SystemUI/AndroidManifest_cm.xml @@ -53,7 +53,14 @@ android:label="@string/lockscreen_targets_message" android:theme="@android:style/Theme.Material.Settings" android:process=":cmsettings" - android:exported="true"> - </activity> + android:exported="true" /> + + <activity android:name=".tuner.TunerActivity$DemoModeActivity" + android:icon="@drawable/tuner" + android:theme="@android:style/Theme.Material.Settings" + android:label="@string/demo_mode" + android:process=":tuner" + android:exported="true" + android:permission="android.permission.STATUS_BAR" /> </application> </manifest> diff --git a/packages/SystemUI/src/com/android/systemui/tuner/TunerActivity.java b/packages/SystemUI/src/com/android/systemui/tuner/TunerActivity.java index c84f618..43203c8 100644 --- a/packages/SystemUI/src/com/android/systemui/tuner/TunerActivity.java +++ b/packages/SystemUI/src/com/android/systemui/tuner/TunerActivity.java @@ -16,7 +16,9 @@ package com.android.systemui.tuner; import android.app.Activity; +import android.app.Fragment; import android.os.Bundle; +import android.view.MenuItem; public class TunerActivity extends Activity { @@ -27,4 +29,36 @@ public class TunerActivity extends Activity { .commit(); } + /** + * Base class for direct entry points into + * tuner fragments + */ + private static abstract class FragmentTunerActivityBase extends Activity { + @Override + protected void onCreate(Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + getActionBar().setDisplayHomeAsUpEnabled(true); + getFragmentManager().beginTransaction().replace(android.R.id.content, + getFragment()).commit(); + } + + protected abstract Fragment getFragment(); + + @Override + public final boolean onOptionsItemSelected(MenuItem item) { + switch (item.getItemId()) { + case android.R.id.home: + finish(); + return true; + } + return super.onOptionsItemSelected(item); + } + } + + public static final class DemoModeActivity extends FragmentTunerActivityBase { + @Override + protected Fragment getFragment() { + return new DemoModeFragment(); + } + } } |