From 7687e1221e55f96035ba559c374b1672207f4ef4 Mon Sep 17 00:00:00 2001 From: huayadong Date: Fri, 10 Dec 2021 15:39:21 +0800 Subject: [PATCH] insert the monitor after placement, and the screensaver is abnormal --- src/fullbackgroundwidget.cpp | 17 +++++++++++++---- src/lockwidget.cpp | 2 +- src/ukui-screensaver-dialog.cpp | 2 +- 3 files changed, 15 insertions(+), 6 deletions(-) diff --git a/src/fullbackgroundwidget.cpp b/src/fullbackgroundwidget.cpp index 46795d0..f4ddaa1 100755 --- a/src/fullbackgroundwidget.cpp +++ b/src/fullbackgroundwidget.cpp @@ -516,7 +516,10 @@ void FullBackgroundWidget::onGlobalButtonDrag(int xPos, int yPos) ScreenSaver *saver = configuration->getScreensaver(); if(saver->path == "/usr/lib/ukui-screensaver/ukui-screensaver-default") return ; - clearScreensavers(); + if(screenStatus & SCREEN_SAVER) + { + clearScreensavers(); + } } } @@ -526,8 +529,11 @@ void FullBackgroundWidget::onScreenCountChanged(int) QSize newSize = monitorWatcher->getVirtualSize(); setGeometry(0, 0, newSize.width(), newSize.height()); //repaint(); + if(screenStatus & SCREEN_SAVER) + { + clearScreensavers(); + } update(); - clearScreensavers(); } void FullBackgroundWidget::onDesktopResized() @@ -536,8 +542,11 @@ void FullBackgroundWidget::onDesktopResized() setGeometry(desktop->geometry()); if(lockWidget) onCursorMoved(cursor().pos()); -// clearScreensavers(); - //repaint(); + if(screenStatus & SCREEN_SAVER) + { + clearScreensavers(); + } + //repaint(); update(); } diff --git a/src/lockwidget.cpp b/src/lockwidget.cpp index 3ab66a5..d69e890 100755 --- a/src/lockwidget.cpp +++ b/src/lockwidget.cpp @@ -227,7 +227,7 @@ void LockWidget::initUserMenu() * qt5.6上,qmenu文字以图标左方为起点,20.04上文字以图标右方为起点,所以 * qt5.6时,左边距要设置大一点,避免与图标重合 */ -#if (QT_VERSION >= QT_VERSION_CHECK(5, 12, 0)) +#if (QT_VERSION >= QT_VERSION_CHECK(5, 7, 0)) usersMenu->setStyleSheet("QMenu::item{padding: 2px 10px 2px 10px;}"); #else usersMenu->setStyleSheet("QMenu::item{padding: 2px 10px 2px 30px;}"); diff --git a/src/ukui-screensaver-dialog.cpp b/src/ukui-screensaver-dialog.cpp index d78dafb..84a912a 100755 --- a/src/ukui-screensaver-dialog.cpp +++ b/src/ukui-screensaver-dialog.cpp @@ -173,7 +173,7 @@ int main(int argc, char *argv[]) if(parser.isSet(lockOption)) { - window->onScreensaver(); + window->lock(); } if(parser.isSet(sessionIdleOption)) -- 2.30.0