X-Git-Url: https://git.quassel-irc.org/?a=blobdiff_plain;ds=sidebyside;f=src%2Fqtui%2Fmainwin.cpp;h=96786528d0554e3b4daeb0a4afa2398ee54c10f8;hb=285215315e6f2420724532323a4b1bccae156cb1;hp=dae50296e37e85e735c9947ef8bef85a2c6ada09;hpb=1a5c1814a0c52f6f35e65c7033b2f896bf1188e3;p=quassel.git
diff --git a/src/qtui/mainwin.cpp b/src/qtui/mainwin.cpp
index dae50296..96786528 100644
--- a/src/qtui/mainwin.cpp
+++ b/src/qtui/mainwin.cpp
@@ -466,7 +466,14 @@ void MainWin::setupActions()
coll,
this,
&MainWin::onFormatUnderlineTriggered,
- QKeySequence::Underline)}});
+ QKeySequence::Underline)},
+ {"FormatStrikethrough",
+ new Action(icon::get("format-text-strikethrough"),
+ tr("Toggle strikethrough"),
+ coll,
+ this,
+ &MainWin::onFormatStrikethroughTriggered,
+ QKeySequence(Qt::CTRL + Qt::SHIFT + Qt::Key_S))}});
// Navigation
coll = QtUi::actionCollection("Navigation", tr("Navigation"));
@@ -916,12 +923,12 @@ void MainWin::showNotificationsDlg()
void MainWin::onConfigureNetworksTriggered()
{
- SettingsPageDlg{new NetworksSettingsPage{}}.exec();
+ SettingsPageDlg{new NetworksSettingsPage{}, this}.exec();
}
void MainWin::onConfigureViewsTriggered()
{
- SettingsPageDlg{new BufferViewSettingsPage{}}.exec();
+ SettingsPageDlg{new BufferViewSettingsPage{}, this}.exec();
}
void MainWin::onLockLayoutToggled(bool lock)
@@ -1377,8 +1384,14 @@ void MainWin::handleNoSslInCore(bool* accepted)
void MainWin::handleSslErrors(const QSslSocket* socket, bool* accepted, bool* permanently)
{
QString errorString = "
";
- foreach (const QSslError error, socket->sslErrors())
+
+#if QT_VERSION < QT_VERSION_CHECK(5, 15, 0)
+ for (const auto& error : socket->sslErrors()) {
+#else
+ for (const auto& error : socket->sslHandshakeErrors()) {
+#endif
errorString += QString("- %1
").arg(error.errorString());
+ }
errorString += "
";
QMessageBox box(QMessageBox::Warning,
@@ -1506,7 +1519,7 @@ void MainWin::awayLogDestroyed()
void MainWin::showSettingsDlg()
{
- auto dlg = new SettingsDlg();
+ auto dlg = new SettingsDlg(this);
// Category: Interface
dlg->registerSettingsPage(new AppearanceSettingsPage(dlg));
@@ -1520,8 +1533,15 @@ void MainWin::showSettingsDlg()
#ifdef HAVE_SONNET
dlg->registerSettingsPage(new SonnetSettingsPage(dlg));
#endif
- dlg->registerSettingsPage(new HighlightSettingsPage(dlg));
- dlg->registerSettingsPage(new CoreHighlightSettingsPage(dlg));
+ auto coreHighlightsPage = new CoreHighlightSettingsPage(dlg);
+ auto localHighlightsPage = new HighlightSettingsPage(dlg);
+ // Let CoreHighlightSettingsPage reload HighlightSettingsPage after doing an import with
+ // cleaning up. Otherwise, HighlightSettingsPage won't show that the local rules were deleted.
+ connect(coreHighlightsPage, &CoreHighlightSettingsPage::localHighlightsChanged,
+ localHighlightsPage, &HighlightSettingsPage::load);
+ // Put core-side highlights before local/legacy highlights
+ dlg->registerSettingsPage(coreHighlightsPage);
+ dlg->registerSettingsPage(localHighlightsPage);
dlg->registerSettingsPage(new NotificationsSettingsPage(dlg));
dlg->registerSettingsPage(new BacklogSettingsPage(dlg));
@@ -1544,7 +1564,7 @@ void MainWin::showSettingsDlg()
void MainWin::showAboutDlg()
{
- AboutDlg{}.exec();
+ AboutDlg{this}.exec();
}
void MainWin::showShortcutsDlg()
@@ -1556,7 +1576,7 @@ void MainWin::showShortcutsDlg()
}
dlg.configure(true);
#else
- SettingsPageDlg{new ShortcutsSettingsPage{QtUi::actionCollections()}}.exec();
+ SettingsPageDlg{new ShortcutsSettingsPage{QtUi::actionCollections()}, this}.exec();
#endif
}
@@ -1834,6 +1854,15 @@ void MainWin::onFormatUnderlineTriggered()
_inputWidget->toggleFormatUnderline();
}
+void MainWin::onFormatStrikethroughTriggered()
+{
+ if (!_inputWidget)
+ return;
+
+ _inputWidget->toggleFormatStrikethrough();
+}
+
+
void MainWin::onJumpHotBufferTriggered()
{
if (!_bufferHotList->rowCount())