Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Support wp color management proto #9444

Merged
merged 12 commits into from
Feb 26, 2025
Merged

Support wp color management proto #9444

merged 12 commits into from
Feb 26, 2025

Conversation

UjinT34
Copy link
Contributor

@UjinT34 UjinT34 commented Feb 19, 2025

Describe your PR, what does it fix/add?

Support wp color-management. #9443
Added debug:full_cm_proto to switch proto into debug mode (requires restart).

In regular mode this implementation does almost nothing. It handles the minimum required subset of features.
In debug mode all features and values are marked as supported. Features related to fullscreen HDR will work the same as with xx-cm and frog-cm. Other features will only store and pass values and output some log messages.

Is there anything you want to mention? (unchecked code, possible bugs, found problems, breaking compatibility, etc.)

Needs #9064 to be useful. Without it xx-cm and frog-cm should be used instead because those protos are less likely to break things for newer clients with correct wp-cm support.
Needs nix wp version bump.
Needs a proper way of handling images description ids to avoid duplication (not a priority, very unlikely conditions to be useful)

Is it ready for merging, or does it need work?

Ready.

  • use xml from wayland-protocols (requires wp 1.41)
  • move bits from xx-cm and frog-cm to wp
  • use internal enums
  • add some common CM constants
  • correctly state supported features
  • add debug mode with all the features
  • handle cm attached to subsurfaces

@vaxerski
Copy link
Member

thanks as always! tag me for review when this is ready.

@UjinT34 UjinT34 marked this pull request as ready for review February 23, 2025 11:32
@UjinT34
Copy link
Contributor Author

UjinT34 commented Feb 23, 2025

@vaxerski ready for review

@vaxerski
Copy link
Member

stellar work as always

@vaxerski vaxerski merged commit 6787fe8 into hyprwm:main Feb 26, 2025
10 of 12 checks passed
@myamusashi
Copy link

Truly Fast and active development

@@ -12,6 +12,7 @@
#include "Timer.hpp"
#include "math/Math.hpp"
#include <optional>
#include "protocols/types/ColorManagement.hpp"
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this include is wrong, should be "../protocols/types/ColorManagement.hpp"

causes build failure for plugins: Duckonaut/split-monitor-workspaces#166

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@UjinT34 2nd time this has to be fixed after your PR btw 😆 (previous time: 31431a9, fix: 44004ab)

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

auto-import set me up %)

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Not really your fault though, preferably this would get picked up by the CI/CD and/or enforced through things like clang-tidy/clang-format/cppcheck

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

auto-import set me up %)

what auto import are you using 😭 i didn't even know that was a thing for c++

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants