Skip to content
GitLab
Projects Groups Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in
  • KWin KWin
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 55
    • Issues 55
    • List
    • Boards
    • Service Desk
    • Milestones
  • Bugzilla
    • Bugzilla
  • Merge requests 150
    • Merge requests 150
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Releases
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • PlasmaPlasma
  • KWinKWin
  • Issues
  • #11
Closed
Open
Issue created Jul 16, 2020 by Vlad Zahorodnii@vladzDeveloper

Color management on Wayland

One of the things that had been discussed during a kwin sprint in July 2019 was color management. Currently, we have a component called Night Color which is kind of responsible for color correction, however it's more oriented for adjusting screen color temperature.

Color temperature is one of the things that user should be able to tweak, but there is a lot more... From design perspective, we need a generic color management system in kwin. It should be capable of adjusting screen brightness, gamma correction, and so on. Things may get tricky if we want to apply both a custom screen color temperature and an ICC profile to calibrate white point, but luckily for us lcms2 has everything we could have dreamed of. lcms2 makes it very easy to interpret the VCGT tag, and combine tone curves.

So far, most developers that are involved in color management discussions agree that the compositor has to perform necessary color space conversions. Ideally, applications should tag their surfaces with color space metadata and from that point on, the compositor ensures that the surfaces will be displayed properly on the screen. [2] introduces a new wayland protocol that can be used to set the color space metadata.

Open Questions

Maybe add some colord integration?

Done. See !436 (merged)

Is color management an integral part of the compositor? If it's not, put it in a plugin.

Yes, it is.

What is the role of Night Color?

Night Color is responsible for only adjusting the screen color temperature.

Relevant upstream links

  • [1] http://www.argyllcms.com/WaylandCM_v1.txt
  • [2] https://gitlab.freedesktop.org/wayland/wayland-protocols/-/merge_requests/14
  • [3] https://lists.freedesktop.org/archives/wayland-devel/2017-January/032769.html
Edited Nov 25, 2020 by Vlad Zahorodnii
Assignee
Assign to
Time tracking