mirror of
https://github.com/keepassxreboot/keepassxc.git
synced 2025-12-04 15:39:34 +01:00
@@ -31,7 +31,7 @@ Clipboard::Clipboard(QObject* parent)
|
|||||||
{
|
{
|
||||||
m_timer->setSingleShot(true);
|
m_timer->setSingleShot(true);
|
||||||
connect(m_timer, SIGNAL(timeout()), SLOT(clearClipboard()));
|
connect(m_timer, SIGNAL(timeout()), SLOT(clearClipboard()));
|
||||||
connect(qApp, SIGNAL(aboutToQuit()), SLOT(cleanup()));
|
connect(qApp, SIGNAL(aboutToQuit()), SLOT(clearCopiedText()));
|
||||||
}
|
}
|
||||||
|
|
||||||
void Clipboard::setText(const QString& text)
|
void Clipboard::setText(const QString& text)
|
||||||
@@ -52,6 +52,14 @@ void Clipboard::setText(const QString& text)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void Clipboard::clearCopiedText()
|
||||||
|
{
|
||||||
|
if (m_timer->isActive()) {
|
||||||
|
m_timer->stop();
|
||||||
|
clearClipboard();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
void Clipboard::clearClipboard()
|
void Clipboard::clearClipboard()
|
||||||
{
|
{
|
||||||
QClipboard* clipboard = QApplication::clipboard();
|
QClipboard* clipboard = QApplication::clipboard();
|
||||||
@@ -73,14 +81,6 @@ void Clipboard::clearClipboard()
|
|||||||
m_lastCopied.clear();
|
m_lastCopied.clear();
|
||||||
}
|
}
|
||||||
|
|
||||||
void Clipboard::cleanup()
|
|
||||||
{
|
|
||||||
if (m_timer->isActive()) {
|
|
||||||
m_timer->stop();
|
|
||||||
clearClipboard();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
Clipboard* Clipboard::instance()
|
Clipboard* Clipboard::instance()
|
||||||
{
|
{
|
||||||
if (!m_instance) {
|
if (!m_instance) {
|
||||||
|
|||||||
@@ -33,9 +33,11 @@ public:
|
|||||||
|
|
||||||
static Clipboard* instance();
|
static Clipboard* instance();
|
||||||
|
|
||||||
|
public Q_SLOTS:
|
||||||
|
void clearCopiedText();
|
||||||
|
|
||||||
private Q_SLOTS:
|
private Q_SLOTS:
|
||||||
void clearClipboard();
|
void clearClipboard();
|
||||||
void cleanup();
|
|
||||||
|
|
||||||
private:
|
private:
|
||||||
explicit Clipboard(QObject* parent = Q_NULLPTR);
|
explicit Clipboard(QObject* parent = Q_NULLPTR);
|
||||||
|
|||||||
@@ -27,6 +27,7 @@
|
|||||||
#include "core/Metadata.h"
|
#include "core/Metadata.h"
|
||||||
#include "core/qsavefile.h"
|
#include "core/qsavefile.h"
|
||||||
#include "format/CsvExporter.h"
|
#include "format/CsvExporter.h"
|
||||||
|
#include "gui/Clipboard.h"
|
||||||
#include "gui/DatabaseWidget.h"
|
#include "gui/DatabaseWidget.h"
|
||||||
#include "gui/DatabaseWidgetStateSync.h"
|
#include "gui/DatabaseWidgetStateSync.h"
|
||||||
#include "gui/DragTabBar.h"
|
#include "gui/DragTabBar.h"
|
||||||
@@ -632,6 +633,8 @@ bool DatabaseTabWidget::hasLockableDatabases() const
|
|||||||
|
|
||||||
void DatabaseTabWidget::lockDatabases()
|
void DatabaseTabWidget::lockDatabases()
|
||||||
{
|
{
|
||||||
|
clipboard()->clearCopiedText();
|
||||||
|
|
||||||
for (int i = 0; i < count(); i++) {
|
for (int i = 0; i < count(); i++) {
|
||||||
DatabaseWidget* dbWidget = static_cast<DatabaseWidget*>(widget(i));
|
DatabaseWidget* dbWidget = static_cast<DatabaseWidget*>(widget(i));
|
||||||
Database* db = databaseFromDatabaseWidget(dbWidget);
|
Database* db = databaseFromDatabaseWidget(dbWidget);
|
||||||
|
|||||||
Reference in New Issue
Block a user