This commit is contained in:
Mr. M
2025-08-17 15:08:36 +02:00
36 changed files with 263 additions and 210 deletions

View File

@@ -7,10 +7,12 @@ unset MOZ_STDCXX_COMPAT
ac_add_options --disable-dmd
ac_add_options --enable-eme=widevine
# override LTO settings
# TODO: Dont use LTO for now, it's causing a lot of issues
export MOZ_LTO=cross,thin
ac_add_options --enable-lto=cross,thin
if test "$ZEN_RELEASE"; then
# override LTO settings
# TODO: Dont use LTO for now, it's causing a lot of issues
export MOZ_LTO=cross,thin
ac_add_options --enable-lto=cross,thin
fi
if test "$ZEN_RELEASE"; then
if test "$ZEN_GA_DISABLE_PGO"; then

View File

@@ -5,8 +5,8 @@ zen-folders-search-placeholder =
zen-folders-panel-rename-folder =
.label = Rename Folder
zen-folders-panel-expand-folder =
.label = Expand Folder
zen-folders-panel-unpack-folder =
.label = Unpack Folder
zen-folders-panel-delete-folder =
.label = Delete Folder

View File

@@ -35,7 +35,7 @@
<menupopup id="zenFolderActions">
<menuitem id="context_zenFolderRename" data-l10n-id="zen-folders-panel-rename-folder"/>
<menuitem id="context_zenFolderChangeIcon" data-l10n-id="zen-folders-panel-change-icon-folder"/>
<menuitem id="context_zenFolderExpand" data-l10n-id="zen-folders-panel-expand-folder"/>
<menuitem id="context_zenFolderExpand" data-l10n-id="zen-folders-panel-unpack-folder"/>
<menuseparator />
<menu id="context_zenChangeFolderSpace"
data-l10n-id="zen-folders-panel-change-folder-space">

View File

@@ -300,7 +300,7 @@ index d80a66a01002e78a9c65545d08fe786328ddf124..a25073f3a700e4d6765a9ba92eddbc0b
+ }
+ group.essential = tabs.some(tab => tab.hasAttribute("essential"));
+ group.pinned = group.essential || tabs.some(tab => tab.pinned);
+ if (forSplitView) insertBefore = insertBefore.group ?? insertBefore;
+ if (forSplitView && !insertBefore?.group?.isZenFolder) insertBefore = insertBefore?.group ?? insertBefore;
+ insertBefore.before(
group,
- insertBefore?.group ?? insertBefore
@@ -643,7 +643,7 @@ index d80a66a01002e78a9c65545d08fe786328ddf124..a25073f3a700e4d6765a9ba92eddbc0b
if (neighbor && this.isTab(element) && tabIndex > element._tPos) {
neighbor.after(element);
} else {
@@ -6136,22 +6273,26 @@
@@ -6136,22 +6273,23 @@
#moveTabNextTo(element, targetElement, moveBefore = false, metricsContext) {
if (this.isTabGroupLabel(targetElement)) {
targetElement = targetElement.group;
@@ -664,9 +664,6 @@ index d80a66a01002e78a9c65545d08fe786328ddf124..a25073f3a700e4d6765a9ba92eddbc0b
// Don't allow mixing pinned and unpinned tabs.
+ targetElement = gZenGlanceManager.getTabOrGlanceParent(targetElement);
+ if (targetElement?.group?.hasAttribute("split-view-group")) {
+ targetElement = targetElement.group;
+ }
+ if (element.hasAttribute('zen-essential') && !targetElement?.hasAttribute('zen-essential')) {
+ targetElement = this.tabsWithoutGlance[this._numZenEssentials - 1];
+ } else
@@ -676,7 +673,7 @@ index d80a66a01002e78a9c65545d08fe786328ddf124..a25073f3a700e4d6765a9ba92eddbc0b
moveBefore = false;
} else if (!element.pinned && targetElement && targetElement.pinned) {
// If the caller asks to move an unpinned element next to a pinned
@@ -6165,14 +6306,18 @@
@@ -6165,14 +6303,29 @@
// move the tab group right before the first unpinned tab.
// 4. Moving a tab group and the first unpinned tab is grouped:
// move the tab group right before the first unpinned tab's tab group.
@@ -689,6 +686,17 @@ index d80a66a01002e78a9c65545d08fe786328ddf124..a25073f3a700e4d6765a9ba92eddbc0b
}
+ if (!gZenFolders.canDropElement(element, targetElement)) {
+ element = element.group;
+ }
+ // It is necessary to place the check below to avoid inserting an element
+ // inside when the split group is the last element.
+ if (targetElement?.group?.hasAttribute("split-view-group")) {
+ targetElement = targetElement.group;
+ }
+ // When the folder is the last element in the pinned section,
+ // targetElement is a tab with the zen-empty-tab attribute.
+ // If the movement is from top to bottom, it must be redefined as a folder.
+ if (targetElement?.hasAttribute("zen-empty-tab") && !moveBefore) {
+ targetElement = targetElement.group;
+ }
let getContainer = () =>
@@ -696,7 +704,7 @@ index d80a66a01002e78a9c65545d08fe786328ddf124..a25073f3a700e4d6765a9ba92eddbc0b
element.pinned
? this.tabContainer.pinnedTabsContainer
: this.tabContainer;
@@ -6181,7 +6326,7 @@
@@ -6181,7 +6334,7 @@
element,
() => {
if (moveBefore) {
@@ -705,7 +713,7 @@ index d80a66a01002e78a9c65545d08fe786328ddf124..a25073f3a700e4d6765a9ba92eddbc0b
} else if (targetElement) {
targetElement.after(element);
} else {
@@ -6230,7 +6375,7 @@
@@ -6230,7 +6383,7 @@
if (!this.isTab(aTab)) {
throw new Error("Can only move a tab into a tab group");
}
@@ -714,7 +722,7 @@ index d80a66a01002e78a9c65545d08fe786328ddf124..a25073f3a700e4d6765a9ba92eddbc0b
return;
}
if (aTab.group && aTab.group.id === aGroup.id) {
@@ -6324,6 +6469,10 @@
@@ -6324,6 +6477,10 @@
moveActionCallback();
@@ -725,7 +733,7 @@ index d80a66a01002e78a9c65545d08fe786328ddf124..a25073f3a700e4d6765a9ba92eddbc0b
// Clear tabs cache after moving nodes because the order of tabs may have
// changed.
this.tabContainer._invalidateCachedTabs();
@@ -7221,7 +7370,7 @@
@@ -7221,7 +7378,7 @@
// preventDefault(). It will still raise the window if appropriate.
break;
}
@@ -734,7 +742,7 @@ index d80a66a01002e78a9c65545d08fe786328ddf124..a25073f3a700e4d6765a9ba92eddbc0b
window.focus();
aEvent.preventDefault();
break;
@@ -8166,6 +8315,7 @@
@@ -8166,6 +8323,7 @@
aWebProgress.isTopLevel
) {
this.mTab.setAttribute("busy", "true");
@@ -742,7 +750,7 @@ index d80a66a01002e78a9c65545d08fe786328ddf124..a25073f3a700e4d6765a9ba92eddbc0b
gBrowser._tabAttrModified(this.mTab, ["busy"]);
this.mTab._notselectedsinceload = !this.mTab.selected;
}
@@ -9157,7 +9307,7 @@ var TabContextMenu = {
@@ -9157,7 +9315,7 @@ var TabContextMenu = {
);
contextUnpinSelectedTabs.hidden =
!this.contextTab.pinned || !this.multiselected;
@@ -751,7 +759,7 @@ index d80a66a01002e78a9c65545d08fe786328ddf124..a25073f3a700e4d6765a9ba92eddbc0b
// Build Ask Chat items
TabContextMenu.GenAI.buildTabMenu(
document.getElementById("context_askChat"),
@@ -9476,6 +9626,7 @@ var TabContextMenu = {
@@ -9476,6 +9634,7 @@ var TabContextMenu = {
)
);
} else {
@@ -759,3 +767,4 @@ index d80a66a01002e78a9c65545d08fe786328ddf124..a25073f3a700e4d6765a9ba92eddbc0b
gBrowser.removeTab(this.contextTab, {
animate: true,
...gBrowser.TabMetrics.userTriggeredContext(

View File

@@ -1,5 +1,5 @@
diff --git a/browser/components/tabbrowser/content/tabgroup.js b/browser/components/tabbrowser/content/tabgroup.js
index caea196b22b4689f55780a528661d87b52f4e728..ef687c6c693abab2b62023cfa7f44705acc5d04f 100644
index caea196b22b4689f55780a528661d87b52f4e728..54f3be2b115f6b3691792796f758534aec90206d 100644
--- a/browser/components/tabbrowser/content/tabgroup.js
+++ b/browser/components/tabbrowser/content/tabgroup.js
@@ -13,10 +13,12 @@
@@ -87,7 +87,7 @@ index caea196b22b4689f55780a528661d87b52f4e728..ef687c6c693abab2b62023cfa7f44705
}
get color() {
@@ -338,12 +351,57 @@
@@ -338,12 +351,61 @@
tabGroupName,
})
.then(result => {
@@ -144,10 +144,14 @@ index caea196b22b4689f55780a528661d87b52f4e728..ef687c6c693abab2b62023cfa7f44705
+ }
+ }
+ return true;
+ }
+
+ get level() {
+ return this.group?.level + 1 || 0;
}
/**
@@ -373,7 +431,7 @@
@@ -373,7 +435,7 @@
*/
addTabs(tabs, metricsContext) {
for (let tab of tabs) {
@@ -156,7 +160,7 @@ index caea196b22b4689f55780a528661d87b52f4e728..ef687c6c693abab2b62023cfa7f44705
tab.ownerGlobal.gBrowser.unpinTab(tab);
}
let tabToMove =
@@ -437,7 +495,7 @@
@@ -437,7 +499,7 @@
*/
on_click(event) {
let isToggleElement =
@@ -165,10 +169,11 @@ index caea196b22b4689f55780a528661d87b52f4e728..ef687c6c693abab2b62023cfa7f44705
event.target === this.#overflowCountLabel;
if (isToggleElement && event.button === 0) {
event.preventDefault();
@@ -470,5 +528,6 @@
@@ -470,5 +532,6 @@
}
}
+ window.MozTabbrowserTabGroup = MozTabbrowserTabGroup;
customElements.define("tab-group", MozTabbrowserTabGroup);
}

View File

@@ -1,5 +1,5 @@
diff --git a/browser/components/tabbrowser/content/tabs.js b/browser/components/tabbrowser/content/tabs.js
index e47f735e4e4563c9b7537944628418d1478c068d..1e821868ef0de97e19f46cc63ed03cb77ecf75a9 100644
index e47f735e4e4563c9b7537944628418d1478c068d..858f6aa20bc06701facf75ee673f618464a406ab 100644
--- a/browser/components/tabbrowser/content/tabs.js
+++ b/browser/components/tabbrowser/content/tabs.js
@@ -332,7 +332,7 @@
@@ -455,16 +455,19 @@ index e47f735e4e4563c9b7537944628418d1478c068d..1e821868ef0de97e19f46cc63ed03cb7
let newDropElementIndex;
if (dropElement) {
@@ -2856,7 +2936,7 @@
@@ -2856,7 +2936,10 @@
let shouldCreateGroupOnDrop;
let dropBefore;
if (dropElement) {
- let dropElementForOverlap = isTabGroupLabel(dropElement)
+ if (dropElement?.group?.hasAttribute("split-view-group") || dropElement.hasAttribute("split-view-group")) {
+ dropElement = dropElement.group.labelElement;
+ }
+ let dropElementForOverlap = isTabGroupLabel(dropElement) && !dropElement.group?.hasAttribute("split-view-group")
? dropElement.parentElement
: dropElement;
@@ -2876,7 +2956,7 @@
@@ -2876,7 +2959,7 @@
? Services.prefs.getIntPref(
"browser.tabs.dragDrop.moveOverThresholdPercent"
) / 100
@@ -473,7 +476,7 @@ index e47f735e4e4563c9b7537944628418d1478c068d..1e821868ef0de97e19f46cc63ed03cb7
moveOverThreshold = Math.min(1, Math.max(0, moveOverThreshold));
let shouldMoveOver = overlapPercent > moveOverThreshold;
if (logicalForward && shouldMoveOver) {
@@ -2908,44 +2988,21 @@
@@ -2908,44 +2991,21 @@
// If dragging a group over another group, don't make it look like it is
// possible to drop the dragged group inside the other group.
@@ -523,7 +526,7 @@ index e47f735e4e4563c9b7537944628418d1478c068d..1e821868ef0de97e19f46cc63ed03cb7
// When dragging tab(s) over an ungrouped tab, signal to the user
// that dropping the tab(s) will create a new tab group.
shouldCreateGroupOnDrop =
@@ -2955,12 +3012,6 @@
@@ -2955,12 +3015,6 @@
overlapPercent > dragOverGroupingThreshold;
if (shouldCreateGroupOnDrop) {
@@ -536,7 +539,7 @@ index e47f735e4e4563c9b7537944628418d1478c068d..1e821868ef0de97e19f46cc63ed03cb7
} else {
this.removeAttribute("movingtab-createGroup");
document
@@ -2987,19 +3038,14 @@
@@ -2987,19 +3041,14 @@
dropElement = dropElementGroup;
colorCode = undefined;
} else if (isTabGroupLabel(dropElement)) {
@@ -564,7 +567,7 @@ index e47f735e4e4563c9b7537944628418d1478c068d..1e821868ef0de97e19f46cc63ed03cb7
}
this.#setDragOverGroupColor(colorCode);
this.toggleAttribute("movingtab-ungroup", !colorCode);
@@ -3017,19 +3063,28 @@
@@ -3017,19 +3066,28 @@
dragData.dropElement = dropElement;
dragData.dropBefore = dropBefore;
dragData.animDropElementIndex = newDropElementIndex;
@@ -595,7 +598,7 @@ index e47f735e4e4563c9b7537944628418d1478c068d..1e821868ef0de97e19f46cc63ed03cb7
}
item.style.transform = transform;
}
@@ -3082,12 +3137,14 @@
@@ -3082,12 +3140,14 @@
);
}
@@ -612,7 +615,7 @@ index e47f735e4e4563c9b7537944628418d1478c068d..1e821868ef0de97e19f46cc63ed03cb7
for (let item of this.ariaFocusableItems) {
if (isTabGroupLabel(item)) {
@@ -3095,6 +3152,18 @@
@@ -3095,6 +3155,18 @@
item = item.parentElement;
}
item.style.transform = "";
@@ -631,7 +634,7 @@ index e47f735e4e4563c9b7537944628418d1478c068d..1e821868ef0de97e19f46cc63ed03cb7
item.removeAttribute("dragover-createGroup");
}
this.removeAttribute("movingtab-createGroup");
@@ -3198,7 +3267,7 @@
@@ -3198,7 +3270,7 @@
let postTransitionCleanup = () => {
movingTab._moveTogetherSelectedTabsData.animate = false;
};
@@ -640,7 +643,7 @@ index e47f735e4e4563c9b7537944628418d1478c068d..1e821868ef0de97e19f46cc63ed03cb7
postTransitionCleanup();
} else {
let onTransitionEnd = transitionendEvent => {
@@ -3371,7 +3440,7 @@
@@ -3371,7 +3443,7 @@
}
_notifyBackgroundTab(aTab) {
@@ -649,7 +652,7 @@ index e47f735e4e4563c9b7537944628418d1478c068d..1e821868ef0de97e19f46cc63ed03cb7
return;
}
@@ -3480,7 +3549,10 @@
@@ -3480,7 +3552,10 @@
#getDragTarget(event, { ignoreSides = false } = {}) {
let { target } = event;
while (target) {
@@ -661,7 +664,7 @@ index e47f735e4e4563c9b7537944628418d1478c068d..1e821868ef0de97e19f46cc63ed03cb7
break;
}
target = target.parentNode;
@@ -3497,6 +3569,9 @@
@@ -3497,6 +3572,9 @@
return null;
}
}

View File

@@ -1,5 +1,5 @@
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M6.49891 12.2216C6.2136 12.2074 5.99839 12.4631 6.05591 12.7429C6.27686 13.8176 6.80813 14.8085 7.58934 15.5897C8.37055 16.3709 9.36142 16.9022 10.4361 17.1231C10.7159 17.1807 10.9716 16.9654 10.9574 16.6801C10.947 16.4712 10.9228 16.2631 10.8848 16.0573C10.8439 15.835 10.6093 15.715 10.3969 15.7922L10.3654 15.8036C10.1811 15.8706 9.97752 15.7752 9.91117 15.5907C9.84515 15.4071 9.94 15.2047 10.1233 15.138L10.1559 15.1262C10.3683 15.0489 10.4715 14.8064 10.3606 14.6093C10.2775 14.4616 10.1864 14.3184 10.0877 14.1806C9.95583 13.9963 9.69182 13.9872 9.53158 14.1475L9.50608 14.173C9.368 14.3111 9.14414 14.3111 9.00607 14.173C8.86799 14.0349 8.86799 13.811 9.00607 13.673L9.03077 13.6483C9.19054 13.4885 9.18148 13.2253 8.99778 13.0937C8.85932 12.9945 8.71555 12.903 8.56712 12.8195C8.37063 12.709 8.12886 12.8121 8.05204 13.024L8.04067 13.0554C7.97418 13.2388 7.77177 13.3338 7.58816 13.2678C7.4038 13.2015 7.3084 12.998 7.37533 12.8139L7.38687 12.7821C7.46406 12.5697 7.34402 12.3352 7.12179 12.2942C6.91596 12.2563 6.70788 12.2321 6.49891 12.2216Z" fill="context-fill" fill-opacity="context-fill-opacity"/>
<path d="M12.7429 6.05602C12.463 5.99849 12.2074 6.21371 12.2216 6.49902C12.232 6.70798 12.2562 6.91607 12.2942 7.1219C12.3351 7.34412 12.5697 7.46417 12.7821 7.38698L12.8136 7.37551C12.9979 7.30854 13.2015 7.404 13.2678 7.58847C13.3338 7.77203 13.239 7.97442 13.0557 8.04111L13.0231 8.05295C12.8106 8.13026 12.7075 8.3728 12.8184 8.56985C12.9015 8.71759 12.9926 8.86071 13.0913 8.99856C13.2232 9.18283 13.4872 9.19192 13.6474 9.03168L13.6729 9.00617C13.811 8.8681 14.0348 8.8681 14.1729 9.00617C14.311 9.14425 14.311 9.36811 14.1729 9.50619L14.1483 9.53084C13.9885 9.69062 13.9976 9.95388 14.1814 10.0854C14.3198 10.1845 14.4635 10.2759 14.612 10.3593C14.8087 10.4699 15.0506 10.3668 15.1277 10.1548L15.1395 10.1224C15.2062 9.93889 15.409 9.84419 15.5925 9.91082C15.7761 9.97748 15.8709 10.1804 15.8041 10.364L15.7923 10.3965C15.715 10.6091 15.8352 10.8441 16.0578 10.885C16.2634 10.9229 16.4713 10.9471 16.6801 10.9575C16.9654 10.9717 17.1806 10.716 17.1231 10.4362C16.9021 9.36153 16.3709 8.37066 15.5896 7.58945C14.8084 6.80824 13.8176 6.27696 12.7429 6.05602Z" fill="context-fill" fill-opacity="context-fill-opacity"/>
<path d="M6.49891 12.2216C6.2136 12.2074 5.99839 12.4631 6.05591 12.7429C6.27686 13.8176 6.80813 14.8085 7.58934 15.5897C8.37055 16.3709 9.36142 16.9022 10.4361 17.1231C10.7159 17.1807 10.9716 16.9654 10.9574 16.6801C10.947 16.4712 10.9228 16.2631 10.8848 16.0573C10.8439 15.835 10.6093 15.715 10.3969 15.7922L10.3654 15.8036C10.1811 15.8706 9.97752 15.7752 9.91117 15.5907C9.84515 15.4071 9.94 15.2047 10.1233 15.138L10.1559 15.1262C10.3683 15.0489 10.4715 14.8064 10.3606 14.6093C10.2775 14.4616 10.1864 14.3184 10.0877 14.1806C9.95583 13.9963 9.69182 13.9872 9.53158 14.1475L9.50608 14.173C9.368 14.3111 9.14414 14.3111 9.00607 14.173C8.86799 14.0349 8.86799 13.811 9.00607 13.673L9.03077 13.6483C9.19054 13.4885 9.18148 13.2253 8.99778 13.0937C8.85932 12.9945 8.71555 12.903 8.56711 12.8195C8.37063 12.709 8.12886 12.8121 8.05204 13.024L8.04067 13.0554C7.97418 13.2388 7.77177 13.3338 7.58816 13.2678C7.4038 13.2015 7.3084 12.998 7.37533 12.8139L7.38687 12.7821C7.46406 12.5697 7.34402 12.3352 7.12179 12.2942C6.91596 12.2563 6.70788 12.2321 6.49891 12.2216Z" fill="context-fill" fill-opacity="context-fill-opacity"/>
<path d="M12.7429 6.05602C12.463 5.99849 12.2074 6.21371 12.2216 6.49902C12.232 6.70798 12.2562 6.91607 12.2942 7.1219C12.3351 7.34412 12.5697 7.46417 12.7821 7.38698L12.8136 7.37551C12.9979 7.30854 13.2015 7.404 13.2678 7.58847C13.3338 7.77203 13.239 7.97442 13.0557 8.04111L13.0231 8.05295C12.8106 8.13026 12.7075 8.3728 12.8184 8.56985C12.9015 8.71759 12.9926 8.86071 13.0913 8.99856C13.2232 9.18283 13.4872 9.19191 13.6474 9.03168L13.6729 9.00617C13.811 8.8681 14.0348 8.8681 14.1729 9.00617C14.311 9.14425 14.311 9.36811 14.1729 9.50619L14.1483 9.53084C13.9885 9.69062 13.9976 9.95388 14.1814 10.0854C14.3198 10.1844 14.4635 10.2759 14.612 10.3593C14.8087 10.4699 15.0506 10.3668 15.1277 10.1548L15.1395 10.1224C15.2062 9.93889 15.409 9.84419 15.5925 9.91082C15.7761 9.97748 15.8709 10.1804 15.8041 10.364L15.7923 10.3965C15.715 10.6091 15.8352 10.8441 16.0578 10.885C16.2634 10.9229 16.4713 10.9471 16.6801 10.9575C16.9654 10.9717 17.1806 10.716 17.1231 10.4362C16.9021 9.36153 16.3709 8.37066 15.5896 7.58945C14.8084 6.80824 13.8176 6.27696 12.7429 6.05602Z" fill="context-fill" fill-opacity="context-fill-opacity"/>
<path d="M15.717 11.7797C15.4943 11.7321 15.2642 11.8474 15.1863 12.0615L15.1592 12.136C15.0924 12.3195 14.8896 12.4142 14.7061 12.3474C14.5227 12.2807 14.428 12.0779 14.4947 11.8944L14.5221 11.8189C14.6004 11.6036 14.4968 11.3661 14.2941 11.2595C14.0161 11.1133 13.7508 10.9439 13.5011 10.7533C13.3186 10.6139 13.059 10.6202 12.8966 10.7826L12.8396 10.8396C12.7015 10.9776 12.4777 10.9776 12.3396 10.8396C12.2015 10.7015 12.2015 10.4776 12.3396 10.3395L12.3966 10.2826C12.5589 10.1202 12.5653 9.8605 12.4259 9.67801C12.2352 9.42834 12.0659 9.16308 11.9196 8.88504C11.813 8.6823 11.5756 8.57876 11.3603 8.657L11.2847 8.68445C11.1013 8.75113 10.8985 8.65648 10.8317 8.47304C10.765 8.28955 10.8596 8.0867 11.0431 8.01995L11.1177 7.99281C11.3317 7.91494 11.447 7.68484 11.3995 7.46212C11.3323 7.14735 11.2919 6.82754 11.2788 6.50613C11.2666 6.20909 11.0236 5.96094 10.7296 6.00512C9.54523 6.1831 8.44321 6.73579 7.5895 7.5895C6.73579 8.44321 6.1831 9.54523 6.00512 10.7296C5.96094 11.0236 6.20909 11.2666 6.50613 11.2788C6.82754 11.2919 7.14735 11.3323 7.46212 11.3995C7.68484 11.447 7.91494 11.3317 7.99281 11.1177L8.01995 11.0431C8.0867 10.8596 8.28955 10.765 8.47304 10.8317C8.65648 10.8985 8.75113 11.1013 8.68445 11.2847L8.657 11.3603C8.57876 11.5756 8.6823 11.813 8.88504 11.9196C9.16308 12.0659 9.42834 12.2352 9.67801 12.4259C9.8605 12.5653 10.1202 12.5589 10.2826 12.3966L10.3395 12.3396C10.4776 12.2015 10.7015 12.2015 10.8396 12.3396C10.9776 12.4777 10.9776 12.7015 10.8396 12.8396L10.7826 12.8966C10.6202 13.059 10.6139 13.3186 10.7533 13.5011C10.9439 13.7508 11.1133 14.0161 11.2595 14.2941C11.3661 14.4968 11.6036 14.6004 11.8189 14.5221L11.8944 14.4947C12.0779 14.428 12.2807 14.5227 12.3474 14.7061C12.4142 14.8896 12.3195 15.0924 12.136 15.1592L12.0615 15.1863C11.8474 15.2642 11.7321 15.4943 11.7797 15.717C11.8469 16.0318 11.8872 16.3516 11.9004 16.673C11.9125 16.97 12.1556 17.2182 12.4496 17.174C13.6339 16.996 14.7359 16.4434 15.5896 15.5896C16.4434 14.7359 16.996 13.6339 17.174 12.4496C17.2182 12.1556 16.97 11.9125 16.673 11.9004C16.3516 11.8872 16.0318 11.8469 15.717 11.7797Z" fill="context-fill" fill-opacity="context-fill-opacity"/>
</svg>

Before

Width:  |  Height:  |  Size: 4.4 KiB

After

Width:  |  Height:  |  Size: 4.4 KiB

View File

@@ -1,3 +1,3 @@
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd" d="M7 9.75C7 9.88807 7.11193 10 7.25 10H8.11358C8.25165 10 8.36358 9.88807 8.36358 9.75V9.57141C8.36358 9.09866 8.77134 8.71422 9.27272 8.71422H10.6363C11.1377 8.71422 11.5454 9.09868 11.5454 9.57141V9.75C11.5454 9.88807 11.6574 10 11.7954 10H12.2046C12.3426 10 12.4546 9.88807 12.4546 9.75V9.57141C12.4546 9.09866 12.8623 8.71422 13.3637 8.71422H14.7273C15.2287 8.71422 15.6364 9.09868 15.6364 9.57141V9.75C15.6364 9.88807 15.7484 10 15.8864 10H16.75C16.8881 10 17 9.88807 17 9.75V7.42859C17 7.19182 16.7964 7 16.5454 7H7.45457C7.20345 7 7 7.19193 7 7.42859V9.75ZM18 16.4545V12.6364L17.9999 12.6363C17.9999 11.7339 17.4232 10.9999 16.7142 11H7.28575C6.57675 11 6.0001 11.7339 6.0001 12.6363L6 16.4544C6 16.7557 6.19193 16.9999 6.42859 16.9999C6.66536 16.9999 6.85719 16.7556 6.85719 16.4544V15.9089L17.1428 15.909V16.4545C17.1428 16.7559 17.3347 17 17.5714 17C17.8082 17 18 16.7557 18 16.4545Z" fill="context-fill" fill-opacity="context-fill-opacity"/>
<path d="M16.7139 11C17.4229 10.9999 18 11.7344 18 12.6367V16.4541C18 16.7553 17.8081 17 17.5713 17C17.3347 16.9999 17.1426 16.7554 17.1426 16.4541V15.9092H6.85742V16.4541C6.85742 16.7553 6.66543 16.9999 6.42871 17C6.19205 17 6 16.7554 6 16.4541V12.6367C6 11.7344 6.57713 11 7.28613 11H16.7139ZM16.5459 7C16.7967 7.00024 17 7.19209 17 7.42871V9.75C17 9.88807 16.8881 10 16.75 10H15.8867C15.7486 10 15.6367 9.88807 15.6367 9.75V9.57129C15.6367 9.0987 15.2288 8.714 14.7275 8.71387H13.3633C12.8621 8.71409 12.4542 9.09873 12.4541 9.57129V9.75C12.4541 9.88807 12.3422 10 12.2041 10H11.7959C11.6578 10 11.5459 9.88807 11.5459 9.75V9.57129C11.5458 9.09875 11.1379 8.71409 10.6367 8.71387H9.27246C8.77124 8.714 8.36335 9.09867 8.36328 9.57129V9.75C8.36328 9.88807 8.25135 10 8.11328 10H7.25C7.11193 10 7 9.88807 7 9.75V7.42871C7 7.19219 7.2032 7.00024 7.4541 7H16.5459Z" fill="context-fill" fill-opacity="context-fill-opacity"/>
</svg>

Before

Width:  |  Height:  |  Size: 1.1 KiB

After

Width:  |  Height:  |  Size: 1.0 KiB

View File

@@ -1,3 +1,3 @@
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd" d="M9.5 5.5C8.39543 5.5 7.5 6.39543 7.5 7.5V17.5C7.5 17.9091 7.74563 18.2608 8.09744 18.4157C8.34017 18.5225 8.60536 18.3946 8.79289 18.2071L11.2929 15.7071C11.6834 15.3166 12.3166 15.3166 12.7071 15.7071L15.2071 18.2071C15.3946 18.3946 15.6598 18.5225 15.9026 18.4157C16.2544 18.2608 16.5 17.9091 16.5 17.5V7.5C16.5 6.39543 15.6046 5.5 14.5 5.5H9.5Z" fill="context-fill" fill-opacity="context-fill-opacity"/>
<path d="M14.5 5.5C15.6046 5.5 16.5 6.39543 16.5 7.5V17.5C16.5 18.0177 16.1067 18.4438 15.6025 18.4951V18.4951C15.5372 18.4982 15.4736 18.4736 15.4274 18.4274L12.7071 15.7071C12.3166 15.3166 11.6834 15.3166 11.2929 15.7071L8.57259 18.4274C8.52636 18.4736 8.46277 18.4982 8.39746 18.4951V18.4951C7.89333 18.4438 7.5 18.0177 7.5 17.5V7.5C7.5 6.39543 8.39543 5.5 9.5 5.5H14.5Z" fill="context-fill" fill-opacity="context-fill-opacity"/>
</svg>

Before

Width:  |  Height:  |  Size: 559 B

After

Width:  |  Height:  |  Size: 536 B

View File

@@ -1,3 +1,3 @@
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd" d="M12.5 18C16.0899 18 19 15.0899 19 11.5C19 7.91015 16.0899 5 12.5 5C8.91015 5 6 7.91015 6 11.5C6 12.9273 6.46006 14.2472 7.23998 15.3194C7.26155 15.8859 7.18156 16.4553 7 17L6.5 18.5L9.44403 17.2383C10.355 17.7244 11.3953 18 12.5 18ZM9.5 13C10.0523 13 10.5 12.5523 10.5 12C10.5 11.4477 10.0523 11 9.5 11C8.94772 11 8.5 11.4477 8.5 12C8.5 12.5523 8.94772 13 9.5 13ZM12.5 13C13.0523 13 13.5 12.5523 13.5 12C13.5 11.4477 13.0523 11 12.5 11C11.9477 11 11.5 11.4477 11.5 12C11.5 12.5523 11.9477 13 12.5 13ZM16.5 12C16.5 12.5523 16.0523 13 15.5 13C14.9477 13 14.5 12.5523 14.5 12C14.5 11.4477 14.9477 11 15.5 11C16.0523 11 16.5 11.4477 16.5 12Z" fill="context-fill" fill-opacity="context-fill-opacity"/>
<path d="M12.5 5C16.0899 5 19 7.91015 19 11.5C19 15.0899 16.0899 18 12.5 18C11.3952 18 10.3553 17.7235 9.44434 17.2373L6.5 18.5L7 17C7.18199 16.454 7.26137 15.8832 7.23926 15.3154C6.46065 14.2437 6 12.926 6 11.5C6 7.91015 8.91015 5 12.5 5ZM9.5 11C8.94772 11 8.5 11.4477 8.5 12C8.5 12.5523 8.94772 13 9.5 13C10.0523 13 10.5 12.5523 10.5 12C10.5 11.4477 10.0523 11 9.5 11ZM12.5 11C11.9477 11 11.5 11.4477 11.5 12C11.5 12.5523 11.9477 13 12.5 13C13.0523 13 13.5 12.5523 13.5 12C13.5 11.4477 13.0523 11 12.5 11ZM15.5 11C14.9477 11 14.5 11.4477 14.5 12C14.5 12.5523 14.9477 13 15.5 13C16.0523 13 16.5 12.5523 16.5 12C16.5 11.4477 16.0523 11 15.5 11Z" fill="context-fill" fill-opacity="context-fill-opacity"/>
</svg>

Before

Width:  |  Height:  |  Size: 849 B

After

Width:  |  Height:  |  Size: 807 B

View File

@@ -1,3 +1,3 @@
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd" d="M8.5 6.5C7.39543 6.5 6.5 7.39543 6.5 8.5V15.5C6.5 16.6046 7.39543 17.5 8.5 17.5H15.5C16.6046 17.5 17.5 16.6046 17.5 15.5V8.5C17.5 7.39543 16.6046 6.5 15.5 6.5H8.5ZM14.8763 9.82925C15.0581 9.62143 15.0371 9.30555 14.8293 9.12371C14.6214 8.94187 14.3056 8.96293 14.1237 9.17075L10.9756 12.7685L9.85355 11.6464C9.65829 11.4512 9.34171 11.4512 9.14645 11.6464C8.95118 11.8417 8.95118 12.1583 9.14645 12.3536L10.6464 13.8536C10.7443 13.9514 10.8783 14.0043 11.0166 13.9997C11.1549 13.9951 11.2852 13.9334 11.3763 13.8293L14.8763 9.82925Z" fill="context-fill" fill-opacity="context-fill-opacity"/>
<path d="M15.5 6.5C16.6046 6.5 17.5 7.39543 17.5 8.5V15.5C17.5 16.6046 16.6046 17.5 15.5 17.5H8.5C7.39543 17.5 6.5 16.6046 6.5 15.5V8.5C6.5 7.39543 7.39543 6.5 8.5 6.5H15.5ZM14.8291 9.12402C14.6213 8.9422 14.3059 8.96314 14.124 9.1709L10.9756 12.7686L9.85352 11.6465C9.65825 11.4512 9.34175 11.4512 9.14648 11.6465C8.95122 11.8417 8.95122 12.1583 9.14648 12.3535L10.6465 13.8535C10.7443 13.9514 10.8783 14.0046 11.0166 14C11.1549 13.9954 11.2849 13.9332 11.376 13.8291L14.876 9.8291C15.0578 9.62131 15.0369 9.30587 14.8291 9.12402Z" fill="context-fill" fill-opacity="context-fill-opacity"/>
</svg>

Before

Width:  |  Height:  |  Size: 744 B

After

Width:  |  Height:  |  Size: 694 B

View File

@@ -0,0 +1,3 @@
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd" d="M11.9443 8C10.3317 8 9.06974 8.91667 8.65452 10.0327C8.40496 10.7035 7.87607 11.2394 7.2245 11.5074C6.37374 11.8572 5.7777 12.6935 5.7777 13.6667C5.7777 14.9553 6.82236 16 8.11102 16H15.8887C17.1774 16 18.2221 14.9553 18.2221 13.6667C18.2221 12.6706 17.5975 11.8179 16.7151 11.4836C16.0411 11.2283 15.4871 10.6892 15.2237 10.0055C14.7986 8.90172 13.5432 8 11.9443 8ZM7.71729 9.68401C7.56689 10.0883 7.24313 10.4185 6.84421 10.5825C5.63154 11.0811 4.77771 12.2742 4.77771 13.6667C4.77771 15.5076 6.27008 17 8.11102 17H15.8887C17.7297 17 19.222 15.5076 19.222 13.6667C19.222 12.2414 18.3276 11.0251 17.0694 10.5485C16.6559 10.3918 16.3158 10.0587 16.1569 9.64606C15.5643 8.10776 13.9022 7 11.9443 7C9.97032 7 8.29694 8.12601 7.71729 9.68401Z" fill="context-fill" fill-opacity="context-fill-opacity"/>
</svg>

After

Width:  |  Height:  |  Size: 951 B

View File

@@ -1,3 +1,3 @@
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd" d="M7.06652 10.5825C7.46543 10.4185 7.7892 10.0883 7.9396 9.68401C8.51925 8.12601 10.1927 7 12.1666 7C14.1245 7 15.7867 8.10776 16.3793 9.64606C16.5382 10.0587 16.8783 10.3918 17.2918 10.5485C18.55 11.0251 19.4444 12.2414 19.4444 13.6667C19.4444 15.5076 17.9521 17 16.1111 17H8.33333C6.49238 17 5 15.5076 5 13.6667C5 12.2742 5.85384 11.0811 7.06652 10.5825Z" fill="context-fill" fill-opacity="context-fill-opacity"/>
<path d="M12.167 7C14.1246 7.00014 15.7853 8.10794 16.3775 9.64606C16.5365 10.0589 16.8768 10.3921 17.2905 10.5487C18.5493 11.0249 19.4443 12.2413 19.4443 13.667C19.4442 15.5077 17.9521 16.9999 16.1113 17H8.33301C6.49231 16.9998 5.00017 15.5077 5 13.667C5 12.2742 5.85428 11.081 7.06742 10.5826C7.46651 10.4187 7.79046 10.0884 7.94089 9.684C8.52044 8.12606 10.1931 7 12.167 7Z" fill="context-fill" fill-opacity="context-fill-opacity"/>
</svg>

Before

Width:  |  Height:  |  Size: 566 B

After

Width:  |  Height:  |  Size: 539 B

View File

@@ -1,3 +1,3 @@
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd" d="M12.5014 6C15.743 6 17.9984 7.12567 17.9987 8.13923C17.9987 8.13934 17.9988 8.13943 17.9989 8.13943C17.999 8.13943 17.9991 8.13952 17.9991 8.13964C17.9988 9.14934 15.7433 10.275 12.5014 10.275C9.25943 10.275 7 9.14915 7 8.13943C7 7.12582 9.25931 6 12.5014 6ZM12.5014 12.7477C9.25943 12.7477 7 11.6218 7 10.6121V9.96112C7 9.79071 7.20349 9.69343 7.34531 9.78791C8.45886 10.5297 10.3128 10.9991 12.5014 10.9991C14.6854 10.9991 16.5414 10.5301 17.6528 9.78881C17.7948 9.69415 17.9987 9.79147 17.9987 9.96206V10.6121C17.9987 11.6219 15.7436 12.7477 12.5014 12.7477ZM7 13.1043C7 14.114 9.25943 15.2398 12.5014 15.2398C14.6757 15.2398 16.405 14.733 17.3106 14.0947C17.4111 14.002 17.5194 13.9169 17.6277 13.8317L17.6278 13.8316C17.8678 13.5957 17.9993 13.3441 17.9993 13.1043V12.4328C17.9993 12.2625 17.7961 12.1653 17.6545 12.2598C16.5321 13.0082 14.6611 13.4911 12.502 13.4911C10.3423 13.4911 8.46807 13.0081 7.34514 12.2596C7.20349 12.1651 7.00042 12.2623 7.00033 12.4325L7 13.1043ZM12.5014 17.732C9.25943 17.732 7 16.6061 7 15.5964L7.00033 14.9246C7.00042 14.7544 7.20349 14.6573 7.34513 14.7517C8.46807 15.5002 10.3423 15.9832 12.502 15.9832C14.6611 15.9832 16.5321 15.5003 17.6545 14.7519C17.7961 14.6574 17.9993 14.7546 17.9993 14.9249V15.5964C17.9993 15.8362 17.8678 16.0878 17.6278 16.3237L17.6277 16.3238C17.5194 16.409 17.4111 16.4941 17.3106 16.5869C16.405 17.2251 14.6757 17.732 12.5014 17.732Z" fill="context-fill" fill-opacity="context-fill-opacity"/>
<path d="M17.999 15.5967C17.9989 15.8364 17.8678 16.0884 17.6279 16.3242C17.5197 16.4093 17.411 16.4942 17.3105 16.5869C16.4049 17.2252 14.6752 17.7324 12.501 17.7324C9.25954 17.7323 7.00044 16.6063 7 15.5967L7.0006 14.9247C7.00075 14.7546 7.20374 14.6575 7.34534 14.7519C8.46831 15.5003 10.3425 15.9834 12.502 15.9834C14.6609 15.9834 16.5319 15.5005 17.6543 14.7522C17.7959 14.6578 17.999 14.755 17.999 14.9253V15.5967ZM17.999 13.1045C17.9989 13.3442 17.8678 13.5962 17.6279 13.832C17.5197 13.9172 17.4111 14.002 17.3105 14.0947C16.4049 14.733 14.6752 15.2402 12.501 15.2402C9.25947 15.2401 7.00034 14.1141 7 13.1045L7.0006 12.4326C7.00075 12.2624 7.20374 12.1653 7.34534 12.2597C8.4683 13.0081 10.3424 13.4912 12.502 13.4912C14.6609 13.4912 16.5319 13.0083 17.6543 12.26C17.7959 12.1656 17.999 12.2628 17.999 12.4331V13.1045ZM17.999 10.6123C17.9988 11.622 15.7429 12.748 12.501 12.748C9.25941 12.7479 7.00026 11.6219 7 10.6123V9.96135C7 9.79094 7.20348 9.69366 7.34531 9.78812C8.45881 10.5298 10.3126 10.999 12.501 10.999C14.6849 10.999 16.5416 10.5304 17.6531 9.7892C17.7951 9.69455 17.999 9.79188 17.999 9.96248V10.6123ZM12.501 6C15.6413 6 17.8566 7.05643 17.9922 8.04395L17.999 8.13965C17.9987 9.14935 15.7429 10.2754 12.501 10.2754C9.25945 10.2753 7.00032 9.14926 7 8.13965C7 7.12608 9.2591 6.00011 12.501 6Z" fill="context-fill" fill-opacity="context-fill-opacity"/>
</svg>

Before

Width:  |  Height:  |  Size: 1.6 KiB

After

Width:  |  Height:  |  Size: 1.4 KiB

View File

@@ -1,3 +1,3 @@
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd" d="M5.33435 5.38869C5.25328 5.47796 5.19794 5.58755 5.17422 5.70578C5.14355 5.85845 4.94155 8.95378 7.82755 11.8391C10.5707 14.5804 12.3725 14.7081 13.5361 14.6171C13.6102 14.6113 13.6833 14.6375 13.7358 14.69L17.8461 18.8003C17.9437 18.898 18.102 18.898 18.1997 18.8003L18.7888 18.2112C18.8864 18.1136 18.8864 17.9553 18.7888 17.8577L13.6137 12.6826C13.516 12.5849 13.516 12.4266 13.6137 12.329L14.3174 11.6252C14.4151 11.5276 14.5734 11.5276 14.671 11.6252L15.3562 12.3104C15.4812 12.4354 15.6508 12.5056 15.8276 12.5056C16.0043 12.5056 16.1739 12.4354 16.2989 12.3104L19.9268 8.68256C20.0244 8.58493 20.0244 8.42663 19.9268 8.329L19.3377 7.73989C19.24 7.64226 19.0817 7.64226 18.9841 7.73989L16.0043 10.7197C15.9067 10.8173 15.7484 10.8173 15.6508 10.7197L15.6137 10.6826C15.516 10.5849 15.516 10.4266 15.6137 10.329L18.5934 7.34922C18.6911 7.25159 18.6911 7.0933 18.5934 6.99567L18.0043 6.40656C17.9067 6.30893 17.7484 6.30893 17.6508 6.40656L14.671 9.38634C14.5734 9.48397 14.4151 9.48397 14.3174 9.38634L14.2803 9.34922C14.1827 9.25159 14.1827 9.0933 14.2803 8.99567L17.2601 6.01589C17.3577 5.91826 17.3577 5.75997 17.2601 5.66234L16.671 5.07322C16.5734 4.97559 16.4151 4.97559 16.3174 5.07322L12.6896 8.70111C12.5646 8.82613 12.4944 8.99567 12.4944 9.17245C12.4944 9.34922 12.5646 9.51876 12.6896 9.64378L13.3748 10.329C13.4724 10.4266 13.4724 10.5849 13.3748 10.6826L12.671 11.3863C12.5734 11.4839 12.4151 11.4839 12.3174 11.3863L6.29889 5.36511C6.21355 5.27991 6.1067 5.21946 5.98972 5.19018C5.87274 5.1609 5.75001 5.1639 5.6346 5.19886C5.51919 5.23382 5.41542 5.29943 5.33435 5.38869ZM6.98405 18.605C7.08168 18.7026 7.23997 18.7026 7.3376 18.605L10.2649 15.6777C10.39 15.5526 10.3492 15.3404 10.1898 15.2638C9.94189 15.1448 9.69988 15.0139 9.46457 14.8716C9.36429 14.8109 9.23517 14.8247 9.15226 14.9076L6.39509 17.6623C6.29739 17.76 6.29735 17.9183 6.39501 18.016L6.98405 18.605Z" fill="context-fill" fill-opacity="context-fill-opacity"/>
<path d="M12.6896 8.70099C12.5647 8.82601 12.4943 8.99589 12.4943 9.17267C12.4944 9.34929 12.5648 9.51842 12.6896 9.64337L13.3752 10.3289C13.4728 10.4265 13.4728 10.5848 13.3752 10.6825L12.6711 11.3865C12.5735 11.4841 12.4152 11.4841 12.3175 11.3864L6.29901 5.36505C6.21367 5.27985 6.10642 5.21952 5.98944 5.19025C5.87263 5.16106 5.7502 5.16418 5.63495 5.19904C5.51955 5.23399 5.41524 5.29923 5.33417 5.38849C5.2531 5.47776 5.19773 5.58764 5.17401 5.70587C5.14326 5.8601 4.94246 8.95423 7.82733 11.8387C10.5702 14.5797 12.3721 14.7081 13.5358 14.6172C13.6099 14.6114 13.6829 14.6376 13.7354 14.6902L17.8459 18.8006C17.9435 18.8982 18.1018 18.8982 18.1994 18.8006L18.7892 18.2108C18.8868 18.1132 18.8868 17.9548 18.7892 17.8572L13.6135 12.6825C13.5159 12.5848 13.5159 12.4265 13.6135 12.3289L14.3175 11.6248C14.4152 11.5272 14.5735 11.5272 14.6711 11.6248L15.3566 12.3104C15.4816 12.4352 15.6507 12.5056 15.8273 12.5057C16.0041 12.5057 16.174 12.4353 16.299 12.3104L19.9269 8.68245C20.0246 8.58482 20.0246 8.42653 19.9269 8.3289L19.3381 7.74004C19.2404 7.64242 19.0822 7.64241 18.9845 7.74002L16.0041 10.7196C15.9065 10.8172 15.7482 10.8172 15.6506 10.7196L15.6135 10.6825C15.5159 10.5848 15.5159 10.4265 15.6135 10.3289L18.5939 7.34945C18.6915 7.25182 18.6915 7.09351 18.5939 6.99587L18.0041 6.40611C17.9065 6.30847 17.7482 6.30848 17.6506 6.40614L14.6711 9.38646C14.5735 9.48412 14.4152 9.48413 14.3175 9.38649L14.2804 9.34942C14.1828 9.2518 14.1828 9.09353 14.2804 8.99589L17.26 6.01546C17.3576 5.91783 17.3576 5.75955 17.26 5.66193L16.6711 5.07308C16.5735 4.97545 16.4152 4.97545 16.3175 5.07308L12.6896 8.70099ZM6.39481 17.662C6.29714 17.7596 6.29706 17.9179 6.39463 18.0155L6.98359 18.6051C7.08119 18.7028 7.23954 18.7029 7.33721 18.6052L10.2652 15.6781C10.3904 15.553 10.3496 15.3407 10.1901 15.2641C9.94213 15.1449 9.69992 15.0137 9.46452 14.8713C9.36425 14.8106 9.23513 14.8244 9.15223 14.9072L6.39481 17.662Z" fill="context-fill" fill-opacity="context-fill-opacity"/>
</svg>

Before

Width:  |  Height:  |  Size: 2.0 KiB

After

Width:  |  Height:  |  Size: 2.0 KiB

View File

@@ -1,3 +1,3 @@
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd" d="M7 12.5C7 9.80047 8.31653 6.59643 10.7399 5.40704C11.271 5.14637 11.8684 5 12.5 5C13.1316 5 13.729 5.14637 14.2601 5.40705C16.6835 6.59643 18 9.80047 18 12.5C18 15.5376 15.5376 18 12.5 18C9.46243 18 7 15.5376 7 12.5Z" fill="context-fill" fill-opacity="context-fill-opacity"/>
<path d="M12.5 5C13.1319 5 13.7295 5.14656 14.2606 5.40753C16.6831 6.59781 18 9.80094 18 12.5V12.5C18 15.5376 15.5376 18 12.5 18C9.46243 18 7 15.5376 7 12.5V12.5C7 9.80119 8.31627 6.5984 10.7383 5.40792C11.2698 5.1467 11.8677 5 12.5 5Z" fill="context-fill" fill-opacity="context-fill-opacity"/>
</svg>

Before

Width:  |  Height:  |  Size: 428 B

After

Width:  |  Height:  |  Size: 398 B

View File

@@ -1,3 +1,3 @@
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd" d="M6 8C6 6.89543 6.89539 6 8 6H10.5C11.1531 6 11.7087 6.4174 11.9147 7H17C18.1046 7 19 7.89543 19 9V9.5H6V8ZM6 10.5V15C6 16.1046 6.89539 17 8 17H17C18.1046 17 19 16.1046 19 15V10.5H6Z" fill="context-fill" fill-opacity="context-fill-opacity"/>
<path d="M19 15C19 16.1046 18.1046 17 17 17H8C6.89539 17 6 16.1046 6 15V10.5H19V15ZM10.5 6C11.1531 6 11.7091 6.4174 11.915 7H17C18.1046 7 19 7.89543 19 9V9.5H6V8C6 6.89543 6.89539 6 8 6H10.5Z" fill="context-fill" fill-opacity="context-fill-opacity"/>
</svg>

Before

Width:  |  Height:  |  Size: 393 B

After

Width:  |  Height:  |  Size: 354 B

View File

@@ -0,0 +1,3 @@
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M13 18H11V17H13V18ZM13 15.75C13.2761 15.75 13.5 15.9739 13.5 16.25C13.5 16.5261 13.2761 16.75 13 16.75H11C10.7239 16.75 10.5 16.5261 10.5 16.25C10.5 15.9739 10.7239 15.75 11 15.75H13ZM12 5C14.4853 5 16.5 7.01472 16.5 9.5C16.5 11.1267 15.6362 12.5507 14.3428 13.3408C13.8645 13.633 13.5 14.1173 13.5 14.6777C13.5 14.817 13.4786 14.9512 13.4385 15.0771C13.346 15.3674 13.0341 15.5 12.7295 15.5H12.25V12.2168C12.4207 12.1768 12.5804 12.1054 12.7129 12.0283C12.9122 11.9125 13.0794 11.7741 13.1768 11.6768L12.8232 11.3232C12.754 11.3925 12.621 11.5042 12.4619 11.5967C12.2993 11.6912 12.1362 11.75 12 11.75C11.8638 11.75 11.7007 11.6912 11.5381 11.5967C11.379 11.5042 11.246 11.3925 11.1768 11.3232L10.8232 11.6768C10.9206 11.7741 11.0879 11.9125 11.2871 12.0283C11.4196 12.1054 11.5793 12.1768 11.75 12.2168V15.5H11.2705C10.9659 15.5 10.654 15.3674 10.5615 15.0771C10.5214 14.9512 10.5 14.817 10.5 14.6777C10.5 14.1173 10.1355 13.633 9.65723 13.3408C8.36377 12.5507 7.5 11.1267 7.5 9.5C7.5 7.01472 9.51472 5 12 5Z" fill="context-fill" fill-opacity="context-fill-opacity"/>
</svg>

After

Width:  |  Height:  |  Size: 1.2 KiB

View File

@@ -1,3 +1,3 @@
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd" d="M7.5 7C6.39543 7 5.5 7.89543 5.5 9V15C5.5 16.1046 6.39543 17 7.5 17H16.5C17.6046 17 18.5 16.1046 18.5 15V9C18.5 7.89543 17.6046 7 16.5 7H7.5ZM8.32926 8.62372C8.12144 8.44188 7.80556 8.46294 7.62372 8.67075C7.44188 8.87857 7.46294 9.19445 7.67075 9.3763L11.6708 12.8763C11.8593 13.0412 12.1407 13.0412 12.3293 12.8763L16.3293 9.3763C16.5371 9.19445 16.5581 8.87857 16.3763 8.67075C16.1945 8.46294 15.8786 8.44188 15.6708 8.62372L12 11.8356L8.32926 8.62372Z" fill="context-fill" fill-opacity="context-fill-opacity"/>
<path d="M16.5 7C17.6046 7 18.5 7.89543 18.5 9V15C18.5 16.1046 17.6046 17 16.5 17H7.5C6.39543 17 5.5 16.1046 5.5 15V9C5.5 7.89543 6.39543 7 7.5 7H16.5ZM16.376 8.6709C16.1941 8.46315 15.8787 8.4422 15.6709 8.62402L12 11.8359L8.3291 8.62402C8.12131 8.4422 7.80587 8.46315 7.62402 8.6709C7.4422 8.87869 7.46315 9.19412 7.6709 9.37598L11.6709 12.876C11.8594 13.0409 12.1406 13.0409 12.3291 12.876L16.3291 9.37598C16.5369 9.19413 16.5578 8.87869 16.376 8.6709Z" fill="context-fill" fill-opacity="context-fill-opacity"/>
</svg>

Before

Width:  |  Height:  |  Size: 667 B

After

Width:  |  Height:  |  Size: 618 B

View File

@@ -1,3 +1,3 @@
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd" d="M9.5 16.4375L6.72361 17.8257C6.39116 17.9919 6 17.7502 6 17.3785V8.9375C6 8.78012 6.0741 8.63193 6.2 8.5375L9.5 6.0625V16.4375ZM10.5 16.4375L13.5 17.9375V7.875L10.5 6V16.4375ZM14.5 7.85417V17.875L17.765 15.8344C17.9112 15.743 18 15.5828 18 15.4104V6.99652C18 6.80713 17.893 6.634 17.7236 6.5493L17.2595 6.31726C17.099 6.23702 16.9079 6.24892 16.7586 6.34845L14.5 7.85417Z" fill="context-fill" fill-opacity="context-fill-opacity"/>
<path d="M13.5 7.87402V17.9375L10.5 16.4375V5.99902L13.5 7.87402ZM9.5 16.4375L6.72363 17.8262C6.39134 17.9922 6.00028 17.7503 6 17.3789V8.9375C6.00001 8.78013 6.0743 8.63153 6.2002 8.53711L9.5 6.0625V16.4375ZM16.7588 6.34863C16.9081 6.24915 17.0993 6.23715 17.2598 6.31738L17.7236 6.5498C17.8928 6.63447 17.9998 6.80696 18 6.99609V15.4102C18 15.5826 17.9108 15.7426 17.7646 15.834L14.5 17.875V7.85449L16.7588 6.34863Z" fill="context-fill" fill-opacity="context-fill-opacity"/>
</svg>

Before

Width:  |  Height:  |  Size: 583 B

After

Width:  |  Height:  |  Size: 580 B

View File

@@ -1,3 +1,3 @@
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd" d="M18.3584 13.2143C17.4293 13.9316 16.2645 14.3584 15 14.3584C11.9624 14.3584 9.5 11.8959 9.5 8.85836C9.5 7.59385 9.92673 6.42902 10.644 5.5C7.70505 6.12369 5.5 8.73352 5.5 11.8584C5.5 15.4482 8.41015 18.3584 12 18.3584C15.1248 18.3584 17.7347 16.1533 18.3584 13.2143Z" fill="context-fill" fill-opacity="context-fill-opacity"/>
<path d="M10.6445 5.5C9.92711 6.42905 9.5 7.59379 9.5 8.8584C9.50002 11.8959 11.9624 14.3584 15 14.3584C16.2646 14.3584 17.4284 13.9302 18.3574 13.2129C17.7342 16.1525 15.1253 18.3584 12 18.3584C8.41016 18.3584 5.50002 15.4482 5.5 11.8584C5.5 8.73339 7.70531 6.12351 10.6445 5.5Z" fill="context-fill" fill-opacity="context-fill-opacity"/>
</svg>

Before

Width:  |  Height:  |  Size: 478 B

After

Width:  |  Height:  |  Size: 442 B

View File

@@ -1,3 +1,3 @@
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd" d="M7.39313 8.8693C7.00893 9.09743 6.49922 8.98436 6.28679 8.59126C6.11992 8.28248 6.19189 7.89584 6.47741 7.69173C9.6339 5.43522 14.3475 5.43609 17.5229 7.69434C17.8072 7.89654 17.878 8.28162 17.7096 8.58715C17.4984 8.97031 16.9995 9.07869 16.6232 8.85554C15.2062 8.0153 13.6032 7.61096 11.9999 7.61096C10.4029 7.61096 8.80594 8.03041 7.39313 8.8693ZM7.35627 10.5745C7.1146 10.136 7.2317 9.58032 7.66255 9.32529C10.3286 7.7472 13.6712 7.7472 16.3373 9.32529C16.7681 9.58032 16.8852 10.136 16.6435 10.5745L12.8757 17.411C12.4955 18.1007 11.5043 18.1007 11.1241 17.411L7.35627 10.5745ZM10.5 10.75C10.5 11.1642 10.1642 11.5 9.74995 11.5C9.33574 11.5 8.99995 11.1642 8.99995 10.75C8.99995 10.3358 9.33574 10 9.74995 10C10.1642 10 10.5 10.3358 10.5 10.75ZM13.75 11.5C14.1642 11.5 14.5 11.1642 14.5 10.75C14.5 10.3358 14.1642 10 13.75 10C13.3357 10 13 10.3358 13 10.75C13 11.1642 13.3357 11.5 13.75 11.5ZM11.75 14.5C12.1642 14.5 12.5 14.1642 12.5 13.75C12.5 13.3358 12.1642 13 11.75 13C11.3357 13 11 13.3358 11 13.75C11 14.1642 11.3357 14.5 11.75 14.5Z" fill="context-fill" fill-opacity="context-fill-opacity"/>
<path d="M7.66309 9.3252C10.329 7.74741 13.671 7.74738 16.3369 9.3252C16.7677 9.58018 16.8851 10.1358 16.6436 10.5742L12.876 17.4111C12.4958 18.1008 11.5042 18.1008 11.124 17.4111L7.35645 10.5742C7.11491 10.1358 7.23229 9.58019 7.66309 9.3252ZM11.75 13C11.3358 13 11 13.3358 11 13.75C11 14.1642 11.3358 14.5 11.75 14.5C12.1642 14.5 12.5 14.1642 12.5 13.75C12.5 13.3358 12.1642 13 11.75 13ZM9.75 10C9.33579 10 9 10.3358 9 10.75C9 11.1642 9.33579 11.5 9.75 11.5C10.1642 11.5 10.5 11.1642 10.5 10.75C10.5 10.3358 10.1642 10 9.75 10ZM13.75 10C13.3358 10 13 10.3358 13 10.75C13 11.1642 13.3358 11.5 13.75 11.5C14.1642 11.5 14.5 11.1642 14.5 10.75C14.5 10.3358 14.1642 10 13.75 10ZM6.47754 7.69141C9.63392 5.43512 14.3472 5.43636 17.5225 7.69434C17.8067 7.89647 17.8782 8.28143 17.71 8.58691C17.4987 8.97007 16.9994 9.07863 16.623 8.85547C15.2061 8.01531 13.6032 7.61133 12 7.61133C10.4031 7.61133 8.80628 8.03038 7.39355 8.86914C7.00935 9.09727 6.49954 8.98392 6.28711 8.59082C6.1204 8.28208 6.19209 7.89547 6.47754 7.69141Z" fill="context-fill" fill-opacity="context-fill-opacity"/>
</svg>

Before

Width:  |  Height:  |  Size: 1.2 KiB

After

Width:  |  Height:  |  Size: 1.2 KiB

View File

@@ -1,3 +1,3 @@
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd" d="M13.5986 7.13471C13.2645 7.30179 13 7.63081 13 8.1875V9.1875H12V8.1875C12 7.63081 11.7355 7.30179 11.4014 7.13471C11.0422 6.9551 10.5828 6.9551 10.2236 7.13471C10.0852 7.20392 10.0326 7.29307 10.0059 7.45157C9.99056 7.5427 9.98676 7.64887 9.9891 7.77756C9.9898 7.81561 9.99156 7.86712 9.99347 7.92294L9.99347 7.92297C9.99655 8.01267 10 8.1135 10 8.1875C10 8.45131 10.013 8.65333 10.1404 8.81265C10.2535 8.95398 10.568 9.18673 11.4954 9.1875H12V13.1875H7.66636C7.61551 13.1609 7.56117 13.1401 7.50506 13.1258C6.63988 12.9055 6 12.1212 6 11.1875C6 10.0829 6.89543 9.1875 8 9.1875H9.19731C8.99899 8.80459 8.99964 8.41326 8.99997 8.21059L9 8.1875C9 8.11744 8.99783 8.06123 8.99532 7.99616C8.99317 7.94055 8.99077 7.87848 8.98927 7.79575C8.98654 7.64574 8.98916 7.46745 9.01976 7.2856C9.08497 6.89816 9.28236 6.4873 9.77639 6.24029C10.4172 5.9199 11.2078 5.91991 11.8486 6.24029C12.0958 6.36388 12.3181 6.53406 12.5 6.74747C12.6819 6.53406 12.9042 6.36388 13.1514 6.24029C13.7922 5.91991 14.5828 5.9199 15.2236 6.24029C15.7176 6.4873 15.915 6.89816 15.9802 7.2856C16.0108 7.46745 16.0135 7.64574 16.0107 7.79575C16.0092 7.87846 16.0068 7.94053 16.0047 7.99614V7.99615V7.99616V7.9962V7.99622C16.0022 8.06126 16 8.11746 16 8.1875L16 8.21059C16.0004 8.41326 16.001 8.80459 15.8027 9.1875H17C18.1046 9.1875 19 10.0829 19 11.1875C19 12.1212 18.3601 12.9055 17.4949 13.1258C17.4388 13.1401 17.3845 13.1609 17.3336 13.1875H13V9.1875H13.5046C14.432 9.18673 14.7465 8.95398 14.8596 8.81265C14.987 8.65333 15 8.45131 15 8.1875C15 8.11352 15.0035 8.01273 15.0065 7.92305L15.0065 7.923V7.92297C15.0084 7.86714 15.0102 7.81562 15.0109 7.77756C15.0132 7.64887 15.0094 7.5427 14.9941 7.45157C14.9674 7.29307 14.9148 7.20392 14.7764 7.13471C14.4172 6.9551 13.9578 6.9551 13.5986 7.13471ZM8 14.1875L8 16.1875C8 17.2921 8.89543 18.1875 10 18.1875H12V14.1875H8ZM13 18.1875H15C16.1046 18.1875 17 17.2921 17 16.1875V14.1875H13V18.1875Z" fill="context-fill" fill-opacity="context-fill-opacity"/>
<path d="M12 18.1878H10C8.89553 18.1878 8.00016 17.2922 8 16.1878V14.1878H12V18.1878ZM17 16.1878C16.9998 17.2922 16.1045 18.1878 15 18.1878H13V14.1878H17V16.1878ZM13.1514 6.24054C13.7921 5.92015 14.5829 5.92015 15.2236 6.24054C15.7174 6.48748 15.9152 6.89816 15.9805 7.28546C16.011 7.4672 16.0135 7.64626 16.0107 7.7962C16.0075 7.9754 16 8.05798 16 8.1878C16 8.38308 16.0058 8.78939 15.7988 9.1878H17C18.1046 9.1878 19 10.0832 19 11.1878C18.9998 12.2233 18.2127 13.0748 17.2041 13.1771C17.185 13.1781 17.1668 13.1822 17.1494 13.1878H13V9.1878H13.5C14.4306 9.1878 14.746 8.95438 14.8594 8.8128C14.9868 8.65354 15 8.45146 15 8.1878C15 8.06786 15.0089 7.87694 15.0107 7.77765C15.0131 7.64919 15.0094 7.54248 14.9941 7.45147C14.9675 7.29326 14.9146 7.20421 14.7764 7.13507C14.4171 6.95545 13.9579 6.95545 13.5986 7.13507C13.2645 7.30216 13 7.63118 13 8.1878V9.1878H12V8.1878C12 7.63118 11.7355 7.30216 11.4014 7.13507C11.0421 6.95545 10.5829 6.95545 10.2236 7.13507C10.0854 7.20421 10.0325 7.29326 10.0059 7.45147C9.99057 7.54248 9.98693 7.64919 9.98926 7.77765C9.99108 7.87694 10 8.06786 10 8.1878C10 8.45146 10.0132 8.65354 10.1406 8.8128C10.254 8.95438 10.5694 9.1878 11.5 9.1878H12V13.1878H7.85059C7.83318 13.1822 7.81498 13.1781 7.7959 13.1771C6.78732 13.0748 6.00015 12.2233 6 11.1878C6 10.0832 6.89543 9.1878 8 9.1878H9.20117C8.99424 8.78939 8.99999 8.38308 9 8.1878C9 8.05798 8.99253 7.9754 8.98926 7.7962C8.98653 7.64626 8.98897 7.4672 9.01953 7.28546C9.0848 6.89816 9.28259 6.48748 9.77637 6.24054C10.4171 5.92015 11.2079 5.92015 11.8486 6.24054C12.0958 6.36412 12.3182 6.53401 12.5 6.74737C12.6818 6.53401 12.9042 6.36412 13.1514 6.24054Z" fill="context-fill" fill-opacity="context-fill-opacity"/>
</svg>

Before

Width:  |  Height:  |  Size: 2.1 KiB

After

Width:  |  Height:  |  Size: 1.8 KiB

View File

@@ -1,3 +1,3 @@
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M14.1053 10.25C13.8926 10.25 13.7031 10.1153 13.6332 9.91441L12.4722 6.58014C12.3164 6.1327 11.6836 6.13269 11.5278 6.58014L10.3668 9.91441C10.2969 10.1153 10.1074 10.25 9.89465 10.25H6.44986C5.97457 10.25 5.7674 10.8507 6.14165 11.1437L9.00336 13.3839C9.16873 13.5134 9.23558 13.7324 9.17069 13.9321L8.07245 17.3125C7.9228 17.7732 8.45003 18.1562 8.84188 17.8715L11.7061 15.7905C11.8814 15.6632 12.1186 15.6632 12.2939 15.7905L15.1581 17.8715C15.55 18.1562 16.0772 17.7732 15.9275 17.3125L14.8293 13.9321C14.7644 13.7324 14.8313 13.5134 14.9966 13.3839L17.8583 11.1437C18.2326 10.8507 18.0254 10.25 17.5501 10.25H14.1053Z" fill="context-fill" fill-opacity="context-fill-opacity"/>
<path d="M14.1053 10.25C13.8926 10.25 13.7031 10.1153 13.6332 9.91441L12.4722 6.58014C12.3164 6.1327 11.6836 6.13269 11.5278 6.58014L10.3668 9.91441C10.2969 10.1153 10.1074 10.25 9.89465 10.25H6.44986C5.97457 10.25 5.7674 10.8507 6.14165 11.1437L9.00336 13.3839C9.16873 13.5134 9.23558 13.7324 9.17069 13.9321L8.07245 17.3125C7.9228 17.7732 8.45003 18.1562 8.84188 17.8715L11.7061 15.7905C11.8814 15.6632 12.1187 15.6632 12.2939 15.7905L15.1581 17.8715C15.55 18.1562 16.0772 17.7732 15.9275 17.3125L14.8293 13.9321C14.7644 13.7324 14.8313 13.5134 14.9966 13.3839L17.8583 11.1437C18.2326 10.8507 18.0254 10.25 17.5501 10.25H14.1053Z" fill="context-fill" fill-opacity="context-fill-opacity"/>
</svg>

Before

Width:  |  Height:  |  Size: 794 B

After

Width:  |  Height:  |  Size: 794 B

View File

@@ -1,3 +1,3 @@
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd" d="M7.5 6C6.39543 6 5.5 6.89543 5.5 8V16C5.5 17.1046 6.39543 18 7.5 18H16.5C17.6046 18 18.5 17.1046 18.5 16V8C18.5 6.89543 17.6046 6 16.5 6H7.5ZM8.79289 10L7.14645 8.35355C6.95118 8.15829 6.95118 7.84171 7.14645 7.64645C7.34171 7.45118 7.65829 7.45118 7.85355 7.64645L9.85355 9.64645C10.0488 9.84171 10.0488 10.1583 9.85355 10.3536L7.85355 12.3536C7.65829 12.5488 7.34171 12.5488 7.14645 12.3536C6.95118 12.1583 6.95118 11.8417 7.14645 11.6464L8.79289 10ZM10 11.5C10 11.2239 10.2239 11 10.5 11H12C12.2761 11 12.5 11.2239 12.5 11.5C12.5 11.7761 12.2761 12 12 12H10.5C10.2239 12 10 11.7761 10 11.5Z" fill="context-fill" fill-opacity="context-fill-opacity"/>
<path d="M16.5 6C17.6046 6 18.5 6.89543 18.5 8V16C18.5 17.1046 17.6046 18 16.5 18H7.5C6.39543 18 5.5 17.1046 5.5 16V8C5.5 6.89543 6.39543 6 7.5 6H16.5ZM7.85352 7.64648C7.65825 7.45123 7.34174 7.45123 7.14648 7.64648C6.95123 7.84174 6.95123 8.15825 7.14648 8.35352L8.79297 10L7.14648 11.6465C6.95123 11.8417 6.95123 12.1583 7.14648 12.3535C7.34175 12.5488 7.65826 12.5488 7.85352 12.3535L9.85352 10.3535C10.0488 10.1583 10.0488 9.84175 9.85352 9.64648L7.85352 7.64648ZM10.5 11C10.2239 11 10 11.2239 10 11.5C10 11.7761 10.2239 12 10.5 12H12C12.2761 12 12.5 11.7761 12.5 11.5C12.5 11.2239 12.2761 11 12 11H10.5Z" fill="context-fill" fill-opacity="context-fill-opacity"/>
</svg>

Before

Width:  |  Height:  |  Size: 805 B

After

Width:  |  Height:  |  Size: 771 B

View File

@@ -38,15 +38,15 @@
skin/classic/browser/zen-icons/edit-paste.svg (../shared/zen-icons/lin/edit-paste.svg)
skin/classic/browser/zen-icons/edit-redo.svg (../shared/zen-icons/lin/edit-redo.svg)
skin/classic/browser/zen-icons/edit-select-all.svg (../shared/zen-icons/lin/edit-select-all.svg)
skin/classic/browser/zen-icons/edit.svg (../shared/zen-icons/lin/edit.svg)
skin/classic/browser/zen-icons/edit-theme.svg (../shared/zen-icons/lin/edit-theme.svg)
skin/classic/browser/zen-icons/edit-undo.svg (../shared/zen-icons/lin/edit-undo.svg)
skin/classic/browser/zen-icons/edit.svg (../shared/zen-icons/lin/edit.svg)
skin/classic/browser/zen-icons/essential-add.svg (../shared/zen-icons/lin/essential-add.svg)
skin/classic/browser/zen-icons/essential-remove.svg (../shared/zen-icons/lin/essential-remove.svg)
skin/classic/browser/zen-icons/expand-sidebar.svg (../shared/zen-icons/lin/expand-sidebar.svg)
skin/classic/browser/zen-icons/ext-link.svg (../shared/zen-icons/lin/ext-link.svg)
skin/classic/browser/zen-icons/extension-blocked.svg (../shared/zen-icons/lin/extension-blocked.svg)
skin/classic/browser/zen-icons/extension.svg (../shared/zen-icons/lin/extension.svg)
skin/classic/browser/zen-icons/ext-link.svg (../shared/zen-icons/lin/ext-link.svg)
skin/classic/browser/zen-icons/face-sun.svg (../shared/zen-icons/lin/face-sun.svg)
skin/classic/browser/zen-icons/firefox.svg (../shared/zen-icons/lin/firefox.svg)
skin/classic/browser/zen-icons/folder.svg (../shared/zen-icons/lin/folder.svg)
@@ -100,26 +100,26 @@
skin/classic/browser/zen-icons/pocket-outline.svg (../shared/zen-icons/lin/pocket-outline.svg)
skin/classic/browser/zen-icons/popup.svg (../shared/zen-icons/lin/popup.svg)
skin/classic/browser/zen-icons/print.svg (../shared/zen-icons/lin/print.svg)
skin/classic/browser/zen-icons/privateBrowsing.svg (../shared/zen-icons/lin/privateBrowsing.svg)
skin/classic/browser/zen-icons/private-window.svg (../shared/zen-icons/lin/private-window.svg)
skin/classic/browser/zen-icons/privateBrowsing.svg (../shared/zen-icons/lin/privateBrowsing.svg)
skin/classic/browser/zen-icons/reader-mode.svg (../shared/zen-icons/lin/reader-mode.svg)
skin/classic/browser/zen-icons/reload.svg (../shared/zen-icons/lin/reload.svg)
skin/classic/browser/zen-icons/reload-to-stop.svg (../shared/zen-icons/lin/reload-to-stop.svg)
skin/classic/browser/zen-icons/reload.svg (../shared/zen-icons/lin/reload.svg)
skin/classic/browser/zen-icons/report.svg (../shared/zen-icons/lin/report.svg)
skin/classic/browser/zen-icons/save.svg (../shared/zen-icons/lin/save.svg)
skin/classic/browser/zen-icons/screen-blocked.svg (../shared/zen-icons/lin/screen-blocked.svg)
skin/classic/browser/zen-icons/screenshot.svg (../shared/zen-icons/lin/screenshot.svg)
skin/classic/browser/zen-icons/screen.svg (../shared/zen-icons/lin/screen.svg)
skin/classic/browser/zen-icons/screenshot.svg (../shared/zen-icons/lin/screenshot.svg)
skin/classic/browser/zen-icons/search-glass.svg (../shared/zen-icons/lin/search-glass.svg)
skin/classic/browser/zen-icons/search-page.svg (../shared/zen-icons/lin/search-page.svg)
skin/classic/browser/zen-icons/security-broken.svg (../shared/zen-icons/lin/security-broken.svg)
skin/classic/browser/zen-icons/security.svg (../shared/zen-icons/lin/security.svg)
skin/classic/browser/zen-icons/security-warning.svg (../shared/zen-icons/lin/security-warning.svg)
skin/classic/browser/zen-icons/security.svg (../shared/zen-icons/lin/security.svg)
skin/classic/browser/zen-icons/send-to-device.svg (../shared/zen-icons/lin/send-to-device.svg)
skin/classic/browser/zen-icons/settings.svg (../shared/zen-icons/lin/settings.svg)
skin/classic/browser/zen-icons/share.svg (../shared/zen-icons/lin/share.svg)
skin/classic/browser/zen-icons/sidebars-right.svg (../shared/zen-icons/lin/sidebars-right.svg)
skin/classic/browser/zen-icons/sidebar.svg (../shared/zen-icons/lin/sidebar.svg)
skin/classic/browser/zen-icons/sidebars-right.svg (../shared/zen-icons/lin/sidebars-right.svg)
skin/classic/browser/zen-icons/source-code.svg (../shared/zen-icons/lin/source-code.svg)
skin/classic/browser/zen-icons/sparkles.svg (../shared/zen-icons/lin/sparkles.svg)
skin/classic/browser/zen-icons/spell-check.svg (../shared/zen-icons/lin/spell-check.svg)
@@ -180,15 +180,15 @@
skin/classic/browser/zen-icons/edit-paste.svg (../shared/zen-icons/lin/edit-paste.svg)
skin/classic/browser/zen-icons/edit-redo.svg (../shared/zen-icons/lin/edit-redo.svg)
skin/classic/browser/zen-icons/edit-select-all.svg (../shared/zen-icons/lin/edit-select-all.svg)
skin/classic/browser/zen-icons/edit.svg (../shared/zen-icons/lin/edit.svg)
skin/classic/browser/zen-icons/edit-theme.svg (../shared/zen-icons/lin/edit-theme.svg)
skin/classic/browser/zen-icons/edit-undo.svg (../shared/zen-icons/lin/edit-undo.svg)
skin/classic/browser/zen-icons/edit.svg (../shared/zen-icons/lin/edit.svg)
skin/classic/browser/zen-icons/essential-add.svg (../shared/zen-icons/lin/essential-add.svg)
skin/classic/browser/zen-icons/essential-remove.svg (../shared/zen-icons/lin/essential-remove.svg)
skin/classic/browser/zen-icons/expand-sidebar.svg (../shared/zen-icons/lin/expand-sidebar.svg)
skin/classic/browser/zen-icons/ext-link.svg (../shared/zen-icons/lin/ext-link.svg)
skin/classic/browser/zen-icons/extension-blocked.svg (../shared/zen-icons/lin/extension-blocked.svg)
skin/classic/browser/zen-icons/extension.svg (../shared/zen-icons/lin/extension.svg)
skin/classic/browser/zen-icons/ext-link.svg (../shared/zen-icons/lin/ext-link.svg)
skin/classic/browser/zen-icons/face-sun.svg (../shared/zen-icons/lin/face-sun.svg)
skin/classic/browser/zen-icons/firefox.svg (../shared/zen-icons/lin/firefox.svg)
skin/classic/browser/zen-icons/folder.svg (../shared/zen-icons/lin/folder.svg)
@@ -242,26 +242,26 @@
skin/classic/browser/zen-icons/pocket-outline.svg (../shared/zen-icons/lin/pocket-outline.svg)
skin/classic/browser/zen-icons/popup.svg (../shared/zen-icons/lin/popup.svg)
skin/classic/browser/zen-icons/print.svg (../shared/zen-icons/lin/print.svg)
skin/classic/browser/zen-icons/privateBrowsing.svg (../shared/zen-icons/lin/privateBrowsing.svg)
skin/classic/browser/zen-icons/private-window.svg (../shared/zen-icons/lin/private-window.svg)
skin/classic/browser/zen-icons/privateBrowsing.svg (../shared/zen-icons/lin/privateBrowsing.svg)
skin/classic/browser/zen-icons/reader-mode.svg (../shared/zen-icons/lin/reader-mode.svg)
skin/classic/browser/zen-icons/reload.svg (../shared/zen-icons/lin/reload.svg)
skin/classic/browser/zen-icons/reload-to-stop.svg (../shared/zen-icons/lin/reload-to-stop.svg)
skin/classic/browser/zen-icons/reload.svg (../shared/zen-icons/lin/reload.svg)
skin/classic/browser/zen-icons/report.svg (../shared/zen-icons/lin/report.svg)
skin/classic/browser/zen-icons/save.svg (../shared/zen-icons/lin/save.svg)
skin/classic/browser/zen-icons/screen-blocked.svg (../shared/zen-icons/lin/screen-blocked.svg)
skin/classic/browser/zen-icons/screenshot.svg (../shared/zen-icons/lin/screenshot.svg)
skin/classic/browser/zen-icons/screen.svg (../shared/zen-icons/lin/screen.svg)
skin/classic/browser/zen-icons/screenshot.svg (../shared/zen-icons/lin/screenshot.svg)
skin/classic/browser/zen-icons/search-glass.svg (../shared/zen-icons/lin/search-glass.svg)
skin/classic/browser/zen-icons/search-page.svg (../shared/zen-icons/lin/search-page.svg)
skin/classic/browser/zen-icons/security-broken.svg (../shared/zen-icons/lin/security-broken.svg)
skin/classic/browser/zen-icons/security.svg (../shared/zen-icons/lin/security.svg)
skin/classic/browser/zen-icons/security-warning.svg (../shared/zen-icons/lin/security-warning.svg)
skin/classic/browser/zen-icons/security.svg (../shared/zen-icons/lin/security.svg)
skin/classic/browser/zen-icons/send-to-device.svg (../shared/zen-icons/lin/send-to-device.svg)
skin/classic/browser/zen-icons/settings.svg (../shared/zen-icons/lin/settings.svg)
skin/classic/browser/zen-icons/share.svg (../shared/zen-icons/lin/share.svg)
skin/classic/browser/zen-icons/sidebars-right.svg (../shared/zen-icons/lin/sidebars-right.svg)
skin/classic/browser/zen-icons/sidebar.svg (../shared/zen-icons/lin/sidebar.svg)
skin/classic/browser/zen-icons/sidebars-right.svg (../shared/zen-icons/lin/sidebars-right.svg)
skin/classic/browser/zen-icons/source-code.svg (../shared/zen-icons/lin/source-code.svg)
skin/classic/browser/zen-icons/sparkles.svg (../shared/zen-icons/lin/sparkles.svg)
skin/classic/browser/zen-icons/spell-check.svg (../shared/zen-icons/lin/spell-check.svg)
@@ -322,15 +322,15 @@
skin/classic/browser/zen-icons/edit-paste.svg (../shared/zen-icons/lin/edit-paste.svg)
skin/classic/browser/zen-icons/edit-redo.svg (../shared/zen-icons/lin/edit-redo.svg)
skin/classic/browser/zen-icons/edit-select-all.svg (../shared/zen-icons/lin/edit-select-all.svg)
skin/classic/browser/zen-icons/edit.svg (../shared/zen-icons/lin/edit.svg)
skin/classic/browser/zen-icons/edit-theme.svg (../shared/zen-icons/lin/edit-theme.svg)
skin/classic/browser/zen-icons/edit-undo.svg (../shared/zen-icons/lin/edit-undo.svg)
skin/classic/browser/zen-icons/edit.svg (../shared/zen-icons/lin/edit.svg)
skin/classic/browser/zen-icons/essential-add.svg (../shared/zen-icons/lin/essential-add.svg)
skin/classic/browser/zen-icons/essential-remove.svg (../shared/zen-icons/lin/essential-remove.svg)
skin/classic/browser/zen-icons/expand-sidebar.svg (../shared/zen-icons/lin/expand-sidebar.svg)
skin/classic/browser/zen-icons/ext-link.svg (../shared/zen-icons/lin/ext-link.svg)
skin/classic/browser/zen-icons/extension-blocked.svg (../shared/zen-icons/lin/extension-blocked.svg)
skin/classic/browser/zen-icons/extension.svg (../shared/zen-icons/lin/extension.svg)
skin/classic/browser/zen-icons/ext-link.svg (../shared/zen-icons/lin/ext-link.svg)
skin/classic/browser/zen-icons/face-sun.svg (../shared/zen-icons/lin/face-sun.svg)
skin/classic/browser/zen-icons/firefox.svg (../shared/zen-icons/lin/firefox.svg)
skin/classic/browser/zen-icons/folder.svg (../shared/zen-icons/lin/folder.svg)
@@ -384,26 +384,26 @@
skin/classic/browser/zen-icons/pocket-outline.svg (../shared/zen-icons/lin/pocket-outline.svg)
skin/classic/browser/zen-icons/popup.svg (../shared/zen-icons/lin/popup.svg)
skin/classic/browser/zen-icons/print.svg (../shared/zen-icons/lin/print.svg)
skin/classic/browser/zen-icons/privateBrowsing.svg (../shared/zen-icons/lin/privateBrowsing.svg)
skin/classic/browser/zen-icons/private-window.svg (../shared/zen-icons/lin/private-window.svg)
skin/classic/browser/zen-icons/privateBrowsing.svg (../shared/zen-icons/lin/privateBrowsing.svg)
skin/classic/browser/zen-icons/reader-mode.svg (../shared/zen-icons/lin/reader-mode.svg)
skin/classic/browser/zen-icons/reload.svg (../shared/zen-icons/lin/reload.svg)
skin/classic/browser/zen-icons/reload-to-stop.svg (../shared/zen-icons/lin/reload-to-stop.svg)
skin/classic/browser/zen-icons/reload.svg (../shared/zen-icons/lin/reload.svg)
skin/classic/browser/zen-icons/report.svg (../shared/zen-icons/lin/report.svg)
skin/classic/browser/zen-icons/save.svg (../shared/zen-icons/lin/save.svg)
skin/classic/browser/zen-icons/screen-blocked.svg (../shared/zen-icons/lin/screen-blocked.svg)
skin/classic/browser/zen-icons/screenshot.svg (../shared/zen-icons/lin/screenshot.svg)
skin/classic/browser/zen-icons/screen.svg (../shared/zen-icons/lin/screen.svg)
skin/classic/browser/zen-icons/screenshot.svg (../shared/zen-icons/lin/screenshot.svg)
skin/classic/browser/zen-icons/search-glass.svg (../shared/zen-icons/lin/search-glass.svg)
skin/classic/browser/zen-icons/search-page.svg (../shared/zen-icons/lin/search-page.svg)
skin/classic/browser/zen-icons/security-broken.svg (../shared/zen-icons/lin/security-broken.svg)
skin/classic/browser/zen-icons/security.svg (../shared/zen-icons/lin/security.svg)
skin/classic/browser/zen-icons/security-warning.svg (../shared/zen-icons/lin/security-warning.svg)
skin/classic/browser/zen-icons/security.svg (../shared/zen-icons/lin/security.svg)
skin/classic/browser/zen-icons/send-to-device.svg (../shared/zen-icons/lin/send-to-device.svg)
skin/classic/browser/zen-icons/settings.svg (../shared/zen-icons/lin/settings.svg)
skin/classic/browser/zen-icons/share.svg (../shared/zen-icons/lin/share.svg)
skin/classic/browser/zen-icons/sidebars-right.svg (../shared/zen-icons/lin/sidebars-right.svg)
skin/classic/browser/zen-icons/sidebar.svg (../shared/zen-icons/lin/sidebar.svg)
skin/classic/browser/zen-icons/sidebars-right.svg (../shared/zen-icons/lin/sidebars-right.svg)
skin/classic/browser/zen-icons/source-code.svg (../shared/zen-icons/lin/source-code.svg)
skin/classic/browser/zen-icons/sparkles.svg (../shared/zen-icons/lin/sparkles.svg)
skin/classic/browser/zen-icons/spell-check.svg (../shared/zen-icons/lin/spell-check.svg)
@@ -434,11 +434,12 @@
skin/classic/browser/zen-icons/selectable/basket.svg (../shared/zen-icons/common/selectable/basket.svg)
skin/classic/browser/zen-icons/selectable/bed.svg (../shared/zen-icons/common/selectable/bed.svg)
skin/classic/browser/zen-icons/selectable/bell.svg (../shared/zen-icons/common/selectable/bell.svg)
skin/classic/browser/zen-icons/selectable/bookmark.svg (../shared/zen-icons/common/selectable/bookmark.svg)
skin/classic/browser/zen-icons/selectable/book.svg (../shared/zen-icons/common/selectable/book.svg)
skin/classic/browser/zen-icons/selectable/bookmark.svg (../shared/zen-icons/common/selectable/bookmark.svg)
skin/classic/browser/zen-icons/selectable/chat.svg (../shared/zen-icons/common/selectable/chat.svg)
skin/classic/browser/zen-icons/selectable/checkbox.svg (../shared/zen-icons/common/selectable/checkbox.svg)
skin/classic/browser/zen-icons/selectable/circle.svg (../shared/zen-icons/common/selectable/circle.svg)
skin/classic/browser/zen-icons/selectable/cloud-outline.svg (../shared/zen-icons/common/selectable/cloud-outline.svg)
skin/classic/browser/zen-icons/selectable/cloud.svg (../shared/zen-icons/common/selectable/cloud.svg)
skin/classic/browser/zen-icons/selectable/code.svg (../shared/zen-icons/common/selectable/code.svg)
skin/classic/browser/zen-icons/selectable/coins.svg (../shared/zen-icons/common/selectable/coins.svg)
@@ -446,6 +447,7 @@
skin/classic/browser/zen-icons/selectable/egg.svg (../shared/zen-icons/common/selectable/egg.svg)
skin/classic/browser/zen-icons/selectable/flag.svg (../shared/zen-icons/common/selectable/flag.svg)
skin/classic/browser/zen-icons/selectable/folder.svg (../shared/zen-icons/common/selectable/folder.svg)
skin/classic/browser/zen-icons/selectable/globe-1.svg (../shared/zen-icons/common/selectable/globe-1.svg)
skin/classic/browser/zen-icons/selectable/globe.svg (../shared/zen-icons/common/selectable/globe.svg)
skin/classic/browser/zen-icons/selectable/grid-2x2.svg (../shared/zen-icons/common/selectable/grid-2x2.svg)
skin/classic/browser/zen-icons/selectable/grid-3x3.svg (../shared/zen-icons/common/selectable/grid-3x3.svg)
@@ -466,9 +468,9 @@
skin/classic/browser/zen-icons/selectable/present.svg (../shared/zen-icons/common/selectable/present.svg)
skin/classic/browser/zen-icons/selectable/shapes.svg (../shared/zen-icons/common/selectable/shapes.svg)
skin/classic/browser/zen-icons/selectable/skull.svg (../shared/zen-icons/common/selectable/skull.svg)
skin/classic/browser/zen-icons/selectable/squares.svg (../shared/zen-icons/common/selectable/squares.svg)
skin/classic/browser/zen-icons/selectable/square.svg (../shared/zen-icons/common/selectable/square.svg)
skin/classic/browser/zen-icons/selectable/star-2.svg (../shared/zen-icons/common/selectable/star-2.svg)
skin/classic/browser/zen-icons/selectable/squares.svg (../shared/zen-icons/common/selectable/squares.svg)
skin/classic/browser/zen-icons/selectable/star-1.svg (../shared/zen-icons/common/selectable/star-1.svg)
skin/classic/browser/zen-icons/selectable/star.svg (../shared/zen-icons/common/selectable/star.svg)
skin/classic/browser/zen-icons/selectable/sun.svg (../shared/zen-icons/common/selectable/sun.svg)
skin/classic/browser/zen-icons/selectable/terminal.svg (../shared/zen-icons/common/selectable/terminal.svg)

View File

View File

@@ -110,26 +110,8 @@ export var ZenCustomizableUI = new (class {
if (button.hasAttribute('open')) {
return;
}
const image = button.querySelector('image');
const popup = window.document.getElementById('zenCreateNewPopup');
button.setAttribute('open', 'true');
const handlePopupHidden = () => {
window.setTimeout(() => {
button.removeAttribute('open');
}, 500);
window.gZenUIManager.motion.animate(
image,
{ transform: ['rotate(45deg)', 'rotate(0deg)'] },
{ duration: 0.2 }
);
};
popup.addEventListener('popuphidden', handlePopupHidden, { once: true });
popup.openPopup(button, 'after_start');
window.gZenUIManager.motion.animate(
image,
{ transform: ['rotate(0deg)', 'rotate(45deg)'] },
{ duration: 0.2 }
);
});
}

View File

@@ -72,6 +72,35 @@ var gZenUIManager = {
gZenMediaController.init();
gZenVerticalTabsManager.init();
this._initCreateNewPopup();
},
_initCreateNewPopup() {
const popup = document.getElementById('zenCreateNewPopup');
const button = document.getElementById('zen-create-new-button');
popup.addEventListener('popupshowing', () => {
const image = button.querySelector('image');
button.setAttribute('open', 'true');
gZenUIManager.motion.animate(
image,
{ transform: ['rotate(0deg)', 'rotate(45deg)'] },
{ duration: 0.2 }
);
popup.addEventListener(
'popuphidden',
() => {
button.removeAttribute('open');
gZenUIManager.motion.animate(
image,
{ transform: ['rotate(45deg)', 'rotate(0deg)'] },
{ duration: 0.2 }
);
},
{ once: true }
);
});
},
handleMouseDown(event) {

View File

@@ -4,18 +4,15 @@
{
// prettier-ignore
const SVG_ICONS = [
"airplane.svg", "baseball.svg", "basket.svg",
"bed.svg", "bell.svg", "bookmark.svg", "book.svg",
"chat.svg", "checkbox.svg", "circle.svg", "cloud.svg",
"code.svg", "coins.svg", "cutlery.svg", "egg.svg",
"flag.svg", "folder.svg", "globe.svg", "grid-2x2.svg",
"grid-3x3.svg", "heart.svg", "inbox.svg", "layers.svg",
"lightning.svg", "mail.svg", "map.svg", "moon.svg",
"music.svg", "page.svg", "palette.svg", "paw.svg",
"people.svg", "pizza.svg", "planet.svg", "present.svg",
"shapes.svg", "skull.svg", "squares.svg", "square.svg",
"star-2.svg", "star.svg", "sun.svg", "terminal.svg",
"triangle.svg", "video.svg", "weight.svg",
"airplane.svg", "baseball.svg", "basket.svg", "bed.svg",
"bell.svg", "book.svg", "bookmark.svg", "chat.svg", "checkbox.svg",
"circle.svg", "cloud.svg", "cloud-outline.svg", "code.svg", "coins.svg",
"cutlery.svg", "egg.svg", "flag.svg", "folder.svg", "globe.svg",
"globe-1.svg", "grid-2x2.svg", "grid-3x3.svg", "heart.svg", "inbox.svg",
"layers.svg", "lightning.svg", "mail.svg", "map.svg", "moon.svg", "music.svg",
"page.svg", "palette.svg", "paw.svg", "people.svg", "pizza.svg", "planet.svg",
"present.svg", "shapes.svg", "skull.svg", "square.svg", "squares.svg", "star.svg",
"star-1.svg", "sun.svg", "terminal.svg", "triangle.svg", "video.svg", "weight.svg",
];
class nsZenEmojiPicker extends nsZenDOMOperatedFeature {

View File

@@ -148,7 +148,7 @@ var gZenCompactModeManager = {
[
{
selector:
":is([panelopen='true'], [open='true'], #urlbar:focus-within, [breakout-extend='true']):not(#urlbar[zen-floating-urlbar='true']):not(tab):not(.zen-compact-mode-ignore)",
":is([panelopen='true'], [open='true'], [breakout-extend='true']):not(#urlbar[zen-floating-urlbar='true']):not(tab):not(.zen-compact-mode-ignore)",
},
],
'zen-compact-mode-active'

View File

@@ -179,10 +179,6 @@
return items;
}
get level() {
return this.group?.level + 1 || 0;
}
get allItems() {
return [...this.querySelector('.tab-group-container').children].filter(
(child) => !child.classList.contains('zen-tab-group-start')

View File

@@ -59,11 +59,21 @@
`<menuitem id="zen-context-menu-new-folder" data-l10n-id="zen-toolbar-context-new-folder"/>`
);
document.getElementById('context_moveTabToGroup').before(contextMenuItems);
const contextMenuItemsToolbar = window.MozXULElement.parseXULToFragment(
`<menuitem id="zen-context-menu-new-folder-toolbar" data-l10n-id="zen-toolbar-context-new-folder"/>`
);
document.getElementById('toolbar-context-openANewTab').after(contextMenuItemsToolbar);
const folderActionsMenu = document.getElementById('zenFolderActions');
folderActionsMenu.addEventListener('popupshowing', (event) => {
const folder =
event.explicitOriginalTarget?.group || event.explicitOriginalTarget.parentElement;
const target = event.explicitOriginalTarget;
let folder;
if (gBrowser.isTabGroupLabel(target)) {
folder = target.group;
} else if (gBrowser.isTabGroupLabel(target.parentElement)) {
folder = target.parentElement.group;
}
// We only want to rename zen-folders as firefox groups don't work well with this
if (!folder?.isZenFolder) {
return;
@@ -167,9 +177,13 @@
window.addEventListener('FolderGrouped', this.#onFolderGrouped.bind(this));
window.addEventListener('TabSelect', this.#onTabSelected.bind(this));
window.addEventListener('TabOpen', this.#onTabOpened.bind(this));
const onNewFolder = this.#onNewFolder.bind(this);
document
.getElementById('zen-context-menu-new-folder')
.addEventListener('command', this.#onNewFolder.bind(this));
.addEventListener('command', onNewFolder);
document
.getElementById('zen-context-menu-new-folder-toolbar')
.addEventListener('command', onNewFolder);
SessionStore.promiseInitialized.then(() => {
gBrowser.tabContainer.addEventListener('dragstart', this.cancelPopupTimer.bind(this));
});
@@ -309,8 +323,11 @@
// Calculate the height we need to hide until we reach the selected item.
let heightUntilSelected;
if (selectedItem) {
const selectedContainer = selectedItem.group?.hasAttribute('split-view-group')
? selectedItem.group
: selectedItem;
heightUntilSelected =
window.windowUtils.getBoundsWithoutFlushing(selectedItem).top -
window.windowUtils.getBoundsWithoutFlushing(selectedContainer).top -
window.windowUtils.getBoundsWithoutFlushing(groupStart).bottom;
} else {
heightUntilSelected = window.windowUtils.getBoundsWithoutFlushing(tabsContainer).height;
@@ -447,6 +464,7 @@
}
#onNewFolder(event) {
const isFromToolbar = event.target.id === 'zen-context-menu-new-folder-toolbar';
const contextMenu = event.target.parentElement;
let tabs = [];
let triggerTab =
@@ -454,6 +472,9 @@
(contextMenu.triggerNode.tab || contextMenu.triggerNode.closest('tab'));
tabs.push(triggerTab, ...gBrowser.selectedTabs);
if (isFromToolbar) {
tabs = [];
}
const group = this.createFolder(tabs, { insertBefore: triggerTab, renameFolder: true });
if (!group) return;
@@ -893,26 +914,30 @@
return [];
}
setFolderIndentation(tabs, group = undefined, forCollapse = true) {
setFolderIndentation(tabs, groupElem = undefined, forCollapse = true) {
if (!gZenPinnedTabManager.expandedSidebarMode) {
return;
}
const tab = tabs[0];
let isTab = false;
if (!group && tab?.group) {
group = tab; // So we can set isTab later
if (!groupElem && tab?.group) {
groupElem = tab; // So we can set isTab later
}
if (
gBrowser.isTab(group) &&
!(group.hasAttribute('zen-empty-tab') && group.group === tab.group)
gBrowser.isTab(groupElem) &&
!(groupElem.hasAttribute('zen-empty-tab') && groupElem.group === tab.group)
) {
group = group.group;
groupElem = groupElem.group;
isTab = true;
}
if (!isTab && !group?.hasAttribute('selected') && !forCollapse) {
group = null; // Don't indent if the group is not selected
if (!isTab && !groupElem?.hasAttribute('selected') && !forCollapse) {
groupElem = null; // Don't indent if the group is not selected
}
let level = groupElem?.level + 1 || 0;
if (gBrowser.isTabGroupLabel(groupElem)) {
// If it is a group label, we should not increase its level by one.
level = groupElem.group.level;
}
const level = group?.level + 1 || 0;
const baseSpacing = 14; // Base spacing for each level
let tabToAnimate = tab;
if (gBrowser.isTabGroupLabel(tab)) {
@@ -1354,10 +1379,11 @@
let dragDownThreshold =
Services.prefs.getIntPref('zen.view.drag-and-drop.drop-inside-lower-threshold') / 100;
let dropElementGroup = dropElement.group;
const dropElementGroup = dropElement.group;
const isSplitGroup = dropElement?.group?.hasAttribute('split-view-group');
let firstGroupElem =
dropElementGroup.querySelector('.zen-tab-group-start').nextElementSibling;
if (gBrowser.isTabGroup(firstGroupElem)) firstGroupElem = firstGroupElem.labelElement;
const isRestrictedGroup = isSplitGroup || dropElementGroup.collapsed;
@@ -1374,15 +1400,10 @@
this.highlightGroupOnDragOver(dropElementGroup, movingTabs);
} else if (shouldDropNear) {
if (dropBefore) {
dropElement = dropElementGroup;
colorCode = undefined;
} else {
if (isRestrictedGroup) {
dropElement = dropElementGroup;
} else {
dropElement = firstGroupElem;
dropBefore = true;
}
} else if (!isRestrictedGroup) {
dropElement = firstGroupElem;
dropBefore = true;
}
this.highlightGroupOnDragOver(null);
}

View File

@@ -247,6 +247,7 @@ zen-folder {
height: 40px;
padding-inline: var(--tab-group-label-padding);
align-items: center;
font-weight: 600;
:root:not([zen-sidebar-expanded]) {
width: var(--tab-min-width) !important;
@@ -367,7 +368,6 @@ zen-folder {
flex-direction: row;
padding: 6px;
border-bottom: 1px solid color-mix(in srgb, currentColor, transparent 90%);
margin-bottom: 2px;
}
#zen-folder-tabs-popup #zen-folder-tabs-list-search {
@@ -441,16 +441,21 @@ zen-folder {
align-items: center;
direction: ltr;
padding: 0 var(--tab-inline-padding);
border-radius: 4px;
margin: 2px 0;
border-radius: 6px;
margin: 4px 0;
.folders-tabs-list-item[selected] & {
background-color: color-mix(in srgb, currentColor, transparent 90%);
}
&:last-child {
border-bottom-left-radius: max(calc(var(--panel-border-radius) - 4px), 4px);
border-bottom-right-radius: max(calc(var(--panel-border-radius) - 4px), 4px);
border-bottom-left-radius: max(calc(var(--panel-border-radius) - 6px), 4px);
border-bottom-right-radius: max(calc(var(--panel-border-radius) - 6px), 4px);
}
&:first-child {
border-top-left-radius: max(calc(var(--panel-border-radius) - 6px), 4px);
border-top-right-radius: max(calc(var(--panel-border-radius) - 6px), 4px);
}
}

View File

@@ -200,9 +200,6 @@ class nsZenViewSplitter extends nsZenDOMOperatedFeature {
// We need to remove all remaining tabs from the group when unsplitting
let remainingTabs = [...group.tabs]; // Copy array since we'll modify it
for (let remainingTab of remainingTabs) {
if (remainingTab.group && remainingTab.group.hasAttribute('split-view-group')) {
gBrowser.ungroupTab(remainingTab);
}
this.resetTabState(remainingTab, forUnsplit);
}
this.removeGroup(groupIndex);

View File

@@ -301,7 +301,12 @@ var gZenWorkspaces = new (class extends nsZenMultiWindowFeature {
if (!this.workspaceEnabled) {
return;
}
this._pinnedTabsResizeObserver = new ResizeObserver(this.onPinnedTabsResize.bind(this));
const onResize = (...args) => {
requestAnimationFrame(() => {
this.onPinnedTabsResize(...args);
});
};
this._pinnedTabsResizeObserver = new ResizeObserver(onResize);
await this._createDefaultWorkspaceIfNeeded();
}
@@ -2402,73 +2407,67 @@ var gZenWorkspaces = new (class extends nsZenMultiWindowFeature {
}
async onPinnedTabsResize(entries, forAnimation = false, animateContainer = false) {
await new Promise((resolve) => {
requestAnimationFrame(async () => {
if (
!this._hasInitializedTabsStrip ||
(this._organizingWorkspaceStrip && !forAnimation) ||
document.documentElement.hasAttribute('zen-creating-workspace') ||
document.documentElement.hasAttribute('customizing')
) {
resolve();
return;
if (
!this._hasInitializedTabsStrip ||
(this._organizingWorkspaceStrip && !forAnimation) ||
document.documentElement.hasAttribute('zen-creating-workspace') ||
document.documentElement.hasAttribute('customizing')
) {
return;
}
// forAnimation may be of type "ResizeObserver" if it's not a boolean, just ignore it
if (typeof forAnimation !== 'boolean') {
forAnimation = false;
}
for (const entry of entries) {
let originalWorkspaceId = entry.target.getAttribute('zen-workspace-id');
if (!originalWorkspaceId) {
originalWorkspaceId = entry.target.closest('zen-workspace')?.id;
}
const workspacesIds = [];
if (entry.target.closest('#zen-essentials')) {
// Get all workspaces that have the same userContextId
const activeWorkspace = await this.getActiveWorkspace();
const userContextId = activeWorkspace.containerTabId;
const workspaces = this._workspaceCache.workspaces.filter(
(w) => w.containerTabId === userContextId && w.uuid !== originalWorkspaceId
);
workspacesIds.push(...workspaces.map((w) => w.uuid));
} else {
workspacesIds.push(originalWorkspaceId);
}
for (const workspaceId of workspacesIds) {
const workspaceElement = this.workspaceElement(workspaceId);
if (!workspaceElement) {
continue;
}
// forAnimation may be of type "ResizeObserver" if it's not a boolean, just ignore it
if (typeof forAnimation !== 'boolean') {
forAnimation = false;
const arrowScrollbox = workspaceElement.tabsContainer;
const pinnedContainer = workspaceElement.pinnedTabsContainer;
const workspaceObject = this.getWorkspaceFromId(workspaceId);
const essentialContainer = this.getEssentialsSection(workspaceObject.containerTabId);
const essentialNumChildren = essentialContainer.children.length;
let essentialHackType = 0;
if (essentialNumChildren === 6 || essentialNumChildren === 9) {
essentialHackType = 1;
} else if (essentialNumChildren % 2 === 0 && essentialNumChildren < 8) {
essentialHackType = 2;
} else if (essentialNumChildren === 5) {
essentialHackType = 3;
}
for (const entry of entries) {
let originalWorkspaceId = entry.target.getAttribute('zen-workspace-id');
if (!originalWorkspaceId) {
originalWorkspaceId = entry.target.closest('zen-workspace')?.id;
}
const workspacesIds = [];
if (entry.target.closest('#zen-essentials')) {
// Get all workspaces that have the same userContextId
const activeWorkspace = await this.getActiveWorkspace();
const userContextId = activeWorkspace.containerTabId;
const workspaces = this._workspaceCache.workspaces.filter(
(w) => w.containerTabId === userContextId && w.uuid !== originalWorkspaceId
);
workspacesIds.push(...workspaces.map((w) => w.uuid));
} else {
workspacesIds.push(originalWorkspaceId);
}
for (const workspaceId of workspacesIds) {
const workspaceElement = this.workspaceElement(workspaceId);
if (!workspaceElement) {
continue;
}
const arrowScrollbox = workspaceElement.tabsContainer;
const pinnedContainer = workspaceElement.pinnedTabsContainer;
const workspaceObject = this.getWorkspaceFromId(workspaceId);
const essentialContainer = this.getEssentialsSection(workspaceObject.containerTabId);
const essentialNumChildren = essentialContainer.children.length;
let essentialHackType = 0;
if (essentialNumChildren === 6 || essentialNumChildren === 9) {
essentialHackType = 1;
} else if (essentialNumChildren % 2 === 0 && essentialNumChildren < 8) {
essentialHackType = 2;
} else if (essentialNumChildren === 5) {
essentialHackType = 3;
}
if (essentialHackType > 0) {
essentialContainer.setAttribute('data-hack-type', essentialHackType);
} else {
essentialContainer.removeAttribute('data-hack-type');
}
this._updatePaddingTopOnTabs(
workspaceElement,
essentialContainer,
forAnimation,
animateContainer
);
this.updateShouldHideSeparator(arrowScrollbox, pinnedContainer);
}
resolve();
if (essentialHackType > 0) {
essentialContainer.setAttribute('data-hack-type', essentialHackType);
} else {
essentialContainer.removeAttribute('data-hack-type');
}
});
});
this._updatePaddingTopOnTabs(
workspaceElement,
essentialContainer,
forAnimation,
animateContainer
);
this.updateShouldHideSeparator(arrowScrollbox, pinnedContainer);
}
}
}
async onTabBrowserInserted(event) {