aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorGravatar ctrlaltca2025-12-07 18:02:14 +0100
committerGravatar GitHub2025-12-07 18:02:14 +0100
commit4731ec54aa0a92a28ebe635fe2f0a4b60220da1a (patch)
treed9fefa3ecfc176c1c0860edf5f32d0b9f529d599 /src
parentRevert "Use floating point widths in KviIrcView: fixes overlapping texts" (#2... (diff)
downloadKVIrc-4731ec54aa0a92a28ebe635fe2f0a4b60220da1a.tar.gz
KVIrc-4731ec54aa0a92a28ebe635fe2f0a4b60220da1a.tar.bz2
KVIrc-4731ec54aa0a92a28ebe635fe2f0a4b60220da1a.zip
Fix geometry sanity check to permit startup on secondary monitors (#2731)
Also, avoid a warning due to QGuiApplication::setHighDpiScaleFactorRoundingPolicy being called too late in application startup on qt6 Fix #2693
Diffstat (limited to 'src')
-rw-r--r--src/kvirc/kernel/KviApplication.cpp3
-rw-r--r--src/kvirc/kernel/KviMain.cpp3
-rw-r--r--src/kvirc/ui/KviMainWindow.cpp4
3 files changed, 6 insertions, 4 deletions
diff --git a/src/kvirc/kernel/KviApplication.cpp b/src/kvirc/kernel/KviApplication.cpp
index 4cc98f9de..7c714a23b 100644
--- a/src/kvirc/kernel/KviApplication.cpp
+++ b/src/kvirc/kernel/KviApplication.cpp
@@ -227,9 +227,6 @@ KviApplication::KviApplication(int & argc, char ** argv)
kvi_socket_flushTrafficCounters();
// don't let qt quit the application by itself
setQuitOnLastWindowClosed(false);
-
- // Restore Qt5-like rounding to fix HiDPI support on QWebEngine
- QGuiApplication::setHighDpiScaleFactorRoundingPolicy(Qt::HighDpiScaleFactorRoundingPolicy::Round);
}
void KviApplication::setup()
diff --git a/src/kvirc/kernel/KviMain.cpp b/src/kvirc/kernel/KviMain.cpp
index c11dbd775..1fee78e28 100644
--- a/src/kvirc/kernel/KviMain.cpp
+++ b/src/kvirc/kernel/KviMain.cpp
@@ -372,6 +372,9 @@ int main(int argc, char ** argv)
qputenv("QT_BEARER_POLL_TIMEOUT", QByteArray::number(-1));
#endif
+ // Restore Qt5-like rounding to fix HiDPI support on QWebEngine
+ QGuiApplication::setHighDpiScaleFactorRoundingPolicy(Qt::HighDpiScaleFactorRoundingPolicy::Round);
+
KviApplication * pTheApp = new KviApplication(argc, argv);
#ifdef COMPILE_KDE_SUPPORT
diff --git a/src/kvirc/ui/KviMainWindow.cpp b/src/kvirc/ui/KviMainWindow.cpp
index b5ab7f1fc..058fbc69e 100644
--- a/src/kvirc/ui/KviMainWindow.cpp
+++ b/src/kvirc/ui/KviMainWindow.cpp
@@ -142,7 +142,9 @@ KviMainWindow::KviMainWindow(QWidget * pParent)
createWindowList();
- if((KVI_OPTION_RECT(KviOption_rectFrameGeometry).width() < 100) || (KVI_OPTION_RECT(KviOption_rectFrameGeometry).height() < 100) || (KVI_OPTION_RECT(KviOption_rectFrameGeometry).x() > g_pMainWindow->screen()->availableSize().width()) || (KVI_OPTION_RECT(KviOption_rectFrameGeometry).y() > g_pMainWindow->screen()->availableSize().height()))
+ if(!g_pMainWindow->screen()->availableVirtualGeometry().contains(KVI_OPTION_RECT(KviOption_rectFrameGeometry)) ||
+ KVI_OPTION_RECT(KviOption_rectFrameGeometry).width() < 100 ||
+ KVI_OPTION_RECT(KviOption_rectFrameGeometry).height() < 100)
{
// Try to find some reasonable defaults
// prefer primary screen for first startup