View Issue Details

IDProjectCategoryView StatusLast Update
0017122ScribusUsabilitypublic2024-01-13 15:51
Reporterpmjdebruijn Assigned To 
PrioritynormalSeverityminorReproducibilityalways
Status newResolutionopen 
Product Version1.6.0 
Summary0017122: PDF Bookmarks/Annotations swap (PDF Options context submenu)
DescriptionI think PDF Bookmarks should be listed first in the PDF Options submenu, for two reasons

1) (less important) it's probably more often used, therefore less movement required would be better
2) When PDF Annotations are enabled, an additional menu items appears relating to Annotations, where currently Bookmarks sits in between them, which feels very odd and clumsy.

See attached screenshots, left is current, right is after the included patch (pdf-options)

Additionally pdf-options-clean does some minor reordering for consistency's sake only.
Steps To ReproduceAdd text object to canvas
Right click for context menu
Go to PDF Options
TagsNo tags attached.
PatchYes

Activities

pmjdebruijn

2024-01-13 15:51

reporter  

scribus-pdfannot.png (50,653 bytes)   
scribus-pdfannot.png (50,653 bytes)   
pdf-options.patch (2,285 bytes)   
diff -Nurpd a/scribus/pageitem_textframe.cpp b/scribus/pageitem_textframe.cpp
--- a/scribus/pageitem_textframe.cpp	2024-01-07 18:07:03.000000000 +0100
+++ b/scribus/pageitem_textframe.cpp	2024-01-13 16:34:10.152763129 +0100
@@ -5061,9 +5061,9 @@ void PageItem_TextFrame::applicableActio
 	actionList << "fileImportAppendText";
 	actionList << "toolsEditWithStoryEditor";
 	actionList << "insertSampleText";
-	actionList << "itemPDFIsAnnotation";
 	if (doc()->currentPage()->pageNameEmpty())
 		actionList << "itemPDFIsBookmark";
+	actionList << "itemPDFIsAnnotation";
 	if (isAnnotation())
 	{
 		if ((annotation().Type() == 0) || (annotation().Type() == 1) || ((annotation().Type() > Annotation::Listbox) && (annotation().Type() < Annotation::RadioButton)))
diff -Nurpd a/scribus/scribus.cpp b/scribus/scribus.cpp
--- a/scribus/scribus.cpp	2024-01-07 18:07:07.000000000 +0100
+++ b/scribus/scribus.cpp	2024-01-13 16:33:34.448562173 +0100
@@ -992,8 +992,8 @@ void ScribusMainWindow::initMenuBar()
 	scrMenuMgr->addMenuItemString("itemPreviewLow", "ItemPreviewSettings");
 	scrMenuMgr->createMenu("ItemPDFOptions", tr("P&DF Options"));
 	scrMenuMgr->addMenuItemString("ItemPDFOptions", "Item");
-	scrMenuMgr->addMenuItemString("itemPDFIsAnnotation", "ItemPDFOptions");
 	scrMenuMgr->addMenuItemString("itemPDFIsBookmark", "ItemPDFOptions");
+	scrMenuMgr->addMenuItemString("itemPDFIsAnnotation", "ItemPDFOptions");
 	scrMenuMgr->addMenuItemString("itemPDFAnnotationProps", "ItemPDFOptions");
 	scrMenuMgr->addMenuItemString("itemPDFFieldProps", "ItemPDFOptions");
 	scrMenuMgr->createMenu("ItemConvertTo", tr("C&onvert to"), "Item");
diff -Nurpd a/scribus/ui/contextmenu.cpp b/scribus/ui/contextmenu.cpp
--- a/scribus/ui/contextmenu.cpp	2024-01-07 18:06:56.000000000 +0100
+++ b/scribus/ui/contextmenu.cpp	2024-01-13 16:34:01.800716518 +0100
@@ -474,9 +474,9 @@ void ContextMenu::createMenuItems_Select
 	{
 		QAction *act = addMenu(menuPDF);
 		act->setText( tr("&PDF Options"));
-		menuPDF->addAction(m_ScMW->scrActions["itemPDFIsAnnotation"]);
 		if (!m_doc->masterPageMode())
 			menuPDF->addAction(m_ScMW->scrActions["itemPDFIsBookmark"]);
+		menuPDF->addAction(m_ScMW->scrActions["itemPDFIsAnnotation"]);
 		if (selectedItemCount == 1)
 		{
 			menuPDF->addSeparator();
pdf-options.patch (2,285 bytes)   
pdf-options-clean.patch (2,209 bytes)   
diff -Nurpd a/scribus/actionmanager.cpp b/scribus/actionmanager.cpp
--- a/scribus/actionmanager.cpp	2024-01-07 18:07:08.000000000 +0100
+++ b/scribus/actionmanager.cpp	2024-01-13 16:02:22.114903724 +0100
@@ -1447,19 +1447,19 @@ void ActionManager::setPDFActions(Scribu
 
 	if (!currItem->isTextFrame())
 	{
-		(*scrActions)["itemPDFIsAnnotation"]->setEnabled(false);
 		(*scrActions)["itemPDFIsBookmark"]->setEnabled(false);
-		(*scrActions)["itemPDFIsAnnotation"]->setChecked(false);
+		(*scrActions)["itemPDFIsAnnotation"]->setEnabled(false);
 		(*scrActions)["itemPDFIsBookmark"]->setChecked(false);
+		(*scrActions)["itemPDFIsAnnotation"]->setChecked(false);
 		(*scrActions)["itemPDFAnnotationProps"]->setEnabled(false);
 		(*scrActions)["itemPDFFieldProps"]->setEnabled(false);
 		return;
 	}
 
-	(*scrActions)["itemPDFIsAnnotation"]->setEnabled(true);
 	(*scrActions)["itemPDFIsBookmark"]->setEnabled(true);
-	(*scrActions)["itemPDFIsAnnotation"]->setChecked(currItem->isAnnotation());
+	(*scrActions)["itemPDFIsAnnotation"]->setEnabled(true);
 	(*scrActions)["itemPDFIsBookmark"]->setChecked(currItem->isBookmark);
+	(*scrActions)["itemPDFIsAnnotation"]->setChecked(currItem->isAnnotation());
 	if (currItem->isAnnotation())
 	{
 		int aType = currItem->annotation().Type();
@@ -1472,8 +1472,8 @@ void ActionManager::setPDFActions(Scribu
 		(*scrActions)["itemPDFAnnotationProps"]->setEnabled(false);
 		(*scrActions)["itemPDFFieldProps"]->setEnabled(false);
 	}
-	connect( (*scrActions)["itemPDFIsAnnotation"], SIGNAL(triggered()), mainWindow->doc, SLOT(itemSelection_ToggleAnnotation()) );
 	connect( (*scrActions)["itemPDFIsBookmark"], SIGNAL(triggered()), mainWindow->doc, SLOT(itemSelection_ToggleBookMark()) );
+	connect( (*scrActions)["itemPDFIsAnnotation"], SIGNAL(triggered()), mainWindow->doc, SLOT(itemSelection_ToggleAnnotation()) );
 }
 
 void ActionManager::changeEvent(QEvent *e)
@@ -2179,8 +2179,8 @@ void ActionManager::createDefaultMenus()
 		<< "itemSendToPattern" 
 		<< "itemSendToInline"
 		<< "itemAttributes" 
-		<< "itemPDFIsAnnotation" 
 		<< "itemPDFIsBookmark" 
+		<< "itemPDFIsAnnotation" 
 		<< "itemPDFAnnotationProps" 
 		<< "itemPDFFieldProps" 
 		<< "itemShapeEdit" 
pdf-options-clean.patch (2,209 bytes)   

Issue History

Date Modified Username Field Change
2024-01-13 15:51 pmjdebruijn New Issue
2024-01-13 15:51 pmjdebruijn File Added: scribus-pdfannot.png
2024-01-13 15:51 pmjdebruijn File Added: pdf-options.patch
2024-01-13 15:51 pmjdebruijn File Added: pdf-options-clean.patch