unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
From: Po Lu <luangruo@yahoo.com>
To: "Dirk-Jan C. Binnema" <djcb@djcbsoftware.nl>
Cc: emacs-devel@gnu.org
Subject: Re: Abysmal state of GTK build
Date: Mon, 22 Aug 2022 20:10:16 +0800	[thread overview]
Message-ID: <87mtbweaxj.fsf@yahoo.com> (raw)
In-Reply-To: <87czcsfw4v.fsf@djcbsoftware.nl> (Dirk-Jan C. Binnema's message of "Mon, 22 Aug 2022 12:04:11 +0300")

"Dirk-Jan C. Binnema" <djcb@djcbsoftware.nl> writes:

> Does this apply to pgtk as well?

PGTK has other problems on the input and selection side of things, and
shouldn't be used on X at all.  Try to select a large chunk of text in
the PGTK build running under X (xdisp.c immediately comes to mind), and
insert it into another program with Button2.  It will immediately crash
with an X Windows error.

> TBH, this whole thread sounds needlessly alarmist.

I'd have said the same until I actually started working on the GTK
build, which was in an even worse state several months ago.  For
example, because many people do not use toolkit widgets in Emacs
seriously, and GTK changes too quickly, a bug where moving the mouse
wheel on the scroll bar does nothing was not found in time to be fixed
in Emacs 28.

Seriously, folks, if you don't use the scroll bar enough to find such an
obvious bug, you might as well use the a build of Emacs with non-toolkit
scroll bars.

> The various GTK builds have been working fine for me and apparently the
> majority of emacs users on GNU/Linux. "Abysmal" does not describe that
> all all.

Okay, then please show another build of Emacs where opening Dired on a
relatively small frame prints warning messages to stdout, and
potentially resizes the frame to fit the menu bar.  Or resizing a frame
from the top left corner causes the bottom right corner of the frame to
lag behind the resize.

All of these might seem to be minor nuances, but they leave bad tastes
in users mouths.  The users then place the blame on us, and ask: "why
can't Emacs behave as nicely as other editors?"  (The answer is really
that the other editors use some other toolkit.)

> There have been grumblings about scenarios that GTK doesn't implement
> correctly or at all, and there were some big warning for that (there
> still may be). It seems we now emacs is adding a new such scenario
> (XInput2), while the GTK developers have lost some interest in X11 -- it
> seems we should just not enable XInput2 in that case.

It seems to me that the same crowd asking for various "modern" GTK
features also want features like pixel-scroll-precision-mode and monitor
refresh synchronization, which cause crashes or don't work on GTK.  We
are then blamed for the feature not working there as a result of bugs or
misdesigns in GTK.

In any case, there is no excuse for GTK to have buggy XInput 2 support,
considering that it used to be something that we did not support,
requiring various workarounds to explictly disable in GTK, and is
mentioned in the first few paragraphs of the GTK+ 2 to 3 migration
guidelines.

I only found out about this particular crash investigating bug#56879,
but there are many more issues, some of which are more insidious than
simple crashes.

> I'd actually hope we'd be able to do it _more_ with GTK, such as having
> GTK tabs, using the header bar, etc., where emacs currently looks rather
> antiquated.

Then we'd be dealing with GTK randomly resizing our frames to fit the
tab bar in addition to the menu bar.  Or the authors of the GNOME Human
Interface Guidelines declaring tab bars against the law at some point in
the future.  No thanks.



  reply	other threads:[~2022-08-22 12:10 UTC|newest]

Thread overview: 288+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <87ilmlluxq.fsf.ref@yahoo.com>
2022-08-21 11:04 ` Abysmal state of GTK build Po Lu
2022-08-21 11:19   ` Dmitry Gutov
2022-08-21 11:44     ` Po Lu
2022-08-21 14:01       ` Dmitry Gutov
2022-08-21 14:06         ` Po Lu
2022-08-21 14:11           ` Gregory Heytings
2022-08-22  1:04             ` Po Lu
2022-08-21 11:22   ` Eli Zaretskii
2022-08-21 11:39     ` Po Lu
2022-08-21 15:54       ` Robert Pluim
2022-08-21 16:32         ` Sean Whitton
2022-08-21 16:46           ` Lars Ingebrigtsen
2022-08-21 16:50             ` Lars Ingebrigtsen
2022-08-21 16:58             ` Sean Whitton
2022-08-22  1:13             ` Po Lu
2022-08-22  4:32               ` tomas
2022-08-23  3:44               ` Richard Stallman
2022-08-23  3:58                 ` Po Lu
2022-08-23  4:51                   ` tomas
2022-08-21 16:51           ` Óscar Fuentes
2022-08-21 17:08             ` Eli Zaretskii
2022-08-21 17:35               ` Óscar Fuentes
2022-08-22  1:15             ` Po Lu
2022-08-22  2:06               ` Stefan Monnier
2022-08-23  3:44               ` Richard Stallman
2022-08-23  4:02                 ` Po Lu
2022-08-25  3:32                   ` Richard Stallman
2022-08-25  4:18                     ` Po Lu
2022-08-23 11:29                 ` Eli Zaretskii
2022-08-23 12:15                 ` Lynn Winebarger
2022-08-24  3:52                   ` Richard Stallman
2022-08-24  8:57                     ` Robert Pluim
2022-08-24 10:43                       ` Po Lu
2022-08-24 11:24                         ` Eli Zaretskii
2022-08-24 11:17                       ` Eli Zaretskii
2022-08-25  6:25                       ` Gerd Möllmann
2022-08-25  6:52                         ` Po Lu
2022-08-25  6:57                           ` Gerd Möllmann
2022-08-25  8:28                             ` xdisp.c in C++ (Was: Abysmal state of GTK build) Eli Zaretskii
2022-08-25  9:04                               ` Gerd Möllmann
2022-08-23  3:44               ` Abysmal state of GTK build Richard Stallman
2022-08-23  4:03                 ` Po Lu
2022-08-23 11:26                   ` Stefan Kangas
2022-08-23 12:30                     ` Po Lu
2022-08-23 12:50                       ` Stefan Kangas
2022-08-23 13:01                         ` Po Lu
2022-08-24  3:52                   ` Richard Stallman
2022-08-22  1:10           ` Po Lu
2022-08-21 16:51         ` Visuwesh
2022-08-22  1:17           ` Po Lu
2022-08-22  6:47             ` Visuwesh
2022-08-22  1:11         ` Po Lu
2022-08-23  3:44         ` Richard Stallman
2022-08-23 12:41           ` Akib Azmain Turja
2022-08-23 13:00             ` Po Lu
2022-08-21 11:49   ` Lars Ingebrigtsen
2022-08-21 12:00     ` Visuwesh
2022-08-21 12:06     ` Lars Ingebrigtsen
2022-08-21 13:34       ` Po Lu
2022-08-21 13:38         ` Lars Ingebrigtsen
2022-08-21 13:46           ` Lars Ingebrigtsen
2022-08-21 13:59             ` Po Lu
2022-08-21 14:11               ` Lars Ingebrigtsen
2022-08-21 14:16                 ` Po Lu
2022-08-21 14:17                   ` Lars Ingebrigtsen
2022-08-21 14:20                     ` Po Lu
2022-08-21 14:28                       ` Lars Ingebrigtsen
2022-08-21 18:32                       ` Dmitry Gutov
2022-08-22  1:07                         ` Po Lu
2022-08-21 14:29                   ` Stefan Monnier
2022-08-21 19:27                     ` Rob Browning
2022-08-22  3:10                       ` Sean Whitton
2022-08-22  5:43                         ` Rob Browning
2022-08-22  7:10                         ` Visuwesh
2022-08-22  7:56                           ` Po Lu
2022-08-21 16:47                   ` Sean Whitton
2022-08-21 15:28                 ` Lynn Winebarger
2022-08-22  5:21                   ` Jean Louis
2022-08-22  6:01                   ` Po Lu
2022-08-22  6:48                     ` Tim Cross
2022-08-22  7:55                       ` Po Lu
2022-08-22  8:32                         ` Tim Cross
2022-08-22  9:44                           ` Po Lu
2022-08-22 23:19                             ` Tim Cross
2022-08-23  0:57                               ` Po Lu
2022-08-23  4:44                               ` Consistent theme across the desktop [Re: Abysmal state of GTK build] tomas
2022-08-23 11:45                                 ` Eli Zaretskii
2022-08-23 12:02                                   ` tomas
2022-08-23 12:31                                     ` Eli Zaretskii
2022-08-23 12:48                                       ` tomas
2022-08-23 13:22                                         ` Eli Zaretskii
2022-08-23 14:10                                           ` tomas
2022-08-23 15:52                                             ` Eli Zaretskii
2022-08-23 16:38                                           ` Yuri Khan
2022-08-23 16:57                                             ` Eli Zaretskii
2022-08-24  4:23                                               ` tomas
2022-08-24 11:02                                                 ` Eli Zaretskii
2022-08-23 12:31                                   ` Po Lu
2022-08-24  3:52                                     ` Richard Stallman
2022-08-24  4:24                                       ` tomas
2022-08-22  9:04                         ` Abysmal state of GTK build Dirk-Jan C. Binnema
2022-08-22 12:10                           ` Po Lu [this message]
2022-08-22 12:35                             ` Eli Zaretskii
2022-08-22 12:59                               ` Po Lu
2022-08-22 13:08                                 ` Eli Zaretskii
2022-08-23  0:42                                   ` Po Lu
2022-08-23  2:36                                     ` Eli Zaretskii
2022-08-23  3:04                                       ` Po Lu
2022-08-23 17:52                                     ` Yilkal Argaw
2022-08-23 18:45                                       ` Stefan Monnier
2022-08-24  1:50                                       ` Po Lu
2022-08-22 12:40                             ` Eli Zaretskii
2022-08-22 13:03                               ` Po Lu
2022-08-22 13:08                                 ` Dmitry Gutov
2022-08-23  0:45                                   ` Po Lu
2022-08-23 10:30                                     ` Dmitry Gutov
2022-08-22 13:10                                 ` Eli Zaretskii
2022-08-23  0:46                                   ` Po Lu
2022-08-22 15:10                             ` Lynn Winebarger
2022-08-23  6:34                             ` Dirk-Jan C. Binnema
2022-08-23  8:58                               ` Po Lu
2022-08-23  3:46                         ` Richard Stallman
2022-08-23  4:04                           ` Po Lu
2022-08-24  3:52                             ` Richard Stallman
2022-08-24  4:27                               ` Po Lu
2022-08-21 13:30     ` Po Lu
2022-08-21 13:35       ` Eli Zaretskii
2022-08-21 13:41         ` Po Lu
2022-08-21 13:46           ` Eli Zaretskii
2022-08-21 13:47         ` Lars Ingebrigtsen
2022-08-21 13:50           ` Eli Zaretskii
2022-08-21 14:01             ` Po Lu
2022-08-23  7:38             ` Gerd Möllmann
2022-08-23  8:54               ` Po Lu
2022-08-23  9:27                 ` Gerd Möllmann
2022-08-23  9:39               ` Lars Ingebrigtsen
2022-08-23 14:07                 ` Gerd Möllmann
2022-08-23 14:43                   ` Lars Ingebrigtsen
2022-08-23 15:29                     ` Óscar Fuentes
2022-08-23 16:14                       ` Alternative build systems (Was: Abysmal state of GTK build) Eli Zaretskii
2022-08-23 16:36                         ` Alternative build systems Óscar Fuentes
2022-08-23 16:55                           ` Eli Zaretskii
2022-08-23 23:38                             ` Óscar Fuentes
2022-08-24  1:48                               ` Po Lu
2022-08-24 12:35                       ` Abysmal state of GTK build Andrea Corallo
2022-08-24 12:57                         ` Óscar Fuentes
2022-08-24 13:00                         ` Visuwesh
2022-08-24 13:42                           ` Po Lu
2022-08-23 16:06                     ` Eli Zaretskii
2022-08-23 16:10                       ` Lars Ingebrigtsen
2022-08-23 16:24                         ` Eli Zaretskii
2022-08-24 10:11                           ` Lars Ingebrigtsen
2022-08-24 11:18                             ` Eli Zaretskii
2022-08-24 11:30                               ` Lars Ingebrigtsen
2022-08-24 11:47                                 ` Eli Zaretskii
2022-08-24 12:16                                   ` Stefan Monnier
2022-08-24 12:19                                     ` Lars Ingebrigtsen
2022-08-24 12:23                                       ` Stefan Monnier
2022-08-25 12:03                                         ` Lars Ingebrigtsen
2022-08-24 12:35                                     ` Eli Zaretskii
2022-08-25 12:07                                       ` Lars Ingebrigtsen
2022-08-25 12:19                                         ` Lars Ingebrigtsen
2022-08-24 12:13                             ` Po Lu
2022-08-24 12:16                               ` Gerd Möllmann
2022-08-24  6:38                       ` Gerd Möllmann
2022-08-24 11:08                         ` Eli Zaretskii
2022-08-24 11:51                           ` Gerd Möllmann
2022-08-24 12:01                             ` Eli Zaretskii
2022-08-24 12:04                               ` Gerd Möllmann
2022-08-24 12:19                                 ` Eli Zaretskii
2022-08-24 12:22                                   ` Gerd Möllmann
2022-08-23 17:10                     ` Stefan Monnier
2022-08-24 10:14                       ` Lars Ingebrigtsen
2022-08-24 10:46                         ` Po Lu
2022-08-24 10:48                           ` Lars Ingebrigtsen
2022-08-24 11:15                             ` Po Lu
2022-08-24 11:17                               ` Lars Ingebrigtsen
2022-08-24 12:13                                 ` Po Lu
2022-08-24 12:20                                   ` Lars Ingebrigtsen
2022-08-24 12:36                                     ` Po Lu
2022-08-25  3:33                       ` Changing the make setup for Emacs Richard Stallman
2022-08-25 22:42                         ` change the Subject line (was: Changing the make setup for Emacs) andrés ramírez
2022-08-21 13:36       ` Abysmal state of GTK build Lars Ingebrigtsen
2022-08-21 13:43         ` Po Lu
2022-08-21 13:51           ` Lars Ingebrigtsen
2022-08-21 14:04             ` Po Lu
2022-08-21 14:13               ` Lars Ingebrigtsen
2022-08-21 14:18                 ` Po Lu
2022-08-21 15:02                   ` Gregory Heytings
2022-08-22  1:18                     ` Po Lu
2022-08-22 10:04                       ` Lars Ingebrigtsen
2022-08-22 11:46                         ` Po Lu
2022-08-22 11:56                           ` Lars Ingebrigtsen
2022-08-22 12:14                             ` Po Lu
2022-08-22 12:21                               ` Lars Ingebrigtsen
2022-08-22 13:13                                 ` Po Lu
2022-08-22 13:19                                   ` Lars Ingebrigtsen
2022-08-23  0:50                                     ` Po Lu
2022-08-24 11:19                                       ` Lars Ingebrigtsen
2022-08-24 12:17                                         ` Po Lu
2022-08-22 17:33                                   ` Eli Zaretskii
2022-08-23  0:47                                     ` Po Lu
2022-08-23  2:38                                       ` Eli Zaretskii
2022-08-23  3:05                                         ` Po Lu
2022-08-23 11:22                                           ` Eli Zaretskii
2022-08-24  3:52                                           ` Richard Stallman
2022-08-23  3:51                                   ` Jean Louis
2022-08-23  5:14                                     ` Po Lu
2022-08-23 11:51                                       ` Eli Zaretskii
2022-08-23 12:34                                         ` Po Lu
2022-08-23 12:45                                           ` Eli Zaretskii
2022-08-25  3:32                                       ` Richard Stallman
2022-08-23  3:53                                   ` Jean Louis
2022-08-21 14:05       ` Gregory Heytings
2022-08-21 14:08         ` Po Lu
2022-08-21 14:15           ` Lars Ingebrigtsen
2022-08-21 14:17             ` Po Lu
2022-08-21 14:27               ` Lars Ingebrigtsen
2022-08-22  1:09                 ` Po Lu
2022-08-24  2:32             ` Thomas Fitzsimmons
2022-08-24  2:47               ` Po Lu
2022-08-25  3:33                 ` Richard Stallman
2022-08-21 14:06       ` Dmitry Gutov
2022-08-23  3:44       ` Richard Stallman
2022-08-23  3:57         ` Po Lu
2022-08-24  3:52           ` Richard Stallman
2022-08-24  4:20             ` Po Lu
2022-08-24  4:34               ` tomas
2022-08-26  3:36               ` Richard Stallman
2022-08-24  4:25             ` Tim Cross
2022-08-24  4:37               ` tomas
2022-08-24  7:52                 ` Tim Cross
2022-08-24  4:58               ` Po Lu
2022-08-26  3:36               ` Richard Stallman
2022-08-26  5:26                 ` Tim Cross
2022-08-28  4:06                   ` Richard Stallman
2022-08-28  4:14                     ` Po Lu
2022-09-04  3:01                       ` Richard Stallman
2022-08-28  7:45                     ` Tim Cross
2022-08-21 14:47     ` Stefan Kangas
2022-08-21 14:58       ` Lars Ingebrigtsen
2022-08-22  7:05     ` Visuwesh
2022-08-22  7:51       ` Po Lu
2022-08-23  3:46       ` Richard Stallman
2022-08-23 15:08         ` Visuwesh
2022-08-25 16:01         ` Rudolf Adamkovič
2022-08-26  1:29           ` Po Lu
2022-08-23  7:00 Payas Relekar
2022-08-23  7:17 ` Po Lu
2022-08-23  7:21   ` Payas Relekar
2022-08-23  8:53     ` Po Lu
2022-08-23 13:08       ` Stefan Monnier
2022-08-24  1:16         ` Po Lu
2022-08-24  1:34           ` Stefan Monnier
2022-08-23 12:05   ` Eli Zaretskii
2022-08-23 12:29     ` Po Lu
2022-08-23 12:41       ` Eli Zaretskii
2022-08-23 12:59         ` Po Lu
2022-08-23 15:13           ` Óscar Fuentes
2022-08-23 15:18             ` Visuwesh
2022-08-23 16:09             ` Eli Zaretskii
2022-08-23 16:41               ` Óscar Fuentes
2022-08-23 16:59                 ` Eli Zaretskii
2022-08-23 23:25                   ` Óscar Fuentes
2022-08-24  1:45                     ` Po Lu
2022-08-24  3:02                       ` Óscar Fuentes
2022-08-24  3:41                         ` Po Lu
2022-08-23 23:25             ` Tim Cross
2022-08-24  4:25               ` Po Lu
2022-08-24  1:36             ` Po Lu
2022-08-24  2:31               ` Óscar Fuentes
2022-08-24  3:23                 ` Po Lu
2022-08-24  3:52   ` Richard Stallman
2022-08-24  4:18     ` Po Lu
2022-08-24  8:52       ` Robert Pluim
2022-08-26  3:36       ` Richard Stallman
2022-08-26  4:34         ` Po Lu
2022-09-04  3:01           ` Richard Stallman
2022-09-04  5:14             ` Eli Zaretskii
2022-09-05  4:03               ` Richard Stallman
2022-09-05  8:34               ` Robert Pluim
2022-09-05 14:12                 ` Po Lu
2022-09-07 13:03                 ` Daniel Brooks
2022-08-24  3:52 ` Richard Stallman
  -- strict thread matches above, loose matches on Subject: below --
2022-08-23 13:53 Payas Relekar
2022-08-24  1:15 ` Po Lu
2022-09-04  4:08 Payas Relekar
2022-09-05  4:03 ` Richard Stallman

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.gnu.org/software/emacs/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87mtbweaxj.fsf@yahoo.com \
    --to=luangruo@yahoo.com \
    --cc=djcb@djcbsoftware.nl \
    --cc=emacs-devel@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).