TextEditor: Update circular clipboard on cut

Task-number: QTCREATORBUG-8713
Change-Id: Ic83c78a4caf7f768259c8f6830e7b81016c70e5e
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@digia.com>
Reviewed-by: David Schulz <david.schulz@digia.com>
This commit is contained in:
Orgad Shaneh
2013-09-23 11:53:03 +03:00
committed by David Schulz
parent 09aad1ac4d
commit 9bf1be7f22
2 changed files with 12 additions and 6 deletions

View File

@@ -5804,6 +5804,7 @@ void BaseTextEditorWidget::cut()
return; return;
} }
QPlainTextEdit::cut(); QPlainTextEdit::cut();
collectToCircularClipboard();
} }
void BaseTextEditorWidget::selectAll() void BaseTextEditorWidget::selectAll()
@@ -5818,14 +5819,18 @@ void BaseTextEditorWidget::copy()
return; return;
QPlainTextEdit::copy(); QPlainTextEdit::copy();
collectToCircularClipboard();
}
void BaseTextEditorWidget::collectToCircularClipboard()
{
const QMimeData *mimeData = QApplication::clipboard()->mimeData(); const QMimeData *mimeData = QApplication::clipboard()->mimeData();
if (mimeData) { if (!mimeData)
CircularClipboard *circularClipBoard = CircularClipboard::instance(); return;
circularClipBoard->collect(duplicateMimeData(mimeData)); CircularClipboard *circularClipBoard = CircularClipboard::instance();
// We want the latest copied content to be the first one to appear on circular paste. circularClipBoard->collect(duplicateMimeData(mimeData));
circularClipBoard->toLastCollect(); // We want the latest copied content to be the first one to appear on circular paste.
} circularClipBoard->toLastCollect();
} }
void BaseTextEditorWidget::paste() void BaseTextEditorWidget::paste()

View File

@@ -355,6 +355,7 @@ protected:
private: private:
void maybeSelectLine(); void maybeSelectLine();
void updateCannotDecodeInfo(); void updateCannotDecodeInfo();
void collectToCircularClipboard();
public: public:
void duplicateFrom(BaseTextEditorWidget *editor); void duplicateFrom(BaseTextEditorWidget *editor);