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.
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.
Adds the ability to navigate workspaces using the mouse
back/forward buttons when hovering over the sidebar. This
improves the user experience by providing a more intuitive
way to switch between workspaces.
This feature is only enabled when workspaces are enabled.
It intercepts the "AppCommand" events to handle back/forward
navigation.