GSoC: Libreoffice Theme (week - 0 update)
Printf Debugging
printfdebugging at gmail.com
Tue May 14 08:33:46 UTC 2024
Hi, I am Printf from India, and I will be working on the "Libreoffice
Theme" project this summer. First of all, many many thanks to Heiko and
Rafael for mentoring the project, and to the community for being so
welcoming! This week, I have been wrapping up some patches that I had
assigned myself, along with some hunting and exploration in the VCL. I
found that there are functions like `bool
GtkSalGraphics::updateSettings(AllSettings& rSettings)` which extract
the colors from the widget systems and save those in a local copy via
the `Set.....Color()` functions. The transaction seemed to be one way
though, meaning that I didn't see any calls putting the updated colors
back into the widget system, to modify the UI. For the colors like
accent-color etc, I think all the getting/setting happens on the local
copy after extraction. So I have been trying to understand how GTK does
colors. Found that styling in GTK is built around `GtkStyleContext` to
which we add StyleProviders, which have the styling information. There
are a lot of GtkStyleContext pointers in `gtkgdi.hxx` for each major
component. These are created at startup... (survey in progress) I will
come up with a prototype patch to change the menubar colors probably in
this week (counting the start of week 1 from today) or at max next week.
The idea is to get a thumbs up from the mentors, community and the devs
on the approach/roadmap for the project, like shall we create a separate
dialog for themes, or shall we repurpose the `Tools > Options >
Application Colors/Personas` area. If we go the dialog route, then what
should be the layout, considering that this project might extend beyond
just plain colors during or even after the GSoC project. Is my styling
approach scalable, meaning should I create a separate class etc etc.
This is my first project where I am working under time constraint. So
there might be some hiccups here and there, but I will converse the
situation(s)/updates on time, and I hope we can find the solutions
together. Again, thanks for being such a warm and community. Always
Debugging on Terminal Printf
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/libreoffice/attachments/20240514/7e2b3b6e/attachment.htm>
More information about the LibreOffice
mailing list