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

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

相关推荐
想唱rap2 分钟前
C++之红黑树
开发语言·数据结构·c++·算法
无限进步_3 分钟前
C++运算符重载完全指南:从基础到实战应用
开发语言·数据库·c++·windows·git·github·visual studio
feiyangqingyun24 分钟前
Qt/C++地图最简示例/在线离线切换/地图视图切换/执行各种js函数交互
javascript·c++·qt
暗然而日章40 分钟前
C++基础:Stanford CS106L学习笔记 4 容器(STL与序列容器)
c++·笔记·学习
系夏普44 分钟前
重拾 C++:Ubuntu开发环境下的C++学习
c++
翻斗花园牛图图-1 小时前
Qt开发——系统相关3(Qt网络编程)
开发语言·qt
kk”1 小时前
C++ AVL树
开发语言·数据结构·c++
西幻凌云1 小时前
认识STLstack容器
c++·stl·适配器·stack·序列式容器
繁华似锦respect1 小时前
C++ 设计模式之观察者模式详细介绍
linux·开发语言·c++·windows·观察者模式·设计模式·visual studio
威桑1 小时前
一个 CMake 项目是否只能有一个 install 目录?
linux·c++·cmake