Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 3 additions & 3 deletions docking/core/config.py
Original file line number Diff line number Diff line change
Expand Up @@ -434,7 +434,7 @@ class FolderStackUnfold(str, Enum):

DEFAULT_LEFT_CLICK_ACTION = LeftClickAction.TOGGLE.value
DEFAULT_MIDDLE_CLICK_ACTION = MiddleClickAction.NEW_WINDOW.value
DEFAULT_FOLDER_STACK_UNFOLD = FolderStackUnfold.CLICK.value
DEFAULT_FOLDER_STACK_UNFOLD = FolderStackUnfold.HOVER.value


def _normalize_left_click_action(value: object) -> str:
Expand Down Expand Up @@ -473,10 +473,10 @@ def _normalize_folder_stack_unfold(value: object) -> str:
logger.warning(
"Invalid folder stack unfold mode %r; using default %r (%s)",
value,
FolderStackUnfold.CLICK.value,
DEFAULT_FOLDER_STACK_UNFOLD,
exc,
)
return FolderStackUnfold.CLICK.value
return DEFAULT_FOLDER_STACK_UNFOLD


@dataclass
Expand Down
60 changes: 28 additions & 32 deletions docking/locale/docking.pot
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: docking\n"
"Report-Msgid-Bugs-To: edumucelli@gmail.com\n"
"POT-Creation-Date: 2026-05-06 21:07+0200\n"
"POT-Creation-Date: 2026-05-06 21:28+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
Expand Down Expand Up @@ -1939,115 +1939,111 @@ msgstr ""
msgid "Docking"
msgstr ""

#: docking/ui/menu.py:186
#: docking/ui/folder/_browser.py:26
msgid "Name"
msgstr ""

#: docking/ui/menu.py:187
#: docking/ui/folder/_browser.py:27
msgid "Kind"
msgstr ""

#: docking/ui/menu.py:188
#: docking/ui/folder/_browser.py:28
msgid "Size"
msgstr ""

#: docking/ui/menu.py:189
#: docking/ui/folder/_browser.py:29
msgid "Created"
msgstr ""

#: docking/ui/menu.py:190
#: docking/ui/folder/_browser.py:30
msgid "Modified"
msgstr ""

#: docking/ui/menu.py:909
#: docking/ui/folder/stack.py:660
msgid "Folder not found"
msgstr ""

#: docking/ui/menu.py:948
#: docking/ui/folder/stack.py:674
msgid "Folder is empty"
msgstr ""

#: docking/ui/menu.py:1403
#: docking/ui/folder/stack.py:1131
#, python-format
msgid "Open in %s"
msgstr ""

#: docking/ui/menu.py:1405
#: docking/ui/folder/stack.py:1133
#, python-format
msgid "%d More in %s"
msgstr ""

#: docking/ui/menu.py:1408
#: docking/ui/folder/stack.py:1136
msgid "Open Folder"
msgstr ""

#: docking/ui/menu.py:1410
#: docking/ui/folder/stack.py:1138
#, python-format
msgid "%d More in Folder"
msgstr ""

#: docking/ui/menu.py:1536 docking/ui/menu.py:1556 docking/ui/menu.py:1572
#: docking/ui/menu.py:1625
#: docking/ui/menu.py:387 docking/ui/menu.py:407 docking/ui/menu.py:423
#: docking/ui/menu.py:471
msgid "Remove from Dock"
msgstr ""

#: docking/ui/menu.py:1549
#: docking/ui/menu.py:400
msgid "Open"
msgstr ""

#: docking/ui/menu.py:1579
#: docking/ui/menu.py:430
msgid "Keep in Dock"
msgstr ""

#: docking/ui/menu.py:1588
#: docking/ui/menu.py:439
msgid "Close All"
msgstr ""

#: docking/ui/menu.py:1588
#: docking/ui/menu.py:439
msgid "Close"
msgstr ""

#: docking/ui/menu.py:1605
#: docking/ui/menu.py:456
msgid "Sort By"
msgstr ""

#: docking/ui/menu.py:1613
#: docking/ui/menu.py:464
msgid "Show Hidden Files"
msgstr ""

#: docking/ui/menu.py:1618
msgid "Large Icons"
msgstr ""

#: docking/ui/menu.py:1655
#: docking/ui/menu.py:501
msgid "Add Applet"
msgstr ""

#: docking/ui/menu.py:1693
#: docking/ui/menu.py:539
msgid "No Applets Available"
msgstr ""

#: docking/ui/menu.py:1700
#: docking/ui/menu.py:546
msgid "Add Separator"
msgstr ""

#: docking/ui/menu.py:1710 docking/ui/settings.py:167
#: docking/ui/menu.py:556 docking/ui/settings.py:167
msgid "Preferences"
msgstr ""

#: docking/ui/menu.py:1715
#: docking/ui/menu.py:561
msgid "About"
msgstr ""

#: docking/ui/menu.py:1720
#: docking/ui/menu.py:566
msgid "Get Support"
msgstr ""

#: docking/ui/menu.py:1727
#: docking/ui/menu.py:573
msgid "Quit"
msgstr ""

#: docking/ui/menu.py:1764
#: docking/ui/menu.py:610
msgid "Window"
msgstr ""

Expand Down
16 changes: 16 additions & 0 deletions docking/ui/dock_window.py
Original file line number Diff line number Diff line change
Expand Up @@ -707,6 +707,18 @@ def _on_draw(self, widget: Gtk.DrawingArea, cr: cairo.Context) -> bool:
self.cursor_x if is_horizontal(pos=self.config.pos) else self.cursor_y
)
self.hover.update(cursor_main, frame=frame)
if (
self.config.folder_stack_unfold == FolderStackUnfold.HOVER.value
and self.hover.hovered_item is not None
and self.hover.hovered_item.kind == FOLDER_KIND
):
self._show_folder_stack_for_item(
item=self.hover.hovered_item,
frame=frame,
fallback_x=self.cursor_x,
fallback_y=self.cursor_y,
toggle_if_same_item=False,
)

# Keep redraw pump alive while urgent glow is visible (dock hidden)
if self.renderer.has_active_urgent_glow(
Expand Down Expand Up @@ -750,6 +762,10 @@ def _on_motion(self, widget: Gtk.DrawingArea, event: Gdk.EventMotion) -> bool:
self.config.folder_stack_unfold == FolderStackUnfold.HOVER.value
and hovered_item is not None
and hovered_item.kind == FOLDER_KIND
and (
not self.autohide.enabled
or self.autohide.state == HideState.VISIBLE
)
):
self._show_folder_stack_for_item(
item=hovered_item,
Expand Down
1 change: 1 addition & 0 deletions docking/ui/folder/__init__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
"""Folder stack UI helpers."""
Loading
Loading