contextMenuFix = false;
break;
case "start_menu_apps":
- Intent intent = null;
-
+ Intent intent = U.getThemedIntent(this, SelectAppActivity.class);
SharedPreferences pref3 = U.getSharedPreferences(this);
- switch(U.getCurrentTheme(this)) {
- case "light":
- intent = new Intent(this, SelectAppActivity.class);
- break;
- case "dark":
- intent = new Intent(this, SelectAppActivityDark.class);
- break;
- }
if(U.hasFreeformSupport(this)
&& pref3.getBoolean("freeform_hack", false)
contextMenuFix = false;
break;
case "add_icon_to_desktop":
- Intent intent2 = null;
-
- SharedPreferences pref4 = U.getSharedPreferences(this);
- switch(U.getCurrentTheme(this)) {
- case "light":
- intent2 = new Intent(this, DesktopIconSelectAppActivity.class);
- break;
- case "dark":
- intent2 = new Intent(this, DesktopIconSelectAppActivityDark.class);
- break;
- }
-
+ Intent intent2 = U.getThemedIntent(this, DesktopIconSelectAppActivity.class);
if(intent2 != null)
intent2.putExtra("desktop_icon", desktopIcon);
if(!pref.getString("power_button_warning", "null").equals(Settings.Secure.getString(getContentResolver(), Settings.Secure.ANDROID_ID))) {
new Handler().postDelayed(() -> {
if(helper.isInFreeformWorkspace()) {
- Intent intent = null;
-
- switch(U.getCurrentTheme(this)) {
- case "light":
- intent = new Intent(this, InvisibleActivityAlt.class);
- break;
- case "dark":
- intent = new Intent(this, InvisibleActivityAltDark.class);
- break;
- }
-
+ Intent intent = U.getThemedIntent(this, InvisibleActivityAlt.class);
if(intent != null) {
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
intent.putExtra("power_button_warning", true);
final SharedPreferences pref = U.getSharedPreferences(this);
SharedPreferences.Editor editor = pref.edit();
- if(!U.isLibrary(this)) {
- switch(U.getCurrentTheme(this)) {
- case "light":
- setTheme(R.style.Taskbar);
- break;
- case "dark":
- setTheme(R.style.Taskbar_Dark);
- break;
- }
- } else {
+ if(!U.isLibrary(this))
+ setTheme(U.isDarkTheme(this) ? R.style.Taskbar_Dark : R.style.Taskbar);
+ else {
int theme = getIntent().getIntExtra("theme", -1);
if(theme != -1)
setTheme(theme);
if(!noShadow)
new Handler().post(() -> {
- Intent intent = null;
- SharedPreferences pref3 = U.getSharedPreferences(this);
-
- switch(U.getCurrentTheme(this)) {
- case "light":
- intent = new Intent(this, SelectAppActivity.class);
- break;
- case "dark":
- intent = new Intent(this, SelectAppActivityDark.class);
- break;
- }
-
+ Intent intent = U.getThemedIntent(this, SelectAppActivity.class);
startActivity(intent);
});
}
TextView textView = convertView.findViewById(R.id.name);
textView.setText(entry.getLabel());
textView.setTypeface(null, isTopApp(entry) ? Typeface.BOLD : Typeface.NORMAL);
-
- switch(U.getCurrentTheme(getContext())) {
- case "light":
- textView.setTextColor(ContextCompat.getColor(getContext(), R.color.tb_text_color));
- break;
- case "dark":
- textView.setTextColor(ContextCompat.getColor(getContext(), R.color.tb_text_color_dark));
- break;
- }
+ textView.setTextColor(ContextCompat.getColor(getContext(),
+ U.isDarkTheme(getContext()) ? R.color.tb_text_color_dark : R.color.tb_text_color));
ImageView imageView = convertView.findViewById(R.id.icon);
imageView.setImageDrawable(entry.getIcon(getContext()));
break;
case "navigation_bar_buttons":
- Intent intent = null;
-
- switch(U.getCurrentTheme(getActivity())) {
- case "light":
- intent = new Intent(getActivity(), NavigationBarButtonsActivity.class);
- break;
- case "dark":
- intent = new Intent(getActivity(), NavigationBarButtonsActivityDark.class);
- break;
- }
-
+ Intent intent = U.getThemedIntent(this, NavigationBarButtonsActivity.class);
startActivity(intent);
break;
case "secondscreen":
switch(p.getKey()) {
case "icon_pack_list":
- Intent intent = null;
-
- switch(U.getCurrentTheme(getActivity())) {
- case "light":
- intent = new Intent(getActivity(), IconPackActivity.class);
- break;
- case "dark":
- intent = new Intent(getActivity(), IconPackActivityDark.class);
- break;
- }
-
+ Intent intent = U.getThemedIntent(getActivity(), IconPackActivity.class);
startActivityForResult(intent, 123);
break;
case "reset_colors":
public boolean onPreferenceClick(final Preference p) {
switch(p.getKey()) {
case "blacklist":
- Intent intent = null;
-
- switch(U.getCurrentTheme(getActivity())) {
- case "light":
- intent = new Intent(getActivity(), SelectAppActivity.class);
- break;
- case "dark":
- intent = new Intent(getActivity(), SelectAppActivityDark.class);
- break;
- }
-
+ Intent intent = U.getThemedIntent(getActivity(), SelectAppActivity.class);
startActivity(intent);
break;
case "notification_settings":
@Override
public boolean onPreferenceClick(final Preference p) {
if(p.getKey().equals("clear_pinned_apps")) {
- Intent clearIntent = null;
-
- switch(U.getCurrentTheme(getActivity())) {
- case "light":
- clearIntent = new Intent(getActivity(), ClearDataActivity.class);
- break;
- case "dark":
- clearIntent = new Intent(getActivity(), ClearDataActivityDark.class);
- break;
- }
-
+ Intent clearIntent = U.getThemedIntent(getActivity(), ClearDataActivity.class);
startActivity(clearIntent);
}
boolean inFreeformMode = FreeformHackHelper.getInstance().isInFreeformWorkspace();
final SharedPreferences pref = U.getSharedPreferences(context);
- Intent intent = null;
-
- switch(U.getCurrentTheme(context)) {
- case "light":
- intent = new Intent(context, DashboardActivity.class);
- break;
- case "dark":
- intent = new Intent(context, DashboardActivityDark.class);
- break;
- }
-
+ Intent intent = U.getThemedIntent(context, DashboardActivity.class);
if(intent != null) {
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
intent.addFlags(Intent.FLAG_ACTIVITY_NO_ANIMATION);
import com.farmerbb.taskbar.BuildConfig;
import com.farmerbb.taskbar.R;
import com.farmerbb.taskbar.activity.ContextMenuActivity;
+import com.farmerbb.taskbar.activity.DesktopIconSelectAppActivity;
import com.farmerbb.taskbar.activity.DummyActivity;
import com.farmerbb.taskbar.activity.InvisibleActivityFreeform;
import com.farmerbb.taskbar.activity.MainActivity;
import com.farmerbb.taskbar.activity.TouchAbsorberActivity;
import com.farmerbb.taskbar.activity.dark.ContextMenuActivityDark;
+import com.farmerbb.taskbar.activity.dark.DesktopIconSelectAppActivityDark;
import com.farmerbb.taskbar.service.DashboardService;
import com.farmerbb.taskbar.service.NotificationService;
import com.farmerbb.taskbar.service.PowerMenuService;
}
public static void startContextMenuActivity(Context context, Bundle args) {
- SharedPreferences pref = getSharedPreferences(context);
- Intent intent = null;
-
- switch(getCurrentTheme(context)) {
- case "light":
- intent = new Intent(context, ContextMenuActivity.class);
- break;
- case "dark":
- intent = new Intent(context, ContextMenuActivityDark.class);
- break;
- }
-
+ Intent intent = getThemedIntent(context, ContextMenuActivity.class);
if(intent != null) {
intent.putExtra("args", args);
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
}
public static Context wrapContext(Context context) {
- SharedPreferences pref = getSharedPreferences(context);
-
- int theme = -1;
- switch(getCurrentTheme(context)) {
- case "light":
- theme = R.style.Taskbar;
- break;
- case "dark":
- theme = R.style.Taskbar_Dark;
- break;
- }
+ int theme;
+ if(isDarkTheme(context))
+ theme = R.style.Taskbar_Dark;
+ else
+ theme = R.style.Taskbar;
- return theme > -1 ? new ContextThemeWrapper(context, theme) : context;
+ return new ContextThemeWrapper(context, theme);
}
public static boolean isPlayStoreRelease(Context context) {
return new BitmapDrawable(context.getResources(), resizedBitmap);
}
- public static String getCurrentTheme(Context context) {
+ private static String getCurrentTheme(Context context) {
String defaultTheme = context.getString(R.string.tb_pref_theme_default);
SharedPreferences pref = getSharedPreferences(context);
public static boolean isFavoriteAppTilesEnabled(Context context) {
return Build.VERSION.SDK_INT >= Build.VERSION_CODES.N && !isChromeOs(context);
}
+
+ @SuppressWarnings("rawtypes")
+ public static Intent getThemedIntent(Context context, Class clazz) {
+ Class newClass;
+
+ if(!isDarkTheme(context))
+ newClass = clazz;
+ else try {
+ newClass = Class.forName(clazz.getName() + "Dark");
+ } catch (ClassNotFoundException e) {
+ newClass = clazz;
+ }
+
+ return new Intent(context, newClass);
+ }
+
+ public static boolean isDarkTheme(Context context) {
+ return getCurrentTheme(context).equals("dark");
+ }
}
finish();
else if(getIntent().hasExtra(Intent.EXTRA_PACKAGE_NAME)) {
SharedPreferences pref = U.getSharedPreferences(this);
- if(U.getCurrentTheme(this).equals("dark"))
+ if(U.isDarkTheme(this))
setTheme(R.style.Taskbar_Dialog_Dark);
@SuppressLint("InlinedApi")
@Override
protected void onCreate(Bundle savedInstanceState) {
- SharedPreferences pref = U.getSharedPreferences(this);
- if(U.getCurrentTheme(this).equals("dark"))
+ if(U.isDarkTheme(this))
setTheme(android.R.style.Theme_Material_Dialog);
super.onCreate(savedInstanceState);