use of com.farmerbb.taskbar.fragment.AboutFragment in project Taskbar by farmerbb.
the class MainActivity method onBackPressed.
@Override
public void onBackPressed() {
Fragment oldFragment = getFragmentManager().findFragmentById(R.id.fragmentContainer);
if (oldFragment instanceof AboutFragment)
super.onBackPressed();
else {
Fragment newFragment;
if (oldFragment instanceof ManageAppDataFragment)
newFragment = new AdvancedFragment();
else
newFragment = new AboutFragment();
getFragmentManager().beginTransaction().replace(R.id.fragmentContainer, newFragment, newFragment.getClass().getSimpleName()).setTransition(FragmentTransaction.TRANSIT_FRAGMENT_CLOSE).commit();
}
}
use of com.farmerbb.taskbar.fragment.AboutFragment in project Taskbar by farmerbb.
the class MainActivity method proceedWithAppLaunch.
private void proceedWithAppLaunch(Bundle savedInstanceState) {
setContentView(R.layout.main);
ActionBar actionBar = getSupportActionBar();
if (actionBar != null) {
actionBar.setCustomView(R.layout.switch_layout);
actionBar.setDisplayOptions(ActionBar.DISPLAY_SHOW_TITLE | ActionBar.DISPLAY_SHOW_CUSTOM);
}
theSwitch = U.findViewById(this, R.id.the_switch);
if (theSwitch != null) {
final SharedPreferences pref = U.getSharedPreferences(this);
theSwitch.setChecked(pref.getBoolean("taskbar_active", false));
theSwitch.setOnCheckedChangeListener((compoundButton, b) -> {
if (b) {
if (U.canDrawOverlays(this)) {
boolean firstRun = pref.getBoolean("first_run", true);
startTaskbarService();
if (firstRun)
U.showRecentAppsDialog(this);
} else {
U.showPermissionDialog(this);
compoundButton.setChecked(false);
}
} else
stopTaskbarService();
});
}
if (savedInstanceState == null) {
if (!getIntent().hasExtra("theme_change"))
getFragmentManager().beginTransaction().replace(R.id.fragmentContainer, new AboutFragment(), "AboutFragment").commit();
else
getFragmentManager().beginTransaction().replace(R.id.fragmentContainer, new AppearanceFragment(), "AppearanceFragment").commit();
}
if (!BuildConfig.APPLICATION_ID.equals(BuildConfig.BASE_APPLICATION_ID) && freeVersionInstalled()) {
final SharedPreferences pref = U.getSharedPreferences(this);
if (!pref.getBoolean("dont_show_uninstall_dialog", false)) {
AlertDialog.Builder builder = new AlertDialog.Builder(this);
builder.setTitle(R.string.settings_imported_successfully).setMessage(R.string.import_dialog_message).setPositiveButton(R.string.action_uninstall, (dialog, which) -> {
pref.edit().putBoolean("uninstall_dialog_shown", true).apply();
try {
startActivity(new Intent(Intent.ACTION_DELETE, Uri.parse("package:" + BuildConfig.BASE_APPLICATION_ID)));
} catch (ActivityNotFoundException e) {
/* Gracefully fail */
}
});
if (pref.getBoolean("uninstall_dialog_shown", false))
builder.setNegativeButton(R.string.action_dont_show_again, (dialogInterface, i) -> pref.edit().putBoolean("dont_show_uninstall_dialog", true).apply());
AlertDialog dialog = builder.create();
dialog.show();
dialog.setCancelable(false);
}
if (!pref.getBoolean("uninstall_dialog_shown", false)) {
if (theSwitch != null)
theSwitch.setChecked(false);
SharedPreferences.Editor editor = pref.edit();
String iconPack = pref.getString("icon_pack", BuildConfig.BASE_APPLICATION_ID);
if (iconPack.contains(BuildConfig.BASE_APPLICATION_ID)) {
editor.putString("icon_pack", BuildConfig.APPLICATION_ID);
} else {
U.refreshPinnedIcons(this);
}
editor.putBoolean("first_run", true);
editor.apply();
}
}
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N_MR1) {
ShortcutManager shortcutManager = getSystemService(ShortcutManager.class);
if (shortcutManager.getDynamicShortcuts().size() == 0) {
Intent intent = new Intent(Intent.ACTION_MAIN);
intent.setClass(this, StartTaskbarActivity.class);
intent.putExtra("is_launching_shortcut", true);
ShortcutInfo shortcut = new ShortcutInfo.Builder(this, "start_taskbar").setShortLabel(getString(R.string.start_taskbar)).setIcon(Icon.createWithResource(this, R.drawable.shortcut_icon_start)).setIntent(intent).build();
Intent intent2 = new Intent(Intent.ACTION_MAIN);
intent2.setClass(this, ShortcutActivity.class);
intent2.putExtra("is_launching_shortcut", true);
ShortcutInfo shortcut2 = new ShortcutInfo.Builder(this, "freeform_mode").setShortLabel(getString(R.string.pref_header_freeform)).setIcon(Icon.createWithResource(this, R.drawable.shortcut_icon_freeform)).setIntent(intent2).build();
shortcutManager.setDynamicShortcuts(Arrays.asList(shortcut, shortcut2));
}
}
}
use of com.farmerbb.taskbar.fragment.AboutFragment in project Taskbar by farmerbb.
the class MainActivity method proceedWithAppLaunch.
@SuppressWarnings("ResultOfMethodCallIgnored")
private void proceedWithAppLaunch(Bundle savedInstanceState) {
try {
setContentView(R.layout.tb_main);
} catch (IllegalStateException e) {
setTheme(R.style.Theme_AppCompat_Light);
setContentView(R.layout.tb_main);
}
if (!U.isLibrary(this)) {
setSupportActionBar(findViewById(R.id.toolbar));
ActionBar actionBar = getSupportActionBar();
if (actionBar != null) {
actionBar.setDisplayOptions(ActionBar.DISPLAY_SHOW_TITLE);
}
}
theSwitch = findViewById(R.id.the_switch);
helpButton = findViewById(R.id.help_button);
if (theSwitch != null) {
final SharedPreferences pref = U.getSharedPreferences(this);
theSwitch.setChecked(pref.getBoolean(PREF_TASKBAR_ACTIVE, false));
theSwitch.setOnCheckedChangeListener((compoundButton, b) -> {
if (b) {
if (U.canDrawOverlays(this)) {
boolean firstRun = pref.getBoolean(PREF_FIRST_RUN, true);
startTaskbarService();
if (firstRun)
U.showRecentAppsDialog(this);
} else {
U.showPermissionDialog(this);
compoundButton.setChecked(false);
}
} else
stopTaskbarService();
});
}
if (savedInstanceState == null) {
U.initPrefs(this);
File restoreInProgress = new File(getFilesDir(), "restore_in_progress");
File restoreSuccessful = new File(getFilesDir(), "restore_successful");
if (restoreInProgress.exists() || restoreSuccessful.exists()) {
if (restoreInProgress.exists()) {
U.showToastLong(this, R.string.tb_restore_failed);
restoreInProgress.delete();
}
if (restoreSuccessful.exists()) {
U.showToastLong(this, R.string.tb_restore_successful);
restoreSuccessful.delete();
}
navigateTo(new ManageAppDataFragment());
} else if (!getIntent().hasExtra("theme_change"))
navigateTo(new AboutFragment());
else
navigateTo(new AppearanceFragment());
} else
try {
Fragment oldFragment = getFragmentManager().findFragmentById(R.id.fragmentContainer);
navigateTo(oldFragment.getClass().newInstance());
} catch (IllegalAccessException | InstantiationException ignored) {
}
SharedPreferences pref = U.getSharedPreferences(this);
if (!getPackageName().equals(BuildConfig.BASE_APPLICATION_ID) && freeVersionInstalled()) {
if (!pref.getBoolean(PREF_DONT_SHOW_UNINSTALL_DIALOG, false)) {
AlertDialog.Builder builder = new AlertDialog.Builder(this);
builder.setTitle(R.string.tb_settings_imported_successfully).setMessage(R.string.tb_import_dialog_message).setPositiveButton(R.string.tb_action_uninstall, (dialog, which) -> {
pref.edit().putBoolean(PREF_UNINSTALL_DIALOG_SHOWN, true).apply();
try {
startActivity(new Intent(Intent.ACTION_DELETE, Uri.parse("package:" + BuildConfig.BASE_APPLICATION_ID)));
} catch (ActivityNotFoundException ignored) {
}
});
if (pref.getBoolean(PREF_UNINSTALL_DIALOG_SHOWN, false))
builder.setNegativeButton(R.string.tb_action_dont_show_again, (dialogInterface, i) -> pref.edit().putBoolean(PREF_DONT_SHOW_UNINSTALL_DIALOG, true).apply());
AlertDialog dialog = builder.create();
dialog.show();
dialog.setCancelable(false);
}
if (!pref.getBoolean(PREF_UNINSTALL_DIALOG_SHOWN, false)) {
if (theSwitch != null)
theSwitch.setChecked(false);
SharedPreferences.Editor editor = pref.edit();
String iconPack = pref.getString(PREF_ICON_PACK, BuildConfig.BASE_APPLICATION_ID);
if (iconPack.contains(BuildConfig.BASE_APPLICATION_ID)) {
editor.putString(PREF_ICON_PACK, getPackageName());
} else {
U.refreshPinnedIcons(this);
}
editor.putBoolean(PREF_FIRST_RUN, true);
editor.apply();
}
}
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N_MR1 && !U.isLibrary(this)) {
ShortcutManager shortcutManager = getSystemService(ShortcutManager.class);
if (shortcutManager.getDynamicShortcuts().size() == 0) {
Intent intent = new Intent(Intent.ACTION_MAIN);
intent.setClass(this, StartTaskbarActivity.class);
intent.putExtra(EXTRA_IS_LAUNCHING_SHORTCUT, true);
ShortcutInfo shortcut = new ShortcutInfo.Builder(this, "start_taskbar").setShortLabel(getString(R.string.tb_start_taskbar)).setIcon(Icon.createWithResource(this, R.drawable.tb_shortcut_icon_start)).setIntent(intent).build();
if (U.enableFreeformModeShortcut(this)) {
Intent intent2 = new Intent(Intent.ACTION_MAIN);
intent2.setClass(this, ShortcutActivity.class);
intent2.putExtra(EXTRA_IS_LAUNCHING_SHORTCUT, true);
ShortcutInfo shortcut2 = new ShortcutInfo.Builder(this, "freeform_mode").setShortLabel(getString(R.string.tb_pref_header_freeform)).setIcon(Icon.createWithResource(this, R.drawable.tb_shortcut_icon_freeform)).setIntent(intent2).build();
shortcutManager.setDynamicShortcuts(Arrays.asList(shortcut, shortcut2));
} else
shortcutManager.setDynamicShortcuts(Collections.singletonList(shortcut));
}
}
if (pref.getInt("show_changelog", 0) < latestChangelogVersion && U.isConsumerBuild(this)) {
Snackbar snackbar = Snackbar.make(findViewById(R.id.main_activity_layout), R.string.tb_see_whats_new, Snackbar.LENGTH_INDEFINITE);
snackbar.setAction(R.string.tb_action_view, v -> {
pref.edit().putInt("show_changelog", latestChangelogVersion).apply();
Uri uri = Uri.parse("https://github.com/farmerbb/Taskbar/blob/" + BuildConfig.VERSION_CODE + "/CHANGELOG.md");
try {
DependencyUtils.openChromeCustomTab(this, uri);
} catch (ActivityNotFoundException | IllegalArgumentException ignored) {
}
});
snackbar.show();
}
}
Aggregations