mirror of
https://github.com/keepassxreboot/keepassxc.git
synced 2025-02-17 13:02:49 -05:00
parent
916ab99d62
commit
7137990a21
@ -51,6 +51,7 @@ void Clipboard::setText(const QString& text)
|
||||
if (config()->get("security/clearclipboard").toBool()) {
|
||||
int timeout = config()->get("security/clearclipboardtimeout").toInt();
|
||||
if (timeout > 0) {
|
||||
m_lastCopied = text;
|
||||
m_timer->start(timeout * 1000);
|
||||
}
|
||||
}
|
||||
@ -65,8 +66,12 @@ void Clipboard::clearClipboard()
|
||||
return;
|
||||
}
|
||||
|
||||
clipboard->clear(QClipboard::Clipboard);
|
||||
if (clipboard->supportsSelection()) {
|
||||
if (clipboard->text(QClipboard::Clipboard) == m_lastCopied) {
|
||||
clipboard->clear(QClipboard::Clipboard);
|
||||
}
|
||||
|
||||
if (clipboard->supportsSelection()
|
||||
&& (clipboard->text(QClipboard::Selection) == m_lastCopied)) {
|
||||
clipboard->clear(QClipboard::Selection);
|
||||
}
|
||||
|
||||
@ -74,6 +79,8 @@ void Clipboard::clearClipboard()
|
||||
QDBusMessage message = QDBusMessage::createMethodCall("org.kde.klipper", "/klipper", "", "clearClipboardHistory");
|
||||
QDBusConnection::sessionBus().send(message);
|
||||
#endif
|
||||
|
||||
m_lastCopied.clear();
|
||||
}
|
||||
|
||||
void Clipboard::cleanup()
|
||||
|
@ -43,6 +43,7 @@ private:
|
||||
static Clipboard* m_instance;
|
||||
|
||||
QTimer* m_timer;
|
||||
QString m_lastCopied;
|
||||
};
|
||||
|
||||
inline Clipboard* clipboard() {
|
||||
|
Loading…
x
Reference in New Issue
Block a user