From 960d733c76cae6126aea23adf50ba6750ab82e40 Mon Sep 17 00:00:00 2001 From: brahim <92426196+BrhmDev@users.noreply.github.com> Date: Sun, 22 Sep 2024 17:13:13 +0200 Subject: [PATCH 1/2] Prevent settings page from getting in the wrong state when enabling expand on hover and compact-mode.hide-tabbar simultaneously --- .../components/preferences/zen-settings.js | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/src/browser/components/preferences/zen-settings.js b/src/browser/components/preferences/zen-settings.js index 30047678c..b99db4e82 100644 --- a/src/browser/components/preferences/zen-settings.js +++ b/src/browser/components/preferences/zen-settings.js @@ -512,10 +512,16 @@ var gZenLooksAndFeel = { ) { radio.checked = true; } + const disableExpandTabsOnHover = () => { + if (Services.prefs.getBoolPref('zen.view.sidebar-expanded.on-hover')) { + document.querySelector(`#zen-expand-tabbar-strat [value='expand']`).click(); + } + } radio.addEventListener('change', (e) => { let value = e.target.value; switch (value) { case 'left': + disableExpandTabsOnHover(); Services.prefs.setBoolPref('zen.view.compact.hide-tabbar', true); Services.prefs.setBoolPref('zen.view.compact.hide-toolbar', false); break; @@ -524,6 +530,7 @@ var gZenLooksAndFeel = { Services.prefs.setBoolPref('zen.view.compact.hide-toolbar', true); break; default: + disableExpandTabsOnHover(); Services.prefs.setBoolPref('zen.view.compact.hide-tabbar', true); Services.prefs.setBoolPref('zen.view.compact.hide-toolbar', true); break; @@ -544,6 +551,14 @@ var gZenLooksAndFeel = { } else { form.querySelector('input[value="none"]').checked = true; } + const disableCompactTabbar = () => { + const toolbarEnable = Services.prefs.getBoolPref('zen.view.compact.hide-toolbar'); + if (toolbarEnable) { + document.querySelector(`#ZenCompactModeStyle input[value='top']`).click(); + } else if (Services.prefs.getBoolPref('zen.view.compact')) { + document.getElementById('zenLooksAndFeelShowCompactView').click(); + } + } for (let radio of radios) { radio.addEventListener('change', (e) => { switch (e.target.value) { @@ -556,6 +571,7 @@ var gZenLooksAndFeel = { Services.prefs.setBoolPref(defaultExpandPref, false); break; case 'hover': + disableCompactTabbar(); Services.prefs.setBoolPref(onHoverPref, true); Services.prefs.setBoolPref(defaultExpandPref, true); break; From b0755d3834f3ae8bc836be95e7f79f547e46255e Mon Sep 17 00:00:00 2001 From: brahim <92426196+BrhmDev@users.noreply.github.com> Date: Sun, 22 Sep 2024 18:19:29 +0200 Subject: [PATCH 2/2] Fix bug in look and feel where compact mode 'both' would never be selected on page load --- .../components/preferences/zen-settings.js | 30 +++++++++---------- 1 file changed, 14 insertions(+), 16 deletions(-) diff --git a/src/browser/components/preferences/zen-settings.js b/src/browser/components/preferences/zen-settings.js index b99db4e82..69719ea55 100644 --- a/src/browser/components/preferences/zen-settings.js +++ b/src/browser/components/preferences/zen-settings.js @@ -500,23 +500,21 @@ var gZenLooksAndFeel = { setCompactModeStyle() { const chooser = document.getElementById('zen-compact-mode-styles-form'); const radios = [...chooser.querySelectorAll('input')]; + + let value = ''; + if (Services.prefs.getBoolPref('zen.view.compact.hide-tabbar') + && Services.prefs.getBoolPref('zen.view.compact.hide-toolbar')) { + value = 'both'; + } else { + value = Services.prefs.getBoolPref('zen.view.compact.hide-tabbar') ? 'left' : 'top'; + } + chooser.querySelector(`[value='${value}']`).checked = true; + const disableExpandTabsOnHover = () => { + if (Services.prefs.getBoolPref('zen.view.sidebar-expanded.on-hover')) { + document.querySelector(`#zen-expand-tabbar-strat input[value='expand']`).click(); + } + } for (let radio of radios) { - if (radio.value === 'left' && Services.prefs.getBoolPref('zen.view.compact.hide-tabbar')) { - radio.checked = true; - } else if (radio.value === 'top' && Services.prefs.getBoolPref('zen.view.compact.hide-toolbar')) { - radio.checked = true; - } else if ( - radio.value === 'both' && - !Services.prefs.getBoolPref('zen.view.compact.hide-tabbar') && - !Services.prefs.getBoolPref('zen.view.compact.hide-toolbar') - ) { - radio.checked = true; - } - const disableExpandTabsOnHover = () => { - if (Services.prefs.getBoolPref('zen.view.sidebar-expanded.on-hover')) { - document.querySelector(`#zen-expand-tabbar-strat [value='expand']`).click(); - } - } radio.addEventListener('change', (e) => { let value = e.target.value; switch (value) {