Settings: show quick tile config if no primary is defined
This seems like a horrific set of hacks. Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
This commit is contained in:
parent
b0bb46382c
commit
ad16d2cc7b
@ -34,4 +34,6 @@ public class ConfigListPreference extends ListPreference {
|
|||||||
public ConfigListPreference(final Context context) {
|
public ConfigListPreference(final Context context) {
|
||||||
this(context, null);
|
this(context, null);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void show() { showDialog(null); }
|
||||||
}
|
}
|
||||||
|
@ -30,7 +30,13 @@ public class QuickTileService extends TileService {
|
|||||||
else
|
else
|
||||||
service.enable(config.getName());
|
service.enable(config.getName());
|
||||||
} else {
|
} else {
|
||||||
startActivityAndCollapse(new Intent(this, ConfigActivity.class));
|
if (service != null && service.getConfigs().isEmpty()) {
|
||||||
|
startActivityAndCollapse(new Intent(this, ConfigActivity.class));
|
||||||
|
} else {
|
||||||
|
final Intent intent = new Intent(this, SettingsActivity.class);
|
||||||
|
intent.putExtra("showQuickTile", true);
|
||||||
|
startActivityAndCollapse(intent);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -10,7 +10,11 @@ public class SettingsActivity extends Activity {
|
|||||||
protected void onCreate(final Bundle savedInstanceState) {
|
protected void onCreate(final Bundle savedInstanceState) {
|
||||||
super.onCreate(savedInstanceState);
|
super.onCreate(savedInstanceState);
|
||||||
final FragmentTransaction transaction = getFragmentManager().beginTransaction();
|
final FragmentTransaction transaction = getFragmentManager().beginTransaction();
|
||||||
transaction.replace(android.R.id.content, new SettingsFragment()).commit();
|
final Bundle args = new Bundle();
|
||||||
|
args.putBoolean("showQuickTile", getIntent().getBooleanExtra("showQuickTile", false));
|
||||||
|
final SettingsFragment fragment = new SettingsFragment();
|
||||||
|
fragment.setArguments(args);
|
||||||
|
transaction.replace(android.R.id.content, fragment).commit();
|
||||||
}
|
}
|
||||||
|
|
||||||
public static class SettingsFragment extends PreferenceFragment {
|
public static class SettingsFragment extends PreferenceFragment {
|
||||||
@ -18,6 +22,8 @@ public class SettingsActivity extends Activity {
|
|||||||
public void onCreate(final Bundle savedInstanceState) {
|
public void onCreate(final Bundle savedInstanceState) {
|
||||||
super.onCreate(savedInstanceState);
|
super.onCreate(savedInstanceState);
|
||||||
addPreferencesFromResource(R.xml.preferences);
|
addPreferencesFromResource(R.xml.preferences);
|
||||||
|
if (getArguments().getBoolean("showQuickTile"))
|
||||||
|
((ConfigListPreference) findPreference("primary_config")).show();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -29,7 +29,7 @@
|
|||||||
<string name="persistent_keepalive">Persistent keepalive</string>
|
<string name="persistent_keepalive">Persistent keepalive</string>
|
||||||
<string name="placeholder_text">No configuration selected</string>
|
<string name="placeholder_text">No configuration selected</string>
|
||||||
<string name="pre_shared_key">Pre-shared key</string>
|
<string name="pre_shared_key">Pre-shared key</string>
|
||||||
<string name="primary_config">Primary configuration</string>
|
<string name="primary_config">Quick tile configuration</string>
|
||||||
<string name="primary_config_summary">This configuration will be controlled by the quick settings tile</string>
|
<string name="primary_config_summary">This configuration will be controlled by the quick settings tile</string>
|
||||||
<string name="private_key">Private key</string>
|
<string name="private_key">Private key</string>
|
||||||
<string name="public_key">Public key</string>
|
<string name="public_key">Public key</string>
|
||||||
|
Loading…
Reference in New Issue
Block a user