diff --git a/src/widgets/capture/capturewidget.cpp b/src/widgets/capture/capturewidget.cpp index b291bb2e..b3c671f9 100644 --- a/src/widgets/capture/capturewidget.cpp +++ b/src/widgets/capture/capturewidget.cpp @@ -26,7 +26,6 @@ #include "capturewidget.h" #include "src/core/controller.h" #include "src/utils/colorutils.h" -#include "src/utils/globalvalues.h" #include "src/utils/screengrabber.h" #include "src/utils/screenshotsaver.h" #include "src/utils/systemnotification.h" @@ -37,17 +36,14 @@ #include "src/widgets/orientablepushbutton.h" #include "src/widgets/panel/sidepanelwidget.h" #include -#include #include #include -#include #include #include #include #include #include #include - // CaptureWidget is the main component used to capture the screen. It contains // an area of selection with its respective buttons. @@ -1006,6 +1002,11 @@ void CaptureWidget::childLeave() void CaptureWidget::copyScreenshot() { m_captureDone = true; + if (m_activeTool != nullptr) { + QPainter painter(&m_context.screenshot); + m_activeTool->process(painter, m_context.screenshot, true); + } + ScreenshotSaver().saveToClipboard(pixmap()); close(); } @@ -1013,6 +1014,10 @@ void CaptureWidget::copyScreenshot() void CaptureWidget::saveScreenshot() { m_captureDone = true; + if (m_activeTool != nullptr) { + QPainter painter(&m_context.screenshot); + m_activeTool->process(painter, m_context.screenshot, true); + } hide(); if (m_context.savePath.isEmpty()) { ScreenshotSaver().saveToFilesystemGUI(pixmap()); @@ -1047,4 +1052,4 @@ QRect CaptureWidget::extendedRect(QRect* r) const r->top() * devicePixelRatio, r->width() * devicePixelRatio, r->height() * devicePixelRatio); -} +} \ No newline at end of file