mirror of
https://github.com/zen-browser/desktop.git
synced 2025-09-05 19:08:18 +00:00
Merge pull request #2904 from kristijanribaric/feature/add-reset-to-base-url-button-to-pinned-tabs
Feature: Add reset to pinned URL button to pinned tabs
This commit is contained in:
@@ -683,6 +683,18 @@
|
||||
#tabbrowser-tabs {
|
||||
& .tabbrowser-tab {
|
||||
&[pinned] .tab-close-button {
|
||||
display: none !important;
|
||||
}
|
||||
|
||||
&[pinned]:not([zen-essential]):hover .tab-reset-button {
|
||||
display: block;
|
||||
}
|
||||
|
||||
&[zen-essential] .tab-reset-button {
|
||||
display: none;
|
||||
}
|
||||
|
||||
&:not([pinned]) .tab-reset-button {
|
||||
display: none;
|
||||
}
|
||||
|
||||
@@ -692,6 +704,53 @@
|
||||
}
|
||||
}
|
||||
|
||||
.tab-reset-button {
|
||||
display: none;
|
||||
-moz-context-properties: fill, fill-opacity;
|
||||
border-radius: 4px;
|
||||
color: inherit;
|
||||
fill: currentColor;
|
||||
padding: 6px;
|
||||
width: 24px;
|
||||
height: 24px;
|
||||
outline: var(--toolbarbutton-outline);
|
||||
|
||||
&:hover {
|
||||
outline-color: var(--toolbarbutton-hover-outline-color);
|
||||
}
|
||||
|
||||
&:hover:active {
|
||||
outline-color: var(--toolbarbutton-active-outline-color);
|
||||
}
|
||||
}
|
||||
|
||||
.reset-icon {
|
||||
appearance: none;
|
||||
|
||||
}
|
||||
|
||||
@media not (forced-colors) {
|
||||
.tab-reset-button:hover {
|
||||
background-color: color-mix(in srgb, currentColor 10%, transparent);
|
||||
}
|
||||
|
||||
.tab-reset-button:hover:active {
|
||||
background-color: color-mix(in srgb, currentColor 20%, transparent);
|
||||
}
|
||||
}
|
||||
|
||||
.tab-reset-button> .button-icon,
|
||||
.tab-reset-button > .button-box > .button-icon,
|
||||
.tab-reset-button > .toolbarbutton-icon {
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
.tab-reset-button > .button-box > .button-text,
|
||||
.tab-reset-button > .toolbarbutton-text {
|
||||
display: none;
|
||||
}
|
||||
|
||||
|
||||
/* Customization mode */
|
||||
/*:root[customizing] #TabsToolbar > *:not(#zen-sidebar-icons-wrapper) {
|
||||
overflow: hidden;
|
||||
@@ -760,23 +819,23 @@
|
||||
}
|
||||
|
||||
@media (-moz-bool-pref: 'zen.view.show-newtab-button-border-top') and (not (-moz-bool-pref: 'zen.view.show-newtab-button-top')) {
|
||||
#tabbrowser-arrowscrollbox:has(tab:not([hidden])) & {
|
||||
margin-top: 15px;
|
||||
position: relative;
|
||||
&::before {
|
||||
content: '';
|
||||
display: block;
|
||||
height: 1px;
|
||||
background: light-dark(rgba(1, 1, 1, 0.075), rgba(255, 255, 255, 0.1));
|
||||
width: 98%;
|
||||
position: absolute;
|
||||
top: -8px;
|
||||
left: 50%;
|
||||
transform: translateX(-50%);
|
||||
}
|
||||
#tabbrowser-arrowscrollbox:has(tab:not([hidden])) & {
|
||||
margin-top: 15px;
|
||||
position: relative;
|
||||
&::before {
|
||||
content: '';
|
||||
display: block;
|
||||
height: 1px;
|
||||
background: light-dark(rgba(1, 1, 1, 0.075), rgba(255, 255, 255, 0.1));
|
||||
width: 98%;
|
||||
position: absolute;
|
||||
top: -8px;
|
||||
left: 50%;
|
||||
transform: translateX(-50%);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
32
src/browser/components/tabbrowser/content/tab-js.patch
Normal file
32
src/browser/components/tabbrowser/content/tab-js.patch
Normal file
@@ -0,0 +1,32 @@
|
||||
diff --git a/browser/components/tabbrowser/content/tab.js b/browser/components/tabbrowser/content/tab.js
|
||||
index 60061540d79843281f3ee2ce905824b224da6f46..c01f8a7f18921588ecdc635c281cf01041ef627b 100644
|
||||
--- a/browser/components/tabbrowser/content/tab.js
|
||||
+++ b/browser/components/tabbrowser/content/tab.js
|
||||
@@ -39,6 +39,7 @@
|
||||
</hbox>
|
||||
</vbox>
|
||||
<image class="tab-close-button close-icon" role="button" data-l10n-id="tabbrowser-close-tabs-button" data-l10n-args='{"tabCount": 1}' keyNav="false"/>
|
||||
+ <image class="tab-reset-button reset-icon" role="button" data-l10n-id="tabbrowser-reset-tabs-button" data-l10n-args='{"tabCount": 1}' keyNav="false"/>
|
||||
</hbox>
|
||||
</stack>
|
||||
`;
|
||||
@@ -447,6 +448,7 @@
|
||||
this.style.MozUserFocus = "ignore";
|
||||
} else if (
|
||||
event.target.classList.contains("tab-close-button") ||
|
||||
+ event.target.classList.contains("tab-reset-button") ||
|
||||
event.target.classList.contains("tab-icon-overlay")
|
||||
) {
|
||||
eventMaySelectTab = false;
|
||||
@@ -549,6 +551,11 @@
|
||||
// (see tabbrowser-tabs 'click' handler).
|
||||
gBrowser.tabContainer._blockDblClick = true;
|
||||
}
|
||||
+
|
||||
+ if (event.target.classList.contains("tab-reset-button")) {
|
||||
+ gZenPinnedTabManager._resetTabToStoredState(this);
|
||||
+ gBrowser.tabContainer._blockDblClick = true;
|
||||
+ }
|
||||
}
|
||||
|
||||
on_dblclick(event) {
|
@@ -49,6 +49,10 @@
|
||||
list-style-image: url('close.svg') !important;
|
||||
}
|
||||
|
||||
.reset-icon {
|
||||
list-style-image: url('reload.svg') !important;
|
||||
}
|
||||
|
||||
#sidebar-button {
|
||||
list-style-image: url('sidebars-right.svg') !important;
|
||||
}
|
||||
|
Reference in New Issue
Block a user