110 lines
6.4 KiB
Diff
110 lines
6.4 KiB
Diff
From: Your Name <you@example.com>
|
|
Date: Wed, 8 Feb 2023 13:29:03 +0000
|
|
Subject: 110 Timezone customization
|
|
|
|
---
|
|
.../site_settings/SingleCategorySettings.java | 33 +++++++++++--------
|
|
...imezoneOverrideSiteSettingsPreference.java | 3 +-
|
|
2 files changed, 21 insertions(+), 15 deletions(-)
|
|
|
|
diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/SingleCategorySettings.java b/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/SingleCategorySettings.java
|
|
--- a/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/SingleCategorySettings.java
|
|
+++ b/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/SingleCategorySettings.java
|
|
@@ -153,7 +153,7 @@ public class SingleCategorySettings extends SiteSettingsPreferenceFragment
|
|
// The websites that are currently displayed to the user.
|
|
private List<WebsitePreference> mWebsites;
|
|
// Whether tri-state ContentSetting is required.
|
|
- private @GlobalToggleLayout int mGlobalToggleLayout = GlobalToggleLayout.BINARY_TOGGLE; ADD TIMEZONE
|
|
+ private @GlobalToggleLayout int mGlobalToggleLayout = GlobalToggleLayout.BINARY_TOGGLE;
|
|
// The "notifications_quiet_ui" preference to allow hiding/showing it.
|
|
private ChromeBaseCheckBoxPreference mNotificationsQuietUiPref;
|
|
// The "desktop_site_peripheral" preference to allow hiding/showing it.
|
|
@@ -791,7 +791,7 @@ public class SingleCategorySettings extends SiteSettingsPreferenceFragment
|
|
resource = WebsitePreferenceBridge.isCategoryEnabled(
|
|
browserContextHandle, ContentSettingsType.TIMEZONE_OVERRIDE)
|
|
? R.string.website_settings_category_timezone_override_allowed
|
|
- : R.string.website_settings_category_timezone_override_blocked;
|
|
+ : R.string.website_settings_category_timezone_override_allowed;
|
|
break;
|
|
}
|
|
if (resource == 0)
|
|
@@ -914,6 +914,9 @@ public class SingleCategorySettings extends SiteSettingsPreferenceFragment
|
|
case SiteSettingsCategory.Type.THIRD_PARTY_COOKIES:
|
|
allowSpecifyingExceptions = getCookieControlsMode() != CookieControlsMode.OFF;
|
|
break;
|
|
+ case SiteSettingsCategory.Type.TIMEZONE_OVERRIDE:
|
|
+ allowSpecifyingExceptions = true;
|
|
+ break;
|
|
default:
|
|
break;
|
|
}
|
|
@@ -1135,6 +1138,9 @@ public class SingleCategorySettings extends SiteSettingsPreferenceFragment
|
|
PreferenceGroup blockedGroup = screen.findPreference(BLOCKED_GROUP);
|
|
PreferenceGroup managedGroup = screen.findPreference(MANAGED_GROUP);
|
|
boolean permissionBlockedByOs = mCategory.showPermissionBlockedMessage(getContext());
|
|
+ TimezoneOverrideSiteSettingsPreference timeOverrideStatePreference =
|
|
+ (TimezoneOverrideSiteSettingsPreference) screen.findPreference(
|
|
+ TIMEOVERRIDE_STATE_TOGGLE_KEY);
|
|
|
|
if (mGlobalToggleLayout != GlobalToggleLayout.BINARY_TOGGLE) {
|
|
screen.removePreference(binaryToggle);
|
|
@@ -1153,6 +1159,10 @@ public class SingleCategorySettings extends SiteSettingsPreferenceFragment
|
|
configureBinaryToggle(binaryToggle, contentType);
|
|
break;
|
|
case GlobalToggleLayout.TRI_STATE_TOGGLE:
|
|
+ if (mCategory.getType() == SiteSettingsCategory.Type.TIMEZONE_OVERRIDE) {
|
|
+ configureTimeOverrideStateToggle(timeOverrideStatePreference);
|
|
+ break;
|
|
+ }
|
|
configureTriStateToggle(triStateToggle, contentType);
|
|
break;
|
|
case GlobalToggleLayout.TRI_STATE_COOKIE_TOGGLE:
|
|
@@ -1179,6 +1189,13 @@ public class SingleCategorySettings extends SiteSettingsPreferenceFragment
|
|
} else {
|
|
screen.removePreference(infoText);
|
|
}
|
|
+
|
|
+ if (mCategory.getType() == SiteSettingsCategory.Type.TIMEZONE_OVERRIDE) {
|
|
+ screen.removePreference(triStateToggle);
|
|
+ } else {
|
|
+ screen.removePreference(timeOverrideStatePreference);
|
|
+ }
|
|
+
|
|
BromiteCustomContentSettingImpl.configureGlobalToggles(mCategory, screen);
|
|
|
|
if (permissionBlockedByOs) {
|
|
@@ -1249,18 +1266,6 @@ public class SingleCategorySettings extends SiteSettingsPreferenceFragment
|
|
mListView.setFocusable(true);
|
|
}
|
|
|
|
- TimezoneOverrideSiteSettingsPreference timeOverrideStatePreference =
|
|
- (TimezoneOverrideSiteSettingsPreference) screen.findPreference(
|
|
- TIMEOVERRIDE_STATE_TOGGLE_KEY);
|
|
- if (mCategory.getType() == SiteSettingsCategory.Type.TIMEZONE_OVERRIDE) {
|
|
- screen.removePreference(triStateToggle);
|
|
- configureTimeOverrideStateToggle(timeOverrideStatePreference);
|
|
- }
|
|
- else {
|
|
- screen.removePreference(timeOverrideStatePreference);
|
|
- configureTriStateToggle(triStateToggle, contentType);
|
|
- }
|
|
-
|
|
// When this menu opens, make sure the Blocked list is collapsed.
|
|
if (!mGroupByAllowBlock) {
|
|
mBlockListExpanded = false;
|
|
diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/TimezoneOverrideSiteSettingsPreference.java b/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/TimezoneOverrideSiteSettingsPreference.java
|
|
--- a/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/TimezoneOverrideSiteSettingsPreference.java
|
|
+++ b/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/TimezoneOverrideSiteSettingsPreference.java
|
|
@@ -103,7 +103,8 @@ public class TimezoneOverrideSiteSettingsPreference
|
|
mRadioGroup = (RadioGroup) holder.findViewById(R.id.radio_button_layout);
|
|
mRadioGroup.setOnCheckedChangeListener(this);
|
|
|
|
- mAsk.setPrimaryText(WebsitePreferenceBridge.getCustomTimezone(mBrowserContextHandle));
|
|
+ if (mBrowserContextHandle != null)
|
|
+ mAsk.setPrimaryText(WebsitePreferenceBridge.getCustomTimezone(mBrowserContextHandle));
|
|
mAsk.addTextChangeListener(this);
|
|
|
|
ListView listView = (ListView)holder.findViewById(R.id.listView);
|
|
--
|
|
2.25.1
|