all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Po Lu <luangruo@yahoo.com>
To: Morgan Smith <morgan.j.smith@outlook.com>
Cc: emacs-devel@gnu.org
Subject: PGTK-related misconceptions
Date: Fri, 15 Apr 2022 10:29:28 +0800	[thread overview]
Message-ID: <87lew7qdtj.fsf@yahoo.com> (raw)
In-Reply-To: <DM5PR03MB3163BBCF9626AD3B88900011C5EE9@DM5PR03MB3163.namprd03.prod.outlook.com> (Morgan Smith's message of "Thu, 14 Apr 2022 22:01:30 -0400")

Morgan Smith <morgan.j.smith@outlook.com> writes:

> I'd like to report that my super key stopped registering.  I suspected
> commit 1404e16975 caused it so I did a quick `git revert 1404e16975`
> ontop of 807682de1e and that fixed it.

Crystal ball says you are using X Windows, and have to put

  remove mod4 = Hyper_L

in your ~/.Xmodmap file, because GTK doesn't try as hard as regular X11
Emacs to work around the common kind of virtual modifier
misconfiguration.

People using X should _never_ use PGTK.  The regular X build does a much
better job at supporting that than PGTK ever will.

It is completely pointless to put up with half-working child frames,
random keyboard-related lossage, random frame placement/resizing
failures, so the actual fix is to delete `--with-pgtk' from your calls
to configure.

Similarly, people building packages with PGTK enabled that are labeled
"enhanced" are doing their users a disservice.  No packager should
enable PGTK by default, and every package should ideally come with a big
disclaimer warning against using PGTK on window systems otherwise
supported by Emacs, since time and experience shows that Emacs generally
does a much better job at their support than GTK.

Many people are also being mislead by articles on the internet claiming
that PGTK leads to faster redisplay, such as this one:
http://www.cesarolea.com/posts/emacs-native-compile

That is not true, since regular Emacs with cairo uses more-or-less the
same rendering path as PGTK, except when PGTK runs on Wayland, where it
uses software rendering and does image compositing in software, and is
thus slower than everything else.  Scrolling on PGTK is also not as
efficient as XCopyArea requests.

But the difference in speed even on Wayland is negligible, not easy to
benchmark, and not at all visible to the human eye.



  reply	other threads:[~2022-04-15  2:29 UTC|newest]

Thread overview: 56+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-01-12  4:56 bug#53200: 29.0.50; C-S-u shortcut fails with 'PGTK' enable Campbell Barton
2022-01-12  6:24 ` Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors
2022-01-13  7:08   ` Lars Ingebrigtsen
2022-01-13  8:04     ` Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors
2022-04-15  2:01 ` Morgan Smith
2022-04-15  2:29   ` Po Lu [this message]
2022-04-15  7:11     ` PGTK-related misconceptions Byung-Hee HWANG
2022-04-15 16:24     ` Eric Abrahamsen
2022-04-18  5:18     ` Sean Whitton
2022-04-18  5:31       ` Po Lu
2022-04-18  5:43         ` Sean Whitton
2022-04-18  5:57           ` Po Lu
2022-04-18 18:27             ` Sean Whitton
2022-04-18 19:49             ` Jim Porter
2022-04-19  1:02               ` Po Lu
2022-04-19  2:46                 ` Sean Whitton
2022-04-19  2:18               ` Tim Cross
2022-04-19  5:56                 ` Eli Zaretskii
2022-04-19  8:13                   ` Tim Cross
2022-04-19 10:32                     ` Eli Zaretskii
2022-04-19  9:10     ` Dirk-Jan C. Binnema
2022-04-19 10:42       ` Po Lu
2022-04-19 11:53       ` Phil Sainty
2022-04-19 13:58         ` Sean Whitton
2022-04-20  3:29           ` Phil Sainty
2022-04-20  4:48             ` Stefan Monnier
2022-04-19 16:51         ` Yuri Khan
2022-04-22  5:44           ` Pankaj Jangid
2022-05-22 16:25 ` bug#53200: 29.0.50; C-S-u shortcut fails with 'PGTK' enable daanturo
2022-05-22 17:44   ` Morgan Smith
2022-05-23  0:55     ` Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors
  -- strict thread matches above, loose matches on Subject: below --
2022-04-18 21:50 PGTK-related misconceptions Trey
2022-04-19  0:59 ` Po Lu
2022-04-19  3:28   ` Trey Peacock
2022-04-19  4:27     ` Po Lu
2022-04-19 23:02       ` Trey Peacock
2022-04-20  0:48         ` Po Lu
2022-04-20  2:33           ` Trey Peacock
2022-04-20  4:05             ` Po Lu
2022-07-25 21:18     ` Akira Kyle
2022-07-26  2:08       ` Po Lu
2022-07-26 12:10         ` Lars Ingebrigtsen
2022-07-26 12:35           ` Po Lu
2022-07-29 14:26             ` Stefan Monnier
2022-07-30  0:58               ` Po Lu
2022-07-26 21:36         ` Akira Kyle
2022-07-27  2:48           ` Po Lu
2022-07-27  8:34             ` Trey Peacock
2022-07-27  9:10               ` Po Lu
2022-07-27 13:45                 ` Trey Peacock
2022-07-27 13:52                   ` Po Lu
2022-07-28  1:39             ` Akira Kyle
2022-07-28  2:50               ` Po Lu
2022-04-20  7:52 Trey Peacock
2022-04-20  8:25 ` Po Lu
2022-04-20 13:13   ` Brian Cully

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

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

  git send-email \
    --in-reply-to=87lew7qdtj.fsf@yahoo.com \
    --to=luangruo@yahoo.com \
    --cc=emacs-devel@gnu.org \
    --cc=morgan.j.smith@outlook.com \
    /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 external index

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

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.