Use bold icons by default with YT 20.31+
This commit is contained in:
parent
ed514d9755
commit
67c6c345ea
12 changed files with 88 additions and 40 deletions
|
|
@ -82,6 +82,8 @@ public class Utils {
|
|||
@Nullable
|
||||
private static Boolean isDarkModeEnabled;
|
||||
|
||||
private static boolean appIsUsingBoldIcons;
|
||||
|
||||
// Cached Collator instance with its locale.
|
||||
@Nullable
|
||||
private static Locale cachedCollatorLocale;
|
||||
|
|
@ -830,6 +832,21 @@ public class Utils {
|
|||
window.setBackgroundDrawable(null); // Remove default dialog background
|
||||
}
|
||||
|
||||
/**
|
||||
* @return If the unpatched app is currently using bold icons.
|
||||
*/
|
||||
public static boolean appIsUsingBoldIcons() {
|
||||
return appIsUsingBoldIcons;
|
||||
}
|
||||
|
||||
/**
|
||||
* Controls if ReVanced bold icons are shown in various places.
|
||||
* @param boldIcons If the app is currently using bold icons.
|
||||
*/
|
||||
public static void setAppIsUsingBoldIcons(boolean boldIcons) {
|
||||
appIsUsingBoldIcons = boldIcons;
|
||||
}
|
||||
|
||||
/**
|
||||
* Sets the theme light color used by the app.
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -5,6 +5,8 @@ import static java.lang.Boolean.TRUE;
|
|||
import static app.revanced.extension.shared.patches.CustomBrandingPatch.BrandingTheme;
|
||||
import static app.revanced.extension.shared.settings.Setting.parent;
|
||||
|
||||
import app.revanced.extension.shared.Logger;
|
||||
|
||||
/**
|
||||
* Settings shared across multiple apps.
|
||||
* <p>
|
||||
|
|
@ -24,11 +26,19 @@ public class BaseSettings {
|
|||
* Use the icons declared in the preferences created during patching. If no icons or styles are declared then this setting does nothing.
|
||||
*/
|
||||
public static final BooleanSetting SHOW_MENU_ICONS = new BooleanSetting("revanced_show_menu_icons", TRUE, true);
|
||||
public static final BooleanSetting SETTINGS_DISABLE_BOLD_ICONS = new BooleanSetting("revanced_settings_disable_bold_icons", TRUE, true);
|
||||
/**
|
||||
* Do not use this setting directly. Instead use {@link app.revanced.extension.shared.Utils#appIsUsingBoldIcons()}
|
||||
*/
|
||||
public static final BooleanSetting SETTINGS_DISABLE_BOLD_ICONS = new BooleanSetting("revanced_settings_disable_bold_icons", FALSE, true);
|
||||
|
||||
public static final BooleanSetting SETTINGS_SEARCH_HISTORY = new BooleanSetting("revanced_settings_search_history", TRUE, true);
|
||||
public static final StringSetting SETTINGS_SEARCH_ENTRIES = new StringSetting("revanced_settings_search_entries", "");
|
||||
|
||||
/**
|
||||
* The first time the app was launched with no previous app data (either a clean install, or after wiping app data).
|
||||
*/
|
||||
public static final LongSetting FIRST_TIME_APP_LAUNCHED = new LongSetting("revanced_last_time_app_was_launched", -1L, false, false);
|
||||
|
||||
//
|
||||
// Settings shared by YouTube and YouTube Music.
|
||||
//
|
||||
|
|
@ -45,4 +55,13 @@ public class BaseSettings {
|
|||
public static final IntegerSetting CUSTOM_BRANDING_NAME = new IntegerSetting("revanced_custom_branding_name", 1, true);
|
||||
|
||||
public static final StringSetting DISABLED_FEATURE_FLAGS = new StringSetting("revanced_disabled_feature_flags", "", true, parent(DEBUG));
|
||||
|
||||
static {
|
||||
final long now = System.currentTimeMillis();
|
||||
|
||||
if (FIRST_TIME_APP_LAUNCHED.get() < 0) {
|
||||
Logger.printInfo(() -> "First launch of installation with no prior app data");
|
||||
FIRST_TIME_APP_LAUNCHED.save(now);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -106,9 +106,9 @@ public abstract class AbstractPreferenceFragment extends PreferenceFragment {
|
|||
protected void initialize() {
|
||||
String preferenceResourceName;
|
||||
if (BaseSettings.SHOW_MENU_ICONS.get()) {
|
||||
preferenceResourceName = BaseSettings.SETTINGS_DISABLE_BOLD_ICONS.get()
|
||||
? "revanced_prefs_icons"
|
||||
: "revanced_prefs_icons_bold";
|
||||
preferenceResourceName = Utils.appIsUsingBoldIcons()
|
||||
? "revanced_prefs_icons_bold"
|
||||
: "revanced_prefs_icons";
|
||||
} else {
|
||||
preferenceResourceName = "revanced_prefs";
|
||||
}
|
||||
|
|
|
|||
|
|
@ -22,7 +22,6 @@ import androidx.annotation.Nullable;
|
|||
|
||||
import app.revanced.extension.shared.ResourceType;
|
||||
import app.revanced.extension.shared.Utils;
|
||||
import app.revanced.extension.shared.settings.BaseSettings;
|
||||
import app.revanced.extension.shared.ui.CustomDialog;
|
||||
|
||||
/**
|
||||
|
|
@ -134,10 +133,9 @@ public class CustomDialogListPreference extends ListPreference {
|
|||
holder.placeholder = view.findViewById(ID_REVANCED_CHECK_ICON_PLACEHOLDER);
|
||||
holder.itemText = view.findViewById(ID_REVANCED_ITEM_TEXT);
|
||||
holder.checkIcon = view.findViewById(ID_REVANCED_CHECK_ICON);
|
||||
holder.checkIcon.setImageResource(
|
||||
BaseSettings.SETTINGS_DISABLE_BOLD_ICONS.get()
|
||||
? DRAWABLE_CHECKMARK
|
||||
: DRAWABLE_CHECKMARK_BOLD
|
||||
holder.checkIcon.setImageResource(Utils.appIsUsingBoldIcons()
|
||||
? DRAWABLE_CHECKMARK_BOLD
|
||||
: DRAWABLE_CHECKMARK
|
||||
);
|
||||
view.setTag(holder);
|
||||
} else {
|
||||
|
|
|
|||
|
|
@ -71,7 +71,8 @@ public class FeatureFlagsManagerPreference extends Preference {
|
|||
* Flags to hide from the UI.
|
||||
*/
|
||||
private static final Set<Long> FLAGS_TO_IGNORE = Set.of(
|
||||
45386834L // 'You' tab settings icon.
|
||||
45386834L, // 'You' tab settings icon.
|
||||
45685201L // Bold icons. Forcing off interferes with patch changes and YT icons are broken.
|
||||
);
|
||||
|
||||
/**
|
||||
|
|
|
|||
|
|
@ -136,9 +136,9 @@ public class ToolbarPreferenceFragment extends AbstractPreferenceFragment {
|
|||
@SuppressLint("UseCompatLoadingForDrawables")
|
||||
public static Drawable getBackButtonDrawable() {
|
||||
final int backButtonResource = Utils.getResourceIdentifierOrThrow(ResourceType.DRAWABLE,
|
||||
BaseSettings.SETTINGS_DISABLE_BOLD_ICONS.get()
|
||||
? "revanced_settings_toolbar_arrow_left"
|
||||
: "revanced_settings_toolbar_arrow_left_bold");
|
||||
Utils.appIsUsingBoldIcons()
|
||||
? "revanced_settings_toolbar_arrow_left_bold"
|
||||
: "revanced_settings_toolbar_arrow_left");
|
||||
Drawable drawable = Utils.getContext().getResources().getDrawable(backButtonResource);
|
||||
customizeBackButtonDrawable(drawable);
|
||||
return drawable;
|
||||
|
|
|
|||
|
|
@ -91,9 +91,9 @@ public abstract class BaseSearchViewController {
|
|||
* @return The search icon, either bold or not bold, depending on the ReVanced UI setting.
|
||||
*/
|
||||
public static int getSearchIcon() {
|
||||
return BaseSettings.SETTINGS_DISABLE_BOLD_ICONS.get()
|
||||
? DRAWABLE_REVANCED_SETTINGS_SEARCH_ICON
|
||||
: DRAWABLE_REVANCED_SETTINGS_SEARCH_ICON_BOLD;
|
||||
return Utils.appIsUsingBoldIcons()
|
||||
? DRAWABLE_REVANCED_SETTINGS_SEARCH_ICON_BOLD
|
||||
: DRAWABLE_REVANCED_SETTINGS_SEARCH_ICON;
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
|||
|
|
@ -25,7 +25,7 @@ import java.util.LinkedList;
|
|||
|
||||
import app.revanced.extension.shared.Logger;
|
||||
import app.revanced.extension.shared.ResourceType;
|
||||
import app.revanced.extension.shared.settings.BaseSettings;
|
||||
import app.revanced.extension.shared.Utils;
|
||||
import app.revanced.extension.shared.settings.preference.BulletPointPreference;
|
||||
import app.revanced.extension.shared.ui.CustomDialog;
|
||||
|
||||
|
|
@ -340,10 +340,9 @@ public class SearchHistoryManager {
|
|||
|
||||
// Set history icon.
|
||||
ImageView historyIcon = view.findViewById(ID_HISTORY_ICON);
|
||||
historyIcon.setImageResource(
|
||||
BaseSettings.SETTINGS_DISABLE_BOLD_ICONS.get()
|
||||
? ID_SEARCH_ARROW_TIME_ICON
|
||||
: ID_SEARCH_ARROW_TIME_ICON_BOLD
|
||||
historyIcon.setImageResource(Utils.appIsUsingBoldIcons()
|
||||
? ID_SEARCH_ARROW_TIME_ICON_BOLD
|
||||
: ID_SEARCH_ARROW_TIME_ICON
|
||||
);
|
||||
|
||||
TextView historyText = view.findViewById(ID_HISTORY_TEXT);
|
||||
|
|
@ -352,10 +351,9 @@ public class SearchHistoryManager {
|
|||
// Set click listener for delete icon.
|
||||
ImageView deleteIcon = view.findViewById(ID_DELETE_ICON);
|
||||
|
||||
deleteIcon.setImageResource(
|
||||
BaseSettings.SETTINGS_DISABLE_BOLD_ICONS.get()
|
||||
? ID_SEARCH_REMOVE_ICON
|
||||
: ID_SEARCH_REMOVE_ICON_BOLD
|
||||
deleteIcon.setImageResource(Utils.appIsUsingBoldIcons()
|
||||
? ID_SEARCH_REMOVE_ICON_BOLD
|
||||
: ID_SEARCH_REMOVE_ICON
|
||||
);
|
||||
|
||||
deleteIcon.setOnClickListener(v -> createAndShowDialog(
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue