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

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

相关推荐
郁闷的网纹蟒2 小时前
虚幻5---第15部分---宝藏(掉落物)
开发语言·c++·ue5·游戏引擎·虚幻
俩娃妈教编程2 小时前
洛谷选题:P1888 三角函数
c++·算法
yuuki2332332 小时前
【C++】模拟实现 红黑树(RBTree)
java·开发语言·c++
一匹电信狗2 小时前
【Linux我做主】从 fopen 到 open:Linux 文件 I/O 的本质与内核视角
linux·运维·服务器·c++·ubuntu·小程序·开源
HAPPY酷2 小时前
C++ 音视频项目与 UE5 渲染与电影制作的关系
c++·ue5·音视频
Wyn_2 小时前
【心得】医疗设备 - Qt 工程师进阶指南
开发语言·qt·医疗·学习路线
初夏睡觉2 小时前
P2670 [NOIP 2015 普及组] 扫雷游戏 题解
c++
闻缺陷则喜何志丹3 小时前
【期望 DFS】P9428 [蓝桥杯 2023 国 B] 逃跑
c++·算法·蓝桥杯·深度优先·洛谷
落羽的落羽3 小时前
【C++】深入浅出“图”——最短路径算法
java·服务器·开发语言·c++·人工智能·算法·机器学习
仰泳的熊猫3 小时前
题目1466:蓝桥杯基础练习VIP-字符串对比
数据结构·c++·算法·蓝桥杯