diff options
| author | Felix (xq) Queißner <git@mq32.de> | 2020-06-29 00:16:34 +0200 |
|---|---|---|
| committer | Felix (xq) Queißner <git@mq32.de> | 2020-06-29 00:16:34 +0200 |
| commit | 1360cbe9cd11c99a23847600c820a900897dd381 (patch) | |
| tree | d19a5a151cb4813369e67742acc984a37665c719 /src/widgets/kristalltextbrowser.cpp | |
| parent | 741c71adff886f590081501932ec1520058d7def (diff) | |
| download | kristall-1360cbe9cd11c99a23847600c820a900897dd381.tar.gz | |
Makes Ctrl-LMB on a link open into a new tab.
Diffstat (limited to 'src/widgets/kristalltextbrowser.cpp')
| -rw-r--r-- | src/widgets/kristalltextbrowser.cpp | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/src/widgets/kristalltextbrowser.cpp b/src/widgets/kristalltextbrowser.cpp index 0843905..c813b05 100644 --- a/src/widgets/kristalltextbrowser.cpp +++ b/src/widgets/kristalltextbrowser.cpp @@ -5,12 +5,11 @@ KristallTextBrowser::KristallTextBrowser(QWidget *parent) : QTextBrowser(parent) { - + connect(this, &QTextBrowser::anchorClicked, this, &KristallTextBrowser::on_anchorClicked); } void KristallTextBrowser::mouseReleaseEvent(QMouseEvent *event) { - this->last_button = event->button(); if(event->button() == Qt::MiddleButton) { // Fake a middle-click event here QMouseEvent fake_event { @@ -21,8 +20,15 @@ void KristallTextBrowser::mouseReleaseEvent(QMouseEvent *event) event->modifiers() }; + this->signal_new_tab = true; QTextBrowser::mouseReleaseEvent(&fake_event); } else { + this->signal_new_tab = event->modifiers().testFlag(Qt::ControlModifier); QTextBrowser::mouseReleaseEvent(event); } } + +void KristallTextBrowser::on_anchorClicked(const QUrl &url) +{ + emit this->anchorClicked(url, this->signal_new_tab); +} |
