@@ -158,14 +158,12 @@ set(GEN_C_HEADERS
|
||||
"${GEN_DIR}/xdg-shell-client-protocol.h"
|
||||
"${GEN_DIR}/wlr-layer-shell-unstable-v1-client-protocol.h"
|
||||
"${GEN_DIR}/ext-background-effect-v1-client-protocol.h"
|
||||
"${GEN_DIR}/blur-client-protocol.h"
|
||||
"${GEN_DIR}/text-input-unstable-v3-client-protocol.h"
|
||||
)
|
||||
set(GEN_C_PRIVATES
|
||||
"${GEN_DIR}/xdg-shell-protocol.c"
|
||||
"${GEN_DIR}/wlr-layer-shell-unstable-v1-protocol.c"
|
||||
"${GEN_DIR}/ext-background-effect-v1-protocol.c"
|
||||
"${GEN_DIR}/blur-protocol.c"
|
||||
"${GEN_DIR}/text-input-unstable-v3-protocol.c"
|
||||
)
|
||||
|
||||
@@ -182,9 +180,6 @@ add_custom_command(
|
||||
# text-input-unstable-v3
|
||||
COMMAND "${WAYLAND_SCANNER}" client-header "${TEXT_INPUT_XML}" "${GEN_DIR}/text-input-unstable-v3-client-protocol.h"
|
||||
COMMAND "${WAYLAND_SCANNER}" private-code "${TEXT_INPUT_XML}" "${GEN_DIR}/text-input-unstable-v3-protocol.c"
|
||||
# org-kde-win-blur
|
||||
COMMAND "${WAYLAND_SCANNER}" client-header "${CMAKE_CURRENT_SOURCE_DIR}/blur.xml" "${GEN_DIR}/blur-client-protocol.h"
|
||||
COMMAND "${WAYLAND_SCANNER}" private-code "${CMAKE_CURRENT_SOURCE_DIR}/blur.xml" "${GEN_DIR}/blur-protocol.c"
|
||||
DEPENDS "${XDG_SHELL_XML}" "${WLR_LAYER_SHELL_XML}" "${TEXT_INPUT_XML}"
|
||||
COMMENT "Generating Wayland + wlr-layer-shell client headers and private code"
|
||||
VERBATIM
|
||||
|
||||
28
blur.xml
28
blur.xml
@@ -1,28 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<protocol name="blur">
|
||||
<copyright><![CDATA[
|
||||
SPDX-FileCopyrightText: 2015 Martin Gräßlin
|
||||
SPDX-FileCopyrightText: 2015 Marco Martin
|
||||
|
||||
SPDX-License-Identifier: LGPL-2.1-or-later
|
||||
]]></copyright>
|
||||
<interface name="org_kde_kwin_blur_manager" version="1">
|
||||
<request name="create">
|
||||
<arg name="id" type="new_id" interface="org_kde_kwin_blur"/>
|
||||
<arg name="surface" type="object" interface="wl_surface"/>
|
||||
</request>
|
||||
<request name="unset">
|
||||
<arg name="surface" type="object" interface="wl_surface"/>
|
||||
</request>
|
||||
</interface>
|
||||
<interface name="org_kde_kwin_blur" version="1">
|
||||
<request name="commit">
|
||||
</request>
|
||||
<request name="set_region">
|
||||
<arg name="region" type="object" interface="wl_region" allow-null="true"/>
|
||||
</request>
|
||||
<request name="release" type="destructor">
|
||||
<description summary="release the blur object"/>
|
||||
</request>
|
||||
</interface>
|
||||
</protocol>
|
||||
22
src/App.cpp
22
src/App.cpp
@@ -31,7 +31,6 @@
|
||||
#include "wlr-layer-shell-unstable-v1-client-protocol.h"
|
||||
#undef namespace
|
||||
|
||||
#include "blur-client-protocol.h"
|
||||
#include "ext-background-effect-v1-client-protocol.h"
|
||||
|
||||
namespace Waylight {
|
||||
@@ -578,10 +577,6 @@ auto App::init_wayland() -> void
|
||||
= static_cast<ext_background_effect_manager_v1 *>(
|
||||
wl_registry_bind(registry, name,
|
||||
&ext_background_effect_manager_v1_interface, 1));
|
||||
} else if (std::strcmp(interface, "org_kde_kwin_blur_manager") == 0) {
|
||||
app->m_wayland.kde_blur_mgr
|
||||
= static_cast<org_kde_kwin_blur_manager *>(wl_registry_bind(
|
||||
registry, name, &org_kde_kwin_blur_manager_interface, 1));
|
||||
} else if (std::strcmp(
|
||||
interface, zwp_text_input_manager_v3_interface.name)
|
||||
== 0) {
|
||||
@@ -869,10 +864,6 @@ auto App::create_layer_surface() -> void
|
||||
m_wayland.eff = ext_background_effect_manager_v1_get_background_effect(
|
||||
m_wayland.mgr, m_wayland.surface);
|
||||
}
|
||||
if (m_wayland.kde_blur_mgr) {
|
||||
m_wayland.kde_blur = org_kde_kwin_blur_manager_create(
|
||||
m_wayland.kde_blur_mgr, m_wayland.surface);
|
||||
}
|
||||
|
||||
m_wayland.layer_surface = zwlr_layer_shell_v1_get_layer_surface(
|
||||
m_wayland.layer_shell, m_wayland.surface, nullptr,
|
||||
@@ -883,10 +874,6 @@ auto App::create_layer_surface() -> void
|
||||
ext_background_effect_surface_v1_destroy(m_wayland.eff);
|
||||
m_wayland.eff = nullptr;
|
||||
}
|
||||
if (m_wayland.kde_blur) {
|
||||
org_kde_kwin_blur_destroy(m_wayland.kde_blur);
|
||||
m_wayland.kde_blur = nullptr;
|
||||
}
|
||||
if (m_wayland.surface) {
|
||||
wl_surface_destroy(m_wayland.surface);
|
||||
m_wayland.surface = nullptr;
|
||||
@@ -974,11 +961,6 @@ auto App::destroy_layer_surface() -> void
|
||||
m_wayland.eff = nullptr;
|
||||
}
|
||||
|
||||
if (m_wayland.kde_blur) {
|
||||
org_kde_kwin_blur_destroy(m_wayland.kde_blur);
|
||||
m_wayland.kde_blur = nullptr;
|
||||
}
|
||||
|
||||
if (m_wayland.layer_surface) {
|
||||
zwlr_layer_surface_v1_destroy(m_wayland.layer_surface);
|
||||
m_wayland.layer_surface = nullptr;
|
||||
@@ -1024,7 +1006,7 @@ auto App::update_blur_region() -> void
|
||||
{
|
||||
if (!m_wayland.compositor)
|
||||
return;
|
||||
if (!m_wayland.eff && !m_wayland.kde_blur)
|
||||
if (!m_wayland.eff)
|
||||
return;
|
||||
|
||||
wl_region *region = wl_compositor_create_region(m_wayland.compositor);
|
||||
@@ -1035,8 +1017,6 @@ auto App::update_blur_region() -> void
|
||||
|
||||
if (m_wayland.eff)
|
||||
ext_background_effect_surface_v1_set_blur_region(m_wayland.eff, region);
|
||||
if (m_wayland.kde_blur)
|
||||
org_kde_kwin_blur_set_region(m_wayland.kde_blur, region);
|
||||
|
||||
wl_region_destroy(region);
|
||||
}
|
||||
|
||||
@@ -10,7 +10,6 @@
|
||||
#include <libportal/portal.h>
|
||||
#include <wayland-client-protocol.h>
|
||||
extern "C" {
|
||||
#include "blur-client-protocol.h"
|
||||
#define namespace namespace_
|
||||
#include "ext-background-effect-v1-client-protocol.h"
|
||||
#include "text-input-unstable-v3-client-protocol.h"
|
||||
@@ -86,8 +85,6 @@ private:
|
||||
zwlr_layer_surface_v1 *layer_surface {};
|
||||
ext_background_effect_manager_v1 *mgr {};
|
||||
ext_background_effect_surface_v1 *eff {};
|
||||
org_kde_kwin_blur_manager *kde_blur_mgr {};
|
||||
org_kde_kwin_blur *kde_blur {};
|
||||
zwp_text_input_manager_v3 *text_input_mgr {};
|
||||
zwp_text_input_v3 *text_input {};
|
||||
wl_data_device_manager *ddm {};
|
||||
|
||||
@@ -29,7 +29,7 @@ constexpr auto make_default_themes() -> enum_array<Theme, ColorScheme> const
|
||||
.foreground_preedit = { 0, 0, 0, 255 },
|
||||
.window =
|
||||
{
|
||||
.background = { 255, 255, 255, 100 },
|
||||
.background = { 255, 255, 255, 200 },
|
||||
},
|
||||
};
|
||||
array[Theme::Dark] = {
|
||||
@@ -37,7 +37,7 @@ constexpr auto make_default_themes() -> enum_array<Theme, ColorScheme> const
|
||||
.foreground_preedit = { 255, 255, 255, 255 },
|
||||
.window =
|
||||
{
|
||||
.background = { 0, 0, 0, 100 },
|
||||
.background = { 0, 0, 0, 200 },
|
||||
},
|
||||
};
|
||||
return array;
|
||||
|
||||
Reference in New Issue
Block a user