From 4c9176536ee4924bc0fb4347240021e8c8d30c2a Mon Sep 17 00:00:00 2001 From: Mathieu Pellerin Date: Tue, 17 Sep 2024 10:21:35 +0700 Subject: [PATCH] Shot in the dark, avoid menuitem glitch --- src/qml/editorwidgets/ExternalResource.qml | 132 +++++++++++---------- src/qml/editorwidgets/TextEdit.qml | 74 ++++++------ 2 files changed, 107 insertions(+), 99 deletions(-) diff --git a/src/qml/editorwidgets/ExternalResource.qml b/src/qml/editorwidgets/ExternalResource.qml index fb2cd712db..5e04e31506 100644 --- a/src/qml/editorwidgets/ExternalResource.qml +++ b/src/qml/editorwidgets/ExternalResource.qml @@ -692,89 +692,93 @@ EditorWidgetBase { hasMenu = true; } - MenuItem { - id: capturePhotoMenuItem - text: qsTr('Take a photo') + Item { + visible: false - font: Theme.defaultFont - icon.source: Theme.getThemeVectorIcon("ic_camera_photo_black_24dp") - height: 48 - leftPadding: Theme.menuItemLeftPadding + MenuItem { + id: capturePhotoMenuItem + text: qsTr('Take a photo') - onTriggered: capturePhoto() - } + font: Theme.defaultFont + icon.source: Theme.getThemeVectorIcon("ic_camera_photo_black_24dp") + height: 48 + leftPadding: Theme.menuItemLeftPadding - MenuItem { - id: captureVideoMenuItem - text: qsTr('Take a video') + onTriggered: capturePhoto() + } - font: Theme.defaultFont - icon.source: Theme.getThemeVectorIcon("ic_camera_video_black_24dp") - height: 48 - leftPadding: Theme.menuItemLeftPadding + MenuItem { + id: captureVideoMenuItem + text: qsTr('Take a video') - onTriggered: captureVideo() - } + font: Theme.defaultFont + icon.source: Theme.getThemeVectorIcon("ic_camera_video_black_24dp") + height: 48 + leftPadding: Theme.menuItemLeftPadding - MenuItem { - id: captureAudioMenuItem - text: qsTr('Record an audio clip') + onTriggered: captureVideo() + } - font: Theme.defaultFont - icon.source: Theme.getThemeVectorIcon("ic_microphone_black_24dp") - height: 48 - leftPadding: Theme.menuItemLeftPadding + MenuItem { + id: captureAudioMenuItem + text: qsTr('Record an audio clip') - onTriggered: captureAudio() - } + font: Theme.defaultFont + icon.source: Theme.getThemeVectorIcon("ic_microphone_black_24dp") + height: 48 + leftPadding: Theme.menuItemLeftPadding - MenuSeparator { - id: separatorGalleryItem - width: parent.width - } + onTriggered: captureAudio() + } - MenuItem { - id: attachGalleryMenuItem - text: qsTr('Attach a gallery item') + MenuSeparator { + id: separatorGalleryItem + width: parent.width + } - font: Theme.defaultFont - icon.source: Theme.getThemeVectorIcon("ic_gallery_black_24dp") - height: 48 - leftPadding: Theme.menuItemLeftPadding + MenuItem { + id: attachGalleryMenuItem + text: qsTr('Attach a gallery item') - onTriggered: attachGallery() - } + font: Theme.defaultFont + icon.source: Theme.getThemeVectorIcon("ic_gallery_black_24dp") + height: 48 + leftPadding: Theme.menuItemLeftPadding - MenuItem { - id: attachFileMenuItem - text: qsTr('Attach a file') + onTriggered: attachGallery() + } - font: Theme.defaultFont - icon.source: Theme.getThemeVectorIcon("ic_file_black_24dp") - height: 48 - leftPadding: Theme.menuItemLeftPadding + MenuItem { + id: attachFileMenuItem + text: qsTr('Attach a file') - onTriggered: attachFile() - } + font: Theme.defaultFont + icon.source: Theme.getThemeVectorIcon("ic_file_black_24dp") + height: 48 + leftPadding: Theme.menuItemLeftPadding - MenuSeparator { - id: separatorDrawingItem - width: parent.width - } + onTriggered: attachFile() + } - MenuItem { - id: attachDrawingMenuItem - text: qsTr('Draw a sketch') + MenuSeparator { + id: separatorDrawingItem + width: parent.width + } - font: Theme.defaultFont - icon.source: Theme.getThemeVectorIcon("ic_freehand_white_24dp") - height: 48 - leftPadding: Theme.menuItemLeftPadding + MenuItem { + id: attachDrawingMenuItem + text: qsTr('Draw a sketch') + + font: Theme.defaultFont + icon.source: Theme.getThemeVectorIcon("ic_freehand_white_24dp") + height: 48 + leftPadding: Theme.menuItemLeftPadding - onTriggered: { - sketcherConnection.enabled = true; - sketcher.clear(); - sketcher.open(); + onTriggered: { + sketcherConnection.enabled = true; + sketcher.clear(); + sketcher.open(); + } } } } diff --git a/src/qml/editorwidgets/TextEdit.qml b/src/qml/editorwidgets/TextEdit.qml index 278252ac2b..47f9522fda 100644 --- a/src/qml/editorwidgets/TextEdit.qml +++ b/src/qml/editorwidgets/TextEdit.qml @@ -146,52 +146,56 @@ EditorWidgetBase { hasMenu = true; } - MenuItem { - id: copyTextItem - text: qsTr('Copy Text') + Item { + visible: false - font: Theme.defaultFont - icon.source: Theme.getThemeVectorIcon("ic_copy_black_24dp") - height: 48 - leftPadding: Theme.menuItemLeftPadding + MenuItem { + id: copyTextItem + text: qsTr('Copy Text') + + font: Theme.defaultFont + icon.source: Theme.getThemeVectorIcon("ic_copy_black_24dp") + height: 48 + leftPadding: Theme.menuItemLeftPadding - onTriggered: { - platformUtilities.copyTextToClipboard(value); + onTriggered: { + platformUtilities.copyTextToClipboard(value); + } } - } - MenuItem { - id: pasteTextItem - text: qsTr('Paste Text') + MenuItem { + id: pasteTextItem + text: qsTr('Paste Text') - font: Theme.defaultFont - icon.source: Theme.getThemeVectorIcon("ic_paste_black_24dp") - height: 48 - leftPadding: Theme.menuItemLeftPadding + font: Theme.defaultFont + icon.source: Theme.getThemeVectorIcon("ic_paste_black_24dp") + height: 48 + leftPadding: Theme.menuItemLeftPadding - onTriggered: { - var text = platformUtilities.getTextFromClipboard(); - text = text.trim(); - valueChangeRequested(text, text == ''); + onTriggered: { + var text = platformUtilities.getTextFromClipboard(); + text = text.trim(); + valueChangeRequested(text, text == ''); + } } - } - MenuSeparator { - id: separatorItem - width: parent.width - } + MenuSeparator { + id: separatorItem + width: parent.width + } - MenuItem { - id: scanCodeItem - text: qsTr('Scan Code') + MenuItem { + id: scanCodeItem + text: qsTr('Scan Code') - font: Theme.defaultFont - icon.source: withNfc ? Theme.getThemeVectorIcon("ic_qr_nfc_code_black_24dp") : Theme.getThemeVectorIcon("ic_qr_code_black_24dp") - height: 48 - leftPadding: Theme.menuItemLeftPadding + font: Theme.defaultFont + icon.source: withNfc ? Theme.getThemeVectorIcon("ic_qr_nfc_code_black_24dp") : Theme.getThemeVectorIcon("ic_qr_code_black_24dp") + height: 48 + leftPadding: Theme.menuItemLeftPadding - onTriggered: { - requestBarcode(topItem); + onTriggered: { + requestBarcode(topItem); + } } }