GTK3 breaking that is a bug, not a feature.
Especially text should NEVER be scaled after rendering.
And re: performance, that’s great that you’ve got hardware that can run 3D in-browser shader sites or games at 6K resolution at 60fps just fine, mine can’t. If it were running at 4K, as it’s supposed to, I’d get significantly more fps. Especially at a time where GPUs are rare and Gnome still decides I should get 50% more performance just so they save some work.
https://developer-old.gnome.org/gtk2/2.24/GtkWidget.html#gtk...
https://developer-old.gnome.org/gtk2/2.24/GtkWidget.html#gtk...
Those would need to be floats if you wanted to have a non-integer scale. Changing everything to use float coordinates is a large undertaking that touches the whole stack and will require a lot of work. It still hasn't been done yet as of GTK4. If you'd like to spend your time helping out then please do so. Please refer to the gitlab comment above for a description of some of the technical issues that you would have to solve. But it may be more cost effective for you to just get some new hardware with a better GPU, or use something else.
Edit: comment from a GTK developer here that goes more into detail: https://gitlab.gnome.org/GNOME/mutter/-/issues/478#note_7939...
I guess if you want to know why should things be this way, you could say it's because of technical limitations? Though that may not be a satisfying answer to you.