From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Po Lu Newsgroups: gmane.emacs.devel Subject: Re: Platform independent graphical display for Emacs Date: Sat, 25 Dec 2021 19:51:42 +0800 Message-ID: <87tuew9a29.fsf@yahoo.com> References: <87ilvgwfor.fsf@telefonica.net> <83a6grx1o9.fsf@gnu.org> <834k6zwvi1.fsf@gnu.org> <87h7azilmu.fsf@yahoo.com> <87sfujh4a2.fsf@yahoo.com> <877dbuhm6j.fsf@yahoo.com> <87tueyg5gc.fsf@yahoo.com> <83y24asbh4.fsf@gnu.org> <83tuexqh7w.fsf@gnu.org> <9c04ef31-96e0-1874-7385-633435a28b5f@yandex.ru> Mime-Version: 1.0 Content-Type: text/plain Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="30736"; mail-complaints-to="usenet@ciao.gmane.io" User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.0.60 (gnu/linux) Cc: Eli Zaretskii , stefankangas@gmail.com, drew.adams@oracle.com, emacs-devel@gnu.org To: Dmitry Gutov Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Sat Dec 25 12:52:58 2021 Return-path: Envelope-to: ged-emacs-devel@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1n15bd-0007hT-TC for ged-emacs-devel@m.gmane-mx.org; Sat, 25 Dec 2021 12:52:58 +0100 Original-Received: from localhost ([::1]:53936 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1n15bb-0001tl-Tt for ged-emacs-devel@m.gmane-mx.org; Sat, 25 Dec 2021 06:52:55 -0500 Original-Received: from eggs.gnu.org ([209.51.188.92]:51840) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1n15ad-0001Eo-VS for emacs-devel@gnu.org; Sat, 25 Dec 2021 06:51:55 -0500 Original-Received: from sonic303-21.consmr.mail.ne1.yahoo.com ([66.163.188.147]:37925) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1n15ac-0000qE-3q for emacs-devel@gnu.org; Sat, 25 Dec 2021 06:51:55 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s2048; t=1640433112; bh=U129zovn/SJ4Zr6Xlate1gq/IxHCztGxtTroArGJS1M=; h=From:To:Cc:Subject:References:Date:In-Reply-To:From:Subject:Reply-To; b=Gj+u/L5muRy1hl0TwO0g2suEGhmNas/KWGJ1reIGyc16c9gO/cN82S8svHd88heJg6J8tzhR+ReCbKT9kAn91uNRFErVZCePS8b7aZI852JXfMQFcUvptNiboYK1Oju7At7fk3ku9w0yRCSjy5iOTSG2aL0Yefl7t1eDzA6NzM1vTxcCSYJwoFtEC4WxHwIbhVYcK+8K/VwJeF5iZRPQWLebObSzD4UrPPloTrC28PuaknIFJ6fRnj81kWR0DbpWfVSAkT22L5Liu6tY8QL+Dw0j08kmre7qg93qz34t1QiqwgXyribTjVIylVUlJtdpCJ8OqhCbz1u/2+sVuzpYqw== X-SONIC-DKIM-SIGN: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s2048; t=1640433112; bh=E2Gvjo98AgkfL6bUQiEfJjUVAivYLtC2xPa2Ezytcst=; h=X-Sonic-MF:From:To:Subject:Date:From:Subject; b=rCWAAURZNQrU7FobHiASp2nS0LP9pCbdQPwDooN9YFv7hsHoW5Do78kOa2sKGnv7rbc6NPjG5npW9k43udP4LOhGzxlsaKG9m3tLtewesJxmM+qlBlRo1cU/rrDAYWIdFAFdRIneAIWofgPn0ojr63kpw34jFTbT9xETQwpA4K/6h81Ziafuz4qA0WAPIiqaWrlUq+D6HT56qt74KXmhweUb0StJFrAHAi2eIUasgPWW1f0DSM5M3MtAAjlYztH7c3ebu2SJm4zBxKKApothb32fCm+/yVMYeFNymea9w/67Vvf9wNpNrXdZs6eRALma51tSWoVgTFR1XJMGPlxDoQ== X-YMail-OSG: iy7wAYYVM1meMmlVcodmyFX7iZfRj1P7KL_WPBEWK6VwprMwXUpK72opI9CN5MA IyBJgUkSa9OMAy8g4CjBfCsUORNxGynw.COn1LhFfEZewIaWaMQ7FLPnqcSz_ryTtvo9Q_Xl1ADC AKmUF8zyr2i2jork.wVcRKo.ko2x39E6VYqDc0e2mZIHLzNFXrCXWDwU0mM9u.US6uuIYczG.OZb kQ6SfcIg_G.sFOmMEDXKTFhsdSwCQxgpJ0FBy7dXwXeqcu8JseTHCsf_MoqjWQ7B752zqO_7QghF eZ.uQx4G0pYjK.3kivUcuXzsSvVeucMq2gdUmgI_sGP4xIkE_k4CnjmEa_uZDyyNUsNs4VkDUGnn fNbXR4jgZF_0Rr7hzJnpdG._yLoGKeY.e1P8drjZc_e9nqRwzLeOLu_.IfcypZdXBb8rNWm0n2rm vm1liC_USaMu9HjkkKSk0zbrswUUffw7zWn5OBJKorK0FhOPxZ58JRA3rtRyCzXXJSkuTSfqATG2 fbO5MOt9PSdLua.KOVW9gGkBNkdsJ.VdwiapRUdm2_T84n3WJ7QXM9Ioftedjs2LsJn_o8Q4wNF0 DFGlNmvpiK_X06ynGt8pnnA910AbWXC_PFAjBJELTXOxZCH0LBUnKmD6WP0vfcsBccfs0BJwbVpf 6Dix8LetQux90.CZpq9ipuSWlaZJhXXE2PvZnbKA7ux0yiL9.2Fsr_pDwNE3x8qMoGPzR3Ial8X1 fR.LMGATq4DTtqzfrMTDl7DUT9A4OK3Ad_soR55grNNe9Hk1PZnINbYY6GkflNk250n79xEB.Gb. Dkw56w8Ald2_5GGOPqysd8pRSqPw3UOTR.3epQ19NK X-Sonic-MF: Original-Received: from sonic.gate.mail.ne1.yahoo.com by sonic303.consmr.mail.ne1.yahoo.com with HTTP; Sat, 25 Dec 2021 11:51:52 +0000 Original-Received: by kubenode512.mail-prod1.omega.sg3.yahoo.com (VZM Hermes SMTP Server) with ESMTPA ID 7ba3090848a3464b6249925c34b8e461; Sat, 25 Dec 2021 11:51:49 +0000 (UTC) In-Reply-To: <9c04ef31-96e0-1874-7385-633435a28b5f@yandex.ru> (Dmitry Gutov's message of "Sat, 25 Dec 2021 13:23:01 +0200") X-Mailer: WebService/1.1.19498 mail.backend.jedi.jws.acl:role.jedi.acl.token.atz.jws.hermes.yahoo Received-SPF: pass client-ip=66.163.188.147; envelope-from=luangruo@yahoo.com; helo=sonic303-21.consmr.mail.ne1.yahoo.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=unavailable autolearn_force=no X-Spam_action: no action X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Original-Sender: "Emacs-devel" Xref: news.gmane.io gmane.emacs.devel:283197 Archived-At: Dmitry Gutov writes: > That should pretty much guarantee that it will be maintained. But the > odds of reaching that point are pretty slim, of course, given that we > don't lack in different viewpoints here. Maintaining a toolkit, even more so one that supports as many platforms as we do, is not a one-person job, especially in this rapidly changing world. Case in point: Wayland (which we definitely want to support.) A single expert (or even a small group of experts) will have a very hard time maintaining a toolkit that will work with Wayland, seeing as you have to understand XML, a complicated wire protocol and several very rapidly changing "standard" extensions to do any meaningful work with it. For example, an unstable extension is required for a toplevel to obtain the input focus, and another is required to handle input methods. Seeing as other programs such as Chromium (and by extension VS-Code) and even toolkits with ample funding and full-time developers such as Qt still struggle with Wayland support, I think it would be a very, very bad idea for us to take that task onto ourselves. Besides, we will probably not be able to implement everything on other platforms such as NS, Haiku, or MS-Windows, so such a configuration will likely be specific to X, which begs the question of why we should use that configuration instead of the other in-tree X toolkit Lucid. > I would at least hope that switching to another no-toolkit > configuration (and removing the current one soon after) is on the > table. After getting enough consensus, naturally. You can't really switch "from one no-toolkit configuration" to another, because they cannot be much different by definition. My idea of the only remotely practical way to implement a similar configuration is for everything on the display (such as menu bars and scroll bars, but not dialog boxes or popup menus) to be drawn by redisplay through the RIF similarly to how the tool bar is displayed at present in all platforms except NS and GTK. I think we can already do that with the menu bar as well -- the only job that's left is to make it look nicer, possibly by applying a box and a gray background to the individual buttons there. Ideally, this won't require significant changes to the X specific code at all. However, exposing that to Lisp would be a bad idea. If the tab bar feature is anything to judge by, this seems to be quite difficult and also tends to create obscure bugs, such as the image relief bugs with the tab bar. > It might become feasible to remove a number of them, though. If my > hunch is right that people have been holding on to no-toolkit, or > Motif, or Lucid, because they each have some pet bug which is present > on newer toolkit ports, but not on their chosen one. People might also have a preference for Lucid or Motif, or even GTK+. There are also people who want to use Motif/Lucid specific resources, or GTK stylesheets. I hope we will not remove any of the toolkit code, no matter what. > Having a port like that developed could get us +1 such expect. That assumes someone exists and is willing to do the work. I don't think we can magically "have" such a port developed and gain such an expert. Would you like to volunteer?