Revert "Wayland: Set surface color management"
This reverts commit 965b4dce6d.
This commit caused #141688.
This commit is contained in:
@@ -402,10 +402,6 @@ elseif(WITH_GHOST_X11 OR WITH_GHOST_WAYLAND)
|
||||
generate_protocol_bindings(
|
||||
"${WAYLAND_PROTOCOLS_DIR}/stable/viewporter/viewporter.xml"
|
||||
)
|
||||
# Color management (HDR properties)
|
||||
generate_protocol_bindings(
|
||||
"${WAYLAND_PROTOCOLS_DIR}/staging/color-management/color-management-v1.xml"
|
||||
)
|
||||
# Pointer-constraints.
|
||||
generate_protocol_bindings(
|
||||
"${WAYLAND_PROTOCOLS_DIR}/unstable/pointer-constraints/pointer-constraints-unstable-v1.xml"
|
||||
|
||||
@@ -59,7 +59,6 @@
|
||||
#include <xkbcommon/xkbcommon.h>
|
||||
|
||||
/* Generated by `wayland-scanner`. */
|
||||
#include <color-management-v1-client-protocol.h>
|
||||
#include <cursor-shape-v1-client-protocol.h>
|
||||
#include <fractional-scale-v1-client-protocol.h>
|
||||
#include <pointer-constraints-unstable-v1-client-protocol.h>
|
||||
@@ -1442,7 +1441,6 @@ struct GWL_Display {
|
||||
zwp_primary_selection_device_manager_v1 *primary_selection_device_manager = nullptr;
|
||||
wp_fractional_scale_manager_v1 *fractional_scale_manager = nullptr;
|
||||
wp_viewporter *viewporter = nullptr;
|
||||
wp_color_manager_v1 *color_manager = nullptr;
|
||||
zwp_pointer_constraints_v1 *pointer_constraints = nullptr;
|
||||
zwp_pointer_gestures_v1 *pointer_gestures = nullptr;
|
||||
#ifdef WITH_INPUT_IME
|
||||
@@ -6616,26 +6614,6 @@ static void gwl_registry_wl_output_remove(GWL_Display *display,
|
||||
delete output;
|
||||
}
|
||||
|
||||
/* #GWL_Display.wp_color_manager */
|
||||
|
||||
static void gwl_registry_wp_color_manager_add(GWL_Display *display,
|
||||
const GWL_RegisteryAdd_Params ¶ms)
|
||||
{
|
||||
const uint version = GWL_IFACE_VERSION_CLAMP(params.version, 1u, 1u);
|
||||
|
||||
display->wp.color_manager = static_cast<wp_color_manager_v1 *>(wl_registry_bind(
|
||||
display->wl.registry, params.name, &wp_color_manager_v1_interface, version));
|
||||
gwl_registry_entry_add(display, params, nullptr);
|
||||
}
|
||||
static void gwl_registry_wp_color_manager_remove(GWL_Display *display,
|
||||
void * /*user_data*/,
|
||||
const bool /*on_exit*/)
|
||||
{
|
||||
wp_color_manager_v1 **value_p = &display->wp.color_manager;
|
||||
wp_color_manager_v1_destroy(*value_p);
|
||||
*value_p = nullptr;
|
||||
}
|
||||
|
||||
/* #GWL_Display.seats */
|
||||
|
||||
static void gwl_registry_wl_seat_add(GWL_Display *display, const GWL_RegisteryAdd_Params ¶ms)
|
||||
@@ -7192,12 +7170,6 @@ static const GWL_RegistryHandler gwl_registry_handlers[] = {
|
||||
/*update_fn*/ gwl_registry_wl_output_update,
|
||||
/*remove_fn*/ gwl_registry_wl_output_remove,
|
||||
},
|
||||
{
|
||||
/*interface_p*/ &wp_color_manager_v1_interface.name,
|
||||
/*add_fn*/ gwl_registry_wp_color_manager_add,
|
||||
/*update_fn*/ nullptr,
|
||||
/*remove_fn*/ gwl_registry_wp_color_manager_remove,
|
||||
},
|
||||
/* Seats.
|
||||
* Keep the seat near the end to ensure other types are created first.
|
||||
* as the seat creates data based on other interfaces. */
|
||||
@@ -9045,10 +9017,6 @@ wp_viewporter *GHOST_SystemWayland::wp_viewporter_get()
|
||||
{
|
||||
return display_->wp.viewporter;
|
||||
}
|
||||
wp_color_manager_v1 *GHOST_SystemWayland::wp_color_manager_get()
|
||||
{
|
||||
return display_->wp.color_manager;
|
||||
}
|
||||
|
||||
zwp_pointer_gestures_v1 *GHOST_SystemWayland::wp_pointer_gestures_get()
|
||||
{
|
||||
|
||||
@@ -264,7 +264,6 @@ class GHOST_SystemWayland : public GHOST_System {
|
||||
struct zwp_pointer_gestures_v1 *wp_pointer_gestures_get();
|
||||
struct wp_fractional_scale_manager_v1 *wp_fractional_scale_manager_get();
|
||||
struct wp_viewporter *wp_viewporter_get();
|
||||
struct wp_color_manager_v1 *wp_color_manager_get();
|
||||
|
||||
#ifdef WITH_GHOST_WAYLAND_LIBDECOR
|
||||
libdecor *libdecor_context_get();
|
||||
|
||||
@@ -41,7 +41,6 @@
|
||||
#endif
|
||||
|
||||
/* Generated by `wayland-scanner`. */
|
||||
#include <color-management-v1-client-protocol.h>
|
||||
#include <fractional-scale-v1-client-protocol.h>
|
||||
#include <viewporter-client-protocol.h>
|
||||
#include <xdg-activation-v1-client-protocol.h>
|
||||
@@ -443,7 +442,6 @@ struct GWL_Window {
|
||||
* and ignore updated scale based on #wl_surface_listener::enter & exit events.
|
||||
*/
|
||||
wp_fractional_scale_v1 *fractional_scale_handle = nullptr;
|
||||
wp_color_management_surface_v1 *color_management_surface = nullptr;
|
||||
} wp;
|
||||
|
||||
/** XDG native types. */
|
||||
@@ -1820,29 +1818,6 @@ GHOST_WindowWayland::GHOST_WindowWayland(GHOST_SystemWayland *system,
|
||||
|
||||
wl_surface_add_listener(window_->wl.surface, &wl_surface_listener, window_);
|
||||
|
||||
/* Color management */
|
||||
wp_color_manager_v1 *color_manager = system->wp_color_manager_get();
|
||||
if (color_manager) {
|
||||
window_->wp.color_management_surface = wp_color_manager_v1_get_surface(color_manager,
|
||||
window_->wl.surface);
|
||||
|
||||
wp_image_description_creator_params_v1 *image_creator_params =
|
||||
wp_color_manager_v1_create_parametric_creator(color_manager);
|
||||
wp_image_description_creator_params_v1_set_tf_named(
|
||||
image_creator_params, WP_COLOR_MANAGER_V1_TRANSFER_FUNCTION_SRGB);
|
||||
wp_image_description_creator_params_v1_set_primaries_named(image_creator_params,
|
||||
WP_COLOR_MANAGER_V1_PRIMARIES_SRGB);
|
||||
|
||||
wp_image_description_v1 *image_description = wp_image_description_creator_params_v1_create(
|
||||
image_creator_params);
|
||||
|
||||
wp_color_management_surface_v1_set_image_description(
|
||||
window_->wp.color_management_surface,
|
||||
image_description,
|
||||
WP_COLOR_MANAGER_V1_RENDER_INTENT_PERCEPTUAL);
|
||||
wp_image_description_v1_destroy(image_description);
|
||||
}
|
||||
|
||||
wp_fractional_scale_manager_v1 *fractional_scale_manager =
|
||||
system->wp_fractional_scale_manager_get();
|
||||
if (fractional_scale_manager) {
|
||||
@@ -2050,7 +2025,7 @@ GHOST_WindowWayland::GHOST_WindowWayland(GHOST_SystemWayland *system,
|
||||
window_->backend.vulkan_window_info = new GHOST_ContextVK_WindowInfo;
|
||||
window_->backend.vulkan_window_info->size[0] = window_->frame.size[0];
|
||||
window_->backend.vulkan_window_info->size[1] = window_->frame.size[1];
|
||||
window_->backend.vulkan_window_info->is_color_managed = color_manager != nullptr;
|
||||
window_->backend.vulkan_window_info->is_color_managed = true;
|
||||
}
|
||||
#endif
|
||||
|
||||
@@ -2185,11 +2160,6 @@ GHOST_WindowWayland::~GHOST_WindowWayland()
|
||||
window_->wp.viewport = nullptr;
|
||||
}
|
||||
|
||||
if (window_->wp.color_management_surface) {
|
||||
wp_color_management_surface_v1_destroy(window_->wp.color_management_surface);
|
||||
window_->wp.color_management_surface = nullptr;
|
||||
}
|
||||
|
||||
#ifdef WITH_GHOST_WAYLAND_LIBDECOR
|
||||
if (use_libdecor) {
|
||||
gwl_libdecor_window_destroy(window_->libdecor);
|
||||
|
||||
Reference in New Issue
Block a user