Okay, check this, you've got mutually exclusive regressions going on.
Your cairo-obey-fontconfig patch fixes stuff AND breaks stuff.
Exhibit A:
Code:
<!-- When a font gets 10-size or up, use weaker hinting. -->
<match target="font" >
<test qual="all" name="size" compare="more_eq" ><double>9.5</double></test>
<edit name="hintstyle" mode="assign" ><const>hintslight</const></edit>
</match>
This particular sequence _never_ worked before -- something about GTK programs ignores any Hintstyle statement that overrides from within a conditional.
With your cairo-fontconfig patch, it is true that GNOME decided to obey .fonts.conf instead of its own Xft and xrdb settings. But this is what makes rules like this possible. So with your cairo-fontconfig patch, GNOME can no longer override fonts.conf hintstyle settings. But in exchange...GNOME will now obey specific hintstyle settings.
You know what? I actually think I kinda like your patch. (It does reduce GNOME's flexibility, but only if you're using .fonts.conf specific settings in the first place -- something only an expert would do anyway -- and it's not like Qt4 is getting any _worse_, it still does whatever the heck it wants).
When I turned on my PC today and I noticed that I no longer had custom size-based hinting, I thought "the patch! that was it! he took that out! darn!"
Do you think the patch might be worth keeping? It implements what I think is very useful behavior.