The time has come for the final report regarding my Google Summer of Code project.
During the last two weeks I have intensified work on the project, and there were notable results. Although I cannot claim to completely fulfilling the initial objectives, I believe there is not much more to do to reach that point. Another couple of days of work sometime and those are done. Of course, in the future, there will be improvements to do and other maintenance things, but those should be fun and easy.
The KolorServer KDED module has been successfully implemented. It appears that it works fine after initial tests. It supports per-output color correction, and per-window color correction should be easy to do. It was heavily inspired from CompICC, and it resembles most of it’s functionality. The code for this color server is included inside KolorManager, which is responsible with settings regarding color management. In my opinion, they fit well together (they also have the same dependency on the Oyranos Color Management System). They even have almost the same names :-).
KWin gets some rendering modifications in the compositor (not too big ones, they should not destabilize stuff too much) and it also gets a new class. All the color correction code is isolated in that class, and most of the more internal things are kept well inside. I tried to keep things as simple as possible. This class is designed to interact with the compositor, without forcing the compositor to do any strange color work. In fact, it just has to make one or two calls before drawing each output or window.
At the moment, the average user does not get to notice much difference if he/she get’s this color management installed somehow. The only visible setting is inside KWin compositing preferences, in the advanced tab – only a check box. Anyway, we don’t want more than that. Probably in the future, KolorServer will use some settings from KolorManager, but I can’t say for sure at the moment, it remains to be seen.
Wiki link (a bit out of date):
Project’s community page
It was a great summer!
Thank you everyone!