Compare commits
43 Commits
new-toolti
...
1.15.3b
Author | SHA1 | Date | |
---|---|---|---|
![]() |
2f6021b0aa | ||
![]() |
8c28dc9e89 | ||
![]() |
54abd673f1 | ||
![]() |
57635ff586 | ||
![]() |
458f502184 | ||
![]() |
3301ee5572 | ||
![]() |
236b5dc5c7 | ||
![]() |
4420d0df8c | ||
![]() |
432ae29bcd | ||
![]() |
3d472de5ac | ||
![]() |
5e942de8bc | ||
![]() |
41adb92790 | ||
![]() |
3e125fdb91 | ||
![]() |
8aaa7b7322 | ||
![]() |
0f4b48bd4a | ||
![]() |
52a399f0ed | ||
![]() |
ae66e66aa8 | ||
![]() |
ba48b736e0 | ||
![]() |
9baed1ab90 | ||
![]() |
b11f6b84d3 | ||
![]() |
6a05a79824 | ||
![]() |
6a68a28f76 | ||
![]() |
e972fefa8b | ||
![]() |
30639e67df | ||
![]() |
a4b8e2134f | ||
![]() |
7bd39acfdc | ||
![]() |
3a03984db1 | ||
![]() |
7886758127 | ||
![]() |
280500cdf6 | ||
![]() |
982ef2d355 | ||
![]() |
d2e8f00e3f | ||
![]() |
9e4cd6e68b | ||
![]() |
c9171b9972 | ||
![]() |
eedc5b7307 | ||
![]() |
f9452241a3 | ||
![]() |
6e9be15dac | ||
![]() |
07381c9a7a | ||
![]() |
bd4f5cee31 | ||
![]() |
0a8ebf9950 | ||
![]() |
73c5bc61fc | ||
![]() |
7253b8fa9d | ||
![]() |
42ebc081a8 | ||
![]() |
6e5502628e |
300
docs/issue-metrics/2025_2025-08-01..2025-08-31.md
Normal file
@@ -0,0 +1,300 @@
|
|||||||
|
# Issue Metrics
|
||||||
|
|
||||||
|
| Metric | Average | Median | 90th percentile |
|
||||||
|
| --- | --- | --- | ---: |
|
||||||
|
| Time to first response | 1 day, 7:39:18 | 5:45:29 | 3 days, 0:42:51 |
|
||||||
|
| Time to close | 23:47:00 | 10:26:06 | 1 day, 23:43:47 |
|
||||||
|
|
||||||
|
| Metric | Count |
|
||||||
|
| --- | ---: |
|
||||||
|
| Number of items that remain open | 145 |
|
||||||
|
| Number of items closed | 137 |
|
||||||
|
| Total number of items created | 282 |
|
||||||
|
|
||||||
|
| Title | URL | Time to first response | Time to close |
|
||||||
|
| --- | --- | --- | --- |
|
||||||
|
| Tab hover preview has incorrect origin | https://github.com/zen-browser/desktop/issues/10173 | None | None |
|
||||||
|
| Pinned tabs reset to pinned URL at startup even with related setting unchecked | https://github.com/zen-browser/desktop/issues/10172 | None | None |
|
||||||
|
| fix: Traditional Chinese as a target language for page translation | https://github.com/zen-browser/desktop/issues/10169 | None | None |
|
||||||
|
| tab groups do not group tabs anymore | https://github.com/zen-browser/desktop/issues/10167 | 2:40:11 | 12:01:38 |
|
||||||
|
| Tab Groups stuck in an expanded default state and labels are centered | https://github.com/zen-browser/desktop/issues/10166 | 3:30:58 | 3:30:58 |
|
||||||
|
| lose all tabs when private window is open and you close the browser | https://github.com/zen-browser/desktop/issues/10163 | 5:54:05 | 5:54:05 |
|
||||||
|
| Bluescreen into couldnt load XPCOM ERROR | https://github.com/zen-browser/desktop/issues/10161 | None | None |
|
||||||
|
| Compact Mode non-persistent between session when “Hide toolbar” is enabled (Collapsed toolbar layout) | https://github.com/zen-browser/desktop/issues/10160 | None | None |
|
||||||
|
| `about:debugging` wrong connected browser warning | https://github.com/zen-browser/desktop/issues/10158 | None | None |
|
||||||
|
| Window not starting up in 1.15.2b | https://github.com/zen-browser/desktop/issues/10157 | None | 0:07:54 |
|
||||||
|
| Sidebar bugging when switching spaces too quickly / too much | https://github.com/zen-browser/desktop/issues/10156 | None | None |
|
||||||
|
| Active Tab detaches when collapsing tab folder | https://github.com/zen-browser/desktop/issues/10154 | None | None |
|
||||||
|
| Folder icon disappears in semi-open state | https://github.com/zen-browser/desktop/issues/10153 | 0:53:47 | 1:08:24 |
|
||||||
|
| Pins and Essentials and Spaces | https://github.com/zen-browser/desktop/issues/10152 | 2:13:28 | 2:13:28 |
|
||||||
|
| Essential Tabs Disappear When Switching Spaces | https://github.com/zen-browser/desktop/issues/10151 | 0:31:07 | None |
|
||||||
|
| Sidebar content disappears when turning off Compact Mode | https://github.com/zen-browser/desktop/issues/10150 | 1:27:49 | 1:56:45 |
|
||||||
|
| Split view tab inside folder unloads after browser restart | https://github.com/zen-browser/desktop/issues/10149 | None | None |
|
||||||
|
| Zen create too many unused new tab in task manager | https://github.com/zen-browser/desktop/issues/10145 | None | 3:06:48 |
|
||||||
|
| workspace icons doesnt chage | https://github.com/zen-browser/desktop/issues/10140 | 4:53:04 | None |
|
||||||
|
| Glitching Tool bar in compact mode during collapsed toolbar | https://github.com/zen-browser/desktop/issues/10138 | 5:19:26 | None |
|
||||||
|
| zen doesn't remember discord sessions | https://github.com/zen-browser/desktop/issues/10136 | None | None |
|
||||||
|
| New Tab Problem | https://github.com/zen-browser/desktop/issues/10134 | 6:20:10 | 6:20:10 |
|
||||||
|
| Browsing history reset itself unexpectedly | https://github.com/zen-browser/desktop/issues/10133 | 6:29:41 | None |
|
||||||
|
| Youtube not fully signed-in | https://github.com/zen-browser/desktop/issues/10130 | 12:08:24 | None |
|
||||||
|
| Recently closed folder is re-opened as tab group | https://github.com/zen-browser/desktop/issues/10129 | None | None |
|
||||||
|
| Essentials ordering reverts itself each time browser is relaunched | https://github.com/zen-browser/desktop/issues/10127 | 13:58:08 | None |
|
||||||
|
| Garbled text on MacOS | https://github.com/zen-browser/desktop/issues/10126 | 15:57:07 | None |
|
||||||
|
| Black broder around right/middle click | https://github.com/zen-browser/desktop/issues/10125 | 15:59:15 | None |
|
||||||
|
| Groups Not Collapsing After 1.15.2b Update | https://github.com/zen-browser/desktop/issues/10124 | 10:41:50 | 17:39:32 |
|
||||||
|
| Unable to load webextension (onetab) and webpage (https://www.youtube.com/@carlsagan42) properly. Developers tools (F12) is also broken. | https://github.com/zen-browser/desktop/issues/10123 | 17:53:26 | None |
|
||||||
|
| I can't change folder names | https://github.com/zen-browser/desktop/issues/10122 | 2:02:10 | 7:08:18 |
|
||||||
|
| Zen is not getting updated on Linux systems | https://github.com/zen-browser/desktop/issues/10119 | 1 day, 22:15:27 | None |
|
||||||
|
| All tabs within folders load automatically upon launch of browser | https://github.com/zen-browser/desktop/issues/10118 | 0:19:31 | 0:48:15 |
|
||||||
|
| Open New Tab Below replaced by New Folder | https://github.com/zen-browser/desktop/issues/10117 | None | 0:09:29 |
|
||||||
|
| CTRL + arrow does not move cursor when renaming workspace, folder or tab | https://github.com/zen-browser/desktop/issues/10115 | None | 20:44:04 |
|
||||||
|
| Long press on the "New Tab" page, the text on the multi-account container page displays abnormally in vertical format | https://github.com/zen-browser/desktop/issues/10114 | 0:59:49 | 0:59:49 |
|
||||||
|
| Issue with tradingview.com and its fullscreen chart feature | https://github.com/zen-browser/desktop/issues/10113 | 1:18:05 | 1:18:04 |
|
||||||
|
| Menu color turn gray after 1.15b | https://github.com/zen-browser/desktop/issues/10110 | None | 23:24:28 |
|
||||||
|
| Missing website backgrounds making some sites unreadable | https://github.com/zen-browser/desktop/issues/10109 | 0:14:46 | 1:28:57 |
|
||||||
|
| Crunchyroll play back failing | https://github.com/zen-browser/desktop/issues/10107 | 0:35:36 | 2:09:35 |
|
||||||
|
| Leaking/Exposing IP Address via WebRTC | https://github.com/zen-browser/desktop/issues/10106 | 1:28:42 | 2:23:03 |
|
||||||
|
| Zen Browser Does Not Uninstall Cleanly on Windows | https://github.com/zen-browser/desktop/issues/10105 | 2:31:49 | 2:31:49 |
|
||||||
|
| Do not disappear tab after close folder | https://github.com/zen-browser/desktop/issues/10104 | 1:22:59 | 2:43:23 |
|
||||||
|
| Cannot rename a folder. | https://github.com/zen-browser/desktop/issues/10103 | 0:14:12 | 2:52:44 |
|
||||||
|
| The application has failed to start because its side-by-side configuration is incorrect. Please see the application event log or use the command-line sxstrace.exe tool for more detail. | https://github.com/zen-browser/desktop/issues/10102 | 3:03:40 | None |
|
||||||
|
| Workspace to folder conversion | https://github.com/zen-browser/desktop/issues/10099 | 1:07:12 | 4:21:56 |
|
||||||
|
| Workspace changing isnt working sometimes unless i restart | https://github.com/zen-browser/desktop/issues/10098 | 20:20:44 | None |
|
||||||
|
| Profile remains locked after closing Zen (stale lock symlink to 127.0.0.1:x) | https://github.com/zen-browser/desktop/issues/10097 | None | None |
|
||||||
|
| Copy and Pasting from gemini.google.com | https://github.com/zen-browser/desktop/issues/10096 | None | None |
|
||||||
|
| Picture in Picture closes when opening a side by side tab | https://github.com/zen-browser/desktop/issues/10094 | 2 days, 9:21:19 | None |
|
||||||
|
| Keep receiving this error when trying to close Zen Browser on Mac | https://github.com/zen-browser/desktop/issues/10093 | 3:01:29 | None |
|
||||||
|
| Cannot rename folders | https://github.com/zen-browser/desktop/issues/10092 | 0:10:50 | 2:18:47 |
|
||||||
|
| Zen Crashing after update | https://github.com/zen-browser/desktop/issues/10091 | 1:33:17 | None |
|
||||||
|
| Tabs inside folders disappear when closing and reopening Zen | https://github.com/zen-browser/desktop/issues/10089 | 5:35:09 | None |
|
||||||
|
| Can't rename the folders | https://github.com/zen-browser/desktop/issues/10088 | 0:10:31 | 5:56:22 |
|
||||||
|
| Extensions don't open without loading a web page in a tab. | https://github.com/zen-browser/desktop/issues/10086 | None | None |
|
||||||
|
| Cant Rename Folders | https://github.com/zen-browser/desktop/issues/10083 | 0:13:53 | 0:15:30 |
|
||||||
|
| Tab Bar cant be resized smaller in width when on the right. On the left side it works normally. | https://github.com/zen-browser/desktop/issues/10082 | 11:09:07 | 11:09:07 |
|
||||||
|
| Unable to split view more than 4 tabs like before. | https://github.com/zen-browser/desktop/issues/10080 | 9:26:04 | 9:26:04 |
|
||||||
|
| Tab Folders jumping to the top of a space after reopening browser. | https://github.com/zen-browser/desktop/issues/10078 | None | None |
|
||||||
|
| Groups/Folders do not collapse | https://github.com/zen-browser/desktop/issues/10077 | 2:08:46 | 10:30:40 |
|
||||||
|
| Zen window going blank after new update | https://github.com/zen-browser/desktop/issues/10076 | 3:16:17 | 1 day, 23:00:52 |
|
||||||
|
| Bookmark titles/names no longer appear in Omnibar search results, only URL is shown twice. | https://github.com/zen-browser/desktop/issues/10075 | 12:09:01 | None |
|
||||||
|
| Browser are not capable of opening a full screen video on X (twitter) | https://github.com/zen-browser/desktop/issues/10074 | 0:09:19 | None |
|
||||||
|
| "delete Folder' Not Working | https://github.com/zen-browser/desktop/issues/10070 | 0:17:54 | 0:18:22 |
|
||||||
|
| Compact Mode turns off after quitting the Browser | https://github.com/zen-browser/desktop/issues/10069 | None | 1:08:15 |
|
||||||
|
| Can't delete folders with collapsed toolbar | https://github.com/zen-browser/desktop/issues/10068 | 4:28:56 | 4:28:56 |
|
||||||
|
| Picture-in-Picture Window "Migrates" When Opened | https://github.com/zen-browser/desktop/issues/10066 | 2:11:10 | None |
|
||||||
|
| Weird black bar apearing with Transparent Zen | https://github.com/zen-browser/desktop/issues/10065 | 2:24:08 | 2:24:08 |
|
||||||
|
| Unable to resize sidebar on compact mode | https://github.com/zen-browser/desktop/issues/10064 | 2:26:23 | 2:26:23 |
|
||||||
|
| When switching between a split tabs and another normal tab, the image is cut off on the left | https://github.com/zen-browser/desktop/issues/10062 | None | None |
|
||||||
|
| Incorrect theme colors in Glance mod after 1.15 update | https://github.com/zen-browser/desktop/issues/10060 | 0:38:54 | 10:26:17 |
|
||||||
|
| Crash in navigating to diffent page | https://github.com/zen-browser/desktop/issues/10059 | 1:05:23 | None |
|
||||||
|
| Cannot add tab to Essentials even when there are slots available | https://github.com/zen-browser/desktop/issues/10058 | 4:48:50 | 5:57:03 |
|
||||||
|
| Zen Browser launches in a completely invisible window | https://github.com/zen-browser/desktop/issues/10057 | None | None |
|
||||||
|
| Tabs randomly move between groups/folders when opening or relocating | https://github.com/zen-browser/desktop/issues/10056 | None | None |
|
||||||
|
| The new tab button is missing | https://github.com/zen-browser/desktop/issues/10054 | 0:03:10 | 0:03:10 |
|
||||||
|
| You can't rename folders | https://github.com/zen-browser/desktop/issues/10052 | 0:01:23 | 20:23:45 |
|
||||||
|
| Essential and pinned tab favicons aren't being cached, turn to default after browser restart | https://github.com/zen-browser/desktop/issues/10049 | 0:53:00 | 8:32:49 |
|
||||||
|
| Google Meet shows "Browser not supported" message | https://github.com/zen-browser/desktop/issues/10047 | 1:50:35 | 1:50:35 |
|
||||||
|
| MongoDB sign in page stuck after clicking login | https://github.com/zen-browser/desktop/issues/10046 | 4:18:15 | 4:18:15 |
|
||||||
|
| Pinned tabs from various spaces scrambled in consecutive windows | https://github.com/zen-browser/desktop/issues/10044 | None | None |
|
||||||
|
| New Folders always get pinned (and you can't unpin) | https://github.com/zen-browser/desktop/issues/10043 | 2:34:16 | 5:41:56 |
|
||||||
|
| Theme no working | https://github.com/zen-browser/desktop/issues/10042 | 0:51:20 | 10:33:11 |
|
||||||
|
| Can't close the historic tab | https://github.com/zen-browser/desktop/issues/10041 | 8:39:11 | 11:52:29 |
|
||||||
|
| VISUAL going to the rightmost workspace causes other icons to shift left | https://github.com/zen-browser/desktop/issues/10040 | 11:55:55 | 18:33:56 |
|
||||||
|
| Session restore almost completely disfunctional | https://github.com/zen-browser/desktop/issues/10039 | None | None |
|
||||||
|
| Trading chart not rendering properly on insilico terminal | https://github.com/zen-browser/desktop/issues/10037 | 12:48:25 | 12:48:25 |
|
||||||
|
| space name and text overallaping | https://github.com/zen-browser/desktop/issues/10036 | 13:11:14 | 19:25:14 |
|
||||||
|
| Branding: Feedback link in Help menu points to Mozilla site. | https://github.com/zen-browser/desktop/issues/10035 | None | None |
|
||||||
|
| Cannot use any of the right click options of any tab folders in compact mode | https://github.com/zen-browser/desktop/issues/10033 | None | 13:50:42 |
|
||||||
|
| Deleting folders do not work while sidebar is not expanded | https://github.com/zen-browser/desktop/issues/10032 | 0:06:20 | 13:55:12 |
|
||||||
|
| Active tabs in collapsed folders will stay in their same place after switching from Expanded Sidebar to Compacted Sidebar | https://github.com/zen-browser/desktop/issues/10031 | 1 day, 10:19:29 | 1 day, 10:19:29 |
|
||||||
|
| Tab Groups broken in v1.15b | https://github.com/zen-browser/desktop/issues/10030 | 11:33:51 | 11:51:45 |
|
||||||
|
| New Folder option not visible in private mode | https://github.com/zen-browser/desktop/issues/10029 | 15:02:27 | 15:02:27 |
|
||||||
|
| Folder context menu don't work when the sidebar is collapsed | https://github.com/zen-browser/desktop/issues/10028 | None | 15:20:22 |
|
||||||
|
| Browser crashes after downloading | https://github.com/zen-browser/desktop/issues/10027 | 22:43:29 | 1 day, 22:00:29 |
|
||||||
|
| Folder icons and names are misaligned | https://github.com/zen-browser/desktop/issues/10025 | 16:29:52 | 16:29:52 |
|
||||||
|
| Bookmark dialog opens in compact sidebar instead of floating URL bar | https://github.com/zen-browser/desktop/issues/10024 | None | None |
|
||||||
|
| Sidebar freeze when trying to switch spaces | https://github.com/zen-browser/desktop/issues/10023 | 0:04:28 | None |
|
||||||
|
| When opening a link in a new tab while inside of a collapsed Folder, the current tab disappears | https://github.com/zen-browser/desktop/issues/10022 | None | 18:17:43 |
|
||||||
|
| Can't compile: fatal: your current branch 'zen_browser' does not have any commits yet | https://github.com/zen-browser/desktop/issues/10020 | None | None |
|
||||||
|
| Workspace name and icons clasing and Overflow Menu aint working normally | https://github.com/zen-browser/desktop/issues/10018 | 1 day, 2:43:25 | None |
|
||||||
|
| Contextual menu item text should be “New Folder” not “New folder” | https://github.com/zen-browser/desktop/issues/10016 | 0:22:14 | 20:49:40 |
|
||||||
|
| Top Bar (in single bar mode) not expanding when tabs are on the right | https://github.com/zen-browser/desktop/issues/10013 | None | None |
|
||||||
|
| Close Folder and witch active Tab behaviour | https://github.com/zen-browser/desktop/issues/10012 | 1:34:22 | 1 day, 17:57:01 |
|
||||||
|
| Folders hard to drag first Items in | https://github.com/zen-browser/desktop/issues/10011 | None | None |
|
||||||
|
| YouTube videos not working — H.264 / AAC not detected on Arch Linux | https://github.com/zen-browser/desktop/issues/10010 | None | None |
|
||||||
|
| Cant download the update v1.15b | https://github.com/zen-browser/desktop/issues/10009 | 0:21:58 | 4:19:00 |
|
||||||
|
| When two windows are open, the tabs in the workspace do not sync between the two windows | https://github.com/zen-browser/desktop/issues/10008 | None | 0:00:57 |
|
||||||
|
| When two windows are open, the tabs in the workspace do not sync between the two windows | https://github.com/zen-browser/desktop/issues/10007 | 8:42:07 | 13:52:58 |
|
||||||
|
| Tabs unload only for Zammad helpdesk page | https://github.com/zen-browser/desktop/issues/10003 | None | None |
|
||||||
|
| Tab unloads only for Zammad helpdesk | https://github.com/zen-browser/desktop/issues/10002 | 0:20:37 | 0:20:37 |
|
||||||
|
| Tabs dont open when pinned | https://github.com/zen-browser/desktop/issues/9999 | None | 8:06:36 |
|
||||||
|
| "New Tab" tab bar button renders Chinese text vertically in container menu | https://github.com/zen-browser/desktop/issues/9997 | None | None |
|
||||||
|
| Can't Delete, Edit or Select different profile | https://github.com/zen-browser/desktop/issues/9996 | 5 days, 22:21:43 | None |
|
||||||
|
| Redirect Links from Apps to Browser Not Working (VSCode, GitHub Auth, etc.) | https://github.com/zen-browser/desktop/issues/9993 | None | 2 days, 2:16:42 |
|
||||||
|
| Fullscreening a video in Glance causes tab sidebar moving slightly left-ier afterwards - Twilight 1.15t (Firefox 142.0) (2025-08-24) | https://github.com/zen-browser/desktop/issues/9992 | None | None |
|
||||||
|
| Sidebar urlbar is almost unuseable with site permission and zoom icons taking up 80% of the bar | https://github.com/zen-browser/desktop/issues/9990 | 5:10:46 | 5:10:46 |
|
||||||
|
| Zen doesn't show its browser UI on the page chrome://browser/content/browser.xhtml | https://github.com/zen-browser/desktop/issues/9989 | None | 6:09:52 |
|
||||||
|
| New tab panel doesn't show tab titles | https://github.com/zen-browser/desktop/issues/9987 | 0:31:03 | 10:37:46 |
|
||||||
|
| Cursor hover style switching to default shortly after hover | https://github.com/zen-browser/desktop/issues/9984 | None | None |
|
||||||
|
| Clicking on a tab reset button hides the other tabs | https://github.com/zen-browser/desktop/issues/9981 | None | 0:01:40 |
|
||||||
|
| Text Corrupting | https://github.com/zen-browser/desktop/issues/9980 | None | None |
|
||||||
|
| Splet View windows do not restore their layout after browser restart | https://github.com/zen-browser/desktop/issues/9978 | None | None |
|
||||||
|
| Changing AccelKey Overrides Custom Shortcuts | https://github.com/zen-browser/desktop/issues/9974 | None | None |
|
||||||
|
| Button title missing for sidebar collapse | https://github.com/zen-browser/desktop/issues/9973 | None | None |
|
||||||
|
| Missing "tab rename" in the contextual menu | https://github.com/zen-browser/desktop/issues/9972 | 15:03:21 | None |
|
||||||
|
| URL bar loses focus if new tab is opened while editing | https://github.com/zen-browser/desktop/issues/9971 | None | None |
|
||||||
|
| Workspaces and Compact Mode | https://github.com/zen-browser/desktop/issues/9970 | None | None |
|
||||||
|
| Sound does not work | https://github.com/zen-browser/desktop/issues/9969 | None | None |
|
||||||
|
| Pre-loading all tabs on startup | https://github.com/zen-browser/desktop/issues/9967 | 3:05:00 | 1 day, 3:23:24 |
|
||||||
|
| Duplicate 'Stop Loading' Keyboard Shortcut fields | https://github.com/zen-browser/desktop/issues/9965 | None | None |
|
||||||
|
| Freedom Blocklist not working | https://github.com/zen-browser/desktop/issues/9964 | 11:27:00 | 11:27:00 |
|
||||||
|
| Prevent tab unload context menu entry missing on tabs | https://github.com/zen-browser/desktop/issues/9963 | None | None |
|
||||||
|
| Glance buttons (expand, exit, split screen) missing when using Zen Papercut mod | https://github.com/zen-browser/desktop/issues/9962 | 3 days, 6:00:07 | 3 days, 6:00:07 |
|
||||||
|
| Sidebar Appears Unexpectedly | https://github.com/zen-browser/desktop/issues/9961 | 0:39:14 | 5 days, 0:15:27 |
|
||||||
|
| Contrast completely broken in multiple places depending on theme color and dark/light mode | https://github.com/zen-browser/desktop/issues/9955 | 6 days, 3:55:23 | None |
|
||||||
|
| Split views not visible in sidebar when selected from folder pop-up | https://github.com/zen-browser/desktop/issues/9954 | None | None |
|
||||||
|
| Folder 3 dot state stuck after split view move | https://github.com/zen-browser/desktop/issues/9953 | None | None |
|
||||||
|
| Context menu for editing tab groups is gone in Zen Twilight | https://github.com/zen-browser/desktop/issues/9951 | 6:53:05 | 11:45:07 |
|
||||||
|
| 简洁模式启动后自己关闭 | https://github.com/zen-browser/desktop/issues/9949 | 2:20:53 | 10:20:19 |
|
||||||
|
| Tab bar and top bar are stuck, can't toggle/hide them off and minimize, close button gets clamped together in minimized window | https://github.com/zen-browser/desktop/issues/9946 | None | 1:39:32 |
|
||||||
|
| Opening links in pinned tabs creates a new pinned tab | https://github.com/zen-browser/desktop/issues/9945 | 10:45:38 | None |
|
||||||
|
| History panel not colapsing | https://github.com/zen-browser/desktop/issues/9943 | 9:12:13 | None |
|
||||||
|
| Clicking card in jira doesn't always open the card modal. | https://github.com/zen-browser/desktop/issues/9942 | None | None |
|
||||||
|
| Zen uses Windows accent color even with relevant settings set to false | https://github.com/zen-browser/desktop/issues/9940 | 17:50:40 | 1 day, 2:24:18 |
|
||||||
|
| Compact Mode keeps getting disabled randomly | https://github.com/zen-browser/desktop/issues/9939 | 1 day, 3:36:05 | None |
|
||||||
|
| [macOS] "Ask before quitting with cmd+Q" dialog box shows Firefox instead of Zen and more mentions of Firefox instead of Zen | https://github.com/zen-browser/desktop/issues/9938 | 2 days, 21:11:20 | 10 days, 6:52:44 |
|
||||||
|
| Zen Browser consistantly crashes on page | https://github.com/zen-browser/desktop/issues/9937 | 6:13:51 | None |
|
||||||
|
| Essential Tabs do not survive a restart and fail to propagate across all windows | https://github.com/zen-browser/desktop/issues/9935 | 1:43:35 | None |
|
||||||
|
| Middle click to open a link in a new tab does not preserve the previous tab's container | https://github.com/zen-browser/desktop/issues/9934 | None | 11:02:13 |
|
||||||
|
| Twighlight folders | https://github.com/zen-browser/desktop/issues/9933 | 6:40:06 | None |
|
||||||
|
| Opening new tab always shows pop-up menu rather than opening configured new tab | https://github.com/zen-browser/desktop/issues/9932 | 0:10:50 | 7 days, 11:53:34 |
|
||||||
|
| Homepage blank when first opening Zen Browser | https://github.com/zen-browser/desktop/issues/9928 | 16:41:10 | None |
|
||||||
|
| Tabs freezing, sidebar not collapsing in VS 1.14.9b | https://github.com/zen-browser/desktop/issues/9927 | 2 days, 2:43:49 | None |
|
||||||
|
| Windows control butons can be seen for a while when using compact mode | https://github.com/zen-browser/desktop/issues/9922 | None | 12:39:19 |
|
||||||
|
| Distill plugin opens persistant tabs in the Space part of the sidebar | https://github.com/zen-browser/desktop/issues/9919 | 13 days, 13:36:07 | None |
|
||||||
|
| Keyboard shortcuts like Ctrl+Shift+NumberRowKey depend on the active keyboard layout | https://github.com/zen-browser/desktop/issues/9918 | None | None |
|
||||||
|
| SPOTIFY DOESN'T WORK ON WINDOWS | https://github.com/zen-browser/desktop/issues/9917 | 0:04:16 | 5:53:18 |
|
||||||
|
| "Connection Secure >" menu won't open when Padlock is clicked inside an expanded Address Bar | https://github.com/zen-browser/desktop/issues/9913 | None | 2 days, 0:48:09 |
|
||||||
|
| Inconsistent behavior when removing essentials via drag and drop | https://github.com/zen-browser/desktop/issues/9912 | None | None |
|
||||||
|
| Essentials can't be rearranged via drag and drop | https://github.com/zen-browser/desktop/issues/9911 | 2:39:54 | 2:39:54 |
|
||||||
|
| Reset Pinned Tab doesn't work | https://github.com/zen-browser/desktop/issues/9910 | 12:56:31 | 9 days, 3:42:31 |
|
||||||
|
| when I use the Collapsed toolbar,The close button on the sidebar shows an abnormal display | https://github.com/zen-browser/desktop/issues/9905 | None | None |
|
||||||
|
| When Nerd Fonts isstelled Zen will always use them | https://github.com/zen-browser/desktop/issues/9904 | None | None |
|
||||||
|
| macOS: Zen shortcuts like Cmd+S are intercepted by websites | https://github.com/zen-browser/desktop/issues/9903 | None | None |
|
||||||
|
| Customize Toolbar issues with Extension Icons (Temporary Containers) | https://github.com/zen-browser/desktop/issues/9901 | None | None |
|
||||||
|
| Startup hang when using an invalid workspace name | https://github.com/zen-browser/desktop/issues/9900 | None | 0:58:35 |
|
||||||
|
| Spotify Web Player doesn't play songs: 'Spotify can't play this right now' error | https://github.com/zen-browser/desktop/issues/9896 | 0:18:09 | 0:57:45 |
|
||||||
|
| Header editor extensions do not work (WebRequest API for onBeforeSendHeaders) | https://github.com/zen-browser/desktop/issues/9895 | None | None |
|
||||||
|
| Essentials - "remove from Essentials" vs "Close Tab" | https://github.com/zen-browser/desktop/issues/9894 | 7:25:09 | None |
|
||||||
|
| VAAPI not working on Linux | https://github.com/zen-browser/desktop/issues/9893 | None | None |
|
||||||
|
| Browser launches up completely blank, no interface, buttons to close or minimize the tab, nothing. | https://github.com/zen-browser/desktop/issues/9890 | 3:45:59 | None |
|
||||||
|
| Annoying white margin around window contents | https://github.com/zen-browser/desktop/issues/9888 | 4 days, 12:34:56 | None |
|
||||||
|
| Zen is being recognized as using Internet Explorer 11 | https://github.com/zen-browser/desktop/issues/9887 | 10:15:03 | 10:15:03 |
|
||||||
|
| Folder unloading bug breaks whole folder tree | https://github.com/zen-browser/desktop/issues/9885 | None | 0:45:09 |
|
||||||
|
| Bug: Leftover in Default Apps | https://github.com/zen-browser/desktop/issues/9879 | 10 days, 15:06:30 | None |
|
||||||
|
| Weird rectangle behind side bar in compact mode | https://github.com/zen-browser/desktop/issues/9877 | None | None |
|
||||||
|
| On startup all previous tabs remain open | https://github.com/zen-browser/desktop/issues/9875 | 11:41:28 | None |
|
||||||
|
| Spotify skips 5 songs then plays first 5 seconds of one and frezzes. | https://github.com/zen-browser/desktop/issues/9874 | 1:56:21 | 1:56:21 |
|
||||||
|
| macOS traffic lights are grey while Zen is focused | https://github.com/zen-browser/desktop/issues/9871 | 1:49:43 | 1:49:43 |
|
||||||
|
| Background audio stops after tab switch: Spotify stalls at a specific timestamp; reload fails; only closing/reopening the tab helps | https://github.com/zen-browser/desktop/issues/9869 | 3:21:56 | 10:26:59 |
|
||||||
|
| Stripe Payment Element iFrame Performance Issues | https://github.com/zen-browser/desktop/issues/9868 | None | None |
|
||||||
|
| [1.15t]: Changing the folder icon while in collapsed mode bug | https://github.com/zen-browser/desktop/issues/9866 | None | 1 day, 7:03:54 |
|
||||||
|
| CTRL + TAB open essential tabs on start up | https://github.com/zen-browser/desktop/issues/9864 | None | None |
|
||||||
|
| Bluetooth headset device prb | https://github.com/zen-browser/desktop/issues/9863 | 1 day, 22:54:56 | None |
|
||||||
|
| Notion Crashes in Zen Browser | https://github.com/zen-browser/desktop/issues/9862 | None | None |
|
||||||
|
| Can't install mods | https://github.com/zen-browser/desktop/issues/9861 | 0:35:44 | None |
|
||||||
|
| Broken automatic updates and update checker | https://github.com/zen-browser/desktop/issues/9860 | 7 days, 22:56:36 | None |
|
||||||
|
| "Backward Workspace" and "Forward Workspace" shortcuts conflict with unchangeable tab-cycling shortcut | https://github.com/zen-browser/desktop/issues/9859 | 3:55:25 | 3:55:25 |
|
||||||
|
| Essentials favicons overlap from multiple workspaces | https://github.com/zen-browser/desktop/issues/9858 | 0:09:18 | None |
|
||||||
|
| Tap with 2 fingers on mac trackpad issue | https://github.com/zen-browser/desktop/issues/9856 | None | None |
|
||||||
|
| Compose key closes floating search input | https://github.com/zen-browser/desktop/issues/9855 | None | None |
|
||||||
|
| Critical Bug - Blackscreen on boot Intel Mac | https://github.com/zen-browser/desktop/issues/9853 | None | None |
|
||||||
|
| switching to left/upper tab is not working with shortcuts, but working if the tabs are pinned. via APIs may be couse i am uging surfing keys extension but reported here just in case. | https://github.com/zen-browser/desktop/issues/9852 | None | None |
|
||||||
|
| iCloud Passwords extension on macOS | https://github.com/zen-browser/desktop/issues/9850 | 15:37:13 | 15:37:20 |
|
||||||
|
| rpi.local:9090 don´t open | https://github.com/zen-browser/desktop/issues/9844 | 2:30:34 | 2 days, 4:55:12 |
|
||||||
|
| Laggy Scrolling Across All Sites On 120 Hz Retina Display of Macbook Pro (M3 Pro) | https://github.com/zen-browser/desktop/issues/9842 | 3:16:14 | None |
|
||||||
|
| Folders Bug on multiple windows | https://github.com/zen-browser/desktop/issues/9840 | 2 days, 19:32:00 | None |
|
||||||
|
| Twilight Updater Bug ("Update ready to install" popup will not go away, even after restarting twilight multiple times) | https://github.com/zen-browser/desktop/issues/9837 | 14 days, 15:03:33 | None |
|
||||||
|
| Windows UAC is prompted after every Zen update | https://github.com/zen-browser/desktop/issues/9836 | 3 days, 13:49:23 | None |
|
||||||
|
| Upon reopening a Zen Browser session with multiple windows, workspaces are not selected properly | https://github.com/zen-browser/desktop/issues/9835 | 6 days, 9:06:16 | None |
|
||||||
|
| When compact mode is enabled, bookmark tabs in the top toolbar fail to display fully on new pages. | https://github.com/zen-browser/desktop/issues/9834 | 3 days, 9:24:00 | None |
|
||||||
|
| Dark Theme Selected, But Light Theme Appears in Some Areas | https://github.com/zen-browser/desktop/issues/9833 | 1 day, 9:15:06 | 1 day, 20:10:57 |
|
||||||
|
| Essential tabs is missing icon when browser history is disabled | https://github.com/zen-browser/desktop/issues/9832 | None | 1 day, 0:58:09 |
|
||||||
|
| [Folders] Broken reordering functionality | https://github.com/zen-browser/desktop/issues/9830 | 1 day, 2:52:11 | 1 day, 7:27:51 |
|
||||||
|
| Essential opens some new links in a new essential tab | https://github.com/zen-browser/desktop/issues/9829 | None | 0:02:42 |
|
||||||
|
| Ctrl-shift-t should restore tab folders after deletion | https://github.com/zen-browser/desktop/issues/9828 | 4 days, 14:56:02 | None |
|
||||||
|
| UrlBar suggestions of renamed tabs are broken | https://github.com/zen-browser/desktop/issues/9825 | 1 day, 14:45:17 | 1 day, 14:45:17 |
|
||||||
|
| UrlBar persists input if closed with hitting the Escape key | https://github.com/zen-browser/desktop/issues/9824 | 1 day, 17:21:19 | 1 day, 17:21:19 |
|
||||||
|
| Bookmark tab doesn't show in single toolbar mode | https://github.com/zen-browser/desktop/issues/9823 | 2 days, 2:41:34 | 2 days, 3:29:57 |
|
||||||
|
| Mouse Hover Shortcut Key Display Lacks Synchronization with User Settings | https://github.com/zen-browser/desktop/issues/9822 | None | None |
|
||||||
|
| The context menu to delete history from the URL bar suggestions needs two clicks to open | https://github.com/zen-browser/desktop/issues/9820 | None | None |
|
||||||
|
| The tab bar shows and hide quickly when leaving the search | https://github.com/zen-browser/desktop/issues/9819 | 0:25:47 | 2 days, 8:39:47 |
|
||||||
|
| Zen Browser freezes when using ChatGPT-5 Browser (especially with code-related responses) | https://github.com/zen-browser/desktop/issues/9816 | 8:28:17 | None |
|
||||||
|
| Zen hangs on contextual menu (right clicking, opening sub menus etc) on Linux | https://github.com/zen-browser/desktop/issues/9815 | None | None |
|
||||||
|
| Bookmarks, URL Bar, and Tabs Invisible Text After Update | https://github.com/zen-browser/desktop/issues/9813 | 7:26:37 | None |
|
||||||
|
| Folder tabs aren't in folders after relaunch | https://github.com/zen-browser/desktop/issues/9812 | 15:43:15 | 1 day, 19:13:37 |
|
||||||
|
| Location bar unfocused when the last character is deleted | https://github.com/zen-browser/desktop/issues/9810 | 0:18:17 | None |
|
||||||
|
| Essentials Bug | https://github.com/zen-browser/desktop/issues/9808 | 1:41:03 | None |
|
||||||
|
| Downloads button having poor visibility after downloading a file in some gradients. | https://github.com/zen-browser/desktop/issues/9807 | 1:44:14 | 1:44:14 |
|
||||||
|
| Laggy scrolling after not quiting the browser for a while | https://github.com/zen-browser/desktop/issues/9806 | 2 days, 10:50:57 | None |
|
||||||
|
| Unnecessary haptic feedback on MacOS when pinning new tab (Twilight) | https://github.com/zen-browser/desktop/issues/9805 | 6:15:46 | 6:15:46 |
|
||||||
|
| New folder renaming text too far to the right | https://github.com/zen-browser/desktop/issues/9804 | 6:17:45 | 6:17:45 |
|
||||||
|
| [Twilight] Broken haptic feedback on macOS when dragging tabs | https://github.com/zen-browser/desktop/issues/9803 | None | 1:14:26 |
|
||||||
|
| Video player not working on crunchyroll | https://github.com/zen-browser/desktop/issues/9802 | 1:16:40 | 1:16:40 |
|
||||||
|
| Switch to tab opens new tab instead of switching | https://github.com/zen-browser/desktop/issues/9801 | 12:20:40 | 12:27:21 |
|
||||||
|
| Reordering split panels via drag-and-drop does not update ordering in tab list, messes with keyboard navigation ordering. | https://github.com/zen-browser/desktop/issues/9800 | None | 1 day, 2:11:06 |
|
||||||
|
| tab bar in fullscreen mode | https://github.com/zen-browser/desktop/issues/9799 | None | 18:51:36 |
|
||||||
|
| Taskbar not showing | https://github.com/zen-browser/desktop/issues/9798 | 10:56:45 | None |
|
||||||
|
| Security key pin dialog lacks support for paste action | https://github.com/zen-browser/desktop/issues/9796 | 21:28:51 | 1 day, 6:48:45 |
|
||||||
|
| Last popup opening when submiting forms (i.e pressing enter) | https://github.com/zen-browser/desktop/issues/9795 | 21:44:10 | 1 day, 5:01:56 |
|
||||||
|
| New password updates don't work | https://github.com/zen-browser/desktop/issues/9794 | 2:53:04 | None |
|
||||||
|
| Sidebar quickly opening and closing when in compact mode | https://github.com/zen-browser/desktop/issues/9793 | 2:51:23 | None |
|
||||||
|
| Fail to import password from Brave | https://github.com/zen-browser/desktop/issues/9792 | None | 21:51:13 |
|
||||||
|
| Favicons not showing | https://github.com/zen-browser/desktop/issues/9791 | 14:44:19 | 4 days, 20:11:15 |
|
||||||
|
| The sidebar unexpectedly appears as the mouse cursor moves away from the URL bar in compact mode | https://github.com/zen-browser/desktop/issues/9790 | 11:11:16 | 23 days, 3:02:43 |
|
||||||
|
| Tab doesn't close after search (find on page) | https://github.com/zen-browser/desktop/issues/9789 | None | None |
|
||||||
|
| Weird Margin when on Fullscreen watching videos when sidebar opened | https://github.com/zen-browser/desktop/issues/9788 | None | None |
|
||||||
|
| Squashed webpages on smaller windows in hyprland | https://github.com/zen-browser/desktop/issues/9786 | 1:09:51 | None |
|
||||||
|
| Failed to check for updates | https://github.com/zen-browser/desktop/issues/9785 | 1:15:30 | None |
|
||||||
|
| Video thumbnails not fully load (YouTube) | https://github.com/zen-browser/desktop/issues/9783 | 0:07:00 | None |
|
||||||
|
| Version Compatibility Issue | https://github.com/zen-browser/desktop/issues/9782 | 1:12:07 | None |
|
||||||
|
| Setting Backward / Forward Workspace shortcuts to cmd+opt+right arrow / cmd+opt+left arrow doesn't work | https://github.com/zen-browser/desktop/issues/9779 | 3:51:07 | None |
|
||||||
|
| The close tab button fails to work when trying to close multiple tabs that are using Glance | https://github.com/zen-browser/desktop/issues/9778 | 2 days, 16:14:18 | None |
|
||||||
|
| Switching between Spaces not working | https://github.com/zen-browser/desktop/issues/9776 | 0:14:43 | 0:14:43 |
|
||||||
|
| Sidebar is much darker than the workspace's chosen theme color when in compact mode | https://github.com/zen-browser/desktop/issues/9773 | 0:03:24 | None |
|
||||||
|
| Exit menu not appearing as it should be! | https://github.com/zen-browser/desktop/issues/9771 | 1:55:10 | 1:55:10 |
|
||||||
|
| Zorin OS (sub disturbution of ubuntu): automatically unlodaded tabs' icons appear as if they are loaded. | https://github.com/zen-browser/desktop/issues/9770 | 5:45:29 | 2 days, 12:00:33 |
|
||||||
|
| No requests are shown in Network tabs in the DevTools | https://github.com/zen-browser/desktop/issues/9765 | None | 13:35:18 |
|
||||||
|
| The Youtube UI is missing | https://github.com/zen-browser/desktop/issues/9764 | 13:42:10 | None |
|
||||||
|
| Scrolling on Touch Pad not working | https://github.com/zen-browser/desktop/issues/9763 | None | 1 day, 1:06:22 |
|
||||||
|
| Problem with the translation icon | https://github.com/zen-browser/desktop/issues/9761 | None | None |
|
||||||
|
| Sidebar appearing again in ubuntu 24.04 even i already hid it | https://github.com/zen-browser/desktop/issues/9758 | None | 4:46:11 |
|
||||||
|
| Ferefox View is not working | https://github.com/zen-browser/desktop/issues/9757 | None | None |
|
||||||
|
| Google Docs (Hebrew): Selected text is not deselected after typing, leading to infinite replacement loop. | https://github.com/zen-browser/desktop/issues/9756 | None | None |
|
||||||
|
| Container tabs can't be added to essentials | https://github.com/zen-browser/desktop/issues/9753 | 10:17:57 | 17:44:03 |
|
||||||
|
| transparent custom color issue | https://github.com/zen-browser/desktop/issues/9752 | 26 days, 4:17:37 | None |
|
||||||
|
| night tb extension problem | https://github.com/zen-browser/desktop/issues/9751 | None | 2:37:24 |
|
||||||
|
| night tab extension not working | https://github.com/zen-browser/desktop/issues/9750 | 0:45:32 | None |
|
||||||
|
| Media Component showing wrong timing. | https://github.com/zen-browser/desktop/issues/9748 | 1 day, 21:23:48 | None |
|
||||||
|
| Option+Cmd+E shortcut is assigned twice in standard settings | https://github.com/zen-browser/desktop/issues/9746 | 2 days, 1:35:44 | None |
|
||||||
|
| Microphone not detected on Google Meet using Zen Browser under Wayland | https://github.com/zen-browser/desktop/issues/9745 | None | None |
|
||||||
|
| Apple Passwords extension works in firefox but not in zen | https://github.com/zen-browser/desktop/issues/9743 | None | 4:24:39 |
|
||||||
|
| [Flatpak] Maximize and Minimize button not appearing | https://github.com/zen-browser/desktop/issues/9740 | 16:43:18 | None |
|
||||||
|
| Zen Browser does not stay in Dark theme | https://github.com/zen-browser/desktop/issues/9739 | 3:02:20 | 10:26:06 |
|
||||||
|
| Sidebar Hover keeps breaking Sidebar | https://github.com/zen-browser/desktop/issues/9738 | 18:14:03 | 18:14:03 |
|
||||||
|
| WebGL not working because glxtest cannot determine the primary gpu | https://github.com/zen-browser/desktop/issues/9735 | None | 2 days, 2:10:27 |
|
||||||
|
| Critical profile and data wipe - my data is inaccessible but viewable via AppData | https://github.com/zen-browser/desktop/issues/9733 | None | None |
|
||||||
|
| Workspace bookmarks are showing across different workspaces | https://github.com/zen-browser/desktop/issues/9732 | None | None |
|
||||||
|
| Side bar takes priority over top bar in compact mode, impossible to close window in compact mode with no tabs open | https://github.com/zen-browser/desktop/issues/9730 | None | None |
|
||||||
|
| Incorrect theme context color provider in dark mode for the bottom search bar | https://github.com/zen-browser/desktop/issues/9729 | 17:05:40 | 23:37:32 |
|
||||||
|
| URLs open in wrong space | https://github.com/zen-browser/desktop/issues/9728 | 4 days, 4:26:42 | None |
|
||||||
|
| "ZenCP Isolated Web Content" process pegs all cores after media playback on MacOS | https://github.com/zen-browser/desktop/issues/9727 | 5 days, 2:14:27 | None |
|
||||||
|
| How to disable url in sidebar. | https://github.com/zen-browser/desktop/issues/9726 | None | 0:03:33 |
|
||||||
|
| Switch to tab clones tab instead of switching. | https://github.com/zen-browser/desktop/issues/9724 | 0:21:55 | 0:42:52 |
|
||||||
|
| Not supported HTML5 | https://github.com/zen-browser/desktop/issues/9723 | 3:28:34 | 3:28:34 |
|
||||||
|
| Zen browsers loses tabs every time it is restarted | https://github.com/zen-browser/desktop/issues/9718 | 15 days, 7:57:29 | 0:03:16 |
|
||||||
|
| Can't change to different workspaces after a while | https://github.com/zen-browser/desktop/issues/9717 | 5 days, 11:32:11 | None |
|
||||||
|
| Moving bookmarks in the bookmark bar is not reliable | https://github.com/zen-browser/desktop/issues/9715 | 24 days, 1:43:39 | None |
|
||||||
|
| Ctrl+Shift+T not restoring the most recent tab | https://github.com/zen-browser/desktop/issues/9714 | None | 14:28:46 |
|
||||||
|
|
||||||
|
_This report was generated with the [Issue Metrics Action](https://github.com/github/issue-metrics)_
|
||||||
|
Search query used to find these items: `repo:zen-browser/desktop is:issue created:2025-08-01..2025-08-31`
|
@@ -15,7 +15,7 @@ zen-folders-panel-change-folder-space =
|
|||||||
zen-folders-panel-change-icon-folder =
|
zen-folders-panel-change-icon-folder =
|
||||||
.label = Change Icon
|
.label = Change Icon
|
||||||
zen-folders-unload-all-tooltip =
|
zen-folders-unload-all-tooltip =
|
||||||
.tooltiptext = Unload all tabs in this folder
|
.tooltiptext = Unload active in this folder
|
||||||
zen-folders-unload-folder =
|
zen-folders-unload-folder =
|
||||||
.label = Unload All Tabs
|
.label = Unload All Tabs
|
||||||
zen-folders-search-no-results = No tabs matching that search 🤔
|
zen-folders-search-no-results = No tabs matching that search 🤔
|
||||||
|
@@ -15,7 +15,7 @@ zen-folders-panel-change-folder-space =
|
|||||||
zen-folders-panel-change-icon-folder =
|
zen-folders-panel-change-icon-folder =
|
||||||
.label = Canvia la icona
|
.label = Canvia la icona
|
||||||
zen-folders-unload-all-tooltip =
|
zen-folders-unload-all-tooltip =
|
||||||
.tooltiptext = Descarrega totes les pestanyes d'aquesta carpeta
|
.tooltiptext = Hiberna les pestanyes actives d'aquesta carpeta
|
||||||
zen-folders-unload-folder =
|
zen-folders-unload-folder =
|
||||||
.label = Descarrega totes les pestanyes
|
.label = Hiberna totes les pestanyes
|
||||||
zen-folders-search-no-results = No hi ha pestanyes que coincideixin amb aquesta cerca 🤔
|
zen-folders-search-no-results = No hi ha pestanyes que coincideixin amb aquesta cerca 🤔
|
||||||
|
@@ -15,7 +15,7 @@ zen-toolbar-context-compact-mode-hide-both =
|
|||||||
.label = Amaga les dues
|
.label = Amaga les dues
|
||||||
.accesskey = H
|
.accesskey = H
|
||||||
zen-toolbar-context-new-folder =
|
zen-toolbar-context-new-folder =
|
||||||
.label = New Folder
|
.label = Carpeta nova
|
||||||
.accesskey = N
|
.accesskey = N
|
||||||
sidebar-zen-expand =
|
sidebar-zen-expand =
|
||||||
.label = Expandeix la barra lateral
|
.label = Expandeix la barra lateral
|
||||||
@@ -24,7 +24,7 @@ sidebar-zen-create-new =
|
|||||||
tabbrowser-unload-tab-button =
|
tabbrowser-unload-tab-button =
|
||||||
.tooltiptext =
|
.tooltiptext =
|
||||||
{ $tabCount ->
|
{ $tabCount ->
|
||||||
[one] Hiberna i canvia la pestanya
|
[one] Hiberna i canvia a la pestanya
|
||||||
*[other] Hiberna { $tabCount } pestanyes i canvia a la primera
|
*[other] Hiberna { $tabCount } pestanyes i canvia a la primera
|
||||||
}
|
}
|
||||||
tabbrowser-reset-pin-button =
|
tabbrowser-reset-pin-button =
|
||||||
|
@@ -15,7 +15,7 @@ zen-folders-panel-change-folder-space =
|
|||||||
zen-folders-panel-change-icon-folder =
|
zen-folders-panel-change-icon-folder =
|
||||||
.label = Změnit ikonu
|
.label = Změnit ikonu
|
||||||
zen-folders-unload-all-tooltip =
|
zen-folders-unload-all-tooltip =
|
||||||
.tooltiptext = Unload all tabs in this folder
|
.tooltiptext = Unload active in this folder
|
||||||
zen-folders-unload-folder =
|
zen-folders-unload-folder =
|
||||||
.label = Unload All Tabs
|
.label = Uspat všechny panely
|
||||||
zen-folders-search-no-results = Žádný panel neodpovídá tomuto hledání 🤔
|
zen-folders-search-no-results = Žádný panel neodpovídá tomuto hledání 🤔
|
||||||
|
@@ -15,7 +15,7 @@ zen-toolbar-context-compact-mode-hide-both =
|
|||||||
.label = Skrýt obojí
|
.label = Skrýt obojí
|
||||||
.accesskey = H
|
.accesskey = H
|
||||||
zen-toolbar-context-new-folder =
|
zen-toolbar-context-new-folder =
|
||||||
.label = New Folder
|
.label = Nová složka
|
||||||
.accesskey = N
|
.accesskey = N
|
||||||
sidebar-zen-expand =
|
sidebar-zen-expand =
|
||||||
.label = Zvětšit boční panel
|
.label = Zvětšit boční panel
|
||||||
|
@@ -15,7 +15,7 @@ zen-folders-panel-change-folder-space =
|
|||||||
zen-folders-panel-change-icon-folder =
|
zen-folders-panel-change-icon-folder =
|
||||||
.label = Change Icon
|
.label = Change Icon
|
||||||
zen-folders-unload-all-tooltip =
|
zen-folders-unload-all-tooltip =
|
||||||
.tooltiptext = Unload all tabs in this folder
|
.tooltiptext = Unload active in this folder
|
||||||
zen-folders-unload-folder =
|
zen-folders-unload-folder =
|
||||||
.label = Unload All Tabs
|
.label = Unload All Tabs
|
||||||
zen-folders-search-no-results = No tabs matching that search 🤔
|
zen-folders-search-no-results = No tabs matching that search 🤔
|
||||||
|
@@ -15,7 +15,7 @@ zen-folders-panel-change-folder-space =
|
|||||||
zen-folders-panel-change-icon-folder =
|
zen-folders-panel-change-icon-folder =
|
||||||
.label = Skift ikon
|
.label = Skift ikon
|
||||||
zen-folders-unload-all-tooltip =
|
zen-folders-unload-all-tooltip =
|
||||||
.tooltiptext = Unload all tabs in this folder
|
.tooltiptext = Stop indlæsning af aktive i denne mappe
|
||||||
zen-folders-unload-folder =
|
zen-folders-unload-folder =
|
||||||
.label = Unload All Tabs
|
.label = Stop indlæsning af alle faner
|
||||||
zen-folders-search-no-results = Ingen faner matcher den søgning 🤔
|
zen-folders-search-no-results = Ingen faner matcher den søgning 🤔
|
||||||
|
@@ -15,7 +15,7 @@ zen-toolbar-context-compact-mode-hide-both =
|
|||||||
.label = Skjul begge
|
.label = Skjul begge
|
||||||
.accesskey = H
|
.accesskey = H
|
||||||
zen-toolbar-context-new-folder =
|
zen-toolbar-context-new-folder =
|
||||||
.label = New Folder
|
.label = Ny mappe
|
||||||
.accesskey = N
|
.accesskey = N
|
||||||
sidebar-zen-expand =
|
sidebar-zen-expand =
|
||||||
.label = Udvid Sidepanel
|
.label = Udvid Sidepanel
|
||||||
|
@@ -15,7 +15,7 @@ zen-folders-panel-change-folder-space =
|
|||||||
zen-folders-panel-change-icon-folder =
|
zen-folders-panel-change-icon-folder =
|
||||||
.label = Symbol ändern
|
.label = Symbol ändern
|
||||||
zen-folders-unload-all-tooltip =
|
zen-folders-unload-all-tooltip =
|
||||||
.tooltiptext = Alle Tabs in diesem Ordner entladen
|
.tooltiptext = Aktive Tabs in diesem Ordner entladen
|
||||||
zen-folders-unload-folder =
|
zen-folders-unload-folder =
|
||||||
.label = Alle Tabs entladen
|
.label = Alle Tabs entladen
|
||||||
zen-folders-search-no-results = Keine passenden Tabs gefunden 🤔
|
zen-folders-search-no-results = Keine passenden Tabs gefunden 🤔
|
||||||
|
@@ -15,7 +15,7 @@ zen-toolbar-context-compact-mode-hide-both =
|
|||||||
.label = Beide ausblenden
|
.label = Beide ausblenden
|
||||||
.accesskey = H
|
.accesskey = H
|
||||||
zen-toolbar-context-new-folder =
|
zen-toolbar-context-new-folder =
|
||||||
.label = New Folder
|
.label = Neuer Ordner
|
||||||
.accesskey = N
|
.accesskey = N
|
||||||
sidebar-zen-expand =
|
sidebar-zen-expand =
|
||||||
.label = Seitenleiste erweitern
|
.label = Seitenleiste erweitern
|
||||||
|
@@ -15,7 +15,7 @@ zen-folders-panel-change-folder-space =
|
|||||||
zen-folders-panel-change-icon-folder =
|
zen-folders-panel-change-icon-folder =
|
||||||
.label = Change Icon
|
.label = Change Icon
|
||||||
zen-folders-unload-all-tooltip =
|
zen-folders-unload-all-tooltip =
|
||||||
.tooltiptext = Unload all tabs in this folder
|
.tooltiptext = Unload active in this folder
|
||||||
zen-folders-unload-folder =
|
zen-folders-unload-folder =
|
||||||
.label = Unload All Tabs
|
.label = Unload All Tabs
|
||||||
zen-folders-search-no-results = No tabs matching that search 🤔
|
zen-folders-search-no-results = No tabs matching that search 🤔
|
||||||
|
@@ -15,7 +15,7 @@ zen-folders-panel-change-folder-space =
|
|||||||
zen-folders-panel-change-icon-folder =
|
zen-folders-panel-change-icon-folder =
|
||||||
.label = Change Icon
|
.label = Change Icon
|
||||||
zen-folders-unload-all-tooltip =
|
zen-folders-unload-all-tooltip =
|
||||||
.tooltiptext = Unload all tabs in this folder
|
.tooltiptext = Unload active in this folder
|
||||||
zen-folders-unload-folder =
|
zen-folders-unload-folder =
|
||||||
.label = Unload All Tabs
|
.label = Unload All Tabs
|
||||||
zen-folders-search-no-results = No tabs matching that search 🤔
|
zen-folders-search-no-results = No tabs matching that search 🤔
|
||||||
|
@@ -24,7 +24,7 @@ zen-folders-panel-change-icon-folder =
|
|||||||
.label = Change Icon
|
.label = Change Icon
|
||||||
|
|
||||||
zen-folders-unload-all-tooltip =
|
zen-folders-unload-all-tooltip =
|
||||||
.tooltiptext = Unload all tabs in this folder
|
.tooltiptext = Unload active in this folder
|
||||||
|
|
||||||
zen-folders-unload-folder =
|
zen-folders-unload-folder =
|
||||||
.label = Unload All Tabs
|
.label = Unload All Tabs
|
||||||
|
@@ -15,7 +15,7 @@ zen-folders-panel-change-folder-space =
|
|||||||
zen-folders-panel-change-icon-folder =
|
zen-folders-panel-change-icon-folder =
|
||||||
.label = Cambiar icono
|
.label = Cambiar icono
|
||||||
zen-folders-unload-all-tooltip =
|
zen-folders-unload-all-tooltip =
|
||||||
.tooltiptext = Suspender todas las pestañas de esta carpeta
|
.tooltiptext = Suspensión activa en esta carpeta
|
||||||
zen-folders-unload-folder =
|
zen-folders-unload-folder =
|
||||||
.label = Suspender todas las pestañas
|
.label = Suspender todas las pestañas
|
||||||
zen-folders-search-no-results = Ninguna pestaña coincide con esa búsqueda 🤔
|
zen-folders-search-no-results = Ninguna pestaña coincide con esa búsqueda 🤔
|
||||||
|
@@ -15,7 +15,7 @@ zen-toolbar-context-compact-mode-hide-both =
|
|||||||
.label = Ocultar ambas
|
.label = Ocultar ambas
|
||||||
.accesskey = H
|
.accesskey = H
|
||||||
zen-toolbar-context-new-folder =
|
zen-toolbar-context-new-folder =
|
||||||
.label = New Folder
|
.label = Nueva carpeta
|
||||||
.accesskey = N
|
.accesskey = N
|
||||||
sidebar-zen-expand =
|
sidebar-zen-expand =
|
||||||
.label = Expandir barra lateral
|
.label = Expandir barra lateral
|
||||||
|
@@ -47,7 +47,7 @@ zen-look-and-feel-compact-toolbar-themed =
|
|||||||
zen-look-and-feel-compact-sidebar-themed =
|
zen-look-and-feel-compact-sidebar-themed =
|
||||||
.label = Kasuta kompaktsel külgribal teema poolt küljendatud tausta
|
.label = Kasuta kompaktsel külgribal teema poolt küljendatud tausta
|
||||||
zen-workspace-continue-where-left-off =
|
zen-workspace-continue-where-left-off =
|
||||||
.label = Continue where you left off
|
.label = Jätka sealt, kus eelmine kord pooleli jäi
|
||||||
pane-zen-pinned-tab-manager-title = Püsikaardid
|
pane-zen-pinned-tab-manager-title = Püsikaardid
|
||||||
zen-pinned-tab-manager-header = Püsikaartide üldised sätted
|
zen-pinned-tab-manager-header = Püsikaartide üldised sätted
|
||||||
zen-pinned-tab-manager-description = Halda püsikaartide täiendavat käitumist
|
zen-pinned-tab-manager-description = Halda püsikaartide täiendavat käitumist
|
||||||
@@ -94,29 +94,29 @@ zen-vertical-tabs-expand-tabs-header = Kuidas kaarte laiendatakse
|
|||||||
zen-vertical-tabs-expand-tabs-description = Vali kuidas laiendatakse kaarte külgribal
|
zen-vertical-tabs-expand-tabs-description = Vali kuidas laiendatakse kaarte külgribal
|
||||||
zen-theme-marketplace-header = Zen Mods
|
zen-theme-marketplace-header = Zen Mods
|
||||||
zen-theme-disable-all-enabled =
|
zen-theme-disable-all-enabled =
|
||||||
.title = Keela kõik muudatused
|
.title = Keela kõik mods-id
|
||||||
zen-theme-disable-all-disabled =
|
zen-theme-disable-all-disabled =
|
||||||
.title = Luba kõik muudatused
|
.title = Luba kõik muudatused
|
||||||
zen-theme-marketplace-description = Otsi ja paigalda muudatusi veebipoest.
|
zen-theme-marketplace-description = Otsi ja paigalda mods-e veebipoest.
|
||||||
zen-theme-marketplace-remove-button =
|
zen-theme-marketplace-remove-button =
|
||||||
.label = Eemalda muudatus
|
.label = Eemalda mod
|
||||||
zen-theme-marketplace-check-for-updates-button =
|
zen-theme-marketplace-check-for-updates-button =
|
||||||
.label = Kontrolli uuendusi
|
.label = Kontrolli uuendusi
|
||||||
zen-theme-marketplace-import-button =
|
zen-theme-marketplace-import-button =
|
||||||
.label = Import mods
|
.label = Impordi Mods-id
|
||||||
zen-theme-marketplace-export-button =
|
zen-theme-marketplace-export-button =
|
||||||
.label = Export Mods
|
.label = Ekspordi Mods-id
|
||||||
zen-theme-marketplace-import-success = Mods imported successfully
|
zen-theme-marketplace-import-success = Mods-id on edukalt imporditud
|
||||||
zen-theme-marketplace-import-failure = There was an error importing the mods
|
zen-theme-marketplace-import-failure = Mods-ide importimisel tekkis viga
|
||||||
zen-theme-marketplace-export-success = Mods exported successfully
|
zen-theme-marketplace-export-success = Mods-id on edukalt eksporditud
|
||||||
zen-theme-marketplace-export-failure = There was an error exporting the mods
|
zen-theme-marketplace-export-failure = Mods-ide eksportimisel tekkis viga
|
||||||
zen-theme-marketplace-updates-success = Muudatused on edukalt uuendatud
|
zen-theme-marketplace-updates-success = Mods-id on edukalt uuendatud
|
||||||
zen-theme-marketplace-updates-failure = Couldn't find any updates!
|
zen-theme-marketplace-updates-failure = Uuendusi ei leitud!
|
||||||
zen-theme-marketplace-toggle-enabled-button =
|
zen-theme-marketplace-toggle-enabled-button =
|
||||||
.title = Keela muudatus
|
.title = Keela mod
|
||||||
zen-theme-marketplace-toggle-disabled-button =
|
zen-theme-marketplace-toggle-disabled-button =
|
||||||
.title = Luba muudatus
|
.title = Luba mod
|
||||||
zen-theme-marketplace-remove-confirmation = Oled sa kindel, et soovid eemaldada selle muudatuse?
|
zen-theme-marketplace-remove-confirmation = Oled sa kindel, et soovid eemaldada selle mod-i?
|
||||||
zen-theme-marketplace-close-modal = Sulge
|
zen-theme-marketplace-close-modal = Sulge
|
||||||
zen-theme-marketplace-theme-header-title =
|
zen-theme-marketplace-theme-header-title =
|
||||||
.title = CSS selektor: { $name }
|
.title = CSS selektor: { $name }
|
||||||
@@ -126,7 +126,7 @@ zen-theme-marketplace-input-default-placeholder =
|
|||||||
.placeholder = Sisesta midagi...
|
.placeholder = Sisesta midagi...
|
||||||
pane-zen-marketplace-title = Zen Mods
|
pane-zen-marketplace-title = Zen Mods
|
||||||
zen-themes-auto-update =
|
zen-themes-auto-update =
|
||||||
.label = Automatically update installed mods on startup
|
.label = Uuenda paigaldatud mods-e brauseri avamisel automaatselt
|
||||||
zen-settings-workspaces-force-container-tabs-to-workspace =
|
zen-settings-workspaces-force-container-tabs-to-workspace =
|
||||||
.label = Konteineri kaartide avamisel lülitu tööruumi kuhu konteiner on vaikimisi määratud
|
.label = Konteineri kaartide avamisel lülitu tööruumi kuhu konteiner on vaikimisi määratud
|
||||||
zen-theme-marketplace-link = Külasta veebipoodi
|
zen-theme-marketplace-link = Külasta veebipoodi
|
||||||
@@ -171,7 +171,7 @@ zenCKSOption-group-zen-compact-mode = Kompaktne režiim
|
|||||||
zenCKSOption-group-zen-workspace = Tööruumid
|
zenCKSOption-group-zen-workspace = Tööruumid
|
||||||
zenCKSOption-group-zen-other = Muud Zeni funktsioonid
|
zenCKSOption-group-zen-other = Muud Zeni funktsioonid
|
||||||
zenCKSOption-group-zen-split-view = Jaotatud vaade
|
zenCKSOption-group-zen-split-view = Jaotatud vaade
|
||||||
zenCKSOption-group-devTools = Developer Tools
|
zenCKSOption-group-devTools = Arendaja tööriistad
|
||||||
zen-key-quick-restart = Kiirtaaskävitus
|
zen-key-quick-restart = Kiirtaaskävitus
|
||||||
zen-window-new-shortcut = Uus aken
|
zen-window-new-shortcut = Uus aken
|
||||||
zen-tab-new-shortcut = Uus kaart
|
zen-tab-new-shortcut = Uus kaart
|
||||||
@@ -185,7 +185,7 @@ zen-text-action-redo-shortcut = Tee uuesti
|
|||||||
zen-text-action-cut-shortcut = Lõika
|
zen-text-action-cut-shortcut = Lõika
|
||||||
zen-text-action-copy-shortcut = Kopeeri
|
zen-text-action-copy-shortcut = Kopeeri
|
||||||
zen-text-action-copy-url-shortcut = Kopeeri praegune URL
|
zen-text-action-copy-url-shortcut = Kopeeri praegune URL
|
||||||
zen-text-action-copy-url-markdown-shortcut = Copy current URL as Markdown
|
zen-text-action-copy-url-markdown-shortcut = Kopeeri praegune URL Markdown-i märgendina
|
||||||
zen-text-action-paste-shortcut = Aseta
|
zen-text-action-paste-shortcut = Aseta
|
||||||
zen-text-action-select-all-shortcut = Vali kõik
|
zen-text-action-select-all-shortcut = Vali kõik
|
||||||
zen-text-action-delete-shortcut = Kustuta
|
zen-text-action-delete-shortcut = Kustuta
|
||||||
@@ -220,9 +220,9 @@ zen-nav-fwd-shortcut-alt = Navigeeri edasi (alternatiivne)
|
|||||||
zen-history-show-all-shortcut = Näita kogu ajalugu
|
zen-history-show-all-shortcut = Näita kogu ajalugu
|
||||||
zen-key-enter-full-screen = Täisekraanirežiim
|
zen-key-enter-full-screen = Täisekraanirežiim
|
||||||
zen-key-exit-full-screen = Välju täisekraanirežiimist
|
zen-key-exit-full-screen = Välju täisekraanirežiimist
|
||||||
zen-ai-chatbot-sidebar-shortcut = Toggle AI Chatbot Sidebar
|
zen-ai-chatbot-sidebar-shortcut = Lülita AI vestlusroboti külgriba sisse/välja
|
||||||
zen-key-inspector-mac = Toggle Inspector (Mac)
|
zen-key-inspector-mac = Lülita inspekteerija sisse/välja (Mac)
|
||||||
zen-toggle-sidebar-shortcut = Toggle Firefox Sidebar
|
zen-toggle-sidebar-shortcut = Lülita Firefoxi külgriba sisse/välja
|
||||||
zen-reader-mode-toggle-shortcut-other = Lülita lugejarežiim sisse/välja
|
zen-reader-mode-toggle-shortcut-other = Lülita lugejarežiim sisse/välja
|
||||||
zen-picture-in-picture-toggle-shortcut = Lülita pilt-pildis sisse/välja
|
zen-picture-in-picture-toggle-shortcut = Lülita pilt-pildis sisse/välja
|
||||||
zen-nav-reload-shortcut-2 = Laadi leht uuesti
|
zen-nav-reload-shortcut-2 = Laadi leht uuesti
|
||||||
@@ -239,9 +239,9 @@ zen-key-stop = Peata laadimine
|
|||||||
zen-full-zoom-reduce-shortcut = Vähenda
|
zen-full-zoom-reduce-shortcut = Vähenda
|
||||||
zen-full-zoom-enlarge-shortcut = Suurenda
|
zen-full-zoom-enlarge-shortcut = Suurenda
|
||||||
zen-full-zoom-reset-shortcut = Lähtesta suurendamine
|
zen-full-zoom-reset-shortcut = Lähtesta suurendamine
|
||||||
zen-full-zoom-reset-shortcut-alt = Reset Zoom (Alt)
|
zen-full-zoom-reset-shortcut-alt = Lähtesta suurendamine (Alternatiivne)
|
||||||
zen-full-zoom-enlarge-shortcut-alt = Zoom In (Alt)
|
zen-full-zoom-enlarge-shortcut-alt = Suurenda (Alternatiivne)
|
||||||
zen-full-zoom-enlarge-shortcut-alt2 = Zoom In (Alt 2)
|
zen-full-zoom-enlarge-shortcut-alt2 = Suurenda (Alternatiivne 2)
|
||||||
zen-bidi-switch-direction-shortcut = Muuda teksti suunda
|
zen-bidi-switch-direction-shortcut = Muuda teksti suunda
|
||||||
zen-private-browsing-shortcut = Ava privaatne aken
|
zen-private-browsing-shortcut = Ava privaatne aken
|
||||||
zen-screenshot-shortcut = Tee ekraanipilt
|
zen-screenshot-shortcut = Tee ekraanipilt
|
||||||
@@ -288,16 +288,16 @@ zen-key-goto-history = Ava ajalugu
|
|||||||
zen-key-go-home = Avaleht
|
zen-key-go-home = Avaleht
|
||||||
zen-bookmark-show-sidebar-shortcut = Kuva järjehoidjate külgriba
|
zen-bookmark-show-sidebar-shortcut = Kuva järjehoidjate külgriba
|
||||||
zen-bookmark-show-toolbar-shortcut = Kuva järjehoidjariba
|
zen-bookmark-show-toolbar-shortcut = Kuva järjehoidjariba
|
||||||
zen-devtools-toggle-shortcut = Toggle DevTools
|
zen-devtools-toggle-shortcut = Lülita arendaja tööriistad sisse/välja
|
||||||
zen-devtools-toggle-browser-toolbox-shortcut = Toggle Browser Toolbox
|
zen-devtools-toggle-browser-toolbox-shortcut = Lülita brauseri tööriistakast sisse/välja
|
||||||
zen-devtools-toggle-browser-console-shortcut = Toggle Browser Console
|
zen-devtools-toggle-browser-console-shortcut = Lülita brauseri konsool sisse/välja
|
||||||
zen-devtools-toggle-responsive-design-mode-shortcut = Toggle Responsive Design Mode
|
zen-devtools-toggle-responsive-design-mode-shortcut = Lülita reageeriva disaini režiim sisse/välja
|
||||||
zen-devtools-toggle-inspector-shortcut = Toggle Inspector
|
zen-devtools-toggle-inspector-shortcut = Lülita inspekteerija sisse/välja
|
||||||
zen-devtools-toggle-web-console-shortcut = Toggle Web Console
|
zen-devtools-toggle-web-console-shortcut = Lülita veebikonsool sisse/välja
|
||||||
zen-devtools-toggle-js-debugger-shortcut = Toggle JavaScript Debugger
|
zen-devtools-toggle-js-debugger-shortcut = Lülita JavaScripti siluja sisse/välja
|
||||||
zen-devtools-toggle-net-monitor-shortcut = Toggle Network Monitor
|
zen-devtools-toggle-net-monitor-shortcut = Lülita võrgu jälgija sisse/välja
|
||||||
zen-devtools-toggle-style-editor-shortcut = Toggle Style Editor
|
zen-devtools-toggle-style-editor-shortcut = Lülita stiilide redaktor sisse/välja
|
||||||
zen-devtools-toggle-performance-shortcut = Toggle Performance
|
zen-devtools-toggle-performance-shortcut = Lülita jõudluse sektsioon sisse/välja
|
||||||
zen-devtools-toggle-storage-shortcut = Toggle Storage
|
zen-devtools-toggle-storage-shortcut = Lülita mälu sektsioon sisse/välja
|
||||||
zen-devtools-toggle-dom-shortcut = Toggle DOM
|
zen-devtools-toggle-dom-shortcut = Lülita DOM sisse/välja
|
||||||
zen-devtools-toggle-accessibility-shortcut = Toggle Accessibility
|
zen-devtools-toggle-accessibility-shortcut = Lülita ligipääsetavuse sektsioon sisse/välja
|
||||||
|
@@ -1,21 +1,21 @@
|
|||||||
zen-folders-search-placeholder =
|
zen-folders-search-placeholder =
|
||||||
.placeholder = Search { $folder-name }...
|
.placeholder = Otsi kaustast { $folder-name }...
|
||||||
zen-folders-panel-rename-folder =
|
zen-folders-panel-rename-folder =
|
||||||
.label = Rename Folder
|
.label = Nimeta kaust ümber
|
||||||
zen-folders-panel-unpack-folder =
|
zen-folders-panel-unpack-folder =
|
||||||
.label = Unpack Folder
|
.label = Paki kaust lahti
|
||||||
zen-folders-new-subfolder =
|
zen-folders-new-subfolder =
|
||||||
.label = New Subfolder
|
.label = Uus alamkaust
|
||||||
zen-folders-panel-delete-folder =
|
zen-folders-panel-delete-folder =
|
||||||
.label = Delete Folder
|
.label = Kustuta kaust
|
||||||
zen-folders-panel-convert-folder-to-space =
|
zen-folders-panel-convert-folder-to-space =
|
||||||
.label = Convert folder to Space
|
.label = Teisenda kaust tööruumiks
|
||||||
zen-folders-panel-change-folder-space =
|
zen-folders-panel-change-folder-space =
|
||||||
.label = Change Space...
|
.label = Liiguta tööruumi...
|
||||||
zen-folders-panel-change-icon-folder =
|
zen-folders-panel-change-icon-folder =
|
||||||
.label = Change Icon
|
.label = Muuda ikooni
|
||||||
zen-folders-unload-all-tooltip =
|
zen-folders-unload-all-tooltip =
|
||||||
.tooltiptext = Unload all tabs in this folder
|
.tooltiptext = Eemalda mälust selle kausta aktiivsed kaardid
|
||||||
zen-folders-unload-folder =
|
zen-folders-unload-folder =
|
||||||
.label = Unload All Tabs
|
.label = Eemalda mälust kõik kaardid
|
||||||
zen-folders-search-no-results = No tabs matching that search 🤔
|
zen-folders-search-no-results = Otsingule ei vasta ühtegi kaarti 🤔
|
||||||
|
@@ -2,49 +2,49 @@ zen-panel-ui-current-profile-text = praegune profiil
|
|||||||
unified-extensions-description = Laiendusi kasutatakse täiendava funktsionaalsuse lisamiseks { -brand-short-name }i.
|
unified-extensions-description = Laiendusi kasutatakse täiendava funktsionaalsuse lisamiseks { -brand-short-name }i.
|
||||||
tab-context-zen-reset-pinned-tab =
|
tab-context-zen-reset-pinned-tab =
|
||||||
.label = Lähtesta püsikaart
|
.label = Lähtesta püsikaart
|
||||||
.accesskey = R
|
.accesskey = p
|
||||||
tab-context-zen-add-essential =
|
tab-context-zen-add-essential =
|
||||||
.label = Add to Essentials ({ $num } / 12 slots filled)
|
.label = Märgi oluliseks ({ $num } / 12 täidetud)
|
||||||
.accesskey = E
|
.accesskey = o
|
||||||
tab-context-zen-remove-essential =
|
tab-context-zen-remove-essential =
|
||||||
.label = Eemalda olulistest
|
.label = Eemalda olulistest
|
||||||
.accesskey = R
|
.accesskey = o
|
||||||
tab-context-zen-replace-pinned-url-with-current =
|
tab-context-zen-replace-pinned-url-with-current =
|
||||||
.label = Asenda püsikaardi URL praegusega
|
.label = Asenda püsikaardi URL praegusega
|
||||||
.accesskey = C
|
.accesskey = p
|
||||||
zen-themes-corrupted = Sinu { -brand-short-name } muudatuste fail on vigane. See on nüüd lähtestatud vaikimisi teemaks.
|
zen-themes-corrupted = Sinu { -brand-short-name } mods-ide fail on vigane. See on nüüd lähtestatud vaikimisi teemaks.
|
||||||
zen-shortcuts-corrupted = Sinu { -brand-short-name } otseteede fail on vigane. See on nüüd lähtestatud vaikimisi otseteedeks.
|
zen-shortcuts-corrupted = Sinu { -brand-short-name } otseteede fail on vigane. See on nüüd lähtestatud vaikimisi otseteedeks.
|
||||||
# note: Do not translate the "<br/>" tags in the following string
|
# note: Do not translate the "<br/>" tags in the following string
|
||||||
zen-new-urlbar-notification =
|
zen-new-urlbar-notification =
|
||||||
The new URL bar has been enabled, removing the need for new tab pages.<br/><br/>
|
Uus asukohariba on sisse lülitatud, mistõttu pole enam uue kaardi lehte tarvis.<br/><br/>
|
||||||
Try opening a new tab to see the new URL bar in action!
|
Proovi avada uut kaarti, et näha uut asukohariba!
|
||||||
zen-disable = Disable
|
zen-disable = Lülita välja
|
||||||
pictureinpicture-minimize-btn =
|
pictureinpicture-minimize-btn =
|
||||||
.aria-label = Minimize
|
.aria-label = Minimeeri
|
||||||
.tooltip = Minimize
|
.tooltip = Minimeeri
|
||||||
zen-panel-ui-gradient-generator-custom-color = Kohandatud värv
|
zen-panel-ui-gradient-generator-custom-color = Kohandatud värv
|
||||||
zen-panel-ui-gradient-generator-saved-message = Värviüleminek on edukalt salvestatud!
|
zen-panel-ui-gradient-generator-saved-message = Värviüleminek on edukalt salvestatud!
|
||||||
zen-copy-current-url-confirmation = URL kopeeriti lõikelauale.
|
zen-copy-current-url-confirmation = URL kopeeriti lõikelauale.
|
||||||
zen-general-cancel-label =
|
zen-general-cancel-label =
|
||||||
.label = Cancel
|
.label = Tühista
|
||||||
zen-general-confirm =
|
zen-general-confirm =
|
||||||
.label = Kinnita
|
.label = Kinnita
|
||||||
zen-pinned-tab-replaced = Pinned tab URL has been replaced with the current URL.
|
zen-pinned-tab-replaced = Pinned tab URL has been replaced with the current URL.
|
||||||
zen-tabs-renamed = Tab has been successfully renamed!
|
zen-tabs-renamed = Kaart on edukalt ümber nimetatud!
|
||||||
zen-background-tab-opened-toast = New background tab opened!
|
zen-background-tab-opened-toast = Taustal avati uus kaart!
|
||||||
zen-workspace-renamed-toast = Workspace has been successfully renamed!
|
zen-workspace-renamed-toast = Tööruum on edukalt ümber nimetatud!
|
||||||
zen-library-sidebar-workspaces =
|
zen-library-sidebar-workspaces =
|
||||||
.label = Spaces
|
.label = Tööruumid
|
||||||
zen-library-sidebar-mods =
|
zen-library-sidebar-mods =
|
||||||
.label = Mods
|
.label = Mods-id
|
||||||
|
|
||||||
# note: Do not translate the "<br/>" tags in the following string
|
# note: Do not translate the "<br/>" tags in the following string
|
||||||
|
|
||||||
zen-learn-more-text = Rohkem teavet
|
zen-learn-more-text = Rohkem teavet
|
||||||
zen-close-label = Sulge
|
zen-close-label = Sulge
|
||||||
zen-singletoolbar-urlbar-placeholder-with-name =
|
zen-singletoolbar-urlbar-placeholder-with-name =
|
||||||
.placeholder = Search...
|
.placeholder = Otsi...
|
||||||
zen-icons-picker-emoji =
|
zen-icons-picker-emoji =
|
||||||
.label = Emojis
|
.label = Emojid
|
||||||
zen-icons-picker-svg =
|
zen-icons-picker-svg =
|
||||||
.label = Icons
|
.label = Ikoonid
|
||||||
|
@@ -15,22 +15,22 @@ zen-toolbar-context-compact-mode-hide-both =
|
|||||||
.label = Peida mõlemad
|
.label = Peida mõlemad
|
||||||
.accesskey = P
|
.accesskey = P
|
||||||
zen-toolbar-context-new-folder =
|
zen-toolbar-context-new-folder =
|
||||||
.label = New Folder
|
.label = Uus kaust
|
||||||
.accesskey = N
|
.accesskey = U
|
||||||
sidebar-zen-expand =
|
sidebar-zen-expand =
|
||||||
.label = Laienda külgriba
|
.label = Laienda külgriba
|
||||||
sidebar-zen-create-new =
|
sidebar-zen-create-new =
|
||||||
.label = Create New...
|
.label = Loo uus...
|
||||||
tabbrowser-unload-tab-button =
|
tabbrowser-unload-tab-button =
|
||||||
.tooltiptext =
|
.tooltiptext =
|
||||||
{ $tabCount ->
|
{ $tabCount ->
|
||||||
[one] Unload and switch to tab
|
[one] Eemalda mälust ning vaheta kaarti
|
||||||
*[other] Unload { $tabCount } tabs and switch to the first
|
*[other] Eemalda mälust { $tabCount } kaarti ning vaheta esimesele kaardile
|
||||||
}
|
}
|
||||||
tabbrowser-reset-pin-button =
|
tabbrowser-reset-pin-button =
|
||||||
.tooltiptext =
|
.tooltiptext =
|
||||||
{ $tabCount ->
|
{ $tabCount ->
|
||||||
[one] Reset and pin tab
|
[one] Lähtesta ja tee püsikaardiks
|
||||||
*[other] Reset and pin { $tabCount } tabs
|
*[other] Lähtesta ja tee püsikaardiks { $tabCount } kaarti
|
||||||
}
|
}
|
||||||
tab-reset-pin-label = Back to pinned url
|
tab-reset-pin-label = Tagasi püsikaardi URL-ile
|
||||||
|
@@ -4,24 +4,24 @@
|
|||||||
|
|
||||||
zen-welcome-title-line1 = Tere tulemast
|
zen-welcome-title-line1 = Tere tulemast
|
||||||
zen-welcome-title-line2 = rahulikumasse internetti
|
zen-welcome-title-line2 = rahulikumasse internetti
|
||||||
zen-welcome-import-title = A Fresh Start, Same Bookmarks
|
zen-welcome-import-title = Värske algus, samad järjehoidjad
|
||||||
zen-welcome-import-description-1 = Your bookmarks, history, and passwords are like a trail of breadcrumbs through the internet—don’t leave them behind!
|
zen-welcome-import-description-1 = Sinu järjehoidjad, ajalugu ja paroolid on nagu seni läbitud rada internetis—ära jäta seda maha!
|
||||||
zen-welcome-import-description-2 = Easily bring them over from another browser and pick up right where you left off..
|
zen-welcome-import-description-2 = Easily bring them over from another browser and pick up right where you left off..
|
||||||
zen-welcome-import-button = Import now
|
zen-welcome-import-button = Impordi nüüd
|
||||||
zen-welcome-set-default-browser = Set { -brand-short-name } as your default browser
|
zen-welcome-set-default-browser = Määra { -brand-short-name } oma vaikebrauseriks
|
||||||
zen-welcome-dont-set-default-browser = DON’T set { -brand-short-name } as your default browser
|
zen-welcome-dont-set-default-browser = ÄRA määra { -brand-short-name } oma vaikebrauseriks
|
||||||
zen-welcome-initial-essentials-title = Your Key Tabs, Always Within Reach
|
zen-welcome-initial-essentials-title = Sinu põhilised kaardid, alati käeulatuses
|
||||||
zen-welcome-initial-essentials-description-1 = Keep your most important tabs easily accessible and always at hand, no matter how many you open.
|
zen-welcome-initial-essentials-description-1 = Hoia oma kõige olulisemad kaardid hõlpsalt juurdepääsetavad ning käeulatuses, hoolimata sellest, kui mitu neid avad.
|
||||||
zen-welcome-initial-essentials-description-2 = Essential tabs are always visible, no matter what workspace you are in.
|
zen-welcome-initial-essentials-description-2 = Olulised kaardid on alati nähtavad sõltumata sellest, millises tööruumis hetkel oled.
|
||||||
zen-welcome-workspace-colors-title = Your Workspaces, Your Colors
|
zen-welcome-workspace-colors-title = Sinu tööruumid, sinu värvid
|
||||||
zen-welcome-workspace-colors-description = Personalize your browser by giving each workspace its own unique color identity.
|
zen-welcome-workspace-colors-description = Isikupärasta oma brauser, andes igale tööruumile omapärase värvitooni.
|
||||||
zen-welcome-start-browsing-title =
|
zen-welcome-start-browsing-title =
|
||||||
All set?<br/>
|
Valmis?<br/>
|
||||||
Let’s get rolling!
|
Alustame!
|
||||||
zen-welcome-start-browsing-description-1 = You’re all set up and ready to go. Click the button below to start browsing with { -brand-short-name }.
|
zen-welcome-start-browsing-description-1 = Kõik on valmis. { -brand-short-name }iga sirvimise alustamiseks klõpsake alloleval nupul.
|
||||||
zen-welcome-start-browsing = Dive in!
|
zen-welcome-start-browsing = Hakkame pihta!
|
||||||
zen-welcome-default-search-title = Your Default Search Engine
|
zen-welcome-default-search-title = Sinu vaikimisi otsingumootor
|
||||||
zen-welcome-default-search-description = Choose your default search engine. You can always change it later!
|
zen-welcome-default-search-description = Vali oma vaikimisi otsingumootor. Saad seda alati hiljem muuta!
|
||||||
zen-welcome-skip-button = Skip
|
zen-welcome-skip-button = Jäta vahele
|
||||||
zen-welcome-next-action = Next
|
zen-welcome-next-action = Edasi
|
||||||
zen-welcome-finished = Your Zen has been set up correctly!
|
zen-welcome-finished = Zen on edukalt seadistatud!
|
||||||
|
@@ -1,21 +1,21 @@
|
|||||||
zen-panel-ui-workspaces-text = Tööruumid
|
zen-panel-ui-workspaces-text = Tööruumid
|
||||||
zen-panel-ui-workspaces-create =
|
zen-panel-ui-workspaces-create =
|
||||||
.label = Create Space
|
.label = Uus tööruum
|
||||||
zen-panel-ui-folder-create =
|
zen-panel-ui-folder-create =
|
||||||
.label = Create Folder
|
.label = Uus kaust
|
||||||
zen-workspaces-panel-context-delete =
|
zen-workspaces-panel-context-delete =
|
||||||
.label = Kustuta tööruum
|
.label = Kustuta tööruum
|
||||||
.accesskey = K
|
.accesskey = K
|
||||||
zen-workspaces-panel-change-name =
|
zen-workspaces-panel-change-name =
|
||||||
.label = Change Name
|
.label = Nimeta ümber
|
||||||
zen-workspaces-panel-change-icon =
|
zen-workspaces-panel-change-icon =
|
||||||
.label = Change Icon
|
.label = Muuda ikooni
|
||||||
zen-workspaces-panel-context-default-profile =
|
zen-workspaces-panel-context-default-profile =
|
||||||
.label = Set Profile
|
.label = Määra profiil
|
||||||
zen-workspaces-how-to-reorder-title = How to reorder spaces
|
zen-workspaces-how-to-reorder-title = Kuidas vahetada tööruumide järjestust
|
||||||
zen-workspaces-how-to-reorder-desc = Drag the space icons at the bottom of the sidebar to reorder them
|
zen-workspaces-how-to-reorder-desc = Lohista tööruumide ikoone külgriba alumises servas, et nende järjestust muuta
|
||||||
zen-workspaces-change-theme =
|
zen-workspaces-change-theme =
|
||||||
.label = Edit Theme
|
.label = Muuda teemat
|
||||||
zen-workspaces-panel-context-open =
|
zen-workspaces-panel-context-open =
|
||||||
.label = Ava tööruum
|
.label = Ava tööruum
|
||||||
.accesskey = A
|
.accesskey = A
|
||||||
@@ -29,23 +29,23 @@ zen-bookmark-edit-panel-workspace-selector =
|
|||||||
.value = Tööruumid
|
.value = Tööruumid
|
||||||
.accesskey = T
|
.accesskey = T
|
||||||
zen-panel-ui-gradient-generator-algo-complementary =
|
zen-panel-ui-gradient-generator-algo-complementary =
|
||||||
.label = Complementary
|
.label = Täiendvärvid
|
||||||
zen-panel-ui-gradient-generator-algo-splitComplementary =
|
zen-panel-ui-gradient-generator-algo-splitComplementary =
|
||||||
.label = Split
|
.label = Täiendvärvide kolmik
|
||||||
zen-panel-ui-gradient-generator-algo-analogous =
|
zen-panel-ui-gradient-generator-algo-analogous =
|
||||||
.label = Analogous
|
.label = Lähedased värvid
|
||||||
zen-panel-ui-gradient-generator-algo-triadic =
|
zen-panel-ui-gradient-generator-algo-triadic =
|
||||||
.label = Triadic
|
.label = Kolmkõla
|
||||||
zen-panel-ui-gradient-generator-algo-floating =
|
zen-panel-ui-gradient-generator-algo-floating =
|
||||||
.label = Floating
|
.label = Hõljuv
|
||||||
zen-panel-ui-gradient-click-to-add = Click to add a color
|
zen-panel-ui-gradient-click-to-add = Klõpsa värvi lisamiseks
|
||||||
zen-workspace-creation-name =
|
zen-workspace-creation-name =
|
||||||
.placeholder = Space Name
|
.placeholder = Tööruumi nimi
|
||||||
zen-workspaces-panel-context-reorder =
|
zen-workspaces-panel-context-reorder =
|
||||||
.label = Reorder Spaces
|
.label = Muuda tööruumide järjestust
|
||||||
zen-workspace-creation-profile = Profile
|
zen-workspace-creation-profile = Profiil
|
||||||
.tooltiptext = Profiles are used to separate cookies and site data between spaces.
|
.tooltiptext = Profiile kasutatakse küpsiste ning saidi andmete eraldamiseks tööruumide vahel.
|
||||||
zen-workspace-creation-header = Create a Space
|
zen-workspace-creation-header = Loo uus tööruum
|
||||||
zen-workspace-creation-label = Spaces are used to organize your tabs and sessions.
|
zen-workspace-creation-label = Tööruume kasutatakse kaartide ja sessioonide organiseerimiseks.
|
||||||
zen-workspaces-delete-workspace-title = Delete Workspace?
|
zen-workspaces-delete-workspace-title = Delete Workspace?
|
||||||
zen-workspaces-delete-workspace-body = Are you sure you want to delete { $name }? This action cannot be undone.
|
zen-workspaces-delete-workspace-body = Kas oled kindel, et soovid kustutada tööruumi { $name }? Seda tegevust ei saa tagasi võtta.
|
||||||
|
@@ -15,7 +15,7 @@ zen-folders-panel-change-folder-space =
|
|||||||
zen-folders-panel-change-icon-folder =
|
zen-folders-panel-change-icon-folder =
|
||||||
.label = Change Icon
|
.label = Change Icon
|
||||||
zen-folders-unload-all-tooltip =
|
zen-folders-unload-all-tooltip =
|
||||||
.tooltiptext = Unload all tabs in this folder
|
.tooltiptext = Unload active in this folder
|
||||||
zen-folders-unload-folder =
|
zen-folders-unload-folder =
|
||||||
.label = Unload All Tabs
|
.label = Unload All Tabs
|
||||||
zen-folders-search-no-results = No tabs matching that search 🤔
|
zen-folders-search-no-results = No tabs matching that search 🤔
|
||||||
|
@@ -15,7 +15,7 @@ zen-folders-panel-change-folder-space =
|
|||||||
zen-folders-panel-change-icon-folder =
|
zen-folders-panel-change-icon-folder =
|
||||||
.label = Change Icon
|
.label = Change Icon
|
||||||
zen-folders-unload-all-tooltip =
|
zen-folders-unload-all-tooltip =
|
||||||
.tooltiptext = Unload all tabs in this folder
|
.tooltiptext = Unload active in this folder
|
||||||
zen-folders-unload-folder =
|
zen-folders-unload-folder =
|
||||||
.label = Unload All Tabs
|
.label = Unload All Tabs
|
||||||
zen-folders-search-no-results = No tabs matching that search 🤔
|
zen-folders-search-no-results = No tabs matching that search 🤔
|
||||||
|
@@ -15,7 +15,7 @@ zen-folders-panel-change-folder-space =
|
|||||||
zen-folders-panel-change-icon-folder =
|
zen-folders-panel-change-icon-folder =
|
||||||
.label = Changer d'icône
|
.label = Changer d'icône
|
||||||
zen-folders-unload-all-tooltip =
|
zen-folders-unload-all-tooltip =
|
||||||
.tooltiptext = Décharger tous les onglets de ce dossier
|
.tooltiptext = Décharger les onglets actifs de ce dossier
|
||||||
zen-folders-unload-folder =
|
zen-folders-unload-folder =
|
||||||
.label = Décharger tous les onglets
|
.label = Décharger tous les onglets
|
||||||
zen-folders-search-no-results = Aucun onglet ne correspond à cette recherche 🤔
|
zen-folders-search-no-results = Aucun onglet ne correspond à cette recherche 🤔
|
||||||
|
@@ -15,7 +15,7 @@ zen-toolbar-context-compact-mode-hide-both =
|
|||||||
.label = Masquer les deux
|
.label = Masquer les deux
|
||||||
.accesskey = H
|
.accesskey = H
|
||||||
zen-toolbar-context-new-folder =
|
zen-toolbar-context-new-folder =
|
||||||
.label = New Folder
|
.label = Nouveau dossier
|
||||||
.accesskey = N
|
.accesskey = N
|
||||||
sidebar-zen-expand =
|
sidebar-zen-expand =
|
||||||
.label = Étendre la barre latérale
|
.label = Étendre la barre latérale
|
||||||
|
@@ -15,7 +15,7 @@ zen-folders-panel-change-folder-space =
|
|||||||
zen-folders-panel-change-icon-folder =
|
zen-folders-panel-change-icon-folder =
|
||||||
.label = Athraigh Deilbhín
|
.label = Athraigh Deilbhín
|
||||||
zen-folders-unload-all-tooltip =
|
zen-folders-unload-all-tooltip =
|
||||||
.tooltiptext = Díluchtaigh gach cluaisín sa bhfillteán seo
|
.tooltiptext = Díluchtaigh gníomhach sa fhillteán seo
|
||||||
zen-folders-unload-folder =
|
zen-folders-unload-folder =
|
||||||
.label = Díluchtaigh Gach Cluaisín
|
.label = Díluchtaigh Gach Cluaisín
|
||||||
zen-folders-search-no-results = Níl aon chluaisíní ann a mheaitseálann an cuardach sin 🤔
|
zen-folders-search-no-results = Níl aon chluaisíní ann a mheaitseálann an cuardach sin 🤔
|
||||||
|
@@ -15,7 +15,7 @@ zen-toolbar-context-compact-mode-hide-both =
|
|||||||
.label = Folaigh an dá cheann
|
.label = Folaigh an dá cheann
|
||||||
.accesskey = H
|
.accesskey = H
|
||||||
zen-toolbar-context-new-folder =
|
zen-toolbar-context-new-folder =
|
||||||
.label = New Folder
|
.label = Fillteán Nua
|
||||||
.accesskey = N
|
.accesskey = N
|
||||||
sidebar-zen-expand =
|
sidebar-zen-expand =
|
||||||
.label = Barra Taoibh a Leathnú
|
.label = Barra Taoibh a Leathnú
|
||||||
|
@@ -15,7 +15,7 @@ zen-folders-panel-change-folder-space =
|
|||||||
zen-folders-panel-change-icon-folder =
|
zen-folders-panel-change-icon-folder =
|
||||||
.label = שינוי סמל
|
.label = שינוי סמל
|
||||||
zen-folders-unload-all-tooltip =
|
zen-folders-unload-all-tooltip =
|
||||||
.tooltiptext = פינוי כל הכרטיסייות בתיקייה הזו
|
.tooltiptext = Unload active in this folder
|
||||||
zen-folders-unload-folder =
|
zen-folders-unload-folder =
|
||||||
.label = פינוי כל הכרטיסייות
|
.label = פינוי כל הכרטיסייות
|
||||||
zen-folders-search-no-results = אין כרטיסיות שתואמות לחיפוש 🤔
|
zen-folders-search-no-results = אין כרטיסיות שתואמות לחיפוש 🤔
|
||||||
|
@@ -9,13 +9,13 @@ zen-folders-new-subfolder =
|
|||||||
zen-folders-panel-delete-folder =
|
zen-folders-panel-delete-folder =
|
||||||
.label = Mappa törlése
|
.label = Mappa törlése
|
||||||
zen-folders-panel-convert-folder-to-space =
|
zen-folders-panel-convert-folder-to-space =
|
||||||
.label = Mappa konvertálása munkakörnyezeté
|
.label = Mappa konvertálása környezetté
|
||||||
zen-folders-panel-change-folder-space =
|
zen-folders-panel-change-folder-space =
|
||||||
.label = Környezet váltása...
|
.label = Környezet váltása...
|
||||||
zen-folders-panel-change-icon-folder =
|
zen-folders-panel-change-icon-folder =
|
||||||
.label = Ikon módosítása
|
.label = Ikon módosítása
|
||||||
zen-folders-unload-all-tooltip =
|
zen-folders-unload-all-tooltip =
|
||||||
.tooltiptext = Minden mappában lévő lap ürítése
|
.tooltiptext = Aktív lapok ürítése ebben a mappában
|
||||||
zen-folders-unload-folder =
|
zen-folders-unload-folder =
|
||||||
.label = Minden lap ürítése
|
.label = Minden lap ürítése
|
||||||
zen-folders-search-no-results = Nincsenek a keresésnek megfelelő lapok 🤔
|
zen-folders-search-no-results = Nincsenek a keresésnek megfelelő lapok 🤔
|
||||||
|
@@ -15,7 +15,7 @@ zen-toolbar-context-compact-mode-hide-both =
|
|||||||
.label = Mindkettő elrejtése
|
.label = Mindkettő elrejtése
|
||||||
.accesskey = H
|
.accesskey = H
|
||||||
zen-toolbar-context-new-folder =
|
zen-toolbar-context-new-folder =
|
||||||
.label = New Folder
|
.label = Új mappa
|
||||||
.accesskey = N
|
.accesskey = N
|
||||||
sidebar-zen-expand =
|
sidebar-zen-expand =
|
||||||
.label = Oldalsáv kibontása
|
.label = Oldalsáv kibontása
|
||||||
|
@@ -15,7 +15,7 @@ zen-folders-panel-change-folder-space =
|
|||||||
zen-folders-panel-change-icon-folder =
|
zen-folders-panel-change-icon-folder =
|
||||||
.label = Ubah Ikon
|
.label = Ubah Ikon
|
||||||
zen-folders-unload-all-tooltip =
|
zen-folders-unload-all-tooltip =
|
||||||
.tooltiptext = Lepaskan semua tab di folder ini
|
.tooltiptext = Unload active in this folder
|
||||||
zen-folders-unload-folder =
|
zen-folders-unload-folder =
|
||||||
.label = Lepaskan Semua Tab
|
.label = Lepaskan Semua Tab
|
||||||
zen-folders-search-no-results = Tidak ada tab yang cocok 🤔
|
zen-folders-search-no-results = Tidak ada tab yang cocok 🤔
|
||||||
|
@@ -15,7 +15,7 @@ zen-toolbar-context-compact-mode-hide-both =
|
|||||||
.label = Sembunyikan keduanya
|
.label = Sembunyikan keduanya
|
||||||
.accesskey = H
|
.accesskey = H
|
||||||
zen-toolbar-context-new-folder =
|
zen-toolbar-context-new-folder =
|
||||||
.label = New Folder
|
.label = Folder Baru
|
||||||
.accesskey = N
|
.accesskey = N
|
||||||
sidebar-zen-expand =
|
sidebar-zen-expand =
|
||||||
.label = Perluas Bilah Sisi
|
.label = Perluas Bilah Sisi
|
||||||
|
@@ -15,7 +15,7 @@ zen-folders-panel-change-folder-space =
|
|||||||
zen-folders-panel-change-icon-folder =
|
zen-folders-panel-change-icon-folder =
|
||||||
.label = Change Icon
|
.label = Change Icon
|
||||||
zen-folders-unload-all-tooltip =
|
zen-folders-unload-all-tooltip =
|
||||||
.tooltiptext = Unload all tabs in this folder
|
.tooltiptext = Unload active in this folder
|
||||||
zen-folders-unload-folder =
|
zen-folders-unload-folder =
|
||||||
.label = Unload All Tabs
|
.label = Unload All Tabs
|
||||||
zen-folders-search-no-results = No tabs matching that search 🤔
|
zen-folders-search-no-results = No tabs matching that search 🤔
|
||||||
|
@@ -15,7 +15,7 @@ zen-folders-panel-change-folder-space =
|
|||||||
zen-folders-panel-change-icon-folder =
|
zen-folders-panel-change-icon-folder =
|
||||||
.label = Cambia Icona
|
.label = Cambia Icona
|
||||||
zen-folders-unload-all-tooltip =
|
zen-folders-unload-all-tooltip =
|
||||||
.tooltiptext = Scarica tutte le schede in questa cartella
|
.tooltiptext = Unload active in this folder
|
||||||
zen-folders-unload-folder =
|
zen-folders-unload-folder =
|
||||||
.label = Scarica tutte le Schede
|
.label = Scarica tutte le Schede
|
||||||
zen-folders-search-no-results = Nessuna scheda corrispondente alla ricerca 🤔
|
zen-folders-search-no-results = Nessuna scheda corrispondente alla ricerca 🤔
|
||||||
|
@@ -15,7 +15,7 @@ zen-folders-panel-change-folder-space =
|
|||||||
zen-folders-panel-change-icon-folder =
|
zen-folders-panel-change-icon-folder =
|
||||||
.label = Change Icon
|
.label = Change Icon
|
||||||
zen-folders-unload-all-tooltip =
|
zen-folders-unload-all-tooltip =
|
||||||
.tooltiptext = Unload all tabs in this folder
|
.tooltiptext = Unload active in this folder
|
||||||
zen-folders-unload-folder =
|
zen-folders-unload-folder =
|
||||||
.label = Unload All Tabs
|
.label = Unload All Tabs
|
||||||
zen-folders-search-no-results = No tabs matching that search 🤔
|
zen-folders-search-no-results = No tabs matching that search 🤔
|
||||||
|
@@ -3,9 +3,9 @@ zen-folders-search-placeholder =
|
|||||||
zen-folders-panel-rename-folder =
|
zen-folders-panel-rename-folder =
|
||||||
.label = 폴더 이름 변경
|
.label = 폴더 이름 변경
|
||||||
zen-folders-panel-unpack-folder =
|
zen-folders-panel-unpack-folder =
|
||||||
.label = Unpack Folder
|
.label = 폴더 해제
|
||||||
zen-folders-new-subfolder =
|
zen-folders-new-subfolder =
|
||||||
.label = New Subfolder
|
.label = 새 서브폴더
|
||||||
zen-folders-panel-delete-folder =
|
zen-folders-panel-delete-folder =
|
||||||
.label = 폴더 삭제
|
.label = 폴더 삭제
|
||||||
zen-folders-panel-convert-folder-to-space =
|
zen-folders-panel-convert-folder-to-space =
|
||||||
@@ -15,7 +15,7 @@ zen-folders-panel-change-folder-space =
|
|||||||
zen-folders-panel-change-icon-folder =
|
zen-folders-panel-change-icon-folder =
|
||||||
.label = 아이콘 변경
|
.label = 아이콘 변경
|
||||||
zen-folders-unload-all-tooltip =
|
zen-folders-unload-all-tooltip =
|
||||||
.tooltiptext = Unload all tabs in this folder
|
.tooltiptext = 이 폴더의 활성화 탭 언로드
|
||||||
zen-folders-unload-folder =
|
zen-folders-unload-folder =
|
||||||
.label = Unload All Tabs
|
.label = 모든 탭 언로드
|
||||||
zen-folders-search-no-results = 검색어에 맞는 탭이 없습니다 🤔
|
zen-folders-search-no-results = 검색어에 맞는 탭이 없습니다 🤔
|
||||||
|
@@ -15,7 +15,7 @@ zen-toolbar-context-compact-mode-hide-both =
|
|||||||
.label = 둘 다 숨기기
|
.label = 둘 다 숨기기
|
||||||
.accesskey = H
|
.accesskey = H
|
||||||
zen-toolbar-context-new-folder =
|
zen-toolbar-context-new-folder =
|
||||||
.label = New Folder
|
.label = 새 폴더
|
||||||
.accesskey = N
|
.accesskey = N
|
||||||
sidebar-zen-expand =
|
sidebar-zen-expand =
|
||||||
.label = 사이드바 확장
|
.label = 사이드바 확장
|
||||||
|
@@ -15,7 +15,7 @@ zen-folders-panel-change-folder-space =
|
|||||||
zen-folders-panel-change-icon-folder =
|
zen-folders-panel-change-icon-folder =
|
||||||
.label = Keisti piktogramą
|
.label = Keisti piktogramą
|
||||||
zen-folders-unload-all-tooltip =
|
zen-folders-unload-all-tooltip =
|
||||||
.tooltiptext = Unload all tabs in this folder
|
.tooltiptext = Unload active in this folder
|
||||||
zen-folders-unload-folder =
|
zen-folders-unload-folder =
|
||||||
.label = Unload All Tabs
|
.label = Iškelti visas korteles
|
||||||
zen-folders-search-no-results = Nėra kortelių, atitinkančių šią paiešką. 🤔
|
zen-folders-search-no-results = Nėra kortelių, atitinkančių šią paiešką. 🤔
|
||||||
|
@@ -15,7 +15,7 @@ zen-toolbar-context-compact-mode-hide-both =
|
|||||||
.label = Slėpti abi
|
.label = Slėpti abi
|
||||||
.accesskey = H
|
.accesskey = H
|
||||||
zen-toolbar-context-new-folder =
|
zen-toolbar-context-new-folder =
|
||||||
.label = New Folder
|
.label = Naujas aplankas
|
||||||
.accesskey = N
|
.accesskey = N
|
||||||
sidebar-zen-expand =
|
sidebar-zen-expand =
|
||||||
.label = Išskleisti šoninę juostą
|
.label = Išskleisti šoninę juostą
|
||||||
|
@@ -15,7 +15,7 @@ zen-folders-panel-change-folder-space =
|
|||||||
zen-folders-panel-change-icon-folder =
|
zen-folders-panel-change-icon-folder =
|
||||||
.label = Change Icon
|
.label = Change Icon
|
||||||
zen-folders-unload-all-tooltip =
|
zen-folders-unload-all-tooltip =
|
||||||
.tooltiptext = Unload all tabs in this folder
|
.tooltiptext = Unload active in this folder
|
||||||
zen-folders-unload-folder =
|
zen-folders-unload-folder =
|
||||||
.label = Unload All Tabs
|
.label = Unload All Tabs
|
||||||
zen-folders-search-no-results = No tabs matching that search 🤔
|
zen-folders-search-no-results = No tabs matching that search 🤔
|
||||||
|
@@ -15,7 +15,7 @@ zen-folders-panel-change-folder-space =
|
|||||||
zen-folders-panel-change-icon-folder =
|
zen-folders-panel-change-icon-folder =
|
||||||
.label = Change Icon
|
.label = Change Icon
|
||||||
zen-folders-unload-all-tooltip =
|
zen-folders-unload-all-tooltip =
|
||||||
.tooltiptext = Unload all tabs in this folder
|
.tooltiptext = Unload active in this folder
|
||||||
zen-folders-unload-folder =
|
zen-folders-unload-folder =
|
||||||
.label = Unload All Tabs
|
.label = Unload All Tabs
|
||||||
zen-folders-search-no-results = No tabs matching that search 🤔
|
zen-folders-search-no-results = No tabs matching that search 🤔
|
||||||
|
@@ -15,7 +15,7 @@ zen-folders-panel-change-folder-space =
|
|||||||
zen-folders-panel-change-icon-folder =
|
zen-folders-panel-change-icon-folder =
|
||||||
.label = Change Icon
|
.label = Change Icon
|
||||||
zen-folders-unload-all-tooltip =
|
zen-folders-unload-all-tooltip =
|
||||||
.tooltiptext = Unload all tabs in this folder
|
.tooltiptext = Unload active in this folder
|
||||||
zen-folders-unload-folder =
|
zen-folders-unload-folder =
|
||||||
.label = Unload All Tabs
|
.label = Unload All Tabs
|
||||||
zen-folders-search-no-results = No tabs matching that search 🤔
|
zen-folders-search-no-results = No tabs matching that search 🤔
|
||||||
|
@@ -15,7 +15,7 @@ zen-folders-panel-change-folder-space =
|
|||||||
zen-folders-panel-change-icon-folder =
|
zen-folders-panel-change-icon-folder =
|
||||||
.label = Alterar Ícone
|
.label = Alterar Ícone
|
||||||
zen-folders-unload-all-tooltip =
|
zen-folders-unload-all-tooltip =
|
||||||
.tooltiptext = Descarregar todas as abas nesta pasta
|
.tooltiptext = Descarregar abas ativas nesta pasta
|
||||||
zen-folders-unload-folder =
|
zen-folders-unload-folder =
|
||||||
.label = Descarregar todas as abas
|
.label = Descarregar todas as abas
|
||||||
zen-folders-search-no-results = Nenhuma guia corresponde a essa pesquisa 🤔
|
zen-folders-search-no-results = Nenhuma guia corresponde a essa pesquisa 🤔
|
||||||
|
@@ -15,7 +15,7 @@ zen-folders-panel-change-folder-space =
|
|||||||
zen-folders-panel-change-icon-folder =
|
zen-folders-panel-change-icon-folder =
|
||||||
.label = Alterar Ícone
|
.label = Alterar Ícone
|
||||||
zen-folders-unload-all-tooltip =
|
zen-folders-unload-all-tooltip =
|
||||||
.tooltiptext = Unload all tabs in this folder
|
.tooltiptext = Unload active in this folder
|
||||||
zen-folders-unload-folder =
|
zen-folders-unload-folder =
|
||||||
.label = Unload All Tabs
|
.label = Unload All Tabs
|
||||||
zen-folders-search-no-results = Não existem separadores que correspondam a essa pesquisa 🤔
|
zen-folders-search-no-results = Não existem separadores que correspondam a essa pesquisa 🤔
|
||||||
|
@@ -15,7 +15,7 @@ zen-folders-panel-change-folder-space =
|
|||||||
zen-folders-panel-change-icon-folder =
|
zen-folders-panel-change-icon-folder =
|
||||||
.label = Change Icon
|
.label = Change Icon
|
||||||
zen-folders-unload-all-tooltip =
|
zen-folders-unload-all-tooltip =
|
||||||
.tooltiptext = Unload all tabs in this folder
|
.tooltiptext = Unload active in this folder
|
||||||
zen-folders-unload-folder =
|
zen-folders-unload-folder =
|
||||||
.label = Unload All Tabs
|
.label = Unload All Tabs
|
||||||
zen-folders-search-no-results = No tabs matching that search 🤔
|
zen-folders-search-no-results = No tabs matching that search 🤔
|
||||||
|
@@ -15,7 +15,7 @@ zen-folders-panel-change-folder-space =
|
|||||||
zen-folders-panel-change-icon-folder =
|
zen-folders-panel-change-icon-folder =
|
||||||
.label = Change Icon
|
.label = Change Icon
|
||||||
zen-folders-unload-all-tooltip =
|
zen-folders-unload-all-tooltip =
|
||||||
.tooltiptext = Unload all tabs in this folder
|
.tooltiptext = Unload active in this folder
|
||||||
zen-folders-unload-folder =
|
zen-folders-unload-folder =
|
||||||
.label = Unload All Tabs
|
.label = Unload All Tabs
|
||||||
zen-folders-search-no-results = No tabs matching that search 🤔
|
zen-folders-search-no-results = No tabs matching that search 🤔
|
||||||
|
@@ -15,7 +15,7 @@ zen-folders-panel-change-folder-space =
|
|||||||
zen-folders-panel-change-icon-folder =
|
zen-folders-panel-change-icon-folder =
|
||||||
.label = Change Icon
|
.label = Change Icon
|
||||||
zen-folders-unload-all-tooltip =
|
zen-folders-unload-all-tooltip =
|
||||||
.tooltiptext = Unload all tabs in this folder
|
.tooltiptext = Unload active in this folder
|
||||||
zen-folders-unload-folder =
|
zen-folders-unload-folder =
|
||||||
.label = Unload All Tabs
|
.label = Unload All Tabs
|
||||||
zen-folders-search-no-results = No tabs matching that search 🤔
|
zen-folders-search-no-results = No tabs matching that search 🤔
|
||||||
|
@@ -15,7 +15,7 @@ zen-folders-panel-change-folder-space =
|
|||||||
zen-folders-panel-change-icon-folder =
|
zen-folders-panel-change-icon-folder =
|
||||||
.label = Change Icon
|
.label = Change Icon
|
||||||
zen-folders-unload-all-tooltip =
|
zen-folders-unload-all-tooltip =
|
||||||
.tooltiptext = Unload all tabs in this folder
|
.tooltiptext = Unload active in this folder
|
||||||
zen-folders-unload-folder =
|
zen-folders-unload-folder =
|
||||||
.label = Unload All Tabs
|
.label = Unload All Tabs
|
||||||
zen-folders-search-no-results = No tabs matching that search 🤔
|
zen-folders-search-no-results = No tabs matching that search 🤔
|
||||||
|
@@ -15,7 +15,7 @@ zen-folders-panel-change-folder-space =
|
|||||||
zen-folders-panel-change-icon-folder =
|
zen-folders-panel-change-icon-folder =
|
||||||
.label = Змінити значок
|
.label = Змінити значок
|
||||||
zen-folders-unload-all-tooltip =
|
zen-folders-unload-all-tooltip =
|
||||||
.tooltiptext = Unload all tabs in this folder
|
.tooltiptext = Вивантажити активне у цю теку
|
||||||
zen-folders-unload-folder =
|
zen-folders-unload-folder =
|
||||||
.label = Unload All Tabs
|
.label = Вивантажити всі вкладки
|
||||||
zen-folders-search-no-results = Немає вкладок, які відповідають критеріям пошуку 🤔
|
zen-folders-search-no-results = Немає вкладок, які відповідають критеріям пошуку 🤔
|
||||||
|
@@ -15,7 +15,7 @@ zen-toolbar-context-compact-mode-hide-both =
|
|||||||
.label = Приховувати обидві
|
.label = Приховувати обидві
|
||||||
.accesskey = Н
|
.accesskey = Н
|
||||||
zen-toolbar-context-new-folder =
|
zen-toolbar-context-new-folder =
|
||||||
.label = New Folder
|
.label = Нова тека
|
||||||
.accesskey = N
|
.accesskey = N
|
||||||
sidebar-zen-expand =
|
sidebar-zen-expand =
|
||||||
.label = Розгорнути бічну панель
|
.label = Розгорнути бічну панель
|
||||||
|
@@ -15,7 +15,7 @@ zen-folders-panel-change-folder-space =
|
|||||||
zen-folders-panel-change-icon-folder =
|
zen-folders-panel-change-icon-folder =
|
||||||
.label = Đổi biểu tượng thư mục thẻ
|
.label = Đổi biểu tượng thư mục thẻ
|
||||||
zen-folders-unload-all-tooltip =
|
zen-folders-unload-all-tooltip =
|
||||||
.tooltiptext = Tải lại tất cả các thẻ trong thư mục
|
.tooltiptext = Unload active in this folder
|
||||||
zen-folders-unload-folder =
|
zen-folders-unload-folder =
|
||||||
.label = Tải lại tất cả các thẻ
|
.label = Tải lại tất cả các thẻ
|
||||||
zen-folders-search-no-results = Không có thẻ nào trùng với tìm kiếm 🤔
|
zen-folders-search-no-results = Không có thẻ nào trùng với tìm kiếm 🤔
|
||||||
|
@@ -15,7 +15,7 @@ zen-folders-panel-change-folder-space =
|
|||||||
zen-folders-panel-change-icon-folder =
|
zen-folders-panel-change-icon-folder =
|
||||||
.label = Change Icon
|
.label = Change Icon
|
||||||
zen-folders-unload-all-tooltip =
|
zen-folders-unload-all-tooltip =
|
||||||
.tooltiptext = Unload all tabs in this folder
|
.tooltiptext = Unload active in this folder
|
||||||
zen-folders-unload-folder =
|
zen-folders-unload-folder =
|
||||||
.label = Unload All Tabs
|
.label = Unload All Tabs
|
||||||
zen-folders-search-no-results = No tabs matching that search 🤔
|
zen-folders-search-no-results = No tabs matching that search 🤔
|
||||||
|
@@ -15,7 +15,7 @@ zen-folders-panel-change-folder-space =
|
|||||||
zen-folders-panel-change-icon-folder =
|
zen-folders-panel-change-icon-folder =
|
||||||
.label = Change Icon
|
.label = Change Icon
|
||||||
zen-folders-unload-all-tooltip =
|
zen-folders-unload-all-tooltip =
|
||||||
.tooltiptext = Unload all tabs in this folder
|
.tooltiptext = Unload active in this folder
|
||||||
zen-folders-unload-folder =
|
zen-folders-unload-folder =
|
||||||
.label = Unload All Tabs
|
.label = Unload All Tabs
|
||||||
zen-folders-search-no-results = No tabs matching that search 🤔
|
zen-folders-search-no-results = No tabs matching that search 🤔
|
||||||
|
@@ -32,6 +32,9 @@
|
|||||||
- name: zen.view.compact.show-background-tab-toast
|
- name: zen.view.compact.show-background-tab-toast
|
||||||
value: true
|
value: true
|
||||||
|
|
||||||
|
- name: zen.view.compact.debug
|
||||||
|
value: false
|
||||||
|
|
||||||
# Do not edit manually
|
# Do not edit manually
|
||||||
- name: zen.view.compact.should-enable-at-startup
|
- name: zen.view.compact.should-enable-at-startup
|
||||||
hidden: true
|
hidden: true
|
||||||
|
@@ -34,3 +34,6 @@
|
|||||||
|
|
||||||
- name: termsofuse.bypassNotification
|
- name: termsofuse.bypassNotification
|
||||||
value: true
|
value: true
|
||||||
|
|
||||||
|
- name: browser.newtabpage.activity-stream.showSponsoredCheckboxes
|
||||||
|
value: false
|
||||||
|
@@ -32,6 +32,9 @@
|
|||||||
- name: zen.theme.hide-tab-throbber
|
- name: zen.theme.hide-tab-throbber
|
||||||
value: true
|
value: true
|
||||||
|
|
||||||
|
- name: zen.theme.styled-status-panel
|
||||||
|
value: false
|
||||||
|
|
||||||
# ==== Mark: border radius ====
|
# ==== Mark: border radius ====
|
||||||
|
|
||||||
# macOS border radius
|
# macOS border radius
|
||||||
|
@@ -51,3 +51,6 @@
|
|||||||
|
|
||||||
- name: zen.view.drag-and-drop.drop-inside-lower-threshold
|
- name: zen.view.drag-and-drop.drop-inside-lower-threshold
|
||||||
value: 30
|
value: 30
|
||||||
|
|
||||||
|
- name: zen.view.context-menu.refresh
|
||||||
|
value: false
|
||||||
|
@@ -96,13 +96,13 @@
|
|||||||
content/browser/zen-vendor/motion.min.mjs (../../zen/vendor/motion.min.mjs)
|
content/browser/zen-vendor/motion.min.mjs (../../zen/vendor/motion.min.mjs)
|
||||||
|
|
||||||
# FavIcons for startup
|
# FavIcons for startup
|
||||||
content/browser/zen-images/favicons/calendar.ico (../../zen/images/favicons/calendar.ico)
|
content/browser/zen-images/favicons/calendar.svg (../../zen/images/favicons/calendar.svg)
|
||||||
content/browser/zen-images/favicons/discord.ico (../../zen/images/favicons/discord.ico)
|
content/browser/zen-images/favicons/discord.svg (../../zen/images/favicons/discord.svg)
|
||||||
content/browser/zen-images/favicons/figma.ico (../../zen/images/favicons/figma.ico)
|
content/browser/zen-images/favicons/figma.svg (../../zen/images/favicons/figma.svg)
|
||||||
content/browser/zen-images/favicons/github.ico (../../zen/images/favicons/github.ico)
|
content/browser/zen-images/favicons/github.svg (../../zen/images/favicons/github.svg)
|
||||||
content/browser/zen-images/favicons/notion.ico (../../zen/images/favicons/notion.ico)
|
content/browser/zen-images/favicons/notion.svg (../../zen/images/favicons/notion.svg)
|
||||||
content/browser/zen-images/favicons/obsidian.ico (../../zen/images/favicons/obsidian.ico)
|
content/browser/zen-images/favicons/obsidian.svg (../../zen/images/favicons/obsidian.svg)
|
||||||
content/browser/zen-images/favicons/slack.ico (../../zen/images/favicons/slack.ico)
|
content/browser/zen-images/favicons/slack.svg (../../zen/images/favicons/slack.svg)
|
||||||
content/browser/zen-images/favicons/reddit.ico (../../zen/images/favicons/reddit.ico)
|
content/browser/zen-images/favicons/reddit.svg (../../zen/images/favicons/reddit.svg)
|
||||||
content/browser/zen-images/favicons/x.ico (../../zen/images/favicons/x.ico)
|
content/browser/zen-images/favicons/x.svg (../../zen/images/favicons/x.svg)
|
||||||
content/browser/zen-images/favicons/trello.ico (../../zen/images/favicons/trello.ico)
|
content/browser/zen-images/favicons/trello.svg (../../zen/images/favicons/trello.svg)
|
||||||
|
@@ -8,8 +8,7 @@
|
|||||||
<html:input id="zen-folder-tabs-list-search"
|
<html:input id="zen-folder-tabs-list-search"
|
||||||
data-l10n-id="zen-folders-search-placeholder"
|
data-l10n-id="zen-folders-search-placeholder"
|
||||||
data-l10n-args="{"folder-name":""}"
|
data-l10n-args="{"folder-name":""}"
|
||||||
type="search"
|
type="search" />
|
||||||
flex="1" />
|
|
||||||
</hbox>
|
</hbox>
|
||||||
<scrollbox class="zen-folder-tabs-list-scrollbox" flex="1">
|
<scrollbox class="zen-folder-tabs-list-scrollbox" flex="1">
|
||||||
<vbox id="zen-folder-tabs-list"></vbox>
|
<vbox id="zen-folder-tabs-list"></vbox>
|
||||||
|
@@ -1,11 +1,15 @@
|
|||||||
diff --git a/browser/components/tabbrowser/content/tabbrowser.js b/browser/components/tabbrowser/content/tabbrowser.js
|
diff --git a/browser/components/tabbrowser/content/tabbrowser.js b/browser/components/tabbrowser/content/tabbrowser.js
|
||||||
index d80a66a01002e78a9c65545d08fe786328ddf124..c5c079ac5218f051407b27c6edbd4ba6fe685e62 100644
|
index d80a66a01002e78a9c65545d08fe786328ddf124..46b1e3075165e1e9e783db84861b0fea99420448 100644
|
||||||
--- a/browser/components/tabbrowser/content/tabbrowser.js
|
--- a/browser/components/tabbrowser/content/tabbrowser.js
|
||||||
+++ b/browser/components/tabbrowser/content/tabbrowser.js
|
+++ b/browser/components/tabbrowser/content/tabbrowser.js
|
||||||
@@ -422,15 +422,60 @@
|
@@ -422,15 +422,64 @@
|
||||||
return this.tabContainer.visibleTabs;
|
return this.tabContainer.visibleTabs;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
+ zenHandleTabMove(...args) {
|
||||||
|
+ return this.#handleTabMove(...args);
|
||||||
|
+ }
|
||||||
|
+
|
||||||
+ get _numVisiblePinTabsWithoutCollapsed() {
|
+ get _numVisiblePinTabsWithoutCollapsed() {
|
||||||
+ let i = 0;
|
+ let i = 0;
|
||||||
+ for (let item of this.tabContainer.ariaFocusableItems) {
|
+ for (let item of this.tabContainer.ariaFocusableItems) {
|
||||||
@@ -65,7 +69,7 @@ index d80a66a01002e78a9c65545d08fe786328ddf124..c5c079ac5218f051407b27c6edbd4ba6
|
|||||||
set selectedTab(val) {
|
set selectedTab(val) {
|
||||||
if (
|
if (
|
||||||
gSharedTabWarning.willShowSharedTabWarning(val) ||
|
gSharedTabWarning.willShowSharedTabWarning(val) ||
|
||||||
@@ -578,6 +623,7 @@
|
@@ -578,6 +627,7 @@
|
||||||
this.tabpanels.appendChild(panel);
|
this.tabpanels.appendChild(panel);
|
||||||
|
|
||||||
let tab = this.tabs[0];
|
let tab = this.tabs[0];
|
||||||
@@ -73,7 +77,7 @@ index d80a66a01002e78a9c65545d08fe786328ddf124..c5c079ac5218f051407b27c6edbd4ba6
|
|||||||
tab.linkedPanel = uniqueId;
|
tab.linkedPanel = uniqueId;
|
||||||
this._selectedTab = tab;
|
this._selectedTab = tab;
|
||||||
this._selectedBrowser = browser;
|
this._selectedBrowser = browser;
|
||||||
@@ -863,9 +909,13 @@
|
@@ -863,9 +913,13 @@
|
||||||
}
|
}
|
||||||
|
|
||||||
this.showTab(aTab);
|
this.showTab(aTab);
|
||||||
@@ -88,7 +92,7 @@ index d80a66a01002e78a9c65545d08fe786328ddf124..c5c079ac5218f051407b27c6edbd4ba6
|
|||||||
|
|
||||||
aTab.setAttribute("pinned", "true");
|
aTab.setAttribute("pinned", "true");
|
||||||
this._updateTabBarForPinnedTabs();
|
this._updateTabBarForPinnedTabs();
|
||||||
@@ -878,11 +928,15 @@
|
@@ -878,11 +932,15 @@
|
||||||
}
|
}
|
||||||
|
|
||||||
this.#handleTabMove(aTab, () => {
|
this.#handleTabMove(aTab, () => {
|
||||||
@@ -105,7 +109,7 @@ index d80a66a01002e78a9c65545d08fe786328ddf124..c5c079ac5218f051407b27c6edbd4ba6
|
|||||||
});
|
});
|
||||||
|
|
||||||
aTab.style.marginInlineStart = "";
|
aTab.style.marginInlineStart = "";
|
||||||
@@ -1060,6 +1114,8 @@
|
@@ -1060,6 +1118,8 @@
|
||||||
|
|
||||||
let LOCAL_PROTOCOLS = ["chrome:", "about:", "resource:", "data:"];
|
let LOCAL_PROTOCOLS = ["chrome:", "about:", "resource:", "data:"];
|
||||||
|
|
||||||
@@ -114,7 +118,7 @@ index d80a66a01002e78a9c65545d08fe786328ddf124..c5c079ac5218f051407b27c6edbd4ba6
|
|||||||
if (
|
if (
|
||||||
aIconURL &&
|
aIconURL &&
|
||||||
!aLoadingPrincipal &&
|
!aLoadingPrincipal &&
|
||||||
@@ -1070,6 +1126,9 @@
|
@@ -1070,6 +1130,9 @@
|
||||||
);
|
);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
@@ -124,7 +128,7 @@ index d80a66a01002e78a9c65545d08fe786328ddf124..c5c079ac5218f051407b27c6edbd4ba6
|
|||||||
|
|
||||||
let browser = this.getBrowserForTab(aTab);
|
let browser = this.getBrowserForTab(aTab);
|
||||||
browser.mIconURL = aIconURL;
|
browser.mIconURL = aIconURL;
|
||||||
@@ -1319,6 +1378,7 @@
|
@@ -1319,6 +1382,7 @@
|
||||||
if (!this._previewMode) {
|
if (!this._previewMode) {
|
||||||
newTab.recordTimeFromUnloadToReload();
|
newTab.recordTimeFromUnloadToReload();
|
||||||
newTab.updateLastAccessed();
|
newTab.updateLastAccessed();
|
||||||
@@ -132,7 +136,7 @@ index d80a66a01002e78a9c65545d08fe786328ddf124..c5c079ac5218f051407b27c6edbd4ba6
|
|||||||
oldTab.updateLastAccessed();
|
oldTab.updateLastAccessed();
|
||||||
// if this is the foreground window, update the last-seen timestamps.
|
// if this is the foreground window, update the last-seen timestamps.
|
||||||
if (this.ownerGlobal == BrowserWindowTracker.getTopWindow()) {
|
if (this.ownerGlobal == BrowserWindowTracker.getTopWindow()) {
|
||||||
@@ -1471,6 +1531,9 @@
|
@@ -1471,6 +1535,9 @@
|
||||||
}
|
}
|
||||||
|
|
||||||
let activeEl = document.activeElement;
|
let activeEl = document.activeElement;
|
||||||
@@ -142,7 +146,7 @@ index d80a66a01002e78a9c65545d08fe786328ddf124..c5c079ac5218f051407b27c6edbd4ba6
|
|||||||
// If focus is on the old tab, move it to the new tab.
|
// If focus is on the old tab, move it to the new tab.
|
||||||
if (activeEl == oldTab) {
|
if (activeEl == oldTab) {
|
||||||
newTab.focus();
|
newTab.focus();
|
||||||
@@ -1794,7 +1857,8 @@
|
@@ -1794,7 +1861,8 @@
|
||||||
}
|
}
|
||||||
|
|
||||||
_setTabLabel(aTab, aLabel, { beforeTabOpen, isContentTitle, isURL } = {}) {
|
_setTabLabel(aTab, aLabel, { beforeTabOpen, isContentTitle, isURL } = {}) {
|
||||||
@@ -152,7 +156,7 @@ index d80a66a01002e78a9c65545d08fe786328ddf124..c5c079ac5218f051407b27c6edbd4ba6
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1902,7 +1966,7 @@
|
@@ -1902,7 +1970,7 @@
|
||||||
newIndex = this.selectedTab._tPos + 1;
|
newIndex = this.selectedTab._tPos + 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -161,7 +165,7 @@ index d80a66a01002e78a9c65545d08fe786328ddf124..c5c079ac5218f051407b27c6edbd4ba6
|
|||||||
if (this.isTabGroupLabel(targetTab)) {
|
if (this.isTabGroupLabel(targetTab)) {
|
||||||
throw new Error(
|
throw new Error(
|
||||||
"Replacing a tab group label with a tab is not supported"
|
"Replacing a tab group label with a tab is not supported"
|
||||||
@@ -2166,6 +2230,7 @@
|
@@ -2166,6 +2234,7 @@
|
||||||
uriIsAboutBlank,
|
uriIsAboutBlank,
|
||||||
userContextId,
|
userContextId,
|
||||||
skipLoad,
|
skipLoad,
|
||||||
@@ -169,7 +173,7 @@ index d80a66a01002e78a9c65545d08fe786328ddf124..c5c079ac5218f051407b27c6edbd4ba6
|
|||||||
} = {}) {
|
} = {}) {
|
||||||
let b = document.createXULElement("browser");
|
let b = document.createXULElement("browser");
|
||||||
// Use the JSM global to create the permanentKey, so that if the
|
// Use the JSM global to create the permanentKey, so that if the
|
||||||
@@ -2239,8 +2304,7 @@
|
@@ -2239,8 +2308,7 @@
|
||||||
// we use a different attribute name for this?
|
// we use a different attribute name for this?
|
||||||
b.setAttribute("name", name);
|
b.setAttribute("name", name);
|
||||||
}
|
}
|
||||||
@@ -179,7 +183,7 @@ index d80a66a01002e78a9c65545d08fe786328ddf124..c5c079ac5218f051407b27c6edbd4ba6
|
|||||||
b.setAttribute("transparent", "true");
|
b.setAttribute("transparent", "true");
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -2405,7 +2469,7 @@
|
@@ -2405,7 +2473,7 @@
|
||||||
|
|
||||||
let panel = this.getPanel(browser);
|
let panel = this.getPanel(browser);
|
||||||
let uniqueId = this._generateUniquePanelID();
|
let uniqueId = this._generateUniquePanelID();
|
||||||
@@ -188,7 +192,7 @@ index d80a66a01002e78a9c65545d08fe786328ddf124..c5c079ac5218f051407b27c6edbd4ba6
|
|||||||
aTab.linkedPanel = uniqueId;
|
aTab.linkedPanel = uniqueId;
|
||||||
|
|
||||||
// Inject the <browser> into the DOM if necessary.
|
// Inject the <browser> into the DOM if necessary.
|
||||||
@@ -2464,8 +2528,8 @@
|
@@ -2464,8 +2532,8 @@
|
||||||
// If we transitioned from one browser to two browsers, we need to set
|
// If we transitioned from one browser to two browsers, we need to set
|
||||||
// hasSiblings=false on both the existing browser and the new browser.
|
// hasSiblings=false on both the existing browser and the new browser.
|
||||||
if (this.tabs.length == 2) {
|
if (this.tabs.length == 2) {
|
||||||
@@ -199,7 +203,7 @@ index d80a66a01002e78a9c65545d08fe786328ddf124..c5c079ac5218f051407b27c6edbd4ba6
|
|||||||
} else {
|
} else {
|
||||||
aTab.linkedBrowser.browsingContext.hasSiblings = this.tabs.length > 1;
|
aTab.linkedBrowser.browsingContext.hasSiblings = this.tabs.length > 1;
|
||||||
}
|
}
|
||||||
@@ -2629,7 +2693,6 @@
|
@@ -2629,7 +2697,6 @@
|
||||||
this.selectedTab = this.addTrustedTab(BROWSER_NEW_TAB_URL, {
|
this.selectedTab = this.addTrustedTab(BROWSER_NEW_TAB_URL, {
|
||||||
tabIndex: tab._tPos + 1,
|
tabIndex: tab._tPos + 1,
|
||||||
userContextId: tab.userContextId,
|
userContextId: tab.userContextId,
|
||||||
@@ -207,7 +211,7 @@ index d80a66a01002e78a9c65545d08fe786328ddf124..c5c079ac5218f051407b27c6edbd4ba6
|
|||||||
focusUrlBar: true,
|
focusUrlBar: true,
|
||||||
});
|
});
|
||||||
resolve(this.selectedBrowser);
|
resolve(this.selectedBrowser);
|
||||||
@@ -2709,6 +2772,8 @@
|
@@ -2709,6 +2776,8 @@
|
||||||
schemelessInput,
|
schemelessInput,
|
||||||
hasValidUserGestureActivation = false,
|
hasValidUserGestureActivation = false,
|
||||||
textDirectiveUserActivation = false,
|
textDirectiveUserActivation = false,
|
||||||
@@ -216,7 +220,7 @@ index d80a66a01002e78a9c65545d08fe786328ddf124..c5c079ac5218f051407b27c6edbd4ba6
|
|||||||
} = {}
|
} = {}
|
||||||
) {
|
) {
|
||||||
// all callers of addTab that pass a params object need to pass
|
// all callers of addTab that pass a params object need to pass
|
||||||
@@ -2719,6 +2784,12 @@
|
@@ -2719,6 +2788,12 @@
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -229,7 +233,7 @@ index d80a66a01002e78a9c65545d08fe786328ddf124..c5c079ac5218f051407b27c6edbd4ba6
|
|||||||
if (!UserInteraction.running("browser.tabs.opening", window)) {
|
if (!UserInteraction.running("browser.tabs.opening", window)) {
|
||||||
UserInteraction.start("browser.tabs.opening", "initting", window);
|
UserInteraction.start("browser.tabs.opening", "initting", window);
|
||||||
}
|
}
|
||||||
@@ -2782,6 +2853,19 @@
|
@@ -2782,6 +2857,19 @@
|
||||||
noInitialLabel,
|
noInitialLabel,
|
||||||
skipBackgroundNotify,
|
skipBackgroundNotify,
|
||||||
});
|
});
|
||||||
@@ -249,7 +253,7 @@ index d80a66a01002e78a9c65545d08fe786328ddf124..c5c079ac5218f051407b27c6edbd4ba6
|
|||||||
if (insertTab) {
|
if (insertTab) {
|
||||||
// Insert the tab into the tab container in the correct position.
|
// Insert the tab into the tab container in the correct position.
|
||||||
this.#insertTabAtIndex(t, {
|
this.#insertTabAtIndex(t, {
|
||||||
@@ -2790,6 +2874,7 @@
|
@@ -2790,6 +2878,7 @@
|
||||||
ownerTab,
|
ownerTab,
|
||||||
openerTab,
|
openerTab,
|
||||||
pinned,
|
pinned,
|
||||||
@@ -257,7 +261,7 @@ index d80a66a01002e78a9c65545d08fe786328ddf124..c5c079ac5218f051407b27c6edbd4ba6
|
|||||||
bulkOrderedOpen,
|
bulkOrderedOpen,
|
||||||
tabGroup: tabGroup ?? openerTab?.group,
|
tabGroup: tabGroup ?? openerTab?.group,
|
||||||
});
|
});
|
||||||
@@ -2808,6 +2893,7 @@
|
@@ -2808,6 +2897,7 @@
|
||||||
openWindowInfo,
|
openWindowInfo,
|
||||||
skipLoad,
|
skipLoad,
|
||||||
triggeringRemoteType,
|
triggeringRemoteType,
|
||||||
@@ -265,7 +269,7 @@ index d80a66a01002e78a9c65545d08fe786328ddf124..c5c079ac5218f051407b27c6edbd4ba6
|
|||||||
}));
|
}));
|
||||||
|
|
||||||
if (focusUrlBar) {
|
if (focusUrlBar) {
|
||||||
@@ -2928,6 +3014,12 @@
|
@@ -2928,6 +3018,12 @@
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -278,7 +282,7 @@ index d80a66a01002e78a9c65545d08fe786328ddf124..c5c079ac5218f051407b27c6edbd4ba6
|
|||||||
// Additionally send pinned tab events
|
// Additionally send pinned tab events
|
||||||
if (pinned) {
|
if (pinned) {
|
||||||
this.#notifyPinnedStatus(t);
|
this.#notifyPinnedStatus(t);
|
||||||
@@ -3016,10 +3108,10 @@
|
@@ -3016,10 +3112,10 @@
|
||||||
isAdoptingGroup = false,
|
isAdoptingGroup = false,
|
||||||
isUserTriggered = false,
|
isUserTriggered = false,
|
||||||
telemetryUserCreateSource = "unknown",
|
telemetryUserCreateSource = "unknown",
|
||||||
@@ -290,7 +294,7 @@ index d80a66a01002e78a9c65545d08fe786328ddf124..c5c079ac5218f051407b27c6edbd4ba6
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (!color) {
|
if (!color) {
|
||||||
@@ -3040,9 +3132,14 @@
|
@@ -3040,9 +3136,14 @@
|
||||||
label,
|
label,
|
||||||
isAdoptingGroup
|
isAdoptingGroup
|
||||||
);
|
);
|
||||||
@@ -307,7 +311,7 @@ index d80a66a01002e78a9c65545d08fe786328ddf124..c5c079ac5218f051407b27c6edbd4ba6
|
|||||||
);
|
);
|
||||||
group.addTabs(tabs);
|
group.addTabs(tabs);
|
||||||
|
|
||||||
@@ -3163,7 +3260,7 @@
|
@@ -3163,7 +3264,7 @@
|
||||||
}
|
}
|
||||||
|
|
||||||
this.#handleTabMove(tab, () =>
|
this.#handleTabMove(tab, () =>
|
||||||
@@ -316,7 +320,7 @@ index d80a66a01002e78a9c65545d08fe786328ddf124..c5c079ac5218f051407b27c6edbd4ba6
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -3365,6 +3462,7 @@
|
@@ -3365,6 +3466,7 @@
|
||||||
openWindowInfo,
|
openWindowInfo,
|
||||||
skipLoad,
|
skipLoad,
|
||||||
triggeringRemoteType,
|
triggeringRemoteType,
|
||||||
@@ -324,7 +328,7 @@ index d80a66a01002e78a9c65545d08fe786328ddf124..c5c079ac5218f051407b27c6edbd4ba6
|
|||||||
}
|
}
|
||||||
) {
|
) {
|
||||||
// If we don't have a preferred remote type (or it is `NOT_REMOTE`), and
|
// If we don't have a preferred remote type (or it is `NOT_REMOTE`), and
|
||||||
@@ -3434,6 +3532,7 @@
|
@@ -3434,6 +3536,7 @@
|
||||||
openWindowInfo,
|
openWindowInfo,
|
||||||
name,
|
name,
|
||||||
skipLoad,
|
skipLoad,
|
||||||
@@ -332,7 +336,7 @@ index d80a66a01002e78a9c65545d08fe786328ddf124..c5c079ac5218f051407b27c6edbd4ba6
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -3621,7 +3720,7 @@
|
@@ -3621,7 +3724,7 @@
|
||||||
// Add a new tab if needed.
|
// Add a new tab if needed.
|
||||||
if (!tab) {
|
if (!tab) {
|
||||||
let createLazyBrowser =
|
let createLazyBrowser =
|
||||||
@@ -341,7 +345,7 @@ index d80a66a01002e78a9c65545d08fe786328ddf124..c5c079ac5218f051407b27c6edbd4ba6
|
|||||||
|
|
||||||
let url = "about:blank";
|
let url = "about:blank";
|
||||||
if (tabData.entries?.length) {
|
if (tabData.entries?.length) {
|
||||||
@@ -3658,8 +3757,10 @@
|
@@ -3658,8 +3761,10 @@
|
||||||
insertTab: false,
|
insertTab: false,
|
||||||
skipLoad: true,
|
skipLoad: true,
|
||||||
preferredRemoteType,
|
preferredRemoteType,
|
||||||
@@ -353,7 +357,7 @@ index d80a66a01002e78a9c65545d08fe786328ddf124..c5c079ac5218f051407b27c6edbd4ba6
|
|||||||
if (select) {
|
if (select) {
|
||||||
tabToSelect = tab;
|
tabToSelect = tab;
|
||||||
}
|
}
|
||||||
@@ -3671,7 +3772,8 @@
|
@@ -3671,7 +3776,8 @@
|
||||||
this.pinTab(tab);
|
this.pinTab(tab);
|
||||||
// Then ensure all the tab open/pinning information is sent.
|
// Then ensure all the tab open/pinning information is sent.
|
||||||
this._fireTabOpen(tab, {});
|
this._fireTabOpen(tab, {});
|
||||||
@@ -363,7 +367,7 @@ index d80a66a01002e78a9c65545d08fe786328ddf124..c5c079ac5218f051407b27c6edbd4ba6
|
|||||||
let { groupId } = tabData;
|
let { groupId } = tabData;
|
||||||
const tabGroup = tabGroupWorkingData.get(groupId);
|
const tabGroup = tabGroupWorkingData.get(groupId);
|
||||||
// if a tab refers to a tab group we don't know, skip any group
|
// if a tab refers to a tab group we don't know, skip any group
|
||||||
@@ -3685,7 +3787,10 @@
|
@@ -3685,7 +3791,10 @@
|
||||||
tabGroup.stateData.id,
|
tabGroup.stateData.id,
|
||||||
tabGroup.stateData.color,
|
tabGroup.stateData.color,
|
||||||
tabGroup.stateData.collapsed,
|
tabGroup.stateData.collapsed,
|
||||||
@@ -375,7 +379,7 @@ index d80a66a01002e78a9c65545d08fe786328ddf124..c5c079ac5218f051407b27c6edbd4ba6
|
|||||||
);
|
);
|
||||||
tabsFragment.appendChild(tabGroup.node);
|
tabsFragment.appendChild(tabGroup.node);
|
||||||
}
|
}
|
||||||
@@ -3730,9 +3835,23 @@
|
@@ -3730,9 +3839,23 @@
|
||||||
// to remove the old selected tab.
|
// to remove the old selected tab.
|
||||||
if (tabToSelect) {
|
if (tabToSelect) {
|
||||||
let leftoverTab = this.selectedTab;
|
let leftoverTab = this.selectedTab;
|
||||||
@@ -399,7 +403,14 @@ index d80a66a01002e78a9c65545d08fe786328ddf124..c5c079ac5218f051407b27c6edbd4ba6
|
|||||||
|
|
||||||
if (tabs.length > 1 || !tabs[0].selected) {
|
if (tabs.length > 1 || !tabs[0].selected) {
|
||||||
this._updateTabsAfterInsert();
|
this._updateTabsAfterInsert();
|
||||||
@@ -3927,7 +4046,7 @@
|
@@ -3923,11 +4046,14 @@
|
||||||
|
if (ownerTab) {
|
||||||
|
tab.owner = ownerTab;
|
||||||
|
}
|
||||||
|
+ if (!tab.pinned && tabGroup?.isZenFolder && !Services.prefs.getBoolPref('zen.folders.owned-tabs-in-folder')) {
|
||||||
|
+ tabGroup = null;
|
||||||
|
+ }
|
||||||
|
|
||||||
// Ensure we have an index if one was not provided.
|
// Ensure we have an index if one was not provided.
|
||||||
if (typeof elementIndex != "number" && typeof tabIndex != "number") {
|
if (typeof elementIndex != "number" && typeof tabIndex != "number") {
|
||||||
// Move the new tab after another tab if needed, to the end otherwise.
|
// Move the new tab after another tab if needed, to the end otherwise.
|
||||||
@@ -408,7 +419,7 @@ index d80a66a01002e78a9c65545d08fe786328ddf124..c5c079ac5218f051407b27c6edbd4ba6
|
|||||||
if (
|
if (
|
||||||
!bulkOrderedOpen &&
|
!bulkOrderedOpen &&
|
||||||
((openerTab &&
|
((openerTab &&
|
||||||
@@ -3939,7 +4058,7 @@
|
@@ -3939,7 +4065,7 @@
|
||||||
let lastRelatedTab =
|
let lastRelatedTab =
|
||||||
openerTab && this._lastRelatedTabMap.get(openerTab);
|
openerTab && this._lastRelatedTabMap.get(openerTab);
|
||||||
let previousTab = lastRelatedTab || openerTab || this.selectedTab;
|
let previousTab = lastRelatedTab || openerTab || this.selectedTab;
|
||||||
@@ -417,7 +428,7 @@ index d80a66a01002e78a9c65545d08fe786328ddf124..c5c079ac5218f051407b27c6edbd4ba6
|
|||||||
tabGroup = previousTab.group;
|
tabGroup = previousTab.group;
|
||||||
}
|
}
|
||||||
if (
|
if (
|
||||||
@@ -3950,7 +4069,7 @@
|
@@ -3950,7 +4076,7 @@
|
||||||
) {
|
) {
|
||||||
elementIndex = Infinity;
|
elementIndex = Infinity;
|
||||||
} else if (previousTab.visible) {
|
} else if (previousTab.visible) {
|
||||||
@@ -426,7 +437,7 @@ index d80a66a01002e78a9c65545d08fe786328ddf124..c5c079ac5218f051407b27c6edbd4ba6
|
|||||||
} else if (previousTab == FirefoxViewHandler.tab) {
|
} else if (previousTab == FirefoxViewHandler.tab) {
|
||||||
elementIndex = 0;
|
elementIndex = 0;
|
||||||
}
|
}
|
||||||
@@ -3978,14 +4097,14 @@
|
@@ -3978,14 +4104,14 @@
|
||||||
}
|
}
|
||||||
// Ensure index is within bounds.
|
// Ensure index is within bounds.
|
||||||
if (tab.pinned) {
|
if (tab.pinned) {
|
||||||
@@ -445,7 +456,7 @@ index d80a66a01002e78a9c65545d08fe786328ddf124..c5c079ac5218f051407b27c6edbd4ba6
|
|||||||
|
|
||||||
if (pinned && !itemAfter?.pinned) {
|
if (pinned && !itemAfter?.pinned) {
|
||||||
itemAfter = null;
|
itemAfter = null;
|
||||||
@@ -3996,7 +4115,7 @@
|
@@ -3996,7 +4122,7 @@
|
||||||
|
|
||||||
this.tabContainer._invalidateCachedTabs();
|
this.tabContainer._invalidateCachedTabs();
|
||||||
|
|
||||||
@@ -454,7 +465,7 @@ index d80a66a01002e78a9c65545d08fe786328ddf124..c5c079ac5218f051407b27c6edbd4ba6
|
|||||||
if (this.isTab(itemAfter) && itemAfter.group == tabGroup) {
|
if (this.isTab(itemAfter) && itemAfter.group == tabGroup) {
|
||||||
// Place at the front of, or between tabs in, the same tab group
|
// Place at the front of, or between tabs in, the same tab group
|
||||||
this.tabContainer.insertBefore(tab, itemAfter);
|
this.tabContainer.insertBefore(tab, itemAfter);
|
||||||
@@ -4032,6 +4151,7 @@
|
@@ -4032,6 +4158,7 @@
|
||||||
if (pinned) {
|
if (pinned) {
|
||||||
this._updateTabBarForPinnedTabs();
|
this._updateTabBarForPinnedTabs();
|
||||||
}
|
}
|
||||||
@@ -462,7 +473,7 @@ index d80a66a01002e78a9c65545d08fe786328ddf124..c5c079ac5218f051407b27c6edbd4ba6
|
|||||||
|
|
||||||
TabBarVisibility.update();
|
TabBarVisibility.update();
|
||||||
}
|
}
|
||||||
@@ -4321,6 +4441,9 @@
|
@@ -4321,6 +4448,9 @@
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -472,7 +483,7 @@ index d80a66a01002e78a9c65545d08fe786328ddf124..c5c079ac5218f051407b27c6edbd4ba6
|
|||||||
this.removeTabs(selectedTabs, { isUserTriggered, telemetrySource });
|
this.removeTabs(selectedTabs, { isUserTriggered, telemetrySource });
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -4582,6 +4705,7 @@
|
@@ -4582,6 +4712,7 @@
|
||||||
telemetrySource,
|
telemetrySource,
|
||||||
} = {}
|
} = {}
|
||||||
) {
|
) {
|
||||||
@@ -480,7 +491,7 @@ index d80a66a01002e78a9c65545d08fe786328ddf124..c5c079ac5218f051407b27c6edbd4ba6
|
|||||||
// When 'closeWindowWithLastTab' pref is enabled, closing all tabs
|
// When 'closeWindowWithLastTab' pref is enabled, closing all tabs
|
||||||
// can be considered equivalent to closing the window.
|
// can be considered equivalent to closing the window.
|
||||||
if (
|
if (
|
||||||
@@ -4671,6 +4795,7 @@
|
@@ -4671,6 +4802,7 @@
|
||||||
if (lastToClose) {
|
if (lastToClose) {
|
||||||
this.removeTab(lastToClose, aParams);
|
this.removeTab(lastToClose, aParams);
|
||||||
}
|
}
|
||||||
@@ -488,7 +499,7 @@ index d80a66a01002e78a9c65545d08fe786328ddf124..c5c079ac5218f051407b27c6edbd4ba6
|
|||||||
} catch (e) {
|
} catch (e) {
|
||||||
console.error(e);
|
console.error(e);
|
||||||
}
|
}
|
||||||
@@ -4709,6 +4834,12 @@
|
@@ -4709,6 +4841,12 @@
|
||||||
aTab._closeTimeNoAnimTimerId = Glean.browserTabclose.timeNoAnim.start();
|
aTab._closeTimeNoAnimTimerId = Glean.browserTabclose.timeNoAnim.start();
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -501,7 +512,7 @@ index d80a66a01002e78a9c65545d08fe786328ddf124..c5c079ac5218f051407b27c6edbd4ba6
|
|||||||
// Handle requests for synchronously removing an already
|
// Handle requests for synchronously removing an already
|
||||||
// asynchronously closing tab.
|
// asynchronously closing tab.
|
||||||
if (!animate && aTab.closing) {
|
if (!animate && aTab.closing) {
|
||||||
@@ -4723,6 +4854,9 @@
|
@@ -4723,6 +4861,9 @@
|
||||||
// state).
|
// state).
|
||||||
let tabWidth = window.windowUtils.getBoundsWithoutFlushing(aTab).width;
|
let tabWidth = window.windowUtils.getBoundsWithoutFlushing(aTab).width;
|
||||||
let isLastTab = this.#isLastTabInWindow(aTab);
|
let isLastTab = this.#isLastTabInWindow(aTab);
|
||||||
@@ -511,7 +522,7 @@ index d80a66a01002e78a9c65545d08fe786328ddf124..c5c079ac5218f051407b27c6edbd4ba6
|
|||||||
if (
|
if (
|
||||||
!this._beginRemoveTab(aTab, {
|
!this._beginRemoveTab(aTab, {
|
||||||
closeWindowFastpath: true,
|
closeWindowFastpath: true,
|
||||||
@@ -4905,7 +5039,7 @@
|
@@ -4905,7 +5046,7 @@
|
||||||
closeWindowWithLastTab != null
|
closeWindowWithLastTab != null
|
||||||
? closeWindowWithLastTab
|
? closeWindowWithLastTab
|
||||||
: !window.toolbar.visible ||
|
: !window.toolbar.visible ||
|
||||||
@@ -520,7 +531,7 @@ index d80a66a01002e78a9c65545d08fe786328ddf124..c5c079ac5218f051407b27c6edbd4ba6
|
|||||||
|
|
||||||
if (closeWindow) {
|
if (closeWindow) {
|
||||||
// We've already called beforeunload on all the relevant tabs if we get here,
|
// We've already called beforeunload on all the relevant tabs if we get here,
|
||||||
@@ -4929,6 +5063,7 @@
|
@@ -4929,6 +5070,7 @@
|
||||||
|
|
||||||
newTab = true;
|
newTab = true;
|
||||||
}
|
}
|
||||||
@@ -528,7 +539,7 @@ index d80a66a01002e78a9c65545d08fe786328ddf124..c5c079ac5218f051407b27c6edbd4ba6
|
|||||||
aTab._endRemoveArgs = [closeWindow, newTab];
|
aTab._endRemoveArgs = [closeWindow, newTab];
|
||||||
|
|
||||||
// swapBrowsersAndCloseOther will take care of closing the window without animation.
|
// swapBrowsersAndCloseOther will take care of closing the window without animation.
|
||||||
@@ -4969,13 +5104,7 @@
|
@@ -4969,13 +5111,7 @@
|
||||||
aTab._mouseleave();
|
aTab._mouseleave();
|
||||||
|
|
||||||
if (newTab) {
|
if (newTab) {
|
||||||
@@ -543,7 +554,7 @@ index d80a66a01002e78a9c65545d08fe786328ddf124..c5c079ac5218f051407b27c6edbd4ba6
|
|||||||
} else {
|
} else {
|
||||||
TabBarVisibility.update();
|
TabBarVisibility.update();
|
||||||
}
|
}
|
||||||
@@ -5108,6 +5237,7 @@
|
@@ -5108,6 +5244,7 @@
|
||||||
this.tabs[i]._tPos = i;
|
this.tabs[i]._tPos = i;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -551,7 +562,7 @@ index d80a66a01002e78a9c65545d08fe786328ddf124..c5c079ac5218f051407b27c6edbd4ba6
|
|||||||
if (!this._windowIsClosing) {
|
if (!this._windowIsClosing) {
|
||||||
// update tab close buttons state
|
// update tab close buttons state
|
||||||
this.tabContainer._updateCloseButtons();
|
this.tabContainer._updateCloseButtons();
|
||||||
@@ -5320,6 +5450,7 @@
|
@@ -5320,6 +5457,7 @@
|
||||||
}
|
}
|
||||||
|
|
||||||
let excludeTabs = new Set(aExcludeTabs);
|
let excludeTabs = new Set(aExcludeTabs);
|
||||||
@@ -559,7 +570,7 @@ index d80a66a01002e78a9c65545d08fe786328ddf124..c5c079ac5218f051407b27c6edbd4ba6
|
|||||||
|
|
||||||
// If this tab has a successor, it should be selectable, since
|
// If this tab has a successor, it should be selectable, since
|
||||||
// hiding or closing a tab removes that tab as a successor.
|
// hiding or closing a tab removes that tab as a successor.
|
||||||
@@ -5332,13 +5463,13 @@
|
@@ -5332,13 +5470,13 @@
|
||||||
!excludeTabs.has(aTab.owner) &&
|
!excludeTabs.has(aTab.owner) &&
|
||||||
Services.prefs.getBoolPref("browser.tabs.selectOwnerOnClose")
|
Services.prefs.getBoolPref("browser.tabs.selectOwnerOnClose")
|
||||||
) {
|
) {
|
||||||
@@ -575,7 +586,7 @@ index d80a66a01002e78a9c65545d08fe786328ddf124..c5c079ac5218f051407b27c6edbd4ba6
|
|||||||
);
|
);
|
||||||
|
|
||||||
let tab = this.tabContainer.findNextTab(aTab, {
|
let tab = this.tabContainer.findNextTab(aTab, {
|
||||||
@@ -5354,7 +5485,7 @@
|
@@ -5354,7 +5492,7 @@
|
||||||
}
|
}
|
||||||
|
|
||||||
if (tab) {
|
if (tab) {
|
||||||
@@ -584,7 +595,7 @@ index d80a66a01002e78a9c65545d08fe786328ddf124..c5c079ac5218f051407b27c6edbd4ba6
|
|||||||
}
|
}
|
||||||
|
|
||||||
// If no qualifying visible tab was found, see if there is a tab in
|
// If no qualifying visible tab was found, see if there is a tab in
|
||||||
@@ -5375,7 +5506,7 @@
|
@@ -5375,7 +5513,7 @@
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -593,7 +604,7 @@ index d80a66a01002e78a9c65545d08fe786328ddf124..c5c079ac5218f051407b27c6edbd4ba6
|
|||||||
}
|
}
|
||||||
|
|
||||||
_blurTab(aTab) {
|
_blurTab(aTab) {
|
||||||
@@ -5777,10 +5908,10 @@
|
@@ -5777,10 +5915,10 @@
|
||||||
SessionStore.deleteCustomTabValue(aTab, "hiddenBy");
|
SessionStore.deleteCustomTabValue(aTab, "hiddenBy");
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -606,7 +617,7 @@ index d80a66a01002e78a9c65545d08fe786328ddf124..c5c079ac5218f051407b27c6edbd4ba6
|
|||||||
aTab.selected ||
|
aTab.selected ||
|
||||||
aTab.closing ||
|
aTab.closing ||
|
||||||
// Tabs that are sharing the screen, microphone or camera cannot be hidden.
|
// Tabs that are sharing the screen, microphone or camera cannot be hidden.
|
||||||
@@ -5839,6 +5970,7 @@
|
@@ -5839,6 +5977,7 @@
|
||||||
* @param {MozTabbrowserTab|MozTabbrowserTabGroup|MozTabbrowserTabGroup.labelElement} aTab
|
* @param {MozTabbrowserTab|MozTabbrowserTabGroup|MozTabbrowserTabGroup.labelElement} aTab
|
||||||
*/
|
*/
|
||||||
replaceTabWithWindow(aTab, aOptions) {
|
replaceTabWithWindow(aTab, aOptions) {
|
||||||
@@ -614,7 +625,7 @@ index d80a66a01002e78a9c65545d08fe786328ddf124..c5c079ac5218f051407b27c6edbd4ba6
|
|||||||
if (this.tabs.length == 1) {
|
if (this.tabs.length == 1) {
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
@@ -5972,7 +6104,7 @@
|
@@ -5972,7 +6111,7 @@
|
||||||
* `true` if element is a `<tab-group>`
|
* `true` if element is a `<tab-group>`
|
||||||
*/
|
*/
|
||||||
isTabGroup(element) {
|
isTabGroup(element) {
|
||||||
@@ -623,7 +634,7 @@ index d80a66a01002e78a9c65545d08fe786328ddf124..c5c079ac5218f051407b27c6edbd4ba6
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -6048,8 +6180,8 @@
|
@@ -6048,8 +6187,8 @@
|
||||||
}
|
}
|
||||||
|
|
||||||
// Don't allow mixing pinned and unpinned tabs.
|
// Don't allow mixing pinned and unpinned tabs.
|
||||||
@@ -634,7 +645,7 @@ index d80a66a01002e78a9c65545d08fe786328ddf124..c5c079ac5218f051407b27c6edbd4ba6
|
|||||||
} else {
|
} else {
|
||||||
tabIndex = Math.max(tabIndex, this.pinnedTabCount);
|
tabIndex = Math.max(tabIndex, this.pinnedTabCount);
|
||||||
}
|
}
|
||||||
@@ -6075,10 +6207,16 @@
|
@@ -6075,10 +6214,16 @@
|
||||||
this.#handleTabMove(
|
this.#handleTabMove(
|
||||||
element,
|
element,
|
||||||
() => {
|
() => {
|
||||||
@@ -653,7 +664,7 @@ index d80a66a01002e78a9c65545d08fe786328ddf124..c5c079ac5218f051407b27c6edbd4ba6
|
|||||||
if (neighbor && this.isTab(element) && tabIndex > element._tPos) {
|
if (neighbor && this.isTab(element) && tabIndex > element._tPos) {
|
||||||
neighbor.after(element);
|
neighbor.after(element);
|
||||||
} else {
|
} else {
|
||||||
@@ -6136,23 +6274,28 @@
|
@@ -6136,23 +6281,28 @@
|
||||||
#moveTabNextTo(element, targetElement, moveBefore = false, metricsContext) {
|
#moveTabNextTo(element, targetElement, moveBefore = false, metricsContext) {
|
||||||
if (this.isTabGroupLabel(targetElement)) {
|
if (this.isTabGroupLabel(targetElement)) {
|
||||||
targetElement = targetElement.group;
|
targetElement = targetElement.group;
|
||||||
@@ -688,7 +699,7 @@ index d80a66a01002e78a9c65545d08fe786328ddf124..c5c079ac5218f051407b27c6edbd4ba6
|
|||||||
} else if (!element.pinned && targetElement && targetElement.pinned) {
|
} else if (!element.pinned && targetElement && targetElement.pinned) {
|
||||||
// If the caller asks to move an unpinned element next to a pinned
|
// If the caller asks to move an unpinned element next to a pinned
|
||||||
// tab, move the unpinned element to be the first unpinned element
|
// tab, move the unpinned element to be the first unpinned element
|
||||||
@@ -6165,14 +6308,34 @@
|
@@ -6165,14 +6315,34 @@
|
||||||
// move the tab group right before the first unpinned tab.
|
// move the tab group right before the first unpinned tab.
|
||||||
// 4. Moving a tab group and the first unpinned tab is grouped:
|
// 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.
|
// move the tab group right before the first unpinned tab's tab group.
|
||||||
@@ -724,7 +735,7 @@ index d80a66a01002e78a9c65545d08fe786328ddf124..c5c079ac5218f051407b27c6edbd4ba6
|
|||||||
element.pinned
|
element.pinned
|
||||||
? this.tabContainer.pinnedTabsContainer
|
? this.tabContainer.pinnedTabsContainer
|
||||||
: this.tabContainer;
|
: this.tabContainer;
|
||||||
@@ -6181,7 +6344,7 @@
|
@@ -6181,7 +6351,7 @@
|
||||||
element,
|
element,
|
||||||
() => {
|
() => {
|
||||||
if (moveBefore) {
|
if (moveBefore) {
|
||||||
@@ -733,7 +744,7 @@ index d80a66a01002e78a9c65545d08fe786328ddf124..c5c079ac5218f051407b27c6edbd4ba6
|
|||||||
} else if (targetElement) {
|
} else if (targetElement) {
|
||||||
targetElement.after(element);
|
targetElement.after(element);
|
||||||
} else {
|
} else {
|
||||||
@@ -6227,10 +6390,10 @@
|
@@ -6227,10 +6397,10 @@
|
||||||
* @param {TabMetricsContext} [metricsContext]
|
* @param {TabMetricsContext} [metricsContext]
|
||||||
*/
|
*/
|
||||||
moveTabToGroup(aTab, aGroup, metricsContext) {
|
moveTabToGroup(aTab, aGroup, metricsContext) {
|
||||||
@@ -746,7 +757,24 @@ index d80a66a01002e78a9c65545d08fe786328ddf124..c5c079ac5218f051407b27c6edbd4ba6
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if (aTab.group && aTab.group.id === aGroup.id) {
|
if (aTab.group && aTab.group.id === aGroup.id) {
|
||||||
@@ -6324,6 +6487,10 @@
|
@@ -6261,6 +6431,7 @@
|
||||||
|
|
||||||
|
let state = {
|
||||||
|
tabIndex: tab._tPos,
|
||||||
|
+ workspaceId: tab.getAttribute("zen-workspace-id")
|
||||||
|
};
|
||||||
|
if (tab.visible) {
|
||||||
|
state.elementIndex = tab.elementIndex;
|
||||||
|
@@ -6287,7 +6458,7 @@
|
||||||
|
let changedTabGroup =
|
||||||
|
previousTabState.tabGroupId != currentTabState.tabGroupId;
|
||||||
|
|
||||||
|
- if (changedPosition || changedTabGroup) {
|
||||||
|
+ if (changedPosition || changedTabGroup || (previousTabState.workspaceId != currentTabState.workspaceId)) {
|
||||||
|
tab.dispatchEvent(
|
||||||
|
new CustomEvent("TabMove", {
|
||||||
|
bubbles: true,
|
||||||
|
@@ -6324,6 +6495,10 @@
|
||||||
|
|
||||||
moveActionCallback();
|
moveActionCallback();
|
||||||
|
|
||||||
@@ -757,7 +785,7 @@ index d80a66a01002e78a9c65545d08fe786328ddf124..c5c079ac5218f051407b27c6edbd4ba6
|
|||||||
// Clear tabs cache after moving nodes because the order of tabs may have
|
// Clear tabs cache after moving nodes because the order of tabs may have
|
||||||
// changed.
|
// changed.
|
||||||
this.tabContainer._invalidateCachedTabs();
|
this.tabContainer._invalidateCachedTabs();
|
||||||
@@ -7221,7 +7388,7 @@
|
@@ -7221,7 +7396,7 @@
|
||||||
// preventDefault(). It will still raise the window if appropriate.
|
// preventDefault(). It will still raise the window if appropriate.
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
@@ -766,7 +794,7 @@ index d80a66a01002e78a9c65545d08fe786328ddf124..c5c079ac5218f051407b27c6edbd4ba6
|
|||||||
window.focus();
|
window.focus();
|
||||||
aEvent.preventDefault();
|
aEvent.preventDefault();
|
||||||
break;
|
break;
|
||||||
@@ -8166,6 +8333,7 @@
|
@@ -8166,6 +8341,7 @@
|
||||||
aWebProgress.isTopLevel
|
aWebProgress.isTopLevel
|
||||||
) {
|
) {
|
||||||
this.mTab.setAttribute("busy", "true");
|
this.mTab.setAttribute("busy", "true");
|
||||||
@@ -774,7 +802,7 @@ index d80a66a01002e78a9c65545d08fe786328ddf124..c5c079ac5218f051407b27c6edbd4ba6
|
|||||||
gBrowser._tabAttrModified(this.mTab, ["busy"]);
|
gBrowser._tabAttrModified(this.mTab, ["busy"]);
|
||||||
this.mTab._notselectedsinceload = !this.mTab.selected;
|
this.mTab._notselectedsinceload = !this.mTab.selected;
|
||||||
}
|
}
|
||||||
@@ -9157,7 +9325,7 @@ var TabContextMenu = {
|
@@ -9157,7 +9333,7 @@ var TabContextMenu = {
|
||||||
);
|
);
|
||||||
contextUnpinSelectedTabs.hidden =
|
contextUnpinSelectedTabs.hidden =
|
||||||
!this.contextTab.pinned || !this.multiselected;
|
!this.contextTab.pinned || !this.multiselected;
|
||||||
@@ -783,7 +811,7 @@ index d80a66a01002e78a9c65545d08fe786328ddf124..c5c079ac5218f051407b27c6edbd4ba6
|
|||||||
// Build Ask Chat items
|
// Build Ask Chat items
|
||||||
TabContextMenu.GenAI.buildTabMenu(
|
TabContextMenu.GenAI.buildTabMenu(
|
||||||
document.getElementById("context_askChat"),
|
document.getElementById("context_askChat"),
|
||||||
@@ -9476,6 +9644,7 @@ var TabContextMenu = {
|
@@ -9476,6 +9652,7 @@ var TabContextMenu = {
|
||||||
)
|
)
|
||||||
);
|
);
|
||||||
} else {
|
} else {
|
||||||
|
@@ -1,5 +1,5 @@
|
|||||||
diff --git a/browser/components/tabbrowser/content/tabgroup.js b/browser/components/tabbrowser/content/tabgroup.js
|
diff --git a/browser/components/tabbrowser/content/tabgroup.js b/browser/components/tabbrowser/content/tabgroup.js
|
||||||
index caea196b22b4689f55780a528661d87b52f4e728..729848f1d3856bc4a5225e1a83cc10ef22819ca1 100644
|
index caea196b22b4689f55780a528661d87b52f4e728..725a2dfb10216df3e63d7980e2f1c99bf10038d7 100644
|
||||||
--- a/browser/components/tabbrowser/content/tabgroup.js
|
--- a/browser/components/tabbrowser/content/tabgroup.js
|
||||||
+++ b/browser/components/tabbrowser/content/tabgroup.js
|
+++ b/browser/components/tabbrowser/content/tabgroup.js
|
||||||
@@ -13,10 +13,12 @@
|
@@ -13,10 +13,12 @@
|
||||||
@@ -166,16 +166,15 @@ index caea196b22b4689f55780a528661d87b52f4e728..729848f1d3856bc4a5225e1a83cc10ef
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -373,7 +443,7 @@
|
@@ -374,7 +444,6 @@
|
||||||
*/
|
|
||||||
addTabs(tabs, metricsContext) {
|
addTabs(tabs, metricsContext) {
|
||||||
for (let tab of tabs) {
|
for (let tab of tabs) {
|
||||||
- if (tab.pinned) {
|
if (tab.pinned) {
|
||||||
+ if (tab.pinned !== this.pinned) {
|
- tab.ownerGlobal.gBrowser.unpinTab(tab);
|
||||||
tab.ownerGlobal.gBrowser.unpinTab(tab);
|
|
||||||
}
|
}
|
||||||
let tabToMove =
|
let tabToMove =
|
||||||
@@ -437,7 +507,7 @@
|
this.ownerGlobal === tab.ownerGlobal
|
||||||
|
@@ -437,7 +506,7 @@
|
||||||
*/
|
*/
|
||||||
on_click(event) {
|
on_click(event) {
|
||||||
let isToggleElement =
|
let isToggleElement =
|
||||||
@@ -184,7 +183,7 @@ index caea196b22b4689f55780a528661d87b52f4e728..729848f1d3856bc4a5225e1a83cc10ef
|
|||||||
event.target === this.#overflowCountLabel;
|
event.target === this.#overflowCountLabel;
|
||||||
if (isToggleElement && event.button === 0) {
|
if (isToggleElement && event.button === 0) {
|
||||||
event.preventDefault();
|
event.preventDefault();
|
||||||
@@ -470,5 +540,6 @@
|
@@ -470,5 +539,6 @@
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -1,5 +1,5 @@
|
|||||||
diff --git a/browser/components/tabbrowser/content/tabs.js b/browser/components/tabbrowser/content/tabs.js
|
diff --git a/browser/components/tabbrowser/content/tabs.js b/browser/components/tabbrowser/content/tabs.js
|
||||||
index e2b27db6c13278defea3bcc7606a8da54e7d001c..016d58789918235cc3a41f33ee402c2c3b65f80b 100644
|
index e2b27db6c13278defea3bcc7606a8da54e7d001c..3033f5c98c94cf4b048432dfee72e20f4d8e37b6 100644
|
||||||
--- a/browser/components/tabbrowser/content/tabs.js
|
--- a/browser/components/tabbrowser/content/tabs.js
|
||||||
+++ b/browser/components/tabbrowser/content/tabs.js
|
+++ b/browser/components/tabbrowser/content/tabs.js
|
||||||
@@ -332,7 +332,7 @@
|
@@ -332,7 +332,7 @@
|
||||||
@@ -19,7 +19,17 @@ index e2b27db6c13278defea3bcc7606a8da54e7d001c..016d58789918235cc3a41f33ee402c2c
|
|||||||
} else if (
|
} else if (
|
||||||
event.originalTarget.closest("scrollbox") &&
|
event.originalTarget.closest("scrollbox") &&
|
||||||
!Services.prefs.getBoolPref(
|
!Services.prefs.getBoolPref(
|
||||||
@@ -686,7 +685,7 @@
|
@@ -449,6 +448,9 @@
|
||||||
|
}
|
||||||
|
|
||||||
|
on_keydown(event) {
|
||||||
|
+ if (document.documentElement.getAttribute('zen-renaming-tab') === 'true') {
|
||||||
|
+ return;
|
||||||
|
+ }
|
||||||
|
let { altKey, shiftKey } = event;
|
||||||
|
let [accel, nonAccel] =
|
||||||
|
AppConstants.platform == "macosx"
|
||||||
|
@@ -686,7 +688,7 @@
|
||||||
if (this.#isContainerVerticalPinnedGrid(tab)) {
|
if (this.#isContainerVerticalPinnedGrid(tab)) {
|
||||||
// In expanded vertical mode, the max number of pinned tabs per row is dynamic
|
// In expanded vertical mode, the max number of pinned tabs per row is dynamic
|
||||||
// Set this before adjusting dragged tab's position
|
// Set this before adjusting dragged tab's position
|
||||||
@@ -28,7 +38,7 @@ index e2b27db6c13278defea3bcc7606a8da54e7d001c..016d58789918235cc3a41f33ee402c2c
|
|||||||
let tabsPerRow = 0;
|
let tabsPerRow = 0;
|
||||||
let position = RTL_UI
|
let position = RTL_UI
|
||||||
? window.windowUtils.getBoundsWithoutFlushing(
|
? window.windowUtils.getBoundsWithoutFlushing(
|
||||||
@@ -851,7 +850,7 @@
|
@@ -851,7 +853,7 @@
|
||||||
let dropEffect = this.getDropEffectForTabDrag(event);
|
let dropEffect = this.getDropEffectForTabDrag(event);
|
||||||
let isMovingInTabStrip = !fromTabList && dropEffect == "move";
|
let isMovingInTabStrip = !fromTabList && dropEffect == "move";
|
||||||
let collapseTabGroupDuringDrag =
|
let collapseTabGroupDuringDrag =
|
||||||
@@ -37,7 +47,7 @@ index e2b27db6c13278defea3bcc7606a8da54e7d001c..016d58789918235cc3a41f33ee402c2c
|
|||||||
|
|
||||||
tab._dragData = {
|
tab._dragData = {
|
||||||
offsetX: this.verticalMode
|
offsetX: this.verticalMode
|
||||||
@@ -861,7 +860,7 @@
|
@@ -861,7 +863,7 @@
|
||||||
? event.screenY - window.screenY - tabOffset
|
? event.screenY - window.screenY - tabOffset
|
||||||
: event.screenY - window.screenY,
|
: event.screenY - window.screenY,
|
||||||
scrollPos:
|
scrollPos:
|
||||||
@@ -46,15 +56,15 @@ index e2b27db6c13278defea3bcc7606a8da54e7d001c..016d58789918235cc3a41f33ee402c2c
|
|||||||
? this.pinnedTabsContainer.scrollPosition
|
? this.pinnedTabsContainer.scrollPosition
|
||||||
: this.arrowScrollbox.scrollPosition,
|
: this.arrowScrollbox.scrollPosition,
|
||||||
screenX: event.screenX,
|
screenX: event.screenX,
|
||||||
@@ -886,6 +885,7 @@
|
@@ -887,6 +889,7 @@
|
||||||
if (tab.multiselected) {
|
|
||||||
this.#moveTogetherSelectedTabs(tab);
|
this.#moveTogetherSelectedTabs(tab);
|
||||||
} else if (collapseTabGroupDuringDrag) {
|
} else if (collapseTabGroupDuringDrag) {
|
||||||
+ gZenFolders.collapseVisibleTab(tab.group);
|
|
||||||
tab.group.collapsed = true;
|
tab.group.collapsed = true;
|
||||||
|
+ gZenFolders.collapseVisibleTab(tab.group);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -932,6 +932,10 @@
|
|
||||||
|
@@ -932,6 +935,10 @@
|
||||||
}
|
}
|
||||||
|
|
||||||
let draggedTab = event.dataTransfer.mozGetDataAt(TAB_DROP_TYPE, 0);
|
let draggedTab = event.dataTransfer.mozGetDataAt(TAB_DROP_TYPE, 0);
|
||||||
@@ -65,18 +75,7 @@ index e2b27db6c13278defea3bcc7606a8da54e7d001c..016d58789918235cc3a41f33ee402c2c
|
|||||||
if (
|
if (
|
||||||
(dropEffect == "move" || dropEffect == "copy") &&
|
(dropEffect == "move" || dropEffect == "copy") &&
|
||||||
document == draggedTab.ownerDocument &&
|
document == draggedTab.ownerDocument &&
|
||||||
@@ -1059,7 +1063,9 @@
|
@@ -1095,6 +1102,18 @@
|
||||||
isTabGroupLabel(draggedTab) &&
|
|
||||||
draggedTab._dragData?.expandGroupOnDrop
|
|
||||||
) {
|
|
||||||
- draggedTab.group.collapsed = false;
|
|
||||||
+ const isActive = draggedTab.group.hasAttribute("has-active");
|
|
||||||
+ draggedTab.group.collapsed = isActive;
|
|
||||||
+ if (isActive) gZenFolders.expandVisibleTab(draggedTab.group);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
@@ -1095,6 +1101,18 @@
|
|
||||||
|
|
||||||
this._tabDropIndicator.hidden = true;
|
this._tabDropIndicator.hidden = true;
|
||||||
event.stopPropagation();
|
event.stopPropagation();
|
||||||
@@ -95,7 +94,7 @@ index e2b27db6c13278defea3bcc7606a8da54e7d001c..016d58789918235cc3a41f33ee402c2c
|
|||||||
if (draggedTab && dropEffect == "copy") {
|
if (draggedTab && dropEffect == "copy") {
|
||||||
let duplicatedDraggedTab;
|
let duplicatedDraggedTab;
|
||||||
let duplicatedTabs = [];
|
let duplicatedTabs = [];
|
||||||
@@ -1119,8 +1137,9 @@
|
@@ -1119,8 +1138,9 @@
|
||||||
let translateOffsetY = oldTranslateY % tabHeight;
|
let translateOffsetY = oldTranslateY % tabHeight;
|
||||||
let newTranslateX = oldTranslateX - translateOffsetX;
|
let newTranslateX = oldTranslateX - translateOffsetX;
|
||||||
let newTranslateY = oldTranslateY - translateOffsetY;
|
let newTranslateY = oldTranslateY - translateOffsetY;
|
||||||
@@ -107,7 +106,7 @@ index e2b27db6c13278defea3bcc7606a8da54e7d001c..016d58789918235cc3a41f33ee402c2c
|
|||||||
|
|
||||||
if (this.#isContainerVerticalPinnedGrid(draggedTab)) {
|
if (this.#isContainerVerticalPinnedGrid(draggedTab)) {
|
||||||
// Update both translate axis for pinned vertical expanded tabs
|
// Update both translate axis for pinned vertical expanded tabs
|
||||||
@@ -1136,8 +1155,8 @@
|
@@ -1136,8 +1156,8 @@
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
let tabs = this.ariaFocusableItems.slice(
|
let tabs = this.ariaFocusableItems.slice(
|
||||||
@@ -118,7 +117,7 @@ index e2b27db6c13278defea3bcc7606a8da54e7d001c..016d58789918235cc3a41f33ee402c2c
|
|||||||
);
|
);
|
||||||
let size = this.verticalMode ? "height" : "width";
|
let size = this.verticalMode ? "height" : "width";
|
||||||
let screenAxis = this.verticalMode ? "screenY" : "screenX";
|
let screenAxis = this.verticalMode ? "screenY" : "screenX";
|
||||||
@@ -1178,11 +1197,9 @@
|
@@ -1178,11 +1198,9 @@
|
||||||
}
|
}
|
||||||
|
|
||||||
let shouldPin =
|
let shouldPin =
|
||||||
@@ -132,7 +131,7 @@ index e2b27db6c13278defea3bcc7606a8da54e7d001c..016d58789918235cc3a41f33ee402c2c
|
|||||||
let shouldTranslate =
|
let shouldTranslate =
|
||||||
!gReduceMotion &&
|
!gReduceMotion &&
|
||||||
!shouldCreateGroupOnDrop &&
|
!shouldCreateGroupOnDrop &&
|
||||||
@@ -1195,6 +1212,7 @@
|
@@ -1195,6 +1213,7 @@
|
||||||
(oldTranslateY && oldTranslateY != newTranslateY);
|
(oldTranslateY && oldTranslateY != newTranslateY);
|
||||||
} else if (this.verticalMode) {
|
} else if (this.verticalMode) {
|
||||||
shouldTranslate &&= oldTranslateY && oldTranslateY != newTranslateY;
|
shouldTranslate &&= oldTranslateY && oldTranslateY != newTranslateY;
|
||||||
@@ -140,7 +139,7 @@ index e2b27db6c13278defea3bcc7606a8da54e7d001c..016d58789918235cc3a41f33ee402c2c
|
|||||||
} else {
|
} else {
|
||||||
shouldTranslate &&= oldTranslateX && oldTranslateX != newTranslateX;
|
shouldTranslate &&= oldTranslateX && oldTranslateX != newTranslateX;
|
||||||
}
|
}
|
||||||
@@ -1376,6 +1394,7 @@
|
@@ -1376,6 +1395,7 @@
|
||||||
|
|
||||||
let nextItem = this.ariaFocusableItems[newIndex];
|
let nextItem = this.ariaFocusableItems[newIndex];
|
||||||
let tabGroup = isTab(nextItem) && nextItem.group;
|
let tabGroup = isTab(nextItem) && nextItem.group;
|
||||||
@@ -148,7 +147,7 @@ index e2b27db6c13278defea3bcc7606a8da54e7d001c..016d58789918235cc3a41f33ee402c2c
|
|||||||
gBrowser.loadTabs(urls, {
|
gBrowser.loadTabs(urls, {
|
||||||
inBackground,
|
inBackground,
|
||||||
replace,
|
replace,
|
||||||
@@ -1408,6 +1427,17 @@
|
@@ -1408,6 +1428,17 @@
|
||||||
|
|
||||||
this.finishMoveTogetherSelectedTabs(draggedTab);
|
this.finishMoveTogetherSelectedTabs(draggedTab);
|
||||||
this.finishAnimateTabMove();
|
this.finishAnimateTabMove();
|
||||||
@@ -166,7 +165,7 @@ index e2b27db6c13278defea3bcc7606a8da54e7d001c..016d58789918235cc3a41f33ee402c2c
|
|||||||
this.#expandGroupOnDrop(draggedTab);
|
this.#expandGroupOnDrop(draggedTab);
|
||||||
this.#resetTabsAfterDrop(draggedTab.ownerDocument);
|
this.#resetTabsAfterDrop(draggedTab.ownerDocument);
|
||||||
|
|
||||||
@@ -1577,7 +1607,6 @@
|
@@ -1577,7 +1608,6 @@
|
||||||
|
|
||||||
this.toggleAttribute("overflow", true);
|
this.toggleAttribute("overflow", true);
|
||||||
this._updateCloseButtons();
|
this._updateCloseButtons();
|
||||||
@@ -174,7 +173,7 @@ index e2b27db6c13278defea3bcc7606a8da54e7d001c..016d58789918235cc3a41f33ee402c2c
|
|||||||
|
|
||||||
document
|
document
|
||||||
.getElementById("tab-preview-panel")
|
.getElementById("tab-preview-panel")
|
||||||
@@ -1635,7 +1664,7 @@
|
@@ -1635,7 +1665,7 @@
|
||||||
}
|
}
|
||||||
|
|
||||||
get newTabButton() {
|
get newTabButton() {
|
||||||
@@ -183,7 +182,7 @@ index e2b27db6c13278defea3bcc7606a8da54e7d001c..016d58789918235cc3a41f33ee402c2c
|
|||||||
}
|
}
|
||||||
|
|
||||||
get verticalMode() {
|
get verticalMode() {
|
||||||
@@ -1651,6 +1680,7 @@
|
@@ -1651,6 +1681,7 @@
|
||||||
}
|
}
|
||||||
|
|
||||||
get overflowing() {
|
get overflowing() {
|
||||||
@@ -191,7 +190,7 @@ index e2b27db6c13278defea3bcc7606a8da54e7d001c..016d58789918235cc3a41f33ee402c2c
|
|||||||
return this.hasAttribute("overflow");
|
return this.hasAttribute("overflow");
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1659,26 +1689,54 @@
|
@@ -1659,26 +1690,54 @@
|
||||||
if (this.#allTabs) {
|
if (this.#allTabs) {
|
||||||
return this.#allTabs;
|
return this.#allTabs;
|
||||||
}
|
}
|
||||||
@@ -253,7 +252,7 @@ index e2b27db6c13278defea3bcc7606a8da54e7d001c..016d58789918235cc3a41f33ee402c2c
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -1745,32 +1803,27 @@
|
@@ -1745,32 +1804,27 @@
|
||||||
|
|
||||||
let elementIndex = 0;
|
let elementIndex = 0;
|
||||||
|
|
||||||
@@ -295,7 +294,7 @@ index e2b27db6c13278defea3bcc7606a8da54e7d001c..016d58789918235cc3a41f33ee402c2c
|
|||||||
|
|
||||||
return this.#focusableItems;
|
return this.#focusableItems;
|
||||||
}
|
}
|
||||||
@@ -1778,6 +1831,7 @@
|
@@ -1778,6 +1832,7 @@
|
||||||
_invalidateCachedTabs() {
|
_invalidateCachedTabs() {
|
||||||
this.#allTabs = null;
|
this.#allTabs = null;
|
||||||
this._invalidateCachedVisibleTabs();
|
this._invalidateCachedVisibleTabs();
|
||||||
@@ -303,7 +302,7 @@ index e2b27db6c13278defea3bcc7606a8da54e7d001c..016d58789918235cc3a41f33ee402c2c
|
|||||||
}
|
}
|
||||||
|
|
||||||
_invalidateCachedVisibleTabs() {
|
_invalidateCachedVisibleTabs() {
|
||||||
@@ -1793,8 +1847,8 @@
|
@@ -1793,8 +1848,8 @@
|
||||||
#isContainerVerticalPinnedGrid(tab) {
|
#isContainerVerticalPinnedGrid(tab) {
|
||||||
return (
|
return (
|
||||||
this.verticalMode &&
|
this.verticalMode &&
|
||||||
@@ -314,7 +313,7 @@ index e2b27db6c13278defea3bcc7606a8da54e7d001c..016d58789918235cc3a41f33ee402c2c
|
|||||||
!this.expandOnHover
|
!this.expandOnHover
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
@@ -1810,7 +1864,7 @@
|
@@ -1810,7 +1865,7 @@
|
||||||
|
|
||||||
if (node == null) {
|
if (node == null) {
|
||||||
// We have a container for non-tab elements at the end of the scrollbox.
|
// We have a container for non-tab elements at the end of the scrollbox.
|
||||||
@@ -323,7 +322,7 @@ index e2b27db6c13278defea3bcc7606a8da54e7d001c..016d58789918235cc3a41f33ee402c2c
|
|||||||
}
|
}
|
||||||
|
|
||||||
node.before(tab);
|
node.before(tab);
|
||||||
@@ -1905,7 +1959,7 @@
|
@@ -1905,7 +1960,7 @@
|
||||||
// There are separate "new tab" buttons for horizontal tabs toolbar, vertical tabs and
|
// There are separate "new tab" buttons for horizontal tabs toolbar, vertical tabs and
|
||||||
// for when the tab strip is overflowed (which is shared by vertical and horizontal tabs);
|
// for when the tab strip is overflowed (which is shared by vertical and horizontal tabs);
|
||||||
// Attach the long click popup to all of them.
|
// Attach the long click popup to all of them.
|
||||||
@@ -332,7 +331,7 @@ index e2b27db6c13278defea3bcc7606a8da54e7d001c..016d58789918235cc3a41f33ee402c2c
|
|||||||
const newTab2 = this.newTabButton;
|
const newTab2 = this.newTabButton;
|
||||||
const newTabVertical = document.getElementById(
|
const newTabVertical = document.getElementById(
|
||||||
"vertical-tabs-newtab-button"
|
"vertical-tabs-newtab-button"
|
||||||
@@ -2000,10 +2054,12 @@
|
@@ -2000,10 +2055,12 @@
|
||||||
|
|
||||||
_handleTabSelect(aInstant) {
|
_handleTabSelect(aInstant) {
|
||||||
let selectedTab = this.selectedItem;
|
let selectedTab = this.selectedItem;
|
||||||
@@ -345,7 +344,7 @@ index e2b27db6c13278defea3bcc7606a8da54e7d001c..016d58789918235cc3a41f33ee402c2c
|
|||||||
selectedTab._notselectedsinceload = false;
|
selectedTab._notselectedsinceload = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -2140,6 +2196,16 @@
|
@@ -2140,6 +2197,16 @@
|
||||||
when the tab is first selected to be dragged.
|
when the tab is first selected to be dragged.
|
||||||
*/
|
*/
|
||||||
#updateTabStylesOnDrag(tab) {
|
#updateTabStylesOnDrag(tab) {
|
||||||
@@ -362,7 +361,7 @@ index e2b27db6c13278defea3bcc7606a8da54e7d001c..016d58789918235cc3a41f33ee402c2c
|
|||||||
let isPinned = tab.pinned;
|
let isPinned = tab.pinned;
|
||||||
let numPinned = gBrowser.pinnedTabCount;
|
let numPinned = gBrowser.pinnedTabCount;
|
||||||
let allTabs = this.ariaFocusableItems;
|
let allTabs = this.ariaFocusableItems;
|
||||||
@@ -2398,7 +2464,7 @@
|
@@ -2398,7 +2465,7 @@
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -371,7 +370,7 @@ index e2b27db6c13278defea3bcc7606a8da54e7d001c..016d58789918235cc3a41f33ee402c2c
|
|||||||
|
|
||||||
let directionX = screenX > dragData.animLastScreenX;
|
let directionX = screenX > dragData.animLastScreenX;
|
||||||
let directionY = screenY > dragData.animLastScreenY;
|
let directionY = screenY > dragData.animLastScreenY;
|
||||||
@@ -2407,6 +2473,8 @@
|
@@ -2407,6 +2474,8 @@
|
||||||
|
|
||||||
let { width: tabWidth, height: tabHeight } =
|
let { width: tabWidth, height: tabHeight } =
|
||||||
draggedTab.getBoundingClientRect();
|
draggedTab.getBoundingClientRect();
|
||||||
@@ -380,7 +379,7 @@ index e2b27db6c13278defea3bcc7606a8da54e7d001c..016d58789918235cc3a41f33ee402c2c
|
|||||||
let shiftSizeX = tabWidth * movingTabs.length;
|
let shiftSizeX = tabWidth * movingTabs.length;
|
||||||
let shiftSizeY = tabHeight;
|
let shiftSizeY = tabHeight;
|
||||||
dragData.tabWidth = tabWidth;
|
dragData.tabWidth = tabWidth;
|
||||||
@@ -2443,8 +2511,8 @@
|
@@ -2443,8 +2512,8 @@
|
||||||
let lastBoundX =
|
let lastBoundX =
|
||||||
lastTabInRow.screenX +
|
lastTabInRow.screenX +
|
||||||
lastTabInRow.getBoundingClientRect().width -
|
lastTabInRow.getBoundingClientRect().width -
|
||||||
@@ -391,7 +390,7 @@ index e2b27db6c13278defea3bcc7606a8da54e7d001c..016d58789918235cc3a41f33ee402c2c
|
|||||||
translateX = Math.min(Math.max(translateX, firstBoundX), lastBoundX);
|
translateX = Math.min(Math.max(translateX, firstBoundX), lastBoundX);
|
||||||
translateY = Math.min(Math.max(translateY, firstBoundY), lastBoundY);
|
translateY = Math.min(Math.max(translateY, firstBoundY), lastBoundY);
|
||||||
|
|
||||||
@@ -2560,7 +2628,7 @@
|
@@ -2560,7 +2629,7 @@
|
||||||
}
|
}
|
||||||
|
|
||||||
dragData.animDropElementIndex = newIndex;
|
dragData.animDropElementIndex = newIndex;
|
||||||
@@ -400,7 +399,7 @@ index e2b27db6c13278defea3bcc7606a8da54e7d001c..016d58789918235cc3a41f33ee402c2c
|
|||||||
dragData.dropBefore = newIndex < tabs.length;
|
dragData.dropBefore = newIndex < tabs.length;
|
||||||
|
|
||||||
// Shift background tabs to leave a gap where the dragged tab
|
// Shift background tabs to leave a gap where the dragged tab
|
||||||
@@ -2593,13 +2661,18 @@
|
@@ -2593,13 +2662,18 @@
|
||||||
|
|
||||||
this.#clearDragOverCreateGroupTimer();
|
this.#clearDragOverCreateGroupTimer();
|
||||||
|
|
||||||
@@ -423,7 +422,7 @@ index e2b27db6c13278defea3bcc7606a8da54e7d001c..016d58789918235cc3a41f33ee402c2c
|
|||||||
|
|
||||||
if (this.#rtlMode) {
|
if (this.#rtlMode) {
|
||||||
tabs.reverse();
|
tabs.reverse();
|
||||||
@@ -2610,7 +2683,7 @@
|
@@ -2610,7 +2684,7 @@
|
||||||
let screenAxis = this.verticalMode ? "screenY" : "screenX";
|
let screenAxis = this.verticalMode ? "screenY" : "screenX";
|
||||||
let size = this.verticalMode ? "height" : "width";
|
let size = this.verticalMode ? "height" : "width";
|
||||||
let translateAxis = this.verticalMode ? "translateY" : "translateX";
|
let translateAxis = this.verticalMode ? "translateY" : "translateX";
|
||||||
@@ -432,7 +431,7 @@ index e2b27db6c13278defea3bcc7606a8da54e7d001c..016d58789918235cc3a41f33ee402c2c
|
|||||||
let translateX = event.screenX - dragData.screenX;
|
let translateX = event.screenX - dragData.screenX;
|
||||||
let translateY = event.screenY - dragData.screenY;
|
let translateY = event.screenY - dragData.screenY;
|
||||||
|
|
||||||
@@ -2620,10 +2693,16 @@
|
@@ -2620,10 +2694,16 @@
|
||||||
dragData.translateY = translateY;
|
dragData.translateY = translateY;
|
||||||
|
|
||||||
// Move the dragged tab based on the mouse position.
|
// Move the dragged tab based on the mouse position.
|
||||||
@@ -451,7 +450,7 @@ index e2b27db6c13278defea3bcc7606a8da54e7d001c..016d58789918235cc3a41f33ee402c2c
|
|||||||
let endEdge = ele => ele[screenAxis] + bounds(ele)[size];
|
let endEdge = ele => ele[screenAxis] + bounds(ele)[size];
|
||||||
let lastMovingTabScreen = endEdge(lastMovingTab);
|
let lastMovingTabScreen = endEdge(lastMovingTab);
|
||||||
let firstMovingTabScreen = firstMovingTab[screenAxis];
|
let firstMovingTabScreen = firstMovingTab[screenAxis];
|
||||||
@@ -2632,6 +2711,7 @@
|
@@ -2632,6 +2712,7 @@
|
||||||
// Constrain the range over which the moving tabs can move between the first and last tab
|
// Constrain the range over which the moving tabs can move between the first and last tab
|
||||||
let firstBound = firstTab[screenAxis] - firstMovingTabScreen;
|
let firstBound = firstTab[screenAxis] - firstMovingTabScreen;
|
||||||
let lastBound = endEdge(lastTab) - lastMovingTabScreen;
|
let lastBound = endEdge(lastTab) - lastMovingTabScreen;
|
||||||
@@ -459,7 +458,7 @@ index e2b27db6c13278defea3bcc7606a8da54e7d001c..016d58789918235cc3a41f33ee402c2c
|
|||||||
|
|
||||||
// Center the tab under the cursor if the tab is not under the cursor while dragging
|
// Center the tab under the cursor if the tab is not under the cursor while dragging
|
||||||
if (
|
if (
|
||||||
@@ -2649,6 +2729,9 @@
|
@@ -2649,6 +2730,9 @@
|
||||||
// Shift the `.tab-group-label-container` to shift the label element.
|
// Shift the `.tab-group-label-container` to shift the label element.
|
||||||
item = item.parentElement;
|
item = item.parentElement;
|
||||||
}
|
}
|
||||||
@@ -469,7 +468,7 @@ index e2b27db6c13278defea3bcc7606a8da54e7d001c..016d58789918235cc3a41f33ee402c2c
|
|||||||
item.style.transform = `${translateAxis}(${translate}px)`;
|
item.style.transform = `${translateAxis}(${translate}px)`;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -2786,6 +2869,9 @@
|
@@ -2786,6 +2870,9 @@
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
let element = tabs[mid];
|
let element = tabs[mid];
|
||||||
@@ -479,7 +478,7 @@ index e2b27db6c13278defea3bcc7606a8da54e7d001c..016d58789918235cc3a41f33ee402c2c
|
|||||||
let elementForSize = isTabGroupLabel(element)
|
let elementForSize = isTabGroupLabel(element)
|
||||||
? element.parentElement
|
? element.parentElement
|
||||||
: element;
|
: element;
|
||||||
@@ -2805,6 +2891,8 @@
|
@@ -2805,6 +2892,8 @@
|
||||||
};
|
};
|
||||||
|
|
||||||
let dropElement = getOverlappedElement();
|
let dropElement = getOverlappedElement();
|
||||||
@@ -488,7 +487,7 @@ index e2b27db6c13278defea3bcc7606a8da54e7d001c..016d58789918235cc3a41f33ee402c2c
|
|||||||
|
|
||||||
let newDropElementIndex;
|
let newDropElementIndex;
|
||||||
if (dropElement) {
|
if (dropElement) {
|
||||||
@@ -2869,7 +2957,10 @@
|
@@ -2869,7 +2958,10 @@
|
||||||
let shouldCreateGroupOnDrop;
|
let shouldCreateGroupOnDrop;
|
||||||
let dropBefore;
|
let dropBefore;
|
||||||
if (dropElement) {
|
if (dropElement) {
|
||||||
@@ -500,7 +499,7 @@ index e2b27db6c13278defea3bcc7606a8da54e7d001c..016d58789918235cc3a41f33ee402c2c
|
|||||||
? dropElement.parentElement
|
? dropElement.parentElement
|
||||||
: dropElement;
|
: dropElement;
|
||||||
|
|
||||||
@@ -2889,7 +2980,7 @@
|
@@ -2889,7 +2981,7 @@
|
||||||
? Services.prefs.getIntPref(
|
? Services.prefs.getIntPref(
|
||||||
"browser.tabs.dragDrop.moveOverThresholdPercent"
|
"browser.tabs.dragDrop.moveOverThresholdPercent"
|
||||||
) / 100
|
) / 100
|
||||||
@@ -509,7 +508,7 @@ index e2b27db6c13278defea3bcc7606a8da54e7d001c..016d58789918235cc3a41f33ee402c2c
|
|||||||
moveOverThreshold = Math.min(1, Math.max(0, moveOverThreshold));
|
moveOverThreshold = Math.min(1, Math.max(0, moveOverThreshold));
|
||||||
let shouldMoveOver = overlapPercent > moveOverThreshold;
|
let shouldMoveOver = overlapPercent > moveOverThreshold;
|
||||||
if (logicalForward && shouldMoveOver) {
|
if (logicalForward && shouldMoveOver) {
|
||||||
@@ -2921,44 +3012,21 @@
|
@@ -2921,44 +3013,21 @@
|
||||||
|
|
||||||
// If dragging a group over another group, don't make it look like it is
|
// 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.
|
// possible to drop the dragged group inside the other group.
|
||||||
@@ -559,7 +558,7 @@ index e2b27db6c13278defea3bcc7606a8da54e7d001c..016d58789918235cc3a41f33ee402c2c
|
|||||||
// When dragging tab(s) over an ungrouped tab, signal to the user
|
// When dragging tab(s) over an ungrouped tab, signal to the user
|
||||||
// that dropping the tab(s) will create a new tab group.
|
// that dropping the tab(s) will create a new tab group.
|
||||||
shouldCreateGroupOnDrop =
|
shouldCreateGroupOnDrop =
|
||||||
@@ -2968,12 +3036,6 @@
|
@@ -2968,12 +3037,6 @@
|
||||||
overlapPercent > dragOverGroupingThreshold;
|
overlapPercent > dragOverGroupingThreshold;
|
||||||
|
|
||||||
if (shouldCreateGroupOnDrop) {
|
if (shouldCreateGroupOnDrop) {
|
||||||
@@ -572,7 +571,7 @@ index e2b27db6c13278defea3bcc7606a8da54e7d001c..016d58789918235cc3a41f33ee402c2c
|
|||||||
} else {
|
} else {
|
||||||
this.removeAttribute("movingtab-createGroup");
|
this.removeAttribute("movingtab-createGroup");
|
||||||
document
|
document
|
||||||
@@ -3000,19 +3062,14 @@
|
@@ -3000,19 +3063,14 @@
|
||||||
dropElement = dropElementGroup;
|
dropElement = dropElementGroup;
|
||||||
colorCode = undefined;
|
colorCode = undefined;
|
||||||
} else if (isTabGroupLabel(dropElement)) {
|
} else if (isTabGroupLabel(dropElement)) {
|
||||||
@@ -600,7 +599,7 @@ index e2b27db6c13278defea3bcc7606a8da54e7d001c..016d58789918235cc3a41f33ee402c2c
|
|||||||
}
|
}
|
||||||
this.#setDragOverGroupColor(colorCode);
|
this.#setDragOverGroupColor(colorCode);
|
||||||
this.toggleAttribute("movingtab-ungroup", !colorCode);
|
this.toggleAttribute("movingtab-ungroup", !colorCode);
|
||||||
@@ -3030,19 +3087,28 @@
|
@@ -3030,19 +3088,28 @@
|
||||||
dragData.dropElement = dropElement;
|
dragData.dropElement = dropElement;
|
||||||
dragData.dropBefore = dropBefore;
|
dragData.dropBefore = dropBefore;
|
||||||
dragData.animDropElementIndex = newDropElementIndex;
|
dragData.animDropElementIndex = newDropElementIndex;
|
||||||
@@ -631,7 +630,7 @@ index e2b27db6c13278defea3bcc7606a8da54e7d001c..016d58789918235cc3a41f33ee402c2c
|
|||||||
}
|
}
|
||||||
item.style.transform = transform;
|
item.style.transform = transform;
|
||||||
}
|
}
|
||||||
@@ -3095,12 +3161,14 @@
|
@@ -3095,12 +3162,14 @@
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -648,7 +647,7 @@ index e2b27db6c13278defea3bcc7606a8da54e7d001c..016d58789918235cc3a41f33ee402c2c
|
|||||||
|
|
||||||
for (let item of this.ariaFocusableItems) {
|
for (let item of this.ariaFocusableItems) {
|
||||||
if (isTabGroupLabel(item)) {
|
if (isTabGroupLabel(item)) {
|
||||||
@@ -3108,6 +3176,18 @@
|
@@ -3108,6 +3177,18 @@
|
||||||
item = item.parentElement;
|
item = item.parentElement;
|
||||||
}
|
}
|
||||||
item.style.transform = "";
|
item.style.transform = "";
|
||||||
@@ -667,7 +666,7 @@ index e2b27db6c13278defea3bcc7606a8da54e7d001c..016d58789918235cc3a41f33ee402c2c
|
|||||||
item.removeAttribute("dragover-createGroup");
|
item.removeAttribute("dragover-createGroup");
|
||||||
}
|
}
|
||||||
this.removeAttribute("movingtab-createGroup");
|
this.removeAttribute("movingtab-createGroup");
|
||||||
@@ -3129,16 +3209,15 @@
|
@@ -3129,16 +3210,15 @@
|
||||||
tab.style.left = "";
|
tab.style.left = "";
|
||||||
tab.style.top = "";
|
tab.style.top = "";
|
||||||
tab.style.maxWidth = "";
|
tab.style.maxWidth = "";
|
||||||
@@ -686,7 +685,7 @@ index e2b27db6c13278defea3bcc7606a8da54e7d001c..016d58789918235cc3a41f33ee402c2c
|
|||||||
}
|
}
|
||||||
let periphery = draggedTabDocument.getElementById(
|
let periphery = draggedTabDocument.getElementById(
|
||||||
"tabbrowser-arrowscrollbox-periphery"
|
"tabbrowser-arrowscrollbox-periphery"
|
||||||
@@ -3211,7 +3290,7 @@
|
@@ -3211,7 +3291,7 @@
|
||||||
let postTransitionCleanup = () => {
|
let postTransitionCleanup = () => {
|
||||||
movingTab._moveTogetherSelectedTabsData.animate = false;
|
movingTab._moveTogetherSelectedTabsData.animate = false;
|
||||||
};
|
};
|
||||||
@@ -695,7 +694,7 @@ index e2b27db6c13278defea3bcc7606a8da54e7d001c..016d58789918235cc3a41f33ee402c2c
|
|||||||
postTransitionCleanup();
|
postTransitionCleanup();
|
||||||
} else {
|
} else {
|
||||||
let onTransitionEnd = transitionendEvent => {
|
let onTransitionEnd = transitionendEvent => {
|
||||||
@@ -3384,7 +3463,7 @@
|
@@ -3384,7 +3464,7 @@
|
||||||
}
|
}
|
||||||
|
|
||||||
_notifyBackgroundTab(aTab) {
|
_notifyBackgroundTab(aTab) {
|
||||||
@@ -704,7 +703,7 @@ index e2b27db6c13278defea3bcc7606a8da54e7d001c..016d58789918235cc3a41f33ee402c2c
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -3493,7 +3572,10 @@
|
@@ -3493,7 +3573,10 @@
|
||||||
#getDragTarget(event, { ignoreSides = false } = {}) {
|
#getDragTarget(event, { ignoreSides = false } = {}) {
|
||||||
let { target } = event;
|
let { target } = event;
|
||||||
while (target) {
|
while (target) {
|
||||||
@@ -716,7 +715,7 @@ index e2b27db6c13278defea3bcc7606a8da54e7d001c..016d58789918235cc3a41f33ee402c2c
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
target = target.parentNode;
|
target = target.parentNode;
|
||||||
@@ -3510,6 +3592,9 @@
|
@@ -3510,6 +3593,9 @@
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -582,7 +582,9 @@ groupbox h2 {
|
|||||||
#dataCollectionGroup,
|
#dataCollectionGroup,
|
||||||
#websiteAdvertisingCategory,
|
#websiteAdvertisingCategory,
|
||||||
#websiteAdvertisingGroup,
|
#websiteAdvertisingGroup,
|
||||||
#helpButton {
|
#helpButton,
|
||||||
|
#support-firefox,
|
||||||
|
.mission-message {
|
||||||
display: none !important;
|
display: none !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -596,3 +598,9 @@ groupbox h2 {
|
|||||||
display: none;
|
display: none;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@media -moz-pref('zen.urlbar.replace-newtab') {
|
||||||
|
#category-home {
|
||||||
|
display: none !important;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
@@ -2,6 +2,6 @@
|
|||||||
# This Source Code Form is subject to the terms of the Mozilla Public
|
# This Source Code Form is subject to the terms of the Mozilla Public
|
||||||
# License, v. 2.0. If a copy of the MPL was not distributed with this
|
# License, v. 2.0. If a copy of the MPL was not distributed with this
|
||||||
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||||
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
|
<svg width="24" height="24" viewBox="0 0 23 23" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M10.25 7C10.25 6.30964 10.8097 5.75 11.5 5.75C12.1904 5.75 12.75 6.30964 12.75 7V9.74469L14.8375 8.44C15.4229 8.07411 16.1941 8.25208 16.56 8.8375C16.9259 9.42292 16.7479 10.1941 16.1625 10.56L13.8585 12L16.1625 13.44C16.7479 13.8059 16.9259 14.5771 16.56 15.1625C16.1941 15.7479 15.4229 15.9259 14.8375 15.56L12.75 14.2553V17C12.75 17.6904 12.1904 18.25 11.5 18.25C10.8097 18.25 10.25 17.6904 10.25 17V14.2553L8.16251 15.56C7.57709 15.9259 6.8059 15.7479 6.44002 15.1625C6.07413 14.5771 6.2521 13.8059 6.83752 13.44L9.14152 12L6.83752 10.56C6.2521 10.1941 6.07413 9.42292 6.44002 8.8375C6.8059 8.25208 7.57709 8.07411 8.16251 8.44L10.25 9.74469V7Z" fill="context-fill" fill-opacity="context-fill-opacity"/>
|
<path fill-rule="evenodd" clip-rule="evenodd" d="M10.25 7C10.25 6.30964 10.8097 5.75 11.5 5.75C12.1904 5.75 12.75 6.30964 12.75 7V9.74469L14.8375 8.44C15.4229 8.07411 16.1941 8.25208 16.56 8.8375C16.9259 9.42292 16.7479 10.1941 16.1625 10.56L13.8585 12L16.1625 13.44C16.7479 13.8059 16.9259 14.5771 16.56 15.1625C16.1941 15.7479 15.4229 15.9259 14.8375 15.56L12.75 14.2553V17C12.75 17.6904 12.1904 18.25 11.5 18.25C10.8097 18.25 10.25 17.6904 10.25 17V14.2553L8.16251 15.56C7.57709 15.9259 6.8059 15.7479 6.44002 15.1625C6.07413 14.5771 6.2521 13.8059 6.83752 13.44L9.14152 12L6.83752 10.56C6.2521 10.1941 6.07413 9.42292 6.44002 8.8375C6.8059 8.25208 7.57709 8.07411 8.16251 8.44L10.25 9.74469V7Z" fill="context-fill" fill-opacity="context-fill-opacity"/>
|
||||||
</svg>
|
</svg>
|
||||||
|
@@ -35,7 +35,8 @@
|
|||||||
#stop-button,
|
#stop-button,
|
||||||
.close-icon,
|
.close-icon,
|
||||||
.zen-glance-sidebar-close,
|
.zen-glance-sidebar-close,
|
||||||
.zen-theme-picker-custom-list-item-remove {
|
.zen-theme-picker-custom-list-item-remove,
|
||||||
|
#appMenu-quit-button2 {
|
||||||
list-style-image: url('close.svg') !important;
|
list-style-image: url('close.svg') !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -343,6 +344,7 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
#identity-popup[connection='chrome'] .identity-popup-security-connection {
|
#identity-popup[connection='chrome'] .identity-popup-security-connection {
|
||||||
|
list-style-image: url('chrome://branding/content/icon48.png') !important;
|
||||||
filter: grayscale(1);
|
filter: grayscale(1);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -78,6 +78,9 @@ var gZenUIManager = {
|
|||||||
},
|
},
|
||||||
|
|
||||||
_debloatContextMenus() {
|
_debloatContextMenus() {
|
||||||
|
if (!Services.prefs.getBoolPref('zen.view.context-menu.refresh', false)) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
const contextMenusToClean = [
|
const contextMenusToClean = [
|
||||||
// Remove the 'new tab below' context menu.
|
// Remove the 'new tab below' context menu.
|
||||||
// reason: It doesn't properly work with zen and it's philosophy of not having
|
// reason: It doesn't properly work with zen and it's philosophy of not having
|
||||||
@@ -129,7 +132,7 @@ var gZenUIManager = {
|
|||||||
},
|
},
|
||||||
|
|
||||||
updateTabsToolbar() {
|
updateTabsToolbar() {
|
||||||
const kUrlbarHeight = 336;
|
const kUrlbarHeight = 388;
|
||||||
gURLBar.textbox.style.setProperty(
|
gURLBar.textbox.style.setProperty(
|
||||||
'--zen-urlbar-top',
|
'--zen-urlbar-top',
|
||||||
`${window.innerHeight / 2 - Math.max(kUrlbarHeight, gURLBar.textbox.getBoundingClientRect().height) / 2}px`
|
`${window.innerHeight / 2 - Math.max(kUrlbarHeight, gURLBar.textbox.getBoundingClientRect().height) / 2}px`
|
||||||
|
@@ -6,7 +6,7 @@ const { AppConstants } = ChromeUtils.importESModule('resource://gre/modules/AppC
|
|||||||
|
|
||||||
class nsZenUIMigration {
|
class nsZenUIMigration {
|
||||||
PREF_NAME = 'zen.ui.migration.version';
|
PREF_NAME = 'zen.ui.migration.version';
|
||||||
MIGRATION_VERSION = 2;
|
MIGRATION_VERSION = 3;
|
||||||
|
|
||||||
init(isNewProfile) {
|
init(isNewProfile) {
|
||||||
if (!isNewProfile) {
|
if (!isNewProfile) {
|
||||||
@@ -71,6 +71,12 @@ class nsZenUIMigration {
|
|||||||
Services.prefs.setIntPref('zen.theme.gradient-legacy-version', 0);
|
Services.prefs.setIntPref('zen.theme.gradient-legacy-version', 0);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
_migrateV3() {
|
||||||
|
if (Services.prefs.getStringPref('zen.theme.accent-color', '').startsWith('system')) {
|
||||||
|
Services.prefs.setStringPref('zen.theme.accent-color', '#ffb787');
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
export var gZenUIMigration = new nsZenUIMigration();
|
export var gZenUIMigration = new nsZenUIMigration();
|
||||||
|
@@ -46,7 +46,6 @@
|
|||||||
pointer-events: none;
|
pointer-events: none;
|
||||||
|
|
||||||
isolation: isolate;
|
isolation: isolate;
|
||||||
|
|
||||||
background: var(--zen-themed-toolbar-bg-transparent);
|
background: var(--zen-themed-toolbar-bg-transparent);
|
||||||
|
|
||||||
&::after,
|
&::after,
|
||||||
@@ -100,7 +99,8 @@
|
|||||||
opacity: var(--zen-grainy-background-opacity, 0);
|
opacity: var(--zen-grainy-background-opacity, 0);
|
||||||
mix-blend-mode: overlay;
|
mix-blend-mode: overlay;
|
||||||
:root:not([swipe-gesture='true']) & {
|
:root:not([swipe-gesture='true']) & {
|
||||||
transition: opacity 0.3s ease-in-out;
|
/* note: Keep in sync with kGlobalAnimationDuration */
|
||||||
|
transition: opacity 0.2s ease-in-out;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -23,6 +23,12 @@
|
|||||||
display: none !important;
|
display: none !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@media -moz-pref('zen.theme.disable-lightweight') {
|
||||||
|
#customization-lwtheme-link {
|
||||||
|
display: none !important;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
.private-browsing-indicator-with-label {
|
.private-browsing-indicator-with-label {
|
||||||
display: none !important;
|
display: none !important;
|
||||||
}
|
}
|
||||||
@@ -231,16 +237,18 @@ body > #confetti {
|
|||||||
|
|
||||||
/* Status panel */
|
/* Status panel */
|
||||||
|
|
||||||
#statuspanel {
|
@media (-moz-pref('zen.theme.styled-status-panel')) {
|
||||||
|
#statuspanel {
|
||||||
padding: 4px 3px;
|
padding: 4px 3px;
|
||||||
|
|
||||||
& > #statuspanel-label {
|
& > #statuspanel-label {
|
||||||
border-radius: 16px !important;
|
border-radius: 16px !important;
|
||||||
border: 1px solid rgba(225, 225, 225, 0.15) !important;
|
border: 1px solid rgba(225, 225, 225, 0.15) !important;
|
||||||
padding: 5px 9px 6px 9px !important;
|
padding: 4px 8px 5px 8px !important;
|
||||||
font-weight: 600 !important;
|
font-weight: 600 !important;
|
||||||
background: color-mix(in srgb, var(--zen-primary-color), black 80%) !important;
|
background: color-mix(in srgb, var(--zen-primary-color), black 80%) !important;
|
||||||
color: #f3f3f3 !important;
|
color: #f3f3f3 !important;
|
||||||
font-size: smaller !important;
|
font-size: small !important;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -44,7 +44,7 @@
|
|||||||
var(--zen-colors-tertiary) 99%
|
var(--zen-colors-tertiary) 99%
|
||||||
);
|
);
|
||||||
|
|
||||||
--zen-dialog-background: light-dark(rgb(219, 219, 219), rgb(31, 31, 31));
|
--zen-dialog-background: light-dark(rgb(244, 244, 244), rgb(31, 31, 31));
|
||||||
--zen-urlbar-background: color-mix(in srgb, var(--zen-primary-color) 3%, #f4f4f4 97%);
|
--zen-urlbar-background: color-mix(in srgb, var(--zen-primary-color) 3%, #f4f4f4 97%);
|
||||||
|
|
||||||
--zen-secondary-btn-color: var(--zen-colors-primary-foreground);
|
--zen-secondary-btn-color: var(--zen-colors-primary-foreground);
|
||||||
|
@@ -628,7 +628,11 @@ button.popup-notification-dropmarker {
|
|||||||
}
|
}
|
||||||
|
|
||||||
&[selected] {
|
&[selected] {
|
||||||
background-color: color-mix(in srgb, var(--zen-primary-color) 50%, transparent 50%) !important;
|
background-color: color-mix(
|
||||||
|
in srgb,
|
||||||
|
var(--zen-primary-color) 50%,
|
||||||
|
light-dark(transparent, rgba(255, 255, 255, 0.3)) 50%
|
||||||
|
) !important;
|
||||||
|
|
||||||
& *,
|
& *,
|
||||||
& .urlbarView-title-separator::before {
|
& .urlbarView-title-separator::before {
|
||||||
|
@@ -39,16 +39,22 @@ var gZenCompactModeManager = {
|
|||||||
preInit() {
|
preInit() {
|
||||||
// Remove it before initializing so we can properly calculate the width
|
// Remove it before initializing so we can properly calculate the width
|
||||||
// of the sidebar at startup and avoid overflowing items not being hidden
|
// of the sidebar at startup and avoid overflowing items not being hidden
|
||||||
this._wasInCompactMode =
|
let xulStoreValue = Services.xulStore.getValue(
|
||||||
Services.xulStore.getValue(
|
|
||||||
AppConstants.BROWSER_CHROME_URL,
|
AppConstants.BROWSER_CHROME_URL,
|
||||||
'zen-main-app-wrapper',
|
'zen-main-app-wrapper',
|
||||||
'zen-compact-mode'
|
'zen-compact-mode'
|
||||||
) || Services.prefs.getBoolPref('zen.view.compact.should-enable-at-startup', false);
|
);
|
||||||
|
if (xulStoreValue === '-moz-missing\n' || !xulStoreValue) {
|
||||||
|
xulStoreValue = false;
|
||||||
|
}
|
||||||
|
this._wasInCompactMode =
|
||||||
|
xulStoreValue ||
|
||||||
|
Services.prefs.getBoolPref('zen.view.compact.should-enable-at-startup', false);
|
||||||
lazyCompactMode.mainAppWrapper.removeAttribute('zen-compact-mode');
|
lazyCompactMode.mainAppWrapper.removeAttribute('zen-compact-mode');
|
||||||
|
|
||||||
|
this._canDebugLog = Services.prefs.getBoolPref('zen.view.compact.debug', false);
|
||||||
|
|
||||||
this.addContextMenu();
|
this.addContextMenu();
|
||||||
this._resolvePreInit();
|
|
||||||
},
|
},
|
||||||
|
|
||||||
init() {
|
init() {
|
||||||
@@ -88,25 +94,30 @@ var gZenCompactModeManager = {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
this._preInitPromise.then(() => {
|
SessionStore.promiseAllWindowsRestored.then(() => {
|
||||||
this.preference = this._wasInCompactMode;
|
this.preference = this._wasInCompactMode;
|
||||||
delete this._resolvePreInit;
|
|
||||||
delete this._preInitPromise;
|
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
|
|
||||||
|
log(...args) {
|
||||||
|
if (this._canDebugLog) {
|
||||||
|
console.log('[Zen Compact Mode]', ...args);
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
get preference() {
|
get preference() {
|
||||||
return lazyCompactMode.mainAppWrapper.getAttribute('zen-compact-mode') === 'true';
|
return document.documentElement.getAttribute('zen-compact-mode') === 'true';
|
||||||
},
|
},
|
||||||
|
|
||||||
get shouldBeCompact() {
|
get shouldBeCompact() {
|
||||||
return !document.documentElement.getAttribute('chromehidden').includes('toolbar');
|
return !document.documentElement.getAttribute('chromehidden')?.includes('toolbar');
|
||||||
},
|
},
|
||||||
|
|
||||||
set preference(value) {
|
set preference(value) {
|
||||||
if (!this.shouldBeCompact) {
|
if (!this.shouldBeCompact) {
|
||||||
value = false;
|
value = false;
|
||||||
}
|
}
|
||||||
|
this.log('Setting compact mode preference to', value);
|
||||||
if (
|
if (
|
||||||
this.preference === value ||
|
this.preference === value ||
|
||||||
document.documentElement.hasAttribute('zen-compact-animating')
|
document.documentElement.hasAttribute('zen-compact-animating')
|
||||||
@@ -225,6 +236,7 @@ var gZenCompactModeManager = {
|
|||||||
},
|
},
|
||||||
|
|
||||||
async _updateEvent() {
|
async _updateEvent() {
|
||||||
|
const isUrlbarFocused = gURLBar.focused;
|
||||||
// IF we are animating IN, call the callbacks first so we can calculate the width
|
// IF we are animating IN, call the callbacks first so we can calculate the width
|
||||||
// once the window buttons are shown
|
// once the window buttons are shown
|
||||||
this.updateContextMenu();
|
this.updateContextMenu();
|
||||||
@@ -241,6 +253,9 @@ var gZenCompactModeManager = {
|
|||||||
this._evenListeners.forEach((callback) => callback());
|
this._evenListeners.forEach((callback) => callback());
|
||||||
}
|
}
|
||||||
gZenUIManager.updateTabsToolbar();
|
gZenUIManager.updateTabsToolbar();
|
||||||
|
if (isUrlbarFocused) {
|
||||||
|
gURLBar.focus();
|
||||||
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
// NOTE: Dont actually use event, it's just so we make sure
|
// NOTE: Dont actually use event, it's just so we make sure
|
||||||
@@ -585,7 +600,6 @@ var gZenCompactModeManager = {
|
|||||||
gZenVerticalTabsManager._hasSetSingleToolbar) ||
|
gZenVerticalTabsManager._hasSetSingleToolbar) ||
|
||||||
this._hasHoveredUrlbar
|
this._hasHoveredUrlbar
|
||||||
) {
|
) {
|
||||||
delete this._hasHoveredUrlbar;
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -642,6 +656,16 @@ var gZenCompactModeManager = {
|
|||||||
}
|
}
|
||||||
}, this.HOVER_HACK_DELAY);
|
}, this.HOVER_HACK_DELAY);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
gURLBar.textbox.addEventListener('mouseleave', () => {
|
||||||
|
setTimeout(() => {
|
||||||
|
setTimeout(() => {
|
||||||
|
requestAnimationFrame(() => {
|
||||||
|
delete this._hasHoveredUrlbar;
|
||||||
|
});
|
||||||
|
}, 0);
|
||||||
|
}, 0);
|
||||||
|
});
|
||||||
},
|
},
|
||||||
|
|
||||||
_getCrossedEdge(posX, posY, element = document.documentElement, maxDistance = 10) {
|
_getCrossedEdge(posX, posY, element = document.documentElement, maxDistance = 10) {
|
||||||
@@ -708,10 +732,6 @@ var gZenCompactModeManager = {
|
|||||||
},
|
},
|
||||||
};
|
};
|
||||||
|
|
||||||
gZenCompactModeManager._preInitPromise = new Promise((resolve) => {
|
|
||||||
gZenCompactModeManager._resolvePreInit = resolve;
|
|
||||||
});
|
|
||||||
|
|
||||||
document.addEventListener(
|
document.addEventListener(
|
||||||
'MozBeforeInitialXULLayout',
|
'MozBeforeInitialXULLayout',
|
||||||
() => {
|
() => {
|
||||||
|
@@ -148,7 +148,7 @@
|
|||||||
right: 0;
|
right: 0;
|
||||||
bottom: 0;
|
bottom: 0;
|
||||||
background: var(--zen-dialog-background);
|
background: var(--zen-dialog-background);
|
||||||
outline: 1px solid var(--zen-colors-border-contrast);
|
outline: 1px solid var(--zen-colors-border);
|
||||||
outline-offset: -1px;
|
outline-offset: -1px;
|
||||||
box-shadow: var(--zen-big-shadow);
|
box-shadow: var(--zen-big-shadow);
|
||||||
pointer-events: none;
|
pointer-events: none;
|
||||||
|
@@ -269,21 +269,12 @@
|
|||||||
if (Services.prefs.getBoolPref('zen.folders.owned-tabs-in-folder')) {
|
if (Services.prefs.getBoolPref('zen.folders.owned-tabs-in-folder')) {
|
||||||
gBrowser.pinTab(tab);
|
gBrowser.pinTab(tab);
|
||||||
group.addTabs([tab]);
|
group.addTabs([tab]);
|
||||||
} else {
|
|
||||||
tab._ignoreUngrouped = true;
|
|
||||||
// Otherwise, we must move it to the first tab since it was added in an unpinned state
|
|
||||||
gZenWorkspaces._emptyTab.after(tab);
|
|
||||||
gBrowser.tabContainer._invalidateCachedTabs();
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
on_TabUngrouped(event) {
|
on_TabUngrouped(event) {
|
||||||
const tab = event.detail;
|
const tab = event.detail;
|
||||||
const group = event.target;
|
const group = event.target;
|
||||||
if (tab._ignoreUngrouped) {
|
|
||||||
delete tab._ignoreUngrouped;
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
tab.removeAttribute('folder-active');
|
tab.removeAttribute('folder-active');
|
||||||
if (group.hasAttribute('split-view-group') && tab.hasAttribute('had-zen-pinned-changed')) {
|
if (group.hasAttribute('split-view-group') && tab.hasAttribute('had-zen-pinned-changed')) {
|
||||||
tab.setAttribute('zen-pinned-changed', true);
|
tab.setAttribute('zen-pinned-changed', true);
|
||||||
@@ -337,8 +328,10 @@
|
|||||||
clearTimeout(this.#mouseTimer);
|
clearTimeout(this.#mouseTimer);
|
||||||
this.#mouseTimer = null;
|
this.#mouseTimer = null;
|
||||||
}
|
}
|
||||||
|
if (this.#popup) {
|
||||||
this.#popup.hidePopup();
|
this.#popup.hidePopup();
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
async on_TabGroupCollapse(event) {
|
async on_TabGroupCollapse(event) {
|
||||||
const group = event.target;
|
const group = event.target;
|
||||||
@@ -817,8 +810,10 @@
|
|||||||
pinned: true,
|
pinned: true,
|
||||||
triggeringPrincipal: Services.scriptSecurityManager.getSystemPrincipal(),
|
triggeringPrincipal: Services.scriptSecurityManager.getSystemPrincipal(),
|
||||||
_forZenEmptyTab: true,
|
_forZenEmptyTab: true,
|
||||||
|
createLazyBrowser: true,
|
||||||
});
|
});
|
||||||
|
|
||||||
|
gBrowser.pinTab(emptyTab);
|
||||||
tabs = [emptyTab, ...filteredTabs];
|
tabs = [emptyTab, ...filteredTabs];
|
||||||
|
|
||||||
const folder = this._createFolderNode(options);
|
const folder = this._createFolderNode(options);
|
||||||
@@ -1059,7 +1054,7 @@
|
|||||||
// We don't need to do anything if the URL is invalid. e.g. about:blank
|
// We don't need to do anything if the URL is invalid. e.g. about:blank
|
||||||
}
|
}
|
||||||
let tabLabel = tab.label || '';
|
let tabLabel = tab.label || '';
|
||||||
let iconURL = gBrowser.getIcon(tab) || PlacesUtils.favicons.defaultFavicon;
|
let iconURL = gBrowser.getIcon(tab) || PlacesUtils.favicons.defaultFavicon.spec;
|
||||||
|
|
||||||
icon.src = iconURL;
|
icon.src = iconURL;
|
||||||
|
|
||||||
|
@@ -392,6 +392,9 @@ zen-folder {
|
|||||||
background-color: transparent;
|
background-color: transparent;
|
||||||
border: none !important;
|
border: none !important;
|
||||||
outline: none !important;
|
outline: none !important;
|
||||||
|
flex: 1;
|
||||||
|
text-overflow: ellipsis;
|
||||||
|
white-space: nowrap;
|
||||||
}
|
}
|
||||||
|
|
||||||
#zen-folder-tabs-list {
|
#zen-folder-tabs-list {
|
||||||
@@ -415,6 +418,8 @@ zen-folder {
|
|||||||
flex-shrink: 0;
|
flex-shrink: 0;
|
||||||
margin-inline-end: 10px;
|
margin-inline-end: 10px;
|
||||||
margin-inline-start: 4px;
|
margin-inline-start: 4px;
|
||||||
|
fill: currentColor;
|
||||||
|
-moz-context-properties: fill;
|
||||||
}
|
}
|
||||||
|
|
||||||
.folders-tabs-list-item-labels {
|
.folders-tabs-list-item-labels {
|
||||||
|
Before Width: | Height: | Size: 4.3 KiB |
10
src/zen/images/favicons/calendar.svg
Normal file
@@ -0,0 +1,10 @@
|
|||||||
|
<svg width="32" height="32" viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<path d="M24.4212 7.5791H7.5791V24.4212H24.4212V7.5791Z" fill="white"/>
|
||||||
|
<path d="M24.4212 31.9999L32.0001 24.421L28.2106 23.7744L24.4212 24.421L23.7295 27.8872L24.4212 31.9999Z" fill="#EA4335"/>
|
||||||
|
<path d="M0 24.421V29.4736C0 30.8694 1.13053 31.9999 2.52632 31.9999H7.57895L8.35711 28.2104L7.57895 24.421L3.4499 23.7744L0 24.421Z" fill="#188038"/>
|
||||||
|
<path d="M32.0001 7.57895V2.52632C32.0001 1.13053 30.8696 0 29.4738 0H24.4212C23.96 1.87948 23.7295 3.26264 23.7295 4.14947C23.7295 5.03629 23.96 6.17945 24.4212 7.57895C26.0973 8.05894 27.3605 8.29893 28.2106 8.29893C29.0607 8.29893 30.3239 8.05894 32.0001 7.57895Z" fill="#1967D2"/>
|
||||||
|
<path d="M31.9998 7.5791H24.4209V24.4212H31.9998V7.5791Z" fill="#FBBC04"/>
|
||||||
|
<path d="M24.4212 24.4209H7.5791V31.9998H24.4212V24.4209Z" fill="#34A853"/>
|
||||||
|
<path d="M24.4211 0H2.52632C1.13053 0 0 1.13053 0 2.52632V24.4211H7.57895V7.57895H24.4211V0Z" fill="#4285F4"/>
|
||||||
|
<path d="M11.0336 20.6444C10.4042 20.2191 9.96836 19.5981 9.73047 18.777L11.1915 18.1749C11.3242 18.6802 11.5557 19.0717 11.8863 19.3496C12.2147 19.6275 12.6147 19.7644 13.082 19.7644C13.5599 19.7644 13.9705 19.6191 14.3136 19.3286C14.6568 19.0381 14.8294 18.6675 14.8294 18.2191C14.8294 17.7602 14.6484 17.3854 14.2863 17.0949C13.9242 16.8044 13.4694 16.6591 12.9263 16.6591H12.082V15.2128H12.8399C13.3073 15.2128 13.701 15.0865 14.021 14.8338C14.341 14.5812 14.501 14.2359 14.501 13.7959C14.501 13.4044 14.3578 13.0928 14.0715 12.8591C13.7852 12.6254 13.4231 12.5075 12.9831 12.5075C12.5536 12.5075 12.2126 12.6212 11.9599 12.8507C11.7075 13.0808 11.5177 13.3713 11.4084 13.6949L9.96205 13.0928C10.1536 12.5496 10.5052 12.0696 11.021 11.6549C11.5368 11.2402 12.1957 11.0317 12.9957 11.0317C13.5873 11.0317 14.1199 11.1454 14.5915 11.3749C15.0631 11.6044 15.4336 11.9223 15.701 12.3265C15.9684 12.7328 16.101 13.1875 16.101 13.6928C16.101 14.2086 15.9768 14.6444 15.7284 15.0023C15.4799 15.3602 15.1747 15.6338 14.8126 15.8254V15.9117C15.2801 16.1045 15.6863 16.4211 15.9873 16.8275C16.2926 17.2381 16.4463 17.7286 16.4463 18.3012C16.4463 18.8738 16.301 19.3854 16.0105 19.8338C15.7199 20.2823 15.3178 20.6359 14.8084 20.8928C14.2968 21.1496 13.722 21.2802 13.0842 21.2802C12.3452 21.2823 11.6631 21.0696 11.0336 20.6444ZM20.0084 13.3938L18.4042 14.5538L17.602 13.337L20.4799 11.2612H21.5831V21.0528H20.0084V13.3938Z" fill="#4285F4"/>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 2.4 KiB |
Before Width: | Height: | Size: 3.7 KiB |
4
src/zen/images/favicons/discord.svg
Normal file
@@ -0,0 +1,4 @@
|
|||||||
|
<svg width="32" height="32" viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<path d="M32 16C32 24.8366 24.8366 32 16 32C7.16344 32 0 24.8366 0 16C0 7.16344 7.16344 0 16 0C24.8366 0 32 7.16344 32 16Z" fill="#5765F2"/>
|
||||||
|
<path d="M18.5844 9C18.4039 9.32044 18.2418 9.65193 18.0945 9.99079C16.6949 9.78085 15.2695 9.78085 13.8661 9.99079C13.7225 9.65193 13.5567 9.32044 13.3763 9C12.0614 9.22469 10.7796 9.61879 9.56412 10.1749C7.15527 13.744 6.50334 17.221 6.82747 20.6501C8.23814 21.6924 9.81826 22.488 11.5015 22.9963C11.8809 22.488 12.2161 21.9466 12.5033 21.3831C11.9582 21.1805 11.4315 20.9263 10.9269 20.6317C11.0595 20.5359 11.1884 20.4365 11.3137 20.3407C14.2713 21.733 17.6967 21.733 20.658 20.3407C20.7833 20.4438 20.9122 20.5433 21.0448 20.6317C20.5402 20.93 20.0135 21.1805 19.4647 21.3867C19.752 21.9503 20.0871 22.4917 20.4665 23C22.1497 22.4917 23.7298 21.6998 25.1406 20.6575C25.5236 16.6796 24.4849 13.232 22.3965 10.1786C21.1847 9.62247 19.903 9.22836 18.5881 9.00736L18.5844 9ZM12.9159 18.5396C12.0061 18.5396 11.251 17.7145 11.251 16.6943C11.251 15.674 11.9766 14.8453 12.9122 14.8453C13.8477 14.8453 14.5917 15.6777 14.577 16.6943C14.5623 17.7109 13.844 18.5396 12.9159 18.5396ZM19.0522 18.5396C18.1387 18.5396 17.391 17.7145 17.391 16.6943C17.391 15.674 18.1166 14.8453 19.0522 14.8453C19.9877 14.8453 20.728 15.6777 20.7133 16.6943C20.6986 17.7109 19.9803 18.5396 19.0522 18.5396Z" fill="white"/>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 1.4 KiB |
Before Width: | Height: | Size: 34 KiB |
7
src/zen/images/favicons/figma.svg
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
<svg width="32" height="32" viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<path d="M10.5 32.0002C13.536 32.0002 16 29.6108 16 26.6668V21.3335H10.5C7.464 21.3335 5 23.7228 5 26.6668C5 29.6108 7.464 32.0002 10.5 32.0002Z" fill="#0ACF83"/>
|
||||||
|
<path d="M5 15.9998C5 13.0558 7.464 10.6665 10.5 10.6665H16V21.3332H10.5C7.464 21.3332 5 18.9438 5 15.9998Z" fill="#A259FF"/>
|
||||||
|
<path d="M5 5.33333C5 2.38933 7.464 0 10.5 0H16V10.6667H10.5C7.464 10.6667 5 8.27733 5 5.33333Z" fill="#F24E1E"/>
|
||||||
|
<path d="M16 0H21.5C24.536 0 27 2.38933 27 5.33333C27 8.27733 24.536 10.6667 21.5 10.6667H16V0Z" fill="#FF7262"/>
|
||||||
|
<path d="M27 15.9998C27 18.9438 24.536 21.3332 21.5 21.3332C18.464 21.3332 16 18.9438 16 15.9998C16 13.0558 18.464 10.6665 21.5 10.6665C24.536 10.6665 27 13.0558 27 15.9998Z" fill="#1ABCFE"/>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 811 B |
Before Width: | Height: | Size: 41 KiB |
1
src/zen/images/favicons/github.svg
Normal file
@@ -0,0 +1 @@
|
|||||||
|
<svg xmlns="http://www.w3.org/2000/svg" width="32" height="32" viewBox="0 0 24 24"><style>path { fill: black; } @media (prefers-color-scheme: dark) { path { fill: white; }}</style><path d="M12 .297c-6.63 0-12 5.373-12 12c0 5.303 3.438 9.8 8.205 11.385c.6.113.82-.258.82-.577c0-.285-.01-1.04-.015-2.04c-3.338.724-4.042-1.61-4.042-1.61C4.422 18.07 3.633 17.7 3.633 17.7c-1.087-.744.084-.729.084-.729c1.205.084 1.838 1.236 1.838 1.236c1.07 1.835 2.809 1.305 3.495.998c.108-.776.417-1.305.76-1.605c-2.665-.3-5.466-1.332-5.466-5.93c0-1.31.465-2.38 1.235-3.22c-.135-.303-.54-1.523.105-3.176c0 0 1.005-.322 3.3 1.23c.96-.267 1.98-.399 3-.405c1.02.006 2.04.138 3 .405c2.28-1.552 3.285-1.23 3.285-1.23c.645 1.653.24 2.873.12 3.176c.765.84 1.23 1.91 1.23 3.22c0 4.61-2.805 5.625-5.475 5.92c.42.36.81 1.096.81 2.22c0 1.606-.015 2.896-.015 3.286c0 .315.21.69.825.57C20.565 22.092 24 17.592 24 12.297c0-6.627-5.373-12-12-12"/></svg>
|
After Width: | Height: | Size: 919 B |
Before Width: | Height: | Size: 31 KiB |
4
src/zen/images/favicons/notion.svg
Normal file
@@ -0,0 +1,4 @@
|
|||||||
|
<svg width="32" height="32" viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<path d="M19.9092 0.570312C20.9252 0.483425 21.6372 0.459533 22.2676 0.602539C22.9145 0.749343 23.4327 1.06038 24.0859 1.53418L29.3965 5.26758L29.4043 5.27246C29.8125 5.57126 30.1701 5.81942 30.4004 6.08594C30.6783 6.40761 30.7783 6.75136 30.7783 7.19238V27.665C30.7783 28.3532 30.6552 29.0129 30.2148 29.5127C29.7704 30.0169 29.0911 30.2598 28.2109 30.3223H28.2061L8.88672 31.4893H8.88086C8.2502 31.519 7.71523 31.495 7.23926 31.3213C6.74601 31.1412 6.36848 30.821 6.00977 30.3652L6.00684 30.3613L2.09668 25.2871L2.09375 25.2832C1.35529 24.3021 1.00001 23.4985 1 22.5322V4.33398C1.00003 3.74262 1.13121 3.13817 1.50781 2.65625C1.8945 2.16152 2.4867 1.86338 3.2666 1.7959H3.27344L19.9092 0.569336V0.570312Z" fill="white" stroke="white"/>
|
||||||
|
<path fill-rule="evenodd" clip-rule="evenodd" d="M19.947 1.0682L3.308 2.2942C1.968 2.4102 1.5 3.2852 1.5 4.3342V22.5322C1.5 23.3492 1.791 24.0482 2.492 24.9822L6.403 30.0562C7.046 30.8732 7.629 31.0482 8.856 30.9902L28.177 29.8232C29.811 29.7072 30.279 28.9482 30.279 27.6652V7.1922C30.279 6.5292 30.016 6.3382 29.242 5.7722L29.11 5.6762L23.8 1.9432C22.515 1.0112 21.99 0.893201 19.946 1.0682H19.947ZM9.293 6.8572C7.716 6.9632 7.357 6.9872 6.462 6.2602L4.185 4.4522C3.952 4.2182 4.069 3.9262 4.652 3.8682L20.647 2.7022C21.989 2.5852 22.69 3.0522 23.215 3.4602L25.959 5.4432C26.076 5.5022 26.367 5.8512 26.017 5.8512L9.497 6.8432L9.293 6.8572ZM7.454 27.4902V10.1102C7.454 9.3512 7.688 9.0012 8.388 8.9422L27.359 7.8342C28.002 7.7762 28.294 8.1842 28.294 8.9422V26.2062C28.294 26.9652 28.177 27.6072 27.126 27.6652L8.972 28.7152C7.922 28.7732 7.454 28.4242 7.454 27.4902ZM25.376 11.0422C25.492 11.5672 25.376 12.0922 24.849 12.1522L23.975 12.3252V25.1572C23.215 25.5652 22.515 25.7982 21.931 25.7982C20.997 25.7982 20.763 25.5062 20.063 24.6322L14.342 15.6502V24.3402L16.152 24.7492C16.152 24.7492 16.152 25.7992 14.692 25.7992L10.665 26.0322C10.548 25.7982 10.665 25.2152 11.073 25.0992L12.124 24.8082V13.3182L10.665 13.2002C10.548 12.6752 10.839 11.9172 11.657 11.8592L15.977 11.5672L21.931 20.6672V12.6172L20.413 12.4432C20.297 11.8002 20.763 11.3342 21.347 11.2762L25.376 11.0422Z" fill="black"/>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 2.2 KiB |
Before Width: | Height: | Size: 31 KiB |
5
src/zen/images/favicons/obsidian.svg
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
<svg width="32" height="32" viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<path d="M11.8525 18.68C12.6687 18.4375 13.9937 18.0675 15.51 17.9663C14.7007 16.039 14.3729 13.9436 14.555 11.8613C14.7587 9.79752 15.4975 8.06377 16.2112 6.59877L16.645 5.70627L17.205 4.55877C17.4987 3.93377 17.715 3.38627 17.8175 2.86377C17.9187 2.35502 17.9187 1.90877 17.7925 1.47502C17.6637 1.04127 17.4087 0.582519 16.8987 0.073769C16.5564 -0.0184991 16.1963 -0.0237195 15.8514 0.0585822C15.5065 0.140884 15.1876 0.308097 14.9237 0.545019L8.3225 6.48252C7.95209 6.81468 7.70898 7.26552 7.635 7.75752L7.0725 11.53C9.20091 13.5086 10.8377 15.957 11.8525 18.68ZM6.80625 13.25L6.67875 13.6325L3.18625 21.4075C3.01261 21.7987 2.95877 22.2327 3.03152 22.6545C3.10427 23.0763 3.30034 23.4671 3.595 23.7775L9.0875 29.4225C10.2319 27.8406 10.9382 25.9845 11.1351 24.042C11.332 22.0995 11.0124 20.1394 10.2087 18.36C9.38578 16.4688 8.23375 14.7387 6.80625 13.25Z" fill="#A88BFA"/>
|
||||||
|
<path d="M10.3624 30.0988L10.6549 30.1238C11.6874 30.1488 13.4461 30.2513 14.8599 30.5063C16.0199 30.7226 18.3261 31.3601 20.2124 31.9076C21.6524 32.3413 23.1436 31.1826 23.3474 29.6913C23.5011 28.6076 23.7936 27.3838 24.3161 26.2501C23.6993 24.2904 22.5837 22.5248 21.0786 21.1263C20.0366 20.2208 18.752 19.6406 17.3836 19.4576C15.6525 19.2856 13.9047 19.4898 12.2599 20.0563C12.676 21.7697 12.7207 23.5523 12.391 25.2844C12.0614 27.0165 11.365 28.6581 10.3486 30.0988H10.3611H10.3624Z" fill="#A88BFA"/>
|
||||||
|
<path d="M25.2336 24.7201C26.1003 23.4305 26.9249 22.1131 27.7061 20.7701C27.8101 20.5866 27.8583 20.3767 27.8448 20.1662C27.8312 19.9557 27.7565 19.7538 27.6299 19.5851C26.5538 18.1973 25.6388 16.6918 24.9024 15.0976C24.1636 13.3276 24.0611 10.5876 24.0486 9.26135C24.0486 8.7526 23.8961 8.2551 23.5774 7.8601L19.3074 2.44385C19.3074 2.68635 19.2574 2.9276 19.2061 3.1701C19.0424 3.85694 18.803 4.52351 18.4924 5.1576L17.9049 6.3826L17.4849 7.2226C16.7003 8.71209 16.1909 10.3309 15.9811 12.0013C15.8094 14.0586 16.1832 16.1247 17.0649 17.9913C18.893 18.1276 20.6278 18.8521 22.0099 20.0563C23.43 21.3416 24.5337 22.9377 25.2349 24.7201H25.2336Z" fill="#A88BFA"/>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 2.1 KiB |
Before Width: | Height: | Size: 2.2 KiB |
112
src/zen/images/favicons/reddit.svg
Normal file
@@ -0,0 +1,112 @@
|
|||||||
|
<svg width="32" height="32" viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<g clip-path="url(#clip0_187_41)">
|
||||||
|
<path d="M16 0C7.16296 0 0 7.16296 0 16C0 20.4178 1.79111 24.4178 4.68593 27.3141L1.63852 30.3615C1.03407 30.9659 1.46222 32 2.31704 32H16C24.837 32 32 24.837 32 16C32 7.16296 24.837 0 16 0Z" fill="#FF4500"/>
|
||||||
|
<g clip-path="url(#clip1_187_41)">
|
||||||
|
<path d="M24.7645 19.5839C26.828 19.5839 28.5007 17.9111 28.5007 15.8476C28.5007 13.7841 26.828 12.1113 24.7645 12.1113C22.7011 12.1113 21.0283 13.7841 21.0283 15.8476C21.0283 17.9111 22.7011 19.5839 24.7645 19.5839Z" fill="url(#paint0_radial_187_41)"/>
|
||||||
|
<path d="M6.62488 19.5839C8.68833 19.5839 10.3611 17.9111 10.3611 15.8476C10.3611 13.7841 8.68833 12.1113 6.62488 12.1113C4.56143 12.1113 2.88867 13.7841 2.88867 15.8476C2.88867 17.9111 4.56143 19.5839 6.62488 19.5839Z" fill="url(#paint1_radial_187_41)"/>
|
||||||
|
<path d="M15.704 27.0576C21.5949 27.0576 26.3704 23.4759 26.3704 19.0576C26.3704 14.6393 21.5949 11.0576 15.704 11.0576C9.81312 11.0576 5.0376 14.6393 5.0376 19.0576C5.0376 23.4759 9.81312 27.0576 15.704 27.0576Z" fill="url(#paint2_radial_187_41)"/>
|
||||||
|
<path d="M12.5499 18.2797C12.4877 19.635 11.5881 20.1268 10.5404 20.1268C9.49276 20.1268 8.69456 19.4329 8.75737 18.0776C8.81959 16.7224 9.71913 15.8252 10.7668 15.8252C11.8145 15.8252 12.6127 16.9239 12.5499 18.2797Z" fill="#842123"/>
|
||||||
|
<path d="M22.6499 18.0776C22.7121 19.4329 21.9139 20.1268 20.8668 20.1268C19.8198 20.1268 18.9202 19.635 18.8574 18.2797C18.7952 16.9245 19.5934 15.8252 20.6405 15.8252C21.6876 15.8252 22.5871 16.7218 22.6499 18.0776Z" fill="#842123"/>
|
||||||
|
<path d="M12.5507 18.3984C12.4921 19.6671 11.6506 20.127 10.6705 20.127C9.69034 20.127 8.9431 19.4378 9.00177 18.1697C9.06043 16.9009 9.90189 16.0713 10.882 16.0713C11.8621 16.0713 12.6094 17.1297 12.5507 18.3984Z" fill="url(#paint3_radial_187_41)"/>
|
||||||
|
<path d="M18.8567 18.3984C18.9154 19.6671 19.7569 20.127 20.737 20.127C21.7171 20.127 22.4644 19.4378 22.4057 18.1697C22.347 16.9009 21.5056 16.0713 20.5254 16.0713C19.5453 16.0713 18.7981 17.1297 18.8567 18.3984Z" fill="url(#paint4_radial_187_41)"/>
|
||||||
|
<path d="M11.4924 17.6926C11.7215 17.6926 11.9072 17.4899 11.9072 17.2399C11.9072 16.9898 11.7215 16.7871 11.4924 16.7871C11.2634 16.7871 11.0776 16.9898 11.0776 17.2399C11.0776 17.4899 11.2634 17.6926 11.4924 17.6926Z" fill="#FFC49C"/>
|
||||||
|
<path d="M21.3557 17.6926C21.5848 17.6926 21.7705 17.4899 21.7705 17.2399C21.7705 16.9898 21.5848 16.7871 21.3557 16.7871C21.1266 16.7871 20.9409 16.9898 20.9409 17.2399C20.9409 17.4899 21.1266 17.6926 21.3557 17.6926Z" fill="#FFC49C"/>
|
||||||
|
<path d="M15.7038 21.0312C14.3812 21.0312 13.1136 21.0953 11.9415 21.2114C11.7412 21.2315 11.6144 21.4354 11.692 21.6179C12.3486 23.1569 13.8976 24.2378 15.7038 24.2378C17.51 24.2378 19.059 23.1569 19.7156 21.6179C19.7932 21.4354 19.6664 21.2315 19.4661 21.2114C18.294 21.0947 17.0264 21.0312 15.7038 21.0312Z" fill="#BBCFDA"/>
|
||||||
|
<path d="M15.7036 21.3252C14.3851 21.3252 13.1217 21.3898 11.9531 21.5083C11.7534 21.5285 11.6266 21.7359 11.7043 21.9213C12.3591 23.4846 13.9027 24.5827 15.7036 24.5827C17.5044 24.5827 19.0481 23.4846 19.7029 21.9213C19.7805 21.7365 19.6537 21.529 19.454 21.5083C18.2854 21.3898 17.0221 21.3252 15.7036 21.3252Z" fill="white"/>
|
||||||
|
<path d="M15.7039 21.1719C14.4062 21.1719 13.1624 21.2359 12.0122 21.352C11.8154 21.3722 11.691 21.576 11.7674 21.7585C12.4116 23.2975 13.9315 24.3784 15.7045 24.3784C17.4775 24.3784 18.9969 23.2975 19.6416 21.7585C19.7181 21.576 19.5936 21.3722 19.3969 21.352C18.2467 21.2353 17.0029 21.1719 15.7045 21.1719H15.7039Z" fill="url(#paint5_radial_187_41)"/>
|
||||||
|
<path d="M21.5456 9.96972C23.0078 9.96972 24.1932 8.78431 24.1932 7.32202C24.1932 5.85973 23.0078 4.67432 21.5456 4.67432C20.0833 4.67432 18.8979 5.85973 18.8979 7.32202C18.8979 8.78431 20.0833 9.96972 21.5456 9.96972Z" fill="url(#paint6_radial_187_41)"/>
|
||||||
|
<path d="M15.666 11.3947C15.349 11.3947 15.0918 11.2619 15.0918 11.0575C15.0918 8.68534 17.0212 6.75586 19.3933 6.75586C19.7104 6.75586 19.9675 7.01304 19.9675 7.33008C19.9675 7.64712 19.7104 7.9043 19.3933 7.9043C17.6547 7.9043 16.2396 9.31882 16.2396 11.0581C16.2396 11.2625 15.9824 11.3953 15.6654 11.3953L15.666 11.3947Z" fill="url(#paint7_radial_187_41)"/>
|
||||||
|
<path d="M11.8536 19.0256C11.8536 19.5163 11.3315 19.7367 10.6868 19.7367C10.0421 19.7367 9.52002 19.5163 9.52002 19.0256C9.52002 18.5349 10.0421 18.1367 10.6868 18.1367C11.3315 18.1367 11.8536 18.5349 11.8536 19.0256Z" fill="#FF6101"/>
|
||||||
|
<path d="M21.8868 19.0256C21.8868 19.5163 21.3647 19.7367 20.72 19.7367C20.0753 19.7367 19.5532 19.5163 19.5532 19.0256C19.5532 18.5349 20.0753 18.1367 20.72 18.1367C21.3647 18.1367 21.8868 18.5349 21.8868 19.0256Z" fill="#FF6101"/>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
<defs>
|
||||||
|
<radialGradient id="paint0_radial_187_41" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="translate(24.8433 13.6232) scale(7.55242 6.57076)">
|
||||||
|
<stop stop-color="#FEFFFF"/>
|
||||||
|
<stop offset="0.4" stop-color="#FEFFFF"/>
|
||||||
|
<stop offset="0.51" stop-color="#F9FCFC"/>
|
||||||
|
<stop offset="0.62" stop-color="#EDF3F5"/>
|
||||||
|
<stop offset="0.7" stop-color="#DEE9EC"/>
|
||||||
|
<stop offset="0.72" stop-color="#D8E4E8"/>
|
||||||
|
<stop offset="0.76" stop-color="#CCD8DF"/>
|
||||||
|
<stop offset="0.8" stop-color="#C8D5DD"/>
|
||||||
|
<stop offset="0.83" stop-color="#CCD6DE"/>
|
||||||
|
<stop offset="0.85" stop-color="#D8DBE2"/>
|
||||||
|
<stop offset="0.88" stop-color="#EDE3E9"/>
|
||||||
|
<stop offset="0.9" stop-color="#FFEBEF"/>
|
||||||
|
</radialGradient>
|
||||||
|
<radialGradient id="paint1_radial_187_41" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="translate(6.70369 5.8337) scale(7.55242 6.57076)">
|
||||||
|
<stop stop-color="#FEFFFF"/>
|
||||||
|
<stop offset="0.4" stop-color="#FEFFFF"/>
|
||||||
|
<stop offset="0.51" stop-color="#F9FCFC"/>
|
||||||
|
<stop offset="0.62" stop-color="#EDF3F5"/>
|
||||||
|
<stop offset="0.7" stop-color="#DEE9EC"/>
|
||||||
|
<stop offset="0.72" stop-color="#D8E4E8"/>
|
||||||
|
<stop offset="0.76" stop-color="#CCD8DF"/>
|
||||||
|
<stop offset="0.8" stop-color="#C8D5DD"/>
|
||||||
|
<stop offset="0.83" stop-color="#CCD6DE"/>
|
||||||
|
<stop offset="0.85" stop-color="#D8DBE2"/>
|
||||||
|
<stop offset="0.88" stop-color="#EDE3E9"/>
|
||||||
|
<stop offset="0.9" stop-color="#FFEBEF"/>
|
||||||
|
</radialGradient>
|
||||||
|
<radialGradient id="paint2_radial_187_41" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="translate(15.9339 12.6686) scale(22.7811 15.9471)">
|
||||||
|
<stop stop-color="#FEFFFF"/>
|
||||||
|
<stop offset="0.4" stop-color="#FEFFFF"/>
|
||||||
|
<stop offset="0.51" stop-color="#F9FCFC"/>
|
||||||
|
<stop offset="0.62" stop-color="#EDF3F5"/>
|
||||||
|
<stop offset="0.7" stop-color="#DEE9EC"/>
|
||||||
|
<stop offset="0.72" stop-color="#D8E4E8"/>
|
||||||
|
<stop offset="0.76" stop-color="#CCD8DF"/>
|
||||||
|
<stop offset="0.8" stop-color="#C8D5DD"/>
|
||||||
|
<stop offset="0.83" stop-color="#CCD6DE"/>
|
||||||
|
<stop offset="0.85" stop-color="#D8DBE2"/>
|
||||||
|
<stop offset="0.88" stop-color="#EDE3E9"/>
|
||||||
|
<stop offset="0.9" stop-color="#FFEBEF"/>
|
||||||
|
</radialGradient>
|
||||||
|
<radialGradient id="paint3_radial_187_41" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="translate(10.8708 18.9596) scale(1.90336 2.77898)">
|
||||||
|
<stop stop-color="#FF6600"/>
|
||||||
|
<stop offset="0.5" stop-color="#FF4500"/>
|
||||||
|
<stop offset="0.7" stop-color="#FC4301"/>
|
||||||
|
<stop offset="0.82" stop-color="#F43F07"/>
|
||||||
|
<stop offset="0.92" stop-color="#E53812"/>
|
||||||
|
<stop offset="1" stop-color="#D4301F"/>
|
||||||
|
</radialGradient>
|
||||||
|
<radialGradient id="paint4_radial_187_41" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="translate(20.5367 18.9596) rotate(180) scale(1.90336 2.77898)">
|
||||||
|
<stop stop-color="#FF6600"/>
|
||||||
|
<stop offset="0.5" stop-color="#FF4500"/>
|
||||||
|
<stop offset="0.7" stop-color="#FC4301"/>
|
||||||
|
<stop offset="0.82" stop-color="#F43F07"/>
|
||||||
|
<stop offset="0.92" stop-color="#E53812"/>
|
||||||
|
<stop offset="1" stop-color="#D4301F"/>
|
||||||
|
</radialGradient>
|
||||||
|
<radialGradient id="paint5_radial_187_41" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="translate(15.6844 24.8112) scale(6.71155 4.42973)">
|
||||||
|
<stop stop-color="#172E35"/>
|
||||||
|
<stop offset="0.29" stop-color="#0E1C21"/>
|
||||||
|
<stop offset="0.73" stop-color="#030708"/>
|
||||||
|
<stop offset="1"/>
|
||||||
|
</radialGradient>
|
||||||
|
<radialGradient id="paint6_radial_187_41" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="translate(21.6031 4.87939) scale(5.89142 5.77372)">
|
||||||
|
<stop stop-color="#FEFFFF"/>
|
||||||
|
<stop offset="0.4" stop-color="#FEFFFF"/>
|
||||||
|
<stop offset="0.51" stop-color="#F9FCFC"/>
|
||||||
|
<stop offset="0.62" stop-color="#EDF3F5"/>
|
||||||
|
<stop offset="0.7" stop-color="#DEE9EC"/>
|
||||||
|
<stop offset="0.72" stop-color="#D8E4E8"/>
|
||||||
|
<stop offset="0.76" stop-color="#CCD8DF"/>
|
||||||
|
<stop offset="0.8" stop-color="#C8D5DD"/>
|
||||||
|
<stop offset="0.83" stop-color="#CCD6DE"/>
|
||||||
|
<stop offset="0.85" stop-color="#D8DBE2"/>
|
||||||
|
<stop offset="0.88" stop-color="#EDE3E9"/>
|
||||||
|
<stop offset="0.9" stop-color="#FFEBEF"/>
|
||||||
|
</radialGradient>
|
||||||
|
<radialGradient id="paint7_radial_187_41" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="translate(19.148 10.8264) scale(4.82892 4.82904)">
|
||||||
|
<stop offset="0.48" stop-color="#7A9299"/>
|
||||||
|
<stop offset="0.67" stop-color="#172E35"/>
|
||||||
|
<stop offset="0.75"/>
|
||||||
|
<stop offset="0.82" stop-color="#172E35"/>
|
||||||
|
</radialGradient>
|
||||||
|
<clipPath id="clip1_187_41">
|
||||||
|
<rect width="25.6119" height="22.3834" fill="white" transform="translate(2.88867 4.67432)"/>
|
||||||
|
</clipPath>
|
||||||
|
</defs>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 8.9 KiB |
Before Width: | Height: | Size: 4.2 KiB |
6
src/zen/images/favicons/slack.svg
Normal file
@@ -0,0 +1,6 @@
|
|||||||
|
<svg width="32" height="32" viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<path d="M6.73015 20.1649C6.73015 22.0188 5.23174 23.5173 3.37777 23.5173C1.5238 23.5173 0.0253906 22.0188 0.0253906 20.1649C0.0253906 18.3109 1.5238 16.8125 3.37777 16.8125H6.73015V20.1649ZM8.40634 20.1649C8.40634 18.3109 9.90475 16.8125 11.7587 16.8125C13.6127 16.8125 15.1111 18.3109 15.1111 20.1649V28.5458C15.1111 30.3998 13.6127 31.8982 11.7587 31.8982C9.90475 31.8982 8.40634 30.3998 8.40634 28.5458V20.1649Z" fill="#E01E5A"/>
|
||||||
|
<path d="M11.7587 6.70476C9.90476 6.70476 8.40635 5.20635 8.40635 3.35238C8.40635 1.49841 9.90476 0 11.7587 0C13.6127 0 15.1111 1.49841 15.1111 3.35238V6.70476H11.7587ZM11.7587 8.40635C13.6127 8.40635 15.1111 9.90476 15.1111 11.7587C15.1111 13.6127 13.6127 15.1111 11.7587 15.1111H3.35238C1.49841 15.1111 0 13.6127 0 11.7587C0 9.90476 1.49841 8.40635 3.35238 8.40635H11.7587Z" fill="#36C5F0"/>
|
||||||
|
<path d="M25.1935 11.7587C25.1935 9.90476 26.6919 8.40635 28.5458 8.40635C30.3998 8.40635 31.8982 9.90476 31.8982 11.7587C31.8982 13.6127 30.3998 15.1111 28.5458 15.1111H25.1935V11.7587ZM23.5173 11.7587C23.5173 13.6127 22.0188 15.1111 20.1649 15.1111C18.3109 15.1111 16.8125 13.6127 16.8125 11.7587V3.35238C16.8125 1.49841 18.3109 0 20.1649 0C22.0188 0 23.5173 1.49841 23.5173 3.35238V11.7587Z" fill="#2EB67D"/>
|
||||||
|
<path d="M20.1649 25.1935C22.0188 25.1935 23.5173 26.6919 23.5173 28.5458C23.5173 30.3998 22.0188 31.8982 20.1649 31.8982C18.3109 31.8982 16.8125 30.3998 16.8125 28.5458V25.1935H20.1649ZM20.1649 23.5173C18.3109 23.5173 16.8125 22.0188 16.8125 20.1649C16.8125 18.3109 18.3109 16.8125 20.1649 16.8125H28.5712C30.4252 16.8125 31.9236 18.3109 31.9236 20.1649C31.9236 22.0188 30.4252 23.5173 28.5712 23.5173H20.1649Z" fill="#ECB22E"/>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 1.7 KiB |
Before Width: | Height: | Size: 106 KiB |
11
src/zen/images/favicons/trello.svg
Normal file
@@ -0,0 +1,11 @@
|
|||||||
|
<svg width="32" height="32" viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<path d="M28.875 0H3.125C1.39911 0 0 1.39911 0 3.125V28.875C0 30.6009 1.39911 32 3.125 32H28.875C30.6009 32 32 30.6009 32 28.875V3.125C32 1.39911 30.6009 0 28.875 0Z" fill="url(#paint0_linear_187_69)"/>
|
||||||
|
<path d="M26.3401 4.16016H19.5801C18.7517 4.16016 18.0801 4.83173 18.0801 5.66016V16.6602C18.0801 17.4886 18.7517 18.1602 19.5801 18.1602H26.3401C27.1685 18.1602 27.8401 17.4886 27.8401 16.6602V5.66016C27.8401 4.83173 27.1685 4.16016 26.3401 4.16016Z" fill="white"/>
|
||||||
|
<path d="M12.4202 4.16016H5.66016C4.83173 4.16016 4.16016 4.83173 4.16016 5.66016V24.6602C4.16016 25.4886 4.83173 26.1602 5.66016 26.1602H12.4202C13.2486 26.1602 13.9202 25.4886 13.9202 24.6602V5.66016C13.9202 4.83173 13.2486 4.16016 12.4202 4.16016Z" fill="white"/>
|
||||||
|
<defs>
|
||||||
|
<linearGradient id="paint0_linear_187_69" x1="1600" y1="0" x2="1600" y2="3200" gradientUnits="userSpaceOnUse">
|
||||||
|
<stop stop-color="#0091E6"/>
|
||||||
|
<stop offset="1" stop-color="#0079BF"/>
|
||||||
|
</linearGradient>
|
||||||
|
</defs>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 1.0 KiB |
Before Width: | Height: | Size: 2.2 KiB |
4
src/zen/images/favicons/x.svg
Normal file
@@ -0,0 +1,4 @@
|
|||||||
|
<svg width="32" height="32" viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<path d="M0 0H32V32H0V0Z" fill="black"/>
|
||||||
|
<path d="M18.2856 14.1635L27.2216 4H25.1048L17.3424 12.823L11.1472 4H4L13.3704 17.3433L4 28H6.1168L14.3088 18.6806L20.8528 28H28M6.8808 5.5619H10.1328L25.1032 26.5148H21.8504" fill="white"/>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 335 B |
@@ -898,7 +898,7 @@ class nsZenViewSplitter extends nsZenDOMOperatedFeature {
|
|||||||
document.getElementById('context_zenSplitTabs').setAttribute('data-l10n-args', tabCountInfo);
|
document.getElementById('context_zenSplitTabs').setAttribute('data-l10n-args', tabCountInfo);
|
||||||
document
|
document
|
||||||
.getElementById('context_zenSplitTabs')
|
.getElementById('context_zenSplitTabs')
|
||||||
.setAttribute('disabled', !this.contextCanSplitTabs());
|
.setAttribute('hidden', !this.contextCanSplitTabs());
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -907,14 +907,12 @@ class nsZenViewSplitter extends nsZenDOMOperatedFeature {
|
|||||||
*/
|
*/
|
||||||
insertSplitViewTabContextMenu() {
|
insertSplitViewTabContextMenu() {
|
||||||
const element = window.MozXULElement.parseXULToFragment(`
|
const element = window.MozXULElement.parseXULToFragment(`
|
||||||
<menuseparator/>
|
|
||||||
<menuitem id="context_zenSplitTabs"
|
<menuitem id="context_zenSplitTabs"
|
||||||
data-lazy-l10n-id="tab-zen-split-tabs"
|
data-lazy-l10n-id="tab-zen-split-tabs"
|
||||||
data-l10n-args='{"tabCount": 1}'
|
data-l10n-args='{"tabCount": 1}'
|
||||||
command="cmd_zenSplitViewContextMenu"/>
|
command="cmd_zenSplitViewContextMenu"/>
|
||||||
<menuseparator/>
|
|
||||||
`);
|
`);
|
||||||
document.getElementById('context_closeDuplicateTabs').after(element);
|
document.getElementById('context_duplicateTab').before(element);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@@ -533,11 +533,13 @@
|
|||||||
if (!pinId) {
|
if (!pinId) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
for (const tab of group.tabs) {
|
for (const tab of group.allItemsRecursive) {
|
||||||
if (tab.pinned && tab.getAttribute('zen-pin-id') === pinId) {
|
if (tab.pinned && tab.getAttribute('zen-pin-id') === pinId) {
|
||||||
const pin = this._pinsCache.find((p) => p.uuid === pinId);
|
const pin = this._pinsCache.find((p) => p.uuid === pinId);
|
||||||
if (pin) {
|
if (pin) {
|
||||||
pin.position = tab._pPos;
|
pin.position = tab._pPos;
|
||||||
|
pin.parentUuid = tab.group?.getAttribute('zen-pin-id') || null;
|
||||||
|
pin.workspaceUuid = group.getAttribute('zen-workspace-id');
|
||||||
await this.savePin(pin, false);
|
await this.savePin(pin, false);
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
@@ -547,6 +549,7 @@
|
|||||||
if (groupPin) {
|
if (groupPin) {
|
||||||
groupPin.position = newIndex;
|
groupPin.position = newIndex;
|
||||||
groupPin.parentUuid = group.group?.getAttribute('zen-pin-id');
|
groupPin.parentUuid = group.group?.getAttribute('zen-pin-id');
|
||||||
|
groupPin.workspaceUuid = group.getAttribute('zen-workspace-id');
|
||||||
await this.savePin(groupPin);
|
await this.savePin(groupPin);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -603,7 +606,7 @@
|
|||||||
async _onTabClick(e) {
|
async _onTabClick(e) {
|
||||||
const tab = e.target?.closest('tab');
|
const tab = e.target?.closest('tab');
|
||||||
if (e.button === 1 && tab) {
|
if (e.button === 1 && tab) {
|
||||||
await this._onCloseTabShortcut(e, tab);
|
await this._onCloseTabShortcut(e, tab, { closeIfPending: true });
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -750,7 +753,11 @@
|
|||||||
async _onCloseTabShortcut(
|
async _onCloseTabShortcut(
|
||||||
event,
|
event,
|
||||||
selectedTab = gBrowser.selectedTab,
|
selectedTab = gBrowser.selectedTab,
|
||||||
{ behavior = lazy.zenPinnedTabCloseShortcutBehavior, noClose = false } = {}
|
{
|
||||||
|
behavior = lazy.zenPinnedTabCloseShortcutBehavior,
|
||||||
|
noClose = false,
|
||||||
|
closeIfPending = false,
|
||||||
|
} = {}
|
||||||
) {
|
) {
|
||||||
if (!selectedTab?.pinned) {
|
if (!selectedTab?.pinned) {
|
||||||
return;
|
return;
|
||||||
@@ -805,6 +812,12 @@
|
|||||||
if (selectedTab.group?.hasAttribute('split-view-group')) {
|
if (selectedTab.group?.hasAttribute('split-view-group')) {
|
||||||
tabsToUnload = selectedTab.group.tabs;
|
tabsToUnload = selectedTab.group.tabs;
|
||||||
}
|
}
|
||||||
|
const allAreUnloaded = tabsToUnload.every(
|
||||||
|
(tab) => tab.hasAttribute('pending') && !tab.hasAttribute('zen-essential')
|
||||||
|
);
|
||||||
|
if (allAreUnloaded && closeIfPending) {
|
||||||
|
return await this._onCloseTabShortcut(event, selectedTab, { behavior: 'close' });
|
||||||
|
}
|
||||||
await gBrowser.explicitUnloadTabs(tabsToUnload);
|
await gBrowser.explicitUnloadTabs(tabsToUnload);
|
||||||
selectedTab.removeAttribute('discarded');
|
selectedTab.removeAttribute('discarded');
|
||||||
}
|
}
|
||||||
@@ -874,7 +887,7 @@
|
|||||||
existingEntry.title = pin.title;
|
existingEntry.title = pin.title;
|
||||||
state.entries = [existingEntry];
|
state.entries = [existingEntry];
|
||||||
}
|
}
|
||||||
state.image = pin.iconUrl || null;
|
state.image = pin.iconUrl || state.image;
|
||||||
state.index = 0;
|
state.index = 0;
|
||||||
|
|
||||||
SessionStore.setTabState(tab, state);
|
SessionStore.setTabState(tab, state);
|
||||||
@@ -886,7 +899,7 @@
|
|||||||
const faviconData = await PlacesUtils.favicons.getFaviconForPage(pageUrl);
|
const faviconData = await PlacesUtils.favicons.getFaviconForPage(pageUrl);
|
||||||
if (!faviconData) {
|
if (!faviconData) {
|
||||||
// empty favicon
|
// empty favicon
|
||||||
return 'data:image/png;base64,';
|
return null;
|
||||||
}
|
}
|
||||||
return faviconData.dataURI;
|
return faviconData.dataURI;
|
||||||
} catch (ex) {
|
} catch (ex) {
|
||||||
@@ -1194,7 +1207,7 @@
|
|||||||
} else {
|
} else {
|
||||||
tab.setAttribute('zen-pinned-changed', 'true');
|
tab.setAttribute('zen-pinned-changed', 'true');
|
||||||
}
|
}
|
||||||
tab.style.setProperty('--zen-original-tab-icon', `url(${pin.iconUrl.spec})`);
|
tab.style.setProperty('--zen-original-tab-icon', `url(${pin.iconUrl?.spec})`);
|
||||||
}
|
}
|
||||||
|
|
||||||
removeTabContainersDragoverClass(hideIndicator = true) {
|
removeTabContainersDragoverClass(hideIndicator = true) {
|
||||||
|
@@ -92,12 +92,12 @@
|
|||||||
[
|
[
|
||||||
'https://reddit.com/r/zen_browser',
|
'https://reddit.com/r/zen_browser',
|
||||||
'Zen on Reddit',
|
'Zen on Reddit',
|
||||||
'chrome://browser/content/zen-images/favicons/reddit.ico',
|
'chrome://browser/content/zen-images/favicons/reddit.svg',
|
||||||
],
|
],
|
||||||
[
|
[
|
||||||
'https://x.com/zen_browser',
|
'https://x.com/zen_browser',
|
||||||
'Zen on Twitter',
|
'Zen on Twitter',
|
||||||
'chrome://browser/content/zen-images/favicons/x.ico',
|
'chrome://browser/content/zen-images/favicons/x.svg',
|
||||||
],
|
],
|
||||||
];
|
];
|
||||||
|
|
||||||
@@ -549,47 +549,47 @@
|
|||||||
<html:div></html:div>
|
<html:div></html:div>
|
||||||
</hbox>
|
</hbox>
|
||||||
<html:div id="zen-welcome-initial-essentials-browser-sidebar-essentials">
|
<html:div id="zen-welcome-initial-essentials-browser-sidebar-essentials">
|
||||||
<html:div class="tabbrowser-tab" fadein="" data-url="https://obsidian.md" style="--zen-essential-tab-icon: url('chrome://browser/content/zen-images/favicons/obsidian.ico');">
|
<html:div class="tabbrowser-tab" fadein="" data-url="https://obsidian.md" style="--zen-essential-tab-icon: url('chrome://browser/content/zen-images/favicons/obsidian.svg');">
|
||||||
<stack class="tab-stack">
|
<stack class="tab-stack">
|
||||||
<html:div class="tab-background"></html:div>
|
<html:div class="tab-background"></html:div>
|
||||||
</stack>
|
</stack>
|
||||||
</html:div>
|
</html:div>
|
||||||
<html:div class="tabbrowser-tab" fadein="" visuallyselected="" data-url="https://discord.com" style="--zen-essential-tab-icon: url('chrome://browser/content/zen-images/favicons/discord.ico');">
|
<html:div class="tabbrowser-tab" fadein="" visuallyselected="" data-url="https://discord.com" style="--zen-essential-tab-icon: url('chrome://browser/content/zen-images/favicons/discord.svg');">
|
||||||
<stack class="tab-stack">
|
<stack class="tab-stack">
|
||||||
<html:div class="tab-background"></html:div>
|
<html:div class="tab-background"></html:div>
|
||||||
</stack>
|
</stack>
|
||||||
</html:div>
|
</html:div>
|
||||||
<html:div class="tabbrowser-tab" fadein="" data-url="https://trello.com" style="--zen-essential-tab-icon: url('chrome://browser/content/zen-images/favicons/trello.ico');">
|
<html:div class="tabbrowser-tab" fadein="" data-url="https://trello.com" style="--zen-essential-tab-icon: url('chrome://browser/content/zen-images/favicons/trello.svg');">
|
||||||
<stack class="tab-stack">
|
<stack class="tab-stack">
|
||||||
<html:div class="tab-background"></html:div>
|
<html:div class="tab-background"></html:div>
|
||||||
</stack>
|
</stack>
|
||||||
</html:div>
|
</html:div>
|
||||||
<html:div class="tabbrowser-tab" fadein="" data-url="https://slack.com/" style="--zen-essential-tab-icon: url('chrome://browser/content/zen-images/favicons/slack.ico');">
|
<html:div class="tabbrowser-tab" fadein="" data-url="https://slack.com" style="--zen-essential-tab-icon: url('chrome://browser/content/zen-images/favicons/slack.svg');">
|
||||||
<stack class="tab-stack">
|
<stack class="tab-stack">
|
||||||
<html:div class="tab-background"></html:div>
|
<html:div class="tab-background"></html:div>
|
||||||
</stack>
|
</stack>
|
||||||
</html:div>
|
</html:div>
|
||||||
<html:div class="tabbrowser-tab" fadein="" visuallyselected="" data-url="https://github.com" style="--zen-essential-tab-icon: url('chrome://browser/content/zen-images/favicons/github.ico');">
|
<html:div class="tabbrowser-tab" fadein="" visuallyselected="" data-url="https://github.com" style="--zen-essential-tab-icon: url('chrome://browser/content/zen-images/favicons/github.svg');">
|
||||||
<stack class="tab-stack">
|
<stack class="tab-stack">
|
||||||
<html:div class="tab-background"></html:div>
|
<html:div class="tab-background"></html:div>
|
||||||
</stack>
|
</stack>
|
||||||
</html:div>
|
</html:div>
|
||||||
<html:div class="tabbrowser-tab" fadein="" data-url="https://twitter.com" style="--zen-essential-tab-icon: url('chrome://browser/content/zen-images/favicons/x.ico');">
|
<html:div class="tabbrowser-tab" fadein="" data-url="https://twitter.com" style="--zen-essential-tab-icon: url('chrome://browser/content/zen-images/favicons/x.svg');">
|
||||||
<stack class="tab-stack">
|
<stack class="tab-stack">
|
||||||
<html:div class="tab-background"></html:div>
|
<html:div class="tab-background"></html:div>
|
||||||
</stack>
|
</stack>
|
||||||
</html:div>
|
</html:div>
|
||||||
<html:div class="tabbrowser-tab" fadein="" visuallyselected="" data-url="https://notion.com" style="--zen-essential-tab-icon: url('chrome://browser/content/zen-images/favicons/notion.ico');">
|
<html:div class="tabbrowser-tab" fadein="" visuallyselected="" data-url="https://notion.com" style="--zen-essential-tab-icon: url('chrome://browser/content/zen-images/favicons/notion.svg');">
|
||||||
<stack class="tab-stack">
|
<stack class="tab-stack">
|
||||||
<html:div class="tab-background"></html:div>
|
<html:div class="tab-background"></html:div>
|
||||||
</stack>
|
</stack>
|
||||||
</html:div>
|
</html:div>
|
||||||
<html:div class="tabbrowser-tab" fadein="" data-url="https://calendar.google.com" style="--zen-essential-tab-icon: url('chrome://browser/content/zen-images/favicons/calendar.ico');">
|
<html:div class="tabbrowser-tab" fadein="" data-url="https://calendar.google.com" style="--zen-essential-tab-icon: url('chrome://browser/content/zen-images/favicons/calendar.svg');">
|
||||||
<stack class="tab-stack">
|
<stack class="tab-stack">
|
||||||
<html:div class="tab-background"></html:div>
|
<html:div class="tab-background"></html:div>
|
||||||
</stack>
|
</stack>
|
||||||
</html:div>
|
</html:div>
|
||||||
<html:div class="tabbrowser-tab" fadein="" data-url="https://figma.com" style="--zen-essential-tab-icon: url('chrome://browser/content/zen-images/favicons/figma.ico');">
|
<html:div class="tabbrowser-tab" fadein="" data-url="https://figma.com" style="--zen-essential-tab-icon: url('chrome://browser/content/zen-images/favicons/figma.svg');">
|
||||||
<stack class="tab-stack">
|
<stack class="tab-stack">
|
||||||
<html:div class="tab-background"></html:div>
|
<html:div class="tab-background"></html:div>
|
||||||
</stack>
|
</stack>
|
||||||
|
@@ -243,7 +243,7 @@
|
|||||||
#zen-welcome-initial-essentials-browser-sidebar-essentials {
|
#zen-welcome-initial-essentials-browser-sidebar-essentials {
|
||||||
display: grid;
|
display: grid;
|
||||||
grid-template-columns: repeat(3, 1fr);
|
grid-template-columns: repeat(3, 1fr);
|
||||||
gap: 0.4rem 1.2rem;
|
gap: 1rem;
|
||||||
visibility: visible;
|
visibility: visible;
|
||||||
|
|
||||||
& * {
|
& * {
|
||||||
@@ -252,15 +252,15 @@
|
|||||||
|
|
||||||
& .extra-tab {
|
& .extra-tab {
|
||||||
width: 100%;
|
width: 100%;
|
||||||
height: 3rem;
|
height: 4rem;
|
||||||
border-radius: 0.8rem;
|
border-radius: var(--border-radius-large);
|
||||||
margin-top: 0.5rem;
|
margin-top: 0.5rem;
|
||||||
background: var(--zen-toolbar-element-bg);
|
background: var(--zen-toolbar-element-bg);
|
||||||
grid-column: span 3;
|
grid-column: span 3;
|
||||||
}
|
}
|
||||||
|
|
||||||
& .tabbrowser-tab {
|
& .tabbrowser-tab {
|
||||||
--tab-min-height: 5rem !important;
|
--tab-min-height: 6rem !important;
|
||||||
min-width: 5rem !important;
|
min-width: 5rem !important;
|
||||||
transition: transform 0.1s;
|
transition: transform 0.1s;
|
||||||
position: relative;
|
position: relative;
|
||||||
@@ -268,15 +268,16 @@
|
|||||||
&::after {
|
&::after {
|
||||||
position: absolute;
|
position: absolute;
|
||||||
content: '';
|
content: '';
|
||||||
width: 1.6rem;
|
width: 1.8rem;
|
||||||
height: 1.6rem;
|
height: 1.8rem;
|
||||||
top: 50%;
|
top: 50%;
|
||||||
left: 50%;
|
left: 50%;
|
||||||
transform: translate(-50%, -50%);
|
transform: translate(-50%, -50%);
|
||||||
background: var(--zen-essential-tab-icon);
|
background: var(--zen-essential-tab-icon);
|
||||||
background-position: center;
|
background-position: center;
|
||||||
background-size: cover;
|
background-size: contain;
|
||||||
background-repeat: no-repeat;
|
background-repeat: no-repeat;
|
||||||
|
border-radius: 4px;
|
||||||
}
|
}
|
||||||
|
|
||||||
--border-radius-medium: 1rem;
|
--border-radius-medium: 1rem;
|
||||||
@@ -285,6 +286,10 @@
|
|||||||
transform: scale(1.06);
|
transform: scale(1.06);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
& .tab-background {
|
||||||
|
margin: 0 !important;
|
||||||
|
}
|
||||||
|
|
||||||
& .tab-background::after {
|
& .tab-background::after {
|
||||||
filter: blur(30px) brightness(1.2);
|
filter: blur(30px) brightness(1.2);
|
||||||
}
|
}
|
||||||
|