From: Tomas Hlavaty <tom@logand.com>
To: Akira Kyle <akira@akirakyle.com>
Cc: emacs-devel@gnu.org
Subject: Re: Introducing emacs-webkit and more thoughts on Emacs rendering (was Rethinking the design of xwidgets)
Date: Thu, 03 Dec 2020 09:07:22 +0100 [thread overview]
Message-ID: <87k0tzcnyd.fsf@logand.com> (raw)
In-Reply-To: <86360nwxch.fsf@akirakyle.com>
On Wed 02 Dec 2020 at 17:24, Akira Kyle <akira@akirakyle.com> wrote:
> On Tue, Dec 01, 2020 at 12:44 AM, Tomas Hlavaty <tom@logand.com>
> wrote:
>
>> On Mon 30 Nov 2020 at 10:03, Akira Kyle <akira@akirakyle.com>
>> wrote:
>>> and because I see pgtk as the future of Emacs on GNU/Linux systems
>>> as X becomes increasingly obsolete.
>>
>> I am not sure such future is bright.
>>
>> In that future, is there no way to do graphics without a widget
>> toolkit?
>
> Sure there is. Under wayland you can just dump pixels into a
> shared buffer to render them to the screen or use EGL to render
> using a GPU. The difference from X is that wayland offers no
> convince functions to actually draw pixels into such a buffer, its
> up to the client to do so. In order to not reinvent the wheel, its
> much more convenient to use a toolkit to draw the elements it's
> good at drawing.
"just dump pixels" and "no function to actually do that" and "use
toolkit" does seem to contradict the point of being able to do it
without toolkit.
How long will pgtk future last?
Compare that kind of future with for example ansi terminal future.
Which one do you think has longer future ahead? Why?
>>> AFAIU the pgtk version, like the ns version it was modeled after,
>>> doesn't implement everything in the main frame area of Emacs as
>>> widgets, only the tool and menu bars are implemented as proper
>>> widgets.
>>
>> Also popup menus that pop up on a mouse click are gtk iirc.
>>
>> And maybe scrollbars?
>>
>> It may have changed since I turned these distractions off a long
>> time
>> ago.
>
> I think this is really ultimately a personal preference.
It was not my personal preference to implement popup menus and
scrollbars as proper widgets.
>> I think that they are also fundamentally flawed: How can I search in
>> menu? Maybe it should be a buffer. New Gtk hides menu under an
>> unintuitive button anyway so this could just display searchable Menu
>> buffer.
>
> I think it would be possible to implement such menus without GTK using
> just child frames.
Why not also implement the rest without GTK?
>>> The main frame area is treated as just one big canvas that redisplay
>>> works its magic on as it would if it were just a TUI.
>>
>> Maybe that is a good thing.
>>
>> Widget toolkit dependency is a heavy price to pay for.
>
> I don't think it's a "heavy price to pay" in general. It greatly
> simplifies many applications, which if they were to forego a toolkit,
> would likely have codebases comparable to GTK or Emacs. But its true
> that Emacs is far more decoupled, for better or worse, from toolkits
> than your average GUI app.
Emacs already has to forego a toolkit, doesn't it? Why? Because it has
to work portably without any particular toolkit or with all chosen
toolkits.
It does not simplify Emacs I think, on the contrary.
Would not it be better to extend the canvas idea you mentioned above to
allow graphics in general, portable, toolkit independent way?
next prev parent reply other threads:[~2020-12-03 8:07 UTC|newest]
Thread overview: 225+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-10-12 20:58 Rethinking the design of xwidgets Akira Kyle
2020-10-12 22:18 ` joakim
2020-10-13 16:07 ` Akira Kyle
2020-10-13 19:06 ` joakim
2020-10-14 0:33 ` Akira Kyle
2020-10-13 13:36 ` Stefan Monnier
2020-10-13 16:09 ` Akira Kyle
2020-10-13 14:16 ` Eli Zaretskii
2020-10-13 17:05 ` Akira Kyle
2020-10-13 17:24 ` Qiantan Hong
2020-10-13 18:29 ` Akira Kyle
2020-10-13 18:44 ` Qiantan Hong
2020-10-13 19:17 ` Eli Zaretskii
2020-10-13 20:52 ` Akira Kyle
2020-10-14 14:36 ` Eli Zaretskii
2020-10-14 17:01 ` Stefan Monnier
2020-10-15 19:55 ` arthur miller
2020-10-13 18:45 ` Eli Zaretskii
2020-10-13 21:00 ` Akira Kyle
2020-10-14 14:44 ` Eli Zaretskii
2020-10-15 0:35 ` Akira Kyle
2020-10-15 2:07 ` Stefan Monnier
2020-10-15 3:35 ` arthur miller
2020-10-15 15:06 ` Eli Zaretskii
2020-10-15 15:20 ` Arthur Miller
2020-10-15 15:48 ` Eli Zaretskii
2020-10-13 17:55 ` Eli Zaretskii
2020-10-13 18:42 ` Basil L. Contovounesios
2020-10-13 19:10 ` Eli Zaretskii
2020-10-13 20:37 ` Akira Kyle
2020-10-14 14:33 ` Eli Zaretskii
2020-10-14 15:04 ` Arthur Miller
2020-10-14 15:32 ` Eli Zaretskii
2020-10-15 13:20 ` Arthur Miller
2020-10-17 4:26 ` Kai Ma
2020-10-17 4:42 ` Qiantan Hong
2020-11-14 5:40 ` Richard Stallman
2020-10-14 16:53 ` Stefan Monnier
2020-10-14 18:56 ` Aiko Kyle
2020-10-15 12:48 ` Arthur Miller
2020-10-15 16:25 ` Akira Kyle
2020-10-15 12:35 ` Arthur Miller
2020-10-16 4:02 ` Richard Stallman
2020-10-16 13:03 ` Arthur Miller
2020-10-16 18:38 ` Dmitry Gutov
2020-10-17 4:19 ` Richard Stallman
2020-10-17 4:21 ` Richard Stallman
2020-10-17 6:30 ` Arthur Miller
2020-10-17 13:35 ` Stefan Monnier
2020-10-17 19:15 ` Arthur Miller
2020-10-19 3:44 ` Richard Stallman
2020-10-18 4:17 ` Richard Stallman
2020-10-18 4:17 ` Richard Stallman
2020-10-18 9:31 ` Dmitry Gutov
2020-10-19 3:44 ` Richard Stallman
2020-10-19 12:37 ` Dmitry Gutov
2020-10-19 13:43 ` Arthur Miller
2020-10-20 5:13 ` Richard Stallman
2020-10-20 5:47 ` Arthur Miller
2020-10-20 12:58 ` Stefan Monnier
2020-10-20 13:40 ` Arthur Miller
2020-10-21 4:42 ` Richard Stallman
2020-10-21 12:25 ` Arthur Miller
2020-10-21 4:46 ` Richard Stallman
2020-10-20 5:14 ` Richard Stallman
2020-10-20 5:56 ` Arthur Miller
2020-10-20 10:45 ` Dmitry Gutov
2020-10-20 13:49 ` Arthur Miller
2020-10-20 20:11 ` Jean Louis
2020-10-20 23:25 ` Sv: " arthur miller
2020-10-21 8:10 ` Jean Louis
2020-10-21 11:59 ` Arthur Miller
2020-10-21 12:58 ` Hardware respecting your freedom Jean Louis
2020-10-22 2:53 ` Arthur Miller
2020-10-22 7:08 ` Jean Louis
2020-10-23 3:40 ` Richard Stallman
2020-10-23 12:53 ` Arthur Miller
2020-10-23 15:15 ` Pankaj Jangid
2020-10-24 3:49 ` Richard Stallman
2020-10-24 6:02 ` Jean Louis
2020-10-24 15:00 ` Arthur Miller
2020-10-25 3:54 ` Richard Stallman
2020-10-21 4:46 ` Rethinking the design of xwidgets Richard Stallman
2020-10-19 13:34 ` Arthur Miller
2020-10-19 14:04 ` Stefan Monnier
2020-10-20 5:13 ` Richard Stallman
2020-10-18 14:41 ` Arthur Miller
2020-10-19 3:48 ` Richard Stallman
2020-10-19 13:48 ` Arthur Miller
2020-10-16 14:54 ` Dmitry Gutov
2020-10-14 18:07 ` Akira Kyle
2020-10-14 18:32 ` Eli Zaretskii
2020-10-14 19:10 ` Akira Kyle
2020-10-13 18:36 ` Tomas Hlavaty
2020-10-13 18:38 ` Tomas Hlavaty
2020-10-13 21:20 ` Aiko Kyle
2020-10-14 0:12 ` Corwin Brust
2020-10-14 19:16 ` Akira Kyle
2020-10-14 7:32 ` Tomas Hlavaty
2020-10-14 15:02 ` Eli Zaretskii
2020-10-14 16:35 ` Tomas Hlavaty
2020-10-14 19:22 ` Akira Kyle
2020-10-14 21:29 ` Tomas Hlavaty
2020-10-16 4:02 ` Richard Stallman
2020-10-16 13:09 ` Arthur Miller
2020-10-14 19:24 ` Mingde (Matthew) Zeng
2020-10-14 21:46 ` Akira Kyle
2020-10-15 5:17 ` Mingde (Matthew) Zeng
2020-10-14 4:38 ` Richard Stallman
2020-10-14 6:36 ` Akira Kyle
2020-11-22 3:35 ` Introducing emacs-webkit and more thoughts on Emacs rendering (was Rethinking the design of xwidgets) Akira Kyle
2020-11-22 12:01 ` Jean Louis
2020-11-22 12:04 ` Jean Louis
2020-11-22 12:18 ` tomas
2020-11-22 12:57 ` Jean Louis
2020-11-22 16:24 ` tomas
2020-11-22 17:18 ` Jean Louis
2020-11-22 17:48 ` tomas
2020-11-22 18:40 ` Akira Kyle
2020-11-22 19:58 ` Jean Louis
2020-11-22 20:29 ` Akira Kyle
2020-11-22 20:38 ` Jean Louis
2020-11-22 15:27 ` Arthur Miller
2020-11-22 12:50 ` Jean Louis
2020-11-22 18:33 ` Akira Kyle
2020-11-22 18:04 ` Eli Zaretskii
2020-11-22 18:46 ` Akira Kyle
2020-11-22 21:20 ` Vasilij Schneidermann
2020-11-22 22:04 ` Akira Kyle
2020-11-22 18:29 ` T.V Raman
2020-11-22 18:53 ` Akira Kyle
2020-11-22 19:35 ` T.V Raman
2020-11-22 20:26 ` Akira Kyle
2020-11-23 0:46 ` T.V Raman
2020-11-23 3:44 ` Akira Kyle
2020-11-23 3:01 ` T.V Raman
2020-11-23 3:47 ` Akira Kyle
2020-11-23 16:29 ` Jose A. Ortega Ruiz
2020-11-23 9:39 ` Lars Ingebrigtsen
2020-11-23 13:26 ` joakim
2020-11-24 6:21 ` Lars Ingebrigtsen
2020-11-23 14:59 ` Arthur Miller
2020-11-23 23:47 ` Alan Third
2020-11-24 3:58 ` Akira Kyle
2020-11-24 8:06 ` Arthur Miller
2020-11-24 5:51 ` Richard Stallman
2020-11-24 6:24 ` Lars Ingebrigtsen
2020-11-26 4:49 ` Richard Stallman
2020-11-26 5:25 ` Arthur Miller
2020-11-26 8:27 ` tomas
2020-11-26 14:55 ` Arthur Miller
2020-11-26 19:11 ` Tomas Hlavaty
2020-11-26 19:34 ` arthur miller
2020-11-27 8:04 ` Tomas Hlavaty
2020-11-27 8:44 ` Arthur Miller
2020-11-27 13:35 ` Richard Stallman
2020-11-27 19:22 ` Arthur Miller
2020-11-27 20:01 ` Eli Zaretskii
2020-11-27 21:22 ` Arthur Miller
2020-11-27 20:07 ` Stefan Monnier
2020-11-27 21:09 ` Arthur Miller
2020-11-27 21:35 ` Stefan Monnier
2020-11-27 23:23 ` Arthur Miller
2020-11-28 0:28 ` Stefan Monnier
2020-11-28 8:48 ` Arthur Miller
2020-11-27 21:22 ` Akira Kyle
2020-11-28 7:31 ` Eli Zaretskii
2020-11-28 5:55 ` Richard Stallman
2020-11-28 8:50 ` Arthur Miller
2020-11-29 5:24 ` Richard Stallman
2020-11-24 7:50 ` Arthur Miller
2020-11-24 8:47 ` tomas
2020-11-24 9:04 ` Arthur Miller
2020-11-25 5:38 ` Richard Stallman
2020-11-25 8:46 ` tomas
2020-11-25 15:26 ` Arthur Miller
2020-11-25 16:15 ` Eric S Fraga
2020-11-24 15:43 ` T.V Raman
2020-11-25 5:38 ` Richard Stallman
2020-11-25 8:54 ` tomas
2020-11-24 6:23 ` Lars Ingebrigtsen
2020-11-24 3:33 ` Akira Kyle
2020-11-24 6:27 ` Lars Ingebrigtsen
2020-11-25 1:36 ` Akira Kyle
2020-11-25 15:11 ` Eli Zaretskii
2020-11-27 20:56 ` Akira Kyle
2020-11-28 8:38 ` Eli Zaretskii
2020-11-28 8:57 ` Arthur Miller
2020-11-28 9:19 ` Eli Zaretskii
2020-11-29 0:22 ` Arthur Miller
2020-11-29 1:29 ` Akira Kyle
2020-11-29 8:22 ` martin rudalics
2020-11-29 19:01 ` Eli Zaretskii
2020-11-30 3:54 ` Akira Kyle
2020-11-30 15:39 ` Eli Zaretskii
2020-11-30 17:03 ` Akira Kyle
2020-11-30 18:11 ` Eli Zaretskii
2020-11-30 18:30 ` Akira Kyle
2020-12-01 7:44 ` Tomas Hlavaty
2020-12-03 0:24 ` Akira Kyle
2020-12-03 8:07 ` Tomas Hlavaty [this message]
2020-12-03 20:34 ` Arthur Miller
2020-12-03 20:53 ` Stefan Monnier
2020-12-01 8:01 ` Tomas Hlavaty
2020-12-01 15:36 ` Arthur Miller
2020-12-01 16:48 ` Tomas Hlavaty
2020-12-01 15:58 ` Eli Zaretskii
2020-12-01 17:33 ` Tomas Hlavaty
2020-12-01 19:41 ` Eli Zaretskii
2020-12-02 20:37 ` Tomas Hlavaty
2020-12-03 14:39 ` Eli Zaretskii
2020-12-03 21:02 ` Tomas Hlavaty
2020-12-04 7:48 ` Eli Zaretskii
2020-12-03 0:37 ` Akira Kyle
2020-12-03 8:15 ` Tomas Hlavaty
2020-12-03 15:13 ` Eli Zaretskii
2020-12-03 21:15 ` Tomas Hlavaty
2020-12-04 8:00 ` Eli Zaretskii
2020-11-30 9:05 ` martin rudalics
2020-11-30 16:10 ` Eli Zaretskii
2020-11-23 22:12 ` Alexander Adolf
2020-11-24 1:30 ` T.V Raman
2020-11-24 8:13 ` Arthur Miller
2020-11-24 3:51 ` Akira Kyle
-- strict thread matches above, loose matches on Subject: below --
2020-12-02 2:58 arthur miller
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=87k0tzcnyd.fsf@logand.com \
--to=tom@logand.com \
--cc=akira@akirakyle.com \
--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 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.