When a new pinned tab is opened and it does not belong to the
currently active workspace and is not marked as essential, it
will now be hidden. This prevents pinned tabs from cluttering
the tab bar when switching between workspaces.
The global variable for the pinned tab manager has also been
renamed from `gZenPinnedTabManager` to
`_initializePinnedTabs`.
Changes the fill of the tab icon overlay to white no matter if in
light/dark mode. Also removes the background image of the default sound
icons from Fierfox.
This change modifies the pinned tab initialization logic to restore
pinned tabs to their original pinned URLs when the browser starts.
Previously, pinned tabs would open to their last visited URL, even if the option for restoring them to the pinned URL was checked.
Provides a change in background colour for the profile selector items on click (active) , similar to the main menu styles
Signed-off-by: Tanay Kar <93914273+Tanay-Kar@users.noreply.github.com>
Previously, if you had multiple windows opened and you closed one, it could trigger TabClose event and delete the pins from zen_pins table. With this change the pins are deleted only on explicit tab closing from tab context menu.
Fixes several issues related to pinned tab restoration and
favicon display:
- Ensures pinned tabs are not loaded in private windows.
- Improves favicon caching and setting for pinned tabs.
- Fixes an issue where the tab state was not properly
restored, leading to incorrect icons and titles.
- Uses base64 encoded favicon data to prevent issues with
favicon loading and updates the favicon loading logic to
be more robust.
- Adds a call to `gBrowser._updateTabBarForPinnedTabs` to
ensure the tab bar is updated correctly after restoring
pinned tabs, which fixes a UI issue where the tab bar
wouldn't refresh properly until interacted with.
- Improves tab initialization by explicitly calling
`newTab.initialize()` after restoring a pinned tab. This
fixes an issue with tabs not rendering
icon and label after being restored.
The changes improve the reliability of pinned tab
restoration and ensure that favicons are displayed
correctly.
This commit introduces a "Reset" button to pinned tabs, allowing
users to quickly revert a tab to its stored base URL. The button
is visible on hover for non-essential pinned tabs and hidden
for essentials. Clicking the button triggers a
reset action managed by `gZenPinnedTabManager`.
The visual style of the button is defined using the "reload"
icon and follows the styling of other tab buttons.
Add to Essentials is displayed before Pin tab context menu item so it follows the order in which the tabs are displayed in the sidebar as essentials are above pinned tabs.
This commit adds the ability to switch workspaces by horizontally
scrolling the sidebar. A scroll cooldown and threshold are
implemented to prevent accidental workspace changes. The
`_setupHoverDetection` method is renamed to `_setupSidebarHandlers`
as it now handles both hover and scroll events.