From f8144a6b58b8cb836f8ae43b82f97f18d73c1dea Mon Sep 17 00:00:00 2001 From: MoonL79 <151734889+MoonL79@users.noreply.github.com> Date: Tue, 14 Apr 2026 16:51:19 +0800 Subject: [PATCH 1/4] =?UTF-8?q?=E4=B8=8B=E4=B8=80=E6=AD=A5=E6=8C=89?= =?UTF-8?q?=E9=92=AE=E8=A7=A3=E9=94=81=E5=8A=9F=E8=83=BD=EF=BC=8C=E5=9F=BA?= =?UTF-8?q?=E7=A1=80=E8=AE=BE=E6=96=BD=E6=94=AF=E6=8C=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- TeXmacs/progs/generic/generic-edit.scm | 13 +++- src/Plugins/Qt/QTMImagePopup.cpp | 6 +- src/Plugins/Qt/qt_tutorial.cpp | 88 ++++++++++++++++++++++++-- src/Plugins/Qt/qt_tutorial.hpp | 9 +++ 4 files changed, 107 insertions(+), 9 deletions(-) diff --git a/TeXmacs/progs/generic/generic-edit.scm b/TeXmacs/progs/generic/generic-edit.scm index f69e961453..e3d0153d90 100644 --- a/TeXmacs/progs/generic/generic-edit.scm +++ b/TeXmacs/progs/generic/generic-edit.scm @@ -521,7 +521,9 @@ ocr-paste (with data (parse-texmacs-snippet (tree->string (tree-ref (clipboard-get "primary") 1))) (when (tree-is? (tree-ref data 0) 'image) - (ocr-to-latex-by-cursor data)))) + (ocr-to-latex-by-cursor data) + (when (defined? 'tutorial-notify-action) + (tutorial-notify-action "ocr-paste"))))) #| image-and-ocr-paste @@ -539,7 +541,9 @@ image-and-ocr-paste (kbd-return) (when (not (defined? 'ocr-to-latex-by-cursor)) (use-modules (liii ocr))) - (ocr-to-latex-by-cursor data)))) + (ocr-to-latex-by-cursor data) + (when (defined? 'tutorial-notify-action) + (tutorial-notify-action "ocr-paste"))))) (tm-define (paste-as-html) (with source-format (qt-clipboard-format) @@ -626,7 +630,10 @@ TODO: 在文本模式中,可以自动识别剪贴板中的内容,并智能 (clipboard-paste-import "code" "primary")) ((== mode "math") (clipboard-paste-import "latex" "primary")) - (else (smart-format-paste)))))) + (else (smart-format-paste))))) + (when (and (defined? 'tutorial-notify-action) + (not (string-starts? (qt-clipboard-format) "image"))) + (tutorial-notify-action "magic-paste"))) (tm-define (any-image-context?) (tree-innermost diff --git a/src/Plugins/Qt/QTMImagePopup.cpp b/src/Plugins/Qt/QTMImagePopup.cpp index bc7d256979..31135f99e1 100644 --- a/src/Plugins/Qt/QTMImagePopup.cpp +++ b/src/Plugins/Qt/QTMImagePopup.cpp @@ -69,8 +69,12 @@ QTMImagePopup::QTMImagePopup (QWidget* parent, qt_simple_widget_rep* owner) call ("set-image-alignment", current_tree, "center"); else if (button == rightBtn) call ("set-image-alignment", current_tree, "right"); - else if (button == ocrBtn) + else if (button == ocrBtn) { call ("ocr-to-latex-by-image", current_tree); + eval ( + "(when (defined? 'tutorial-notify-action) " + "(tutorial-notify-action \"ocr-paste\"))"); + } current_align= as_string (call ("get-image-alignment", current_tree)); }); diff --git a/src/Plugins/Qt/qt_tutorial.cpp b/src/Plugins/Qt/qt_tutorial.cpp index c6c2da3c72..833548c35e 100644 --- a/src/Plugins/Qt/qt_tutorial.cpp +++ b/src/Plugins/Qt/qt_tutorial.cpp @@ -187,6 +187,12 @@ parseStepEntry (const json& stepJson, QWK::TutorialStepConfig& step, QString ("Tutorial step %1 on-enter must be a string").arg (step.id); return false; } + if (!readStringField ("require-action", step.requiredAction)) { + if (errorMessage != nullptr) + *errorMessage= QString ("Tutorial step %1 require-action must be a string") + .arg (step.id); + return false; + } if (!hasTopTextField && step.mediaPath.isEmpty () && step.bottomText.isEmpty ()) { @@ -305,6 +311,9 @@ firstLaunchTutorialConfigPath () { "$TEXMACS_PATH/plugins/tutorial/data/first-launch-tutorial.json"); } +constexpr const char* kTutorialLastActionPreference= + "tutorial:last-action"; + } // namespace namespace QWK { @@ -490,17 +499,17 @@ TutorialBubble::TutorialBubble (QWidget* parent) } QLabel#tutorialTitle { color: #122033; - font-size: 17px; + font-size: 20px; font-weight: 700; } QLabel#tutorialBodyText { color: #334155; - font-size: 13px; + font-size: 16px; line-height: 1.5; } QLabel#tutorialProgress { color: #6b7280; - font-size: 12px; + font-size: 13px; font-weight: 600; } QPushButton { @@ -520,7 +529,9 @@ TutorialBubble::TutorialBubble (QWidget* parent) "#d1d5db; }")); m_nextButton->setStyleSheet (QStringLiteral ( "QPushButton { background: #0f766e; color: white; border: 1px solid " - "#0f766e; }")); + "#0f766e; } " + "QPushButton:disabled { background: #cbd5e1; color: #64748b; border: " + "1px solid #cbd5e1; }")); connect (m_previousButton, &QPushButton::clicked, this, &TutorialBubble::previousRequested); @@ -635,6 +646,12 @@ TutorialBubble::setLastStep (bool last) { : qt_translate ("下一步")); } +void +TutorialBubble::setNextEnabled (bool enabled, const QString& toolTip) { + m_nextButton->setEnabled (enabled); + m_nextButton->setToolTip (toolTip); +} + TutorialOverlay::TutorialOverlay (QMainWindow* parentWindow) : QWidget (parentWindow), m_parentWindow (parentWindow), m_bubble (new TutorialBubble (this)), m_hasHighlight (false) { @@ -798,6 +815,11 @@ TutorialOverlay::repositionBubble (TutorialPlacement placement) { m_bubble->raise (); } +void +TutorialOverlay::setNextEnabled (bool enabled, const QString& toolTip) { + m_bubble->setNextEnabled (enabled, toolTip); +} + void TutorialOverlay::paintEvent (QPaintEvent* event) { (void) event; @@ -839,7 +861,11 @@ TutorialOverlay::wheelEvent (QWheelEvent* event) { TutorialEngine::TutorialEngine (QObject* parent) : QObject (parent), m_currentIndex (-1), m_displayedIndex (-1), - m_stepRequestId (0) {} + m_stepRequestId (0), m_actionPollTimer (new QTimer (this)) { + m_actionPollTimer->setInterval (150); + connect (m_actionPollTimer, &QTimer::timeout, this, + &TutorialEngine::pollRequiredAction); +} bool TutorialEngine::start (QMainWindow* hostWindow, @@ -855,6 +881,8 @@ TutorialEngine::start (QMainWindow* hostWindow, m_currentIndex = -1; m_displayedIndex= -1; m_stepRequestId = 0; + m_completedActionSteps.clear (); + reset_user_preference (kTutorialLastActionPreference); m_overlay = new TutorialOverlay (hostWindow); m_overlay->show (); m_overlay->raise (); @@ -875,6 +903,8 @@ TutorialEngine::start (QMainWindow* hostWindow, void TutorialEngine::stop (TutorialFinishReason reason) { if (m_hostWindow != nullptr) m_hostWindow->removeEventFilter (this); + m_actionPollTimer->stop (); + reset_user_preference (kTutorialLastActionPreference); if (m_overlay != nullptr) { m_overlay->hide (); @@ -886,6 +916,7 @@ TutorialEngine::stop (TutorialFinishReason reason) { m_currentIndex = -1; m_displayedIndex= -1; m_stepRequestId = 0; + m_completedActionSteps.clear (); m_config = TutorialFlowConfig (); m_registry = TutorialTargetRegistry (); @@ -942,6 +973,50 @@ TutorialEngine::executeOnEnter (const TutorialStepConfig& step) { exec_delayed (scheme_cmd (from_qstring (step.onEnterCommand))); } +void +TutorialEngine::updateCurrentStepGate () { + if (!isActive () || m_overlay == nullptr || m_currentIndex < 0 || + m_currentIndex >= m_config.steps.size ()) { + if (m_actionPollTimer->isActive ()) m_actionPollTimer->stop (); + return; + } + + const TutorialStepConfig& step= m_config.steps[m_currentIndex]; + if (step.requiredAction.trimmed ().isEmpty () || + m_completedActionSteps.contains (step.id)) { + m_overlay->setNextEnabled (true); + if (m_actionPollTimer->isActive ()) m_actionPollTimer->stop (); + return; + } + + reset_user_preference (kTutorialLastActionPreference); + m_overlay->setNextEnabled ( + false, qt_translate ("完成当前步骤要求的粘贴操作后才可继续")); + if (!m_actionPollTimer->isActive ()) m_actionPollTimer->start (); +} + +void +TutorialEngine::pollRequiredAction () { + if (!isActive () || m_currentIndex < 0 || m_currentIndex >= m_config.steps.size ()) { + m_actionPollTimer->stop (); + return; + } + + const TutorialStepConfig& step= m_config.steps[m_currentIndex]; + if (step.requiredAction.trimmed ().isEmpty ()) { + m_actionPollTimer->stop (); + return; + } + + const QString lastAction= + to_qstring (get_user_preference (kTutorialLastActionPreference, "")); + if (lastAction != step.requiredAction) return; + + m_completedActionSteps.insert (step.id); + reset_user_preference (kTutorialLastActionPreference); + updateCurrentStepGate (); +} + void TutorialEngine::updateOverlayGeometry () { if (m_overlay == nullptr || m_hostWindow == nullptr) return; @@ -990,6 +1065,7 @@ TutorialEngine::showStep (int index, int retryCount, int fallbackDirection, const TutorialStepConfig& step= m_config.steps[index]; if (step.targetId.trimmed ().isEmpty ()) { m_overlay->setStep (step, index, m_config.steps.size ()); + updateCurrentStepGate (); m_overlay->clearHighlight (); m_overlay->show (); m_overlay->raise (); @@ -1017,6 +1093,7 @@ TutorialEngine::showStep (int index, int retryCount, int fallbackDirection, } m_overlay->setStep (step, index, m_config.steps.size ()); + updateCurrentStepGate (); m_overlay->clearHighlight (); m_overlay->show (); m_overlay->raise (); @@ -1029,6 +1106,7 @@ TutorialEngine::showStep (int index, int retryCount, int fallbackDirection, } m_overlay->setStep (step, index, m_config.steps.size ()); + updateCurrentStepGate (); m_overlay->setHighlightedRect (rect, step.highlightPadding); m_overlay->show (); m_overlay->raise (); diff --git a/src/Plugins/Qt/qt_tutorial.hpp b/src/Plugins/Qt/qt_tutorial.hpp index 6658db4dd9..a67ea5df82 100644 --- a/src/Plugins/Qt/qt_tutorial.hpp +++ b/src/Plugins/Qt/qt_tutorial.hpp @@ -8,6 +8,7 @@ #include #include #include +#include #include #include #include @@ -20,6 +21,7 @@ class QPushButton; class QEvent; class QMouseEvent; class QPaintEvent; +class QTimer; class QWheelEvent; namespace QWK { @@ -40,6 +42,7 @@ struct TutorialStepConfig { QString mediaPath; QString bottomText; QString onEnterCommand; + QString requiredAction; TutorialBubbleSize bubbleSize= TutorialBubbleSize::Medium; int offsetX = 0; int offsetY = 0; @@ -81,6 +84,7 @@ class TutorialBubble : public QWidget { void setStep (const TutorialStepConfig& step, int index, int total); void setFirstStep (bool first); void setLastStep (bool last); + void setNextEnabled (bool enabled, const QString& toolTip= QString ()); signals: void previousRequested (); @@ -110,6 +114,7 @@ class TutorialOverlay : public QWidget { void setHighlightedRect (const QRect& rect, int padding); void clearHighlight (); void repositionBubble (TutorialPlacement placement); + void setNextEnabled (bool enabled, const QString& toolTip= QString ()); signals: void previousRequested (); @@ -160,6 +165,8 @@ class TutorialEngine : public QObject { private: void executeOnEnter (const TutorialStepConfig& step); + void updateCurrentStepGate (); + void pollRequiredAction (); void refreshCurrentStepGeometry (); void updateOverlayGeometry (); void showStep (int index, int retryCount= 0, int fallbackDirection= 0, @@ -175,6 +182,8 @@ class TutorialEngine : public QObject { int m_currentIndex; int m_displayedIndex; int m_stepRequestId; + QSet m_completedActionSteps; + QTimer* m_actionPollTimer; }; class FirstLaunchTutorialController : public QObject { From 25ec8fd10cd77ccd473b0e012c57d917b5236a90 Mon Sep 17 00:00:00 2001 From: MoonL79 <151734889+MoonL79@users.noreply.github.com> Date: Tue, 14 Apr 2026 16:52:23 +0800 Subject: [PATCH 2/4] =?UTF-8?q?=E5=90=AF=E5=8A=A8=E5=BC=95=E5=AF=BC?= =?UTF-8?q?=E6=B5=81=E7=A8=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- TeXmacs/misc/images/tutorial/stem-image.png | Bin 0 -> 205362 bytes .../tutorial/data/first-launch-tutorial.json | 22 ++++++----- TeXmacs/plugins/tutorial/data/ocr-demo.tmu | 14 +++++++ .../tutorial/data/zhihu-magic-paste-demo.html | 29 +++++++++++++++ .../plugins/tutorial/progs/init-tutorial.scm | 35 +++++++++++++++++- 5 files changed, 88 insertions(+), 12 deletions(-) create mode 100644 TeXmacs/misc/images/tutorial/stem-image.png create mode 100644 TeXmacs/plugins/tutorial/data/ocr-demo.tmu create mode 100644 TeXmacs/plugins/tutorial/data/zhihu-magic-paste-demo.html diff --git a/TeXmacs/misc/images/tutorial/stem-image.png b/TeXmacs/misc/images/tutorial/stem-image.png new file mode 100644 index 0000000000000000000000000000000000000000..d7dbc7c0fe0edd29ad8b3bb0ce67df8df54add83 GIT binary patch literal 205362 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