deepin学习-设置自己窗口为最高层级

deepin-设置自己窗口为最高层级

  • 一、概述
    • [1. kwin 中的窗口层级定义](#1. kwin 中的窗口层级定义)
    • [2. dde-session-ui 中的消息弹窗](#2. dde-session-ui 中的消息弹窗)
    • [3. k-win的调试器](#3. k-win的调试器)

一、概述

窗口协议:wayland

在wayland的窗口下,有时候使用qt开发接口并不能满足我们的要求,就需要看窗管的写法。

cpp 复制代码
setWindowFlags(Qt::WindowStaysOnTopHint | Qt::Tool | Qt::X11BypassWindowManagerHint | Qt::WindowDoesNotAcceptFocus);

1. kwin 中的窗口层级定义

https://github.com/add-uos/deepin-kwin/blob/d16bcb0729550d94fece60637a5358b60f25eae9/src/utils/common.h#L49

值越大这个层级越高

2. dde-session-ui 中的消息弹窗

设置位置

https://github.com/linuxdeepin/dde-session-ui/blob/release/5.4.4/dde-osd/notification/bubble.cpp#L215

bash 复制代码
windowHandle()->setProperty("_d_dwayland_window-type", "override");

其实只需要设置上面那部分就行了

3. k-win的调试器

使用 d-feet 的位置如下

在 窗口调试器中就能查看窗口的层级了

相关推荐
osir.44 分钟前
2025天梯训练1
c++·多关键字最短路
Zach_yuan1 小时前
list的模拟实现
c++·list
胡桃不是夹子1 小时前
学会了蛇形矩阵
c++·算法·矩阵
结衣结衣.1 小时前
【Qt】自定义信号和槽函数
开发语言·c++·qt·c++11
qq_433554542 小时前
C++ 二叉搜索树代码
开发语言·c++·算法
JuicyActiveGilbert3 小时前
【C++设计模式】第九篇:装饰器模式(Decorator)
c++·设计模式
攻城狮7号3 小时前
【第18节】C++设计模式(行为模式)-Mediator(中介者)模式
c++·设计模式·中介者模式
森焱森5 小时前
出现“ping不通但可以远程连接”的情况可能由以下原因导致
linux·c语言·网络·c++
原来是猿6 小时前
蓝桥备赛(九)- 结构体和类
数据结构·c++·算法
Forget the Dream7 小时前
设计模式之中介者模式
java·c++·设计模式·中介者模式