!30 bug#I69CSS【锁屏】合盖后重新打开进入锁屏,此时锁屏界面下方图标会被遮住
Merge pull request !30 from liudunfa/openkylin/yangtze
This commit is contained in:
commit
d5dfb48e55
|
@ -7,6 +7,7 @@ find_package(OpenCV REQUIRED)
|
||||||
find_package(PkgConfig)
|
find_package(PkgConfig)
|
||||||
find_package(KF5Screen REQUIRED)
|
find_package(KF5Screen REQUIRED)
|
||||||
find_package(KF5Wayland REQUIRED)
|
find_package(KF5Wayland REQUIRED)
|
||||||
|
find_package(LayerShellQt REQUIRED)
|
||||||
|
|
||||||
pkg_check_modules(GIOUNIX2 REQUIRED gio-unix-2.0)
|
pkg_check_modules(GIOUNIX2 REQUIRED gio-unix-2.0)
|
||||||
pkg_check_modules(GLIB2 REQUIRED glib-2.0 gio-2.0)
|
pkg_check_modules(GLIB2 REQUIRED glib-2.0 gio-2.0)
|
||||||
|
|
|
@ -1,3 +1,11 @@
|
||||||
|
ukui-screensaver (4.0.0.0-ok3~0628) yangtze; urgency=medium
|
||||||
|
|
||||||
|
* BUG号:bug#I69CSS【锁屏】合盖后重新打开进入锁屏,此时锁屏界面下方图标会被遮住
|
||||||
|
* 需求号:无
|
||||||
|
* 其他修改说明:无
|
||||||
|
|
||||||
|
-- liudun <liudun@kylinos.cn> Wed, 28 Jun 2023 15:05:12 +0800
|
||||||
|
|
||||||
ukui-screensaver (4.0.0.0-ok3~0608) yangtze; urgency=medium
|
ukui-screensaver (4.0.0.0-ok3~0608) yangtze; urgency=medium
|
||||||
|
|
||||||
* BUG号:无
|
* BUG号:无
|
||||||
|
|
|
@ -30,7 +30,8 @@ Build-Depends: debhelper-compat (= 12),
|
||||||
libkysdk-sysinfo-dev (>> 1.1.0kylin1),
|
libkysdk-sysinfo-dev (>> 1.1.0kylin1),
|
||||||
ukui-input-gather (>=1.0.0.2),
|
ukui-input-gather (>=1.0.0.2),
|
||||||
libinput-dev,
|
libinput-dev,
|
||||||
libukuiinputgatherclient-dev
|
libukuiinputgatherclient-dev,
|
||||||
|
layer-shell-qt
|
||||||
Standards-Version: 4.5.0
|
Standards-Version: 4.5.0
|
||||||
Rules-Requires-Root: no
|
Rules-Requires-Root: no
|
||||||
Homepage: https://www.github.com/ukui/ukui-screensaver
|
Homepage: https://www.github.com/ukui/ukui-screensaver
|
||||||
|
@ -44,6 +45,7 @@ Depends: ethtool,
|
||||||
ukui-session-manager,
|
ukui-session-manager,
|
||||||
libpam-biometric(>=3.20.0.10),
|
libpam-biometric(>=3.20.0.10),
|
||||||
ukui-input-gather(>=1.0.0.2),
|
ukui-input-gather(>=1.0.0.2),
|
||||||
|
layer-shell-qt,
|
||||||
${misc:Depends},
|
${misc:Depends},
|
||||||
${shlibs:Depends}
|
${shlibs:Depends}
|
||||||
Replaces: ukui-screensaver-common (<< 2.0.0)
|
Replaces: ukui-screensaver-common (<< 2.0.0)
|
||||||
|
|
|
@ -199,6 +199,7 @@ target_link_libraries(ukui-screensaver-dialog
|
||||||
opencv_imgcodecs
|
opencv_imgcodecs
|
||||||
opencv_imgproc
|
opencv_imgproc
|
||||||
opencv_core
|
opencv_core
|
||||||
|
LayerShellQt::Interface
|
||||||
)
|
)
|
||||||
link_libraries(libmatemixer.so glib-2.0.so)
|
link_libraries(libmatemixer.so glib-2.0.so)
|
||||||
|
|
||||||
|
|
|
@ -365,9 +365,9 @@ bool FullBackgroundWidget::eventFilter(QObject *obj, QEvent *event)
|
||||||
if(event->type() == QEvent::WindowDeactivate){
|
if(event->type() == QEvent::WindowDeactivate){
|
||||||
QTimer::singleShot(50,this,SLOT(laterActivate()));
|
QTimer::singleShot(50,this,SLOT(laterActivate()));
|
||||||
}else if(event->type() == QEvent::WindowActivate){
|
}else if(event->type() == QEvent::WindowActivate){
|
||||||
if(QString(qgetenv("XDG_SESSION_TYPE")) == "wayland" && !QX11Info::isPlatformX11()) {
|
// if(QString(qgetenv("XDG_SESSION_TYPE")) == "wayland" && !QX11Info::isPlatformX11()) {
|
||||||
PlasmaShellManager::getInstance()->setAppWindowKeepAbove(true);
|
// PlasmaShellManager::getInstance()->setAppWindowKeepAbove(true);
|
||||||
}
|
// }
|
||||||
|
|
||||||
QTimer::singleShot(500,this,SLOT(setLockState()));
|
QTimer::singleShot(500,this,SLOT(setLockState()));
|
||||||
QTimer::singleShot(200,this,SLOT(killWindow()));
|
QTimer::singleShot(200,this,SLOT(killWindow()));
|
||||||
|
@ -1222,9 +1222,9 @@ void FullBackgroundWidget::onDesktopResized()
|
||||||
update();
|
update();
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
if(QString(qgetenv("XDG_SESSION_TYPE")) == "wayland" && !QX11Info::isPlatformX11() ) {
|
// if(QString(qgetenv("XDG_SESSION_TYPE")) == "wayland" && !QX11Info::isPlatformX11() ) {
|
||||||
PlasmaShellManager::getInstance()->setPos(this->windowHandle(),QPoint(0,0));
|
// PlasmaShellManager::getInstance()->setPos(this->windowHandle(),QPoint(0,0));
|
||||||
}
|
// }
|
||||||
}
|
}
|
||||||
|
|
||||||
void FullBackgroundWidget::laterInhibit(bool val)
|
void FullBackgroundWidget::laterInhibit(bool val)
|
||||||
|
|
|
@ -45,6 +45,7 @@
|
||||||
#define MAX_FILE_SIZE 1024 * 1024
|
#define MAX_FILE_SIZE 1024 * 1024
|
||||||
#define LOG_FILE0 "screensaver_0.log"
|
#define LOG_FILE0 "screensaver_0.log"
|
||||||
#define LOG_FILE1 "screensaver_1.log"
|
#define LOG_FILE1 "screensaver_1.log"
|
||||||
|
#include <LayerShellQt/Shell>
|
||||||
|
|
||||||
#define GSETTINGS_SCHEMA_SCREENSAVER "org.ukui.screensaver"
|
#define GSETTINGS_SCHEMA_SCREENSAVER "org.ukui.screensaver"
|
||||||
#define KEY_LOCK_ENABLED "lock-enabled"
|
#define KEY_LOCK_ENABLED "lock-enabled"
|
||||||
|
@ -131,6 +132,8 @@ void handler(int signum)
|
||||||
#define WORKING_DIRECTORY "/usr/share/ukui-screensaver"
|
#define WORKING_DIRECTORY "/usr/share/ukui-screensaver"
|
||||||
int main(int argc, char *argv[])
|
int main(int argc, char *argv[])
|
||||||
{
|
{
|
||||||
|
LayerShellQt::Shell::useLayerShell();
|
||||||
|
|
||||||
if(argc < 2)
|
if(argc < 2)
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
|
@ -301,11 +304,17 @@ int main(int argc, char *argv[])
|
||||||
if(QString(qgetenv("XDG_SESSION_TYPE")) == "wayland" && !QX11Info::isPlatformX11()) {
|
if(QString(qgetenv("XDG_SESSION_TYPE")) == "wayland" && !QX11Info::isPlatformX11()) {
|
||||||
isWayland = true;
|
isWayland = true;
|
||||||
}
|
}
|
||||||
if (isWayland){
|
// if (isWayland){
|
||||||
PlasmaShellManager::getInstance();
|
// PlasmaShellManager::getInstance();
|
||||||
PlasmaShellManager::getInstance()->setAppWindowKeepAbove(true);
|
// PlasmaShellManager::getInstance()->setAppWindowKeepAbove(true);
|
||||||
|
// }
|
||||||
|
if (isWayland) {
|
||||||
|
if (auto layerShellWindow = LayerShellQt::Window::get(window->windowHandle())) {
|
||||||
|
layerShellWindow->setExclusiveZone(-1);
|
||||||
|
layerShellWindow->setLayer(LayerShellQt::Window::LayerOverlay);
|
||||||
|
layerShellWindow->setKeyboardInteractivity(LayerShellQt::Window::KeyboardInteractivityExclusive);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
QString username = getenv("USER");
|
QString username = getenv("USER");
|
||||||
int uid = getuid();
|
int uid = getuid();
|
||||||
QDBusInterface *interface = new QDBusInterface("cn.kylinos.Kydroid2",
|
QDBusInterface *interface = new QDBusInterface("cn.kylinos.Kydroid2",
|
||||||
|
|
Loading…
Reference in New Issue