首页
学习
活动
专区
圈层
工具
发布
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    dotnet X11 设置窗口鼠标触摸命中穿透

    本文记录如何在 X11 应用里面,使用 XShapeCombineRegion 方法配置一个 X11 窗口支持和 Win32 窗口一样的命中测试穿透功能,即对应 Win32 的 WS_EX_TRANSPARENT...的鼠标、触摸等的点击等动作的穿透功能,可以实现在窗口中挖空一块范围直接穿透到后面的窗口 在 X11 窗口中,想要实现让窗口不可命中,即所有的鼠标、触摸等的事件穿透到后面的窗口上,可以采用 libXext.so...提供的 XShapeCombineRegion 方法,也可以使用有争议的 libXfixes.so 提供的 XFixesSetWindowShapeRegion 方法 通过以上两个方法即可让 X11...让这个窗口不参与到交互里面 使用比较有争议的 libXfixes.so 提供的 XFixesSetWindowShapeRegion 方法的示例代码如下 // 以下的 childWindowHandle 是一个 X11...libXext.so.so: 无法打开共享对象文件: 没有那个文件或目录 /home/uos/Downloads/lin/liblibXext.so.so: 无法打开共享对象文件: 没有那个文件或目录 at CPF.Linux.XLib.XShapeCombineRegion

    62910

    dotnet X11 的多屏触摸行为测试

    故事的背景是我在给 Avalonia 加上触摸尺寸的支持时,代码审查过程中大佬提出了在多屏上的 X11 行为问题,为此我找了两个触摸屏进行测试 X11 的多屏触摸行为。...由于 Min 常是 0 因此在计算中常被忽略 但值得一提的是在 X11 里面,根据 https://www.kernel.org/doc/html/latest/input/multi-touch-protocol.html...文档,所获取的是椭圆长轴,将其当成触摸宽度是不准确的 校准屏幕 在我的设备上,发现触摸屏的触摸输入和对应的屏幕显示没有对齐,需要根据以下大佬们的博客进行修复 Linux处理多触屏的终极解决方案 香风家的火柴盒...github.com/lindexi/lindexi_gd.git git pull origin dedfc0ec3a3c8d04e7bec5276fe5bcaa926fe6e9 获取代码之后,进入 X11

    32110

    干得漂亮,Ubuntu 终于干掉了 X11

    在《从 X11 到 Wayland,迈出这一步为何如此艰难?》一文中,我们分析过从 X11 过渡到 Wayland 所面临的诸多挑战。...如今,终于有 Linux 发行版吹响了 X11 的丧钟:Ubuntu 25.10 正式弃用 GNOME 的 Xorg/X11 会话,将 GNOME Shell + Mutter 桌面环境完全切换为 Wayland-only...然而 X11 会话仍被保留,用户可在登录时选择。 到了 25.10,Ubuntu 终于与 X11 彻底告别——不再提供 X11 会话选择。...从 X11 迁移到 Wayland,也会出现一些问题: 某些依赖 X11 特性的应用(快捷键、工具、窗口管理扩展或插件)在 Wayland 上可能表现不同; 远程桌面/显示转发(如 X11 转发、xrdp...这不仅是技术上的更新,更是方向上的宣示:Ubuntu 正迈向一个更安全、更现代、更统一的 Linux 桌面未来。

    72910

    dotnet C# 设置 X11 应用窗口背景透明

    本文将告诉大家如何在 X11 里面设置窗口透明 不同于在 WPF 里面可以使用 AllowsTransparency 简单方便的设置透明,在 X11 里面设置窗口透明的方法比较绕。...PropertyGroup> 以上的 csproj 项目文件代码里和空控制台核心不同在于使用 AllowUnsafeBlocks 开启不安全代码 打开 Program.cs 文件,开始编写 X11...透明窗口示例应用代码 按照 X11 的基础使用方法,先获取 Display 和 Screen 和 RootWindow 对象/指针,代码如下 var display = XOpenDisplay(0)...{ break; } } return visual->visual; } 获取 Visual 指针的方法就是本文的核心逻辑了,也是 X11...return _addr_GetVisualFromFBConfig(@dpy, @config); } // Ignores egl functions. // On some Linux

    58210
    领券