修复不接显示器开机,放置一段时间后插上显示器,屏保显示异常

This commit is contained in:
huayadong 2021-12-10 15:47:12 +08:00
parent 62773f94f6
commit 41be40d79f
2 changed files with 90 additions and 1 deletions

View File

@ -0,0 +1,84 @@
From 7687e1221e55f96035ba559c374b1672207f4ef4 Mon Sep 17 00:00:00 2001
From: huayadong <huayadong@kylinos.cn>
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

View File

@ -1,6 +1,6 @@
Name: ukui-screensaver
Version: 3.0.1
Release: 16
Release: 17
Summary: parallels toolbox for UKUI
License: GPL-3+ GPL-2+
URL: http://www.ukui.org
@ -41,6 +41,7 @@ patch11: 0012-add-build-requires-packages.patch
patch12: 0013-Update-package-version.patch
patch13: fix-root-user-had-not-face-icon.patch
Patch14: fix-root-can-not-input-passwd-bug.patch
Patch15: 0001-insert-the-monitor-after-placement-and-the-screensav.patch
%description
The ukui-sidebar is mainly used in the desktop operating system.
@ -64,6 +65,7 @@ Patch14: fix-root-can-not-input-passwd-bug.patch
%patch11 -p1
%patch12 -p1
%patch13 -p1
%patch15 -p1
%patch14 -p1
%build
@ -93,6 +95,9 @@ rm -rf $RPM_BUILD_ROOT
#%%{_datadir}/ukui-screensaver/screensaver-en.ini
%changelog
* Fri Dec 10 2021 huayadong <huayadong@kylinos.cn> - 3.0.1-17
- add patch15: 0001-insert-the-monitor-after-placement-and-the-screensav.patch
* Thu Dec 09 2021 huayadong <huayadong@kylinos.cn> - 3.0.1-16
- add patch14: fix-root-can-not-input-passwd-bug.patch