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 的位置如下

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

相关推荐
无限进步_9 分钟前
【C++】重载、重写和重定义的区别详解
c语言·开发语言·c++·ide·windows·git·github
历程里程碑13 分钟前
1 . Git本地操作:版本控制 跨平台协作 仓库核心
java·开发语言·数据结构·c++·git·gitee·github
小欣加油16 分钟前
leetcode 42 接雨水
c++·算法·leetcode·职场和发展
ZXF_H21 分钟前
VSCode C/C++函数Ctrl+鼠标点击无法跳转的解决方法
c++·ide·vscode
tankeven22 分钟前
动态规划专题(14):石子合并问题(未完待续)
c++·算法·动态规划
cpp_25011 小时前
P1910 L 国的战斗之间谍
数据结构·c++·算法·题解·洛谷·背包dp
txzrxz1 小时前
c++深度搜索讲解及例题
开发语言·c++·深度搜索·例题讲解
|_⊙1 小时前
红黑树 (C++)
开发语言·c++·学习
楼田莉子1 小时前
同步/异步日志系统:工具类以及日志的简单模块
linux·服务器·数据结构·c++
王老师青少年编程1 小时前
动态规划之【树形DP】第4课:树形DP应用案例实践3
c++·动态规划·dp·树形dp·csp·信奥赛·提高组