GdkGL: Fix and clean up gdk_cairo_draw_from_gl()
GdkGL: Fix and clean up gdk_cairo_draw_from_gl()

This was unnecessarily creating a framebuffer in the texture case,
and it was not properly setting up a framebuffer with the texture
as source in the software fallback w/ texture source case.

jigpu/gtk,alexlarsson/gtk,grubersjoe/adwaita,chergert/gtk,jadahl/gtk,jadahl/gtk,jadahl/gtk,jigpu/gtk,Adamovskiy/gtk,Lyude/gtk-,Adamovskiy/gtk,Lyude/gtk-,Adamovskiy/gtk,grubersjoe/adwaita,davidgumberg/gtk,grubersjoe/adwaita,davidgumberg/gtk,chergert/gtk,alexlarsson/gtk,ahodesuka/gtk,ahodesuka/gtk,chergert/gtk,jigpu/gtk,jadahl/gtk,davidgumberg/gtk,alexlarsson/gtk,davidgumberg/gtk,ahodesuka/gtk,grubersjoe/adwaita,jigpu/gtk,davidgumberg/gtk,Lyude/gtk-,jadahl/gtk,davidgumberg/gtk,chergert/gtk,grubersjoe/adwaita,grubersjoe/adwaita,Lyude/gtk-,alexlarsson/gtk,jadahl/gtk,alexlarsson/gtk,Lyude/gtk-,jadahl/gtk,ahodesuka/gtk,chergert/gtk,alexlarsson/gtk,ahodesuka/gtk,jigpu/gtk,alexlarsson/gtk,chergert/gtk,jigpu/gtk,Adamovskiy/gtk,jigpu/gtk,grubersjoe/adwaita,chergert/gtk,ahodesuka/gtk,Adamovskiy/gtk,alexlarsson/gtk,grubersjoe/adwaita,Adamovskiy/gtk,Lyude/gtk-,Lyude/gtk-,ahodesuka/gtk,davidgumberg/gtk,Lyude/gtk-,chergert/gtk,jigpu/gtk,Adamovskiy/gtk,davidgumberg/gtk,jadahl/gtk,Adamovskiy/gtk,ahodesuka/gtk