Eric Williams
2018-11-29 17:03:20 UTC
Hello,
For the 4.11 release, I believe SWT will strongly benefit from moving to
a minimum version of GTK3.14. Here are some specific details:
-CSS for backgrounds and foregrounds is 3.14+, no more GtkStyleContext
background/foreground machinery
-no need to support pre-3.10 drawing model changes
-gtk-gradient CSS is gone in GTK4, we only use it for Combo on GTK3.12
and below
-removal of non-Cairo setRegion() drawing as this is 3.8 and below
-removal of pre-GTK3.10 DnD logic
-removal of miscellaneous functions such as: GtkWidget opacity,
GtkScrolledWindow add_with_viewport, etc.
-removal of several pre-GTK3.14 Table/Tree drawing hacks
-greatly allows for simplification of Cairo drawing in GC, as many of
these operations are guarded with GTK3.14+ calls
-allows SWT to rely solely on GTK CSS theme parsing, no more
GtkStyleContext lookups to get system colours
In summary, these changes would really simplify the codebase as almost
all the items mentioned above are gone in GTK4. With the introduction of
GTK4 guards it would be really beneficial if we could start to eliminate
the GTK3 specific version guards. Furthermore, it is very hard to find a
modern (supported) Linux distribution that ships with anything less than
GTK3.14 anymore, and the disconnect between the 3.14- and 3.24
methodologies is quite large.
If anyone has any concerns, please raise them.
Thanks,
For the 4.11 release, I believe SWT will strongly benefit from moving to
a minimum version of GTK3.14. Here are some specific details:
-CSS for backgrounds and foregrounds is 3.14+, no more GtkStyleContext
background/foreground machinery
-no need to support pre-3.10 drawing model changes
-gtk-gradient CSS is gone in GTK4, we only use it for Combo on GTK3.12
and below
-removal of non-Cairo setRegion() drawing as this is 3.8 and below
-removal of pre-GTK3.10 DnD logic
-removal of miscellaneous functions such as: GtkWidget opacity,
GtkScrolledWindow add_with_viewport, etc.
-removal of several pre-GTK3.14 Table/Tree drawing hacks
-greatly allows for simplification of Cairo drawing in GC, as many of
these operations are guarded with GTK3.14+ calls
-allows SWT to rely solely on GTK CSS theme parsing, no more
GtkStyleContext lookups to get system colours
In summary, these changes would really simplify the codebase as almost
all the items mentioned above are gone in GTK4. With the introduction of
GTK4 guards it would be really beneficial if we could start to eliminate
the GTK3 specific version guards. Furthermore, it is very hard to find a
modern (supported) Linux distribution that ships with anything less than
GTK3.14 anymore, and the disconnect between the 3.14- and 3.24
methodologies is quite large.
If anyone has any concerns, please raise them.
Thanks,
--
Eric Williams
Software Engineer - Eclipse/SWT Team
Red Hat
Eric Williams
Software Engineer - Eclipse/SWT Team
Red Hat