preview_pane: make Save/Unsave from Library mutually exclusive

Context menu now shows either Save to Library or Unsave from Library
based on saved state, never both.

behavior change: preview context menu shows either Save or Unsave.
This commit is contained in:
pax 2026-04-11 22:13:23 -05:00
parent 4bcff35708
commit 558c19bdb5

View File

@ -315,20 +315,23 @@ class ImagePreview(QWidget):
bm_menu.addSeparator() bm_menu.addSeparator()
bm_new_action = bm_menu.addAction("+ New Folder...") bm_new_action = bm_menu.addAction("+ New Folder...")
save_menu = menu.addMenu("Save to Library") save_menu = None
save_unsorted = save_menu.addAction("Unfiled") save_unsorted = None
save_menu.addSeparator() save_new = None
save_folder_actions = {} save_folder_actions = {}
if self._folders_callback:
for folder in self._folders_callback():
a = save_menu.addAction(folder)
save_folder_actions[id(a)] = folder
save_menu.addSeparator()
save_new = save_menu.addAction("+ New Folder...")
unsave_action = None unsave_action = None
if self._is_saved: if self._is_saved:
unsave_action = menu.addAction("Unsave from Library") unsave_action = menu.addAction("Unsave from Library")
else:
save_menu = menu.addMenu("Save to Library")
save_unsorted = save_menu.addAction("Unfiled")
save_menu.addSeparator()
if self._folders_callback:
for folder in self._folders_callback():
a = save_menu.addAction(folder)
save_folder_actions[id(a)] = folder
save_menu.addSeparator()
save_new = save_menu.addAction("+ New Folder...")
menu.addSeparator() menu.addSeparator()
copy_image = menu.addAction("Copy File to Clipboard") copy_image = menu.addAction("Copy File to Clipboard")