From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED!not-for-mail From: Philipp Stephani
=C2=A0> OK, I've pushed all the "simple" change= s for now.
Belated thanks.=C2=A0 Do you think the warnings cited in
bug#26855: 25.2; Menus off screen, gtk errors
are handled by your changes (I've been too lazy to check that)?=C2=A0 T= his is
one of our few clients with GTK 3.22, sadly building from Emacs 25 only.
=C2=A0>> This one
=C2=A0>>
=C2=A0>> +#if GTK_CHECK_VERSION (3, 16, 0)
=C2=A0>> +=C2=A0 =C2=A0 =C2=A0 emacs_abort ();
=C2=A0>> +#else
=C2=A0>>
=C2=A0>> looks a bit harsh and the corresponding logic appears quite = contrived.
=C2=A0>> Maybe the entire function should be rewritten.
=C2=A0>>
=C2=A0>
=C2=A0> The underlying issue here is that GTK no longer seems to have a = concept of
=C2=A0> a "background color", but Emacs still assumes that con= cept exists.
I understand.=C2=A0 But can't we catch that in a less intimidating way?=
=C2=A0>> +#if GTK_CHECK_VERSION (3, 22, 0)
=C2=A0>> +=C2=A0 /* FIXME: We should pass the GDK event to this funct= ion instead of
=C2=A0>> +=C2=A0 =C2=A0* synthesizing it.=C2=A0 */
=C2=A0>>
=C2=A0>> (I think you might want to get this from event_handler_gdk)<= br> =C2=A0>>
=C2=A0>
=C2=A0> I don't think that's possible, because the filter is run= before the GTK
=C2=A0> event is even created, so it has no access to it. In fact, Emacs= appears to
=C2=A0> swallow most X events before they are translated to GTK events.<= br> =C2=A0> This should be fixed "for real" by creating a gtk3term= , which doesn't use
=C2=A0> any X functions. It appears to me that the current "X with = a bit of GTK
=C2=A0> sprinkled on top" can't work any more.
I have no ideas of the implications of such an approach and whether it'= s
feasible.=C2=A0 We would first have to find all instances where we use an X=
solution instead of a GTK one and fix them.=C2=A0 After that we would have = to
decide whether the cases where no adequate GTK solution was found can be
simply removed or ignored for GTK built Emacsen.
Unless you are prepared to do that, I see no-one here to tackle such a
task.=C2=A0 Daniel Colascione has proposed to "go GTK-only" a cou= ple of
months ago but seems to keep a low profile since then (like all others
involved in that thread).