From 748d76dca67975895723a9d48d3e4c2816cc7c87 Mon Sep 17 00:00:00 2001 From: Veronica Berglyd Olsen <1619840+vkbo@users.noreply.github.com> Date: Thu, 5 Jan 2023 23:45:48 +0100 Subject: [PATCH 1/3] Fix converting folder to file (#1305) --- novelwriter/gui/projtree.py | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/novelwriter/gui/projtree.py b/novelwriter/gui/projtree.py index 434c5852..5faa85b2 100644 --- a/novelwriter/gui/projtree.py +++ b/novelwriter/gui/projtree.py @@ -1251,18 +1251,30 @@ class GuiProjectTree(QTreeWidget): isDocFile = isFile and tItem.isDocumentLayout() isNoteFile = isFile and tItem.isNoteLayout() - if (isNoteFile or isFolder) and tItem.documentAllowed(): + if isNoteFile and tItem.documentAllowed(): aConvert1 = mTrans.addAction(self.tr("Convert to {0}").format(trDoc)) aConvert1.triggered.connect( lambda: self._changeItemLayout(tHandle, nwItemLayout.DOCUMENT) ) - if isDocFile or isFolder: + if isDocFile: aConvert2 = mTrans.addAction(self.tr("Convert to {0}").format(trNote)) aConvert2.triggered.connect( lambda: self._changeItemLayout(tHandle, nwItemLayout.NOTE) ) + if isFolder and tItem.documentAllowed(): + aConvert3 = mTrans.addAction(self.tr("Convert to {0}").format(trDoc)) + aConvert3.triggered.connect( + lambda: self._covertFolderToFile(tHandle, nwItemLayout.DOCUMENT) + ) + + if isFolder: + aConvert4 = mTrans.addAction(self.tr("Convert to {0}").format(trNote)) + aConvert4.triggered.connect( + lambda: self._covertFolderToFile(tHandle, nwItemLayout.NOTE) + ) + if hasChild and isFile: aMerge1 = mTrans.addAction(self.tr("Merge Child Items into Self")) aMerge1.triggered.connect(lambda: self._mergeDocuments(tHandle, False)) From 3b9e3762d3802b8754b5f0c768d59b513ba9d0be Mon Sep 17 00:00:00 2001 From: Veronica Berglyd Olsen <1619840+vkbo@users.noreply.github.com> Date: Thu, 5 Jan 2023 23:50:27 +0100 Subject: [PATCH 2/3] Make sure editor/viewer is visible on open doc request (#1291) --- novelwriter/guimain.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/novelwriter/guimain.py b/novelwriter/guimain.py index 019539bb..740a3d73 100644 --- a/novelwriter/guimain.py +++ b/novelwriter/guimain.py @@ -1512,8 +1512,10 @@ class GuiMain(QMainWindow): hItem = self.theProject.index.getItemHeader(tHandle, sTitle) if hItem is not None: tLine = hItem.line + self.mainStack.setCurrentWidget(self.splitMain) self.openDocument(tHandle, tLine=tLine, changeFocus=setFocus) elif tMode == nwDocMode.VIEW: + self.mainStack.setCurrentWidget(self.splitMain) self.viewDocument(tHandle=tHandle, sTitle=sTitle) return From 31403b4299ef7bb50fc83275f73b154630b04680 Mon Sep 17 00:00:00 2001 From: Veronica Berglyd Olsen <1619840+vkbo@users.noreply.github.com> Date: Thu, 5 Jan 2023 23:54:51 +0100 Subject: [PATCH 3/3] Fix it again, but now also for enter key (#1291) --- novelwriter/guimain.py | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/novelwriter/guimain.py b/novelwriter/guimain.py index 740a3d73..4b89e03b 100644 --- a/novelwriter/guimain.py +++ b/novelwriter/guimain.py @@ -610,6 +610,7 @@ class GuiMain(QMainWindow): logger.debug("Requested item '%s' is not a document", tHandle) return False + self._changeView(nwView.EDITOR) cHandle = self.docEditor.docHandle() if cHandle == tHandle: self.docEditor.setCursorLine(tLine) @@ -618,7 +619,6 @@ class GuiMain(QMainWindow): return True self.closeDocument(beforeOpen=True) - self._changeView(nwView.EDITOR) if self.docEditor.loadText(tHandle, tLine): self.theProject.data.setLastHandle(tHandle, "editor") self.projView.setSelectedHandle(tHandle, doScroll=doScroll) @@ -1512,10 +1512,8 @@ class GuiMain(QMainWindow): hItem = self.theProject.index.getItemHeader(tHandle, sTitle) if hItem is not None: tLine = hItem.line - self.mainStack.setCurrentWidget(self.splitMain) self.openDocument(tHandle, tLine=tLine, changeFocus=setFocus) elif tMode == nwDocMode.VIEW: - self.mainStack.setCurrentWidget(self.splitMain) self.viewDocument(tHandle=tHandle, sTitle=sTitle) return