mirror of
https://gitlab.freedesktop.org/wlroots/wlroots.git
synced 2026-02-28 01:41:07 -05:00
Merge branch 'wl-backend-color-management' into 'master'
Draft: backend/wayland: add color-management-v1 support See merge request wlroots/wlroots!5156
This commit is contained in:
commit
f8715ab798
6 changed files with 263 additions and 17 deletions
|
|
@ -10,6 +10,7 @@
|
|||
|
||||
#include "color-management-v1-protocol.h"
|
||||
#include "render/color.h"
|
||||
#include "types/wlr_color_management_v1.h"
|
||||
#include "util/mem.h"
|
||||
|
||||
#define COLOR_MANAGEMENT_V1_VERSION 2
|
||||
|
|
@ -1016,8 +1017,7 @@ void wlr_color_manager_v1_set_surface_preferred_image_description(
|
|||
}
|
||||
}
|
||||
|
||||
enum wlr_color_transfer_function
|
||||
wlr_color_manager_v1_transfer_function_to_wlr(enum wp_color_manager_v1_transfer_function tf) {
|
||||
uint32_t transfer_function_try_to_wlr(enum wp_color_manager_v1_transfer_function tf) {
|
||||
switch (tf) {
|
||||
case WP_COLOR_MANAGER_V1_TRANSFER_FUNCTION_COMPOUND_POWER_2_4:
|
||||
return WLR_COLOR_TRANSFER_FUNCTION_SRGB;
|
||||
|
|
@ -1030,10 +1030,17 @@ wlr_color_manager_v1_transfer_function_to_wlr(enum wp_color_manager_v1_transfer_
|
|||
case WP_COLOR_MANAGER_V1_TRANSFER_FUNCTION_BT1886:
|
||||
return WLR_COLOR_TRANSFER_FUNCTION_BT1886;
|
||||
default:
|
||||
abort();
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
|
||||
enum wlr_color_transfer_function
|
||||
wlr_color_manager_v1_transfer_function_to_wlr(enum wp_color_manager_v1_transfer_function tf) {
|
||||
uint32_t wlr_tf = transfer_function_try_to_wlr(tf);
|
||||
assert(wlr_tf != 0);
|
||||
return wlr_tf;
|
||||
}
|
||||
|
||||
enum wp_color_manager_v1_transfer_function
|
||||
wlr_color_manager_v1_transfer_function_from_wlr(enum wlr_color_transfer_function tf) {
|
||||
switch (tf) {
|
||||
|
|
@ -1051,18 +1058,24 @@ wlr_color_manager_v1_transfer_function_from_wlr(enum wlr_color_transfer_function
|
|||
abort();
|
||||
}
|
||||
|
||||
enum wlr_color_named_primaries
|
||||
wlr_color_manager_v1_primaries_to_wlr(enum wp_color_manager_v1_primaries primaries) {
|
||||
uint32_t named_primaries_try_to_wlr(enum wp_color_manager_v1_primaries primaries) {
|
||||
switch (primaries) {
|
||||
case WP_COLOR_MANAGER_V1_PRIMARIES_SRGB:
|
||||
return WLR_COLOR_NAMED_PRIMARIES_SRGB;
|
||||
case WP_COLOR_MANAGER_V1_PRIMARIES_BT2020:
|
||||
return WLR_COLOR_NAMED_PRIMARIES_BT2020;
|
||||
default:
|
||||
abort();
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
|
||||
enum wlr_color_named_primaries
|
||||
wlr_color_manager_v1_primaries_to_wlr(enum wp_color_manager_v1_primaries primaries) {
|
||||
uint32_t wlr_primaries = named_primaries_try_to_wlr(primaries);
|
||||
assert(wlr_primaries != 0);
|
||||
return wlr_primaries;
|
||||
}
|
||||
|
||||
enum wp_color_manager_v1_primaries
|
||||
wlr_color_manager_v1_primaries_from_wlr(enum wlr_color_named_primaries primaries) {
|
||||
switch (primaries) {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue