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

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

相关推荐
谭欣辰43 分钟前
C++ 控制台跑酷小游戏
c++·游戏
周末也要写八哥1 小时前
C++实际开发之泛型编程(模版编程)
java·开发语言·c++
兵哥工控2 小时前
MFC中return和break用法示例
c++·mfc
2401_841495643 小时前
Linux C++ TCP 服务端经典的监听骨架
linux·网络·c++·网络编程·ip·tcp·服务端
春栀怡铃声3 小时前
【C++修仙录02】筑基篇:类和对象(中)
c++
楼田莉子3 小时前
同步/异步日志系统:日志器管理器模块\全局接口\性能测试
linux·服务器·开发语言·c++·后端·设计模式
故事和你913 小时前
洛谷-数据结构-1-3-集合3
数据结构·c++·算法·leetcode·贪心算法·动态规划·图论
春栀怡铃声3 小时前
【C++修仙录02】筑基篇:类和对象(上)
开发语言·c++·算法
ulias2123 小时前
leetcode热题 - 3
c++·算法·leetcode·职场和发展
大彼方..3 小时前
深入学习cpp初阶模板
开发语言·c++·学习