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: Multimedia dashboard in GNU Emacs Date: Thu, 30 Dec 2021 09:02:02 +0800 Message-ID: <87ee5usy5x.fsf@yahoo.com> References: <87pmpm2v4b.fsf@gnus.org> <874k6ye2w4.fsf@yahoo.com> <87wnjq1vwn.fsf@yahoo.com> <87zgoj5ycl.fsf@tanaka.verona.se> Mime-Version: 1.0 Content-Type: text/plain Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="6516"; mail-complaints-to="usenet@ciao.gmane.io" User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.0.60 (gnu/linux) Cc: joakim@verona.se, Lars Ingebrigtsen , Anand Tamariya , Emacs Devel To: Aiko Kyle Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Thu Dec 30 02:02: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 1n2jqL-0001Xw-B6 for ged-emacs-devel@m.gmane-mx.org; Thu, 30 Dec 2021 02:02:57 +0100 Original-Received: from localhost ([::1]:58350 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1n2jqK-0008CJ-2L for ged-emacs-devel@m.gmane-mx.org; Wed, 29 Dec 2021 20:02:56 -0500 Original-Received: from eggs.gnu.org ([209.51.188.92]:52740) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1n2jpj-0007WN-2e for emacs-devel@gnu.org; Wed, 29 Dec 2021 20:02:19 -0500 Original-Received: from sonic313-10.consmr.mail.ne1.yahoo.com ([66.163.185.33]:46277) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1n2jph-0006Fd-BS for emacs-devel@gnu.org; Wed, 29 Dec 2021 20:02:18 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s2048; t=1640826134; bh=gKs4aglTbU+CBw6Fqtt8BdJ5numpsiNmmT/zrmRxotM=; h=From:To:Cc:Subject:References:Date:In-Reply-To:From:Subject:Reply-To; b=AJVvBnnvdHpM3RiG12RtUC5z/x1RiT94B18n1YoxqAPPZQsCQvSBijnv7mIpq0g4Trh94an7yNjjMN9vfiMSLckGUcRNCgyAr41G8C4oF9XhaKB9ba1vzh9YvEgoa/eDFOzYSWWRtvKC93n/fWJmwXpS86kdD9df41caenVQmypjWxQN6ZrLXWcgxp8HkcpJldoiH/wR/meprcJKNK696AyW7nFoxyP5PBELiFtiz+95drgc91uKkHlfJRgbGBuy93J7i87D7/VgCPv9Saw9yYG4nFS/pGEA9VIRGdZRkI1bxUXlUEyLrUc0Y+gzSyFrEKyXB1/6fonhRrXdrJKEiQ== X-SONIC-DKIM-SIGN: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s2048; t=1640826134; bh=tr3LasXPOqETCLo/+sIYYAHybjWvlfJqnllmNJCQTzP=; h=X-Sonic-MF:From:To:Subject:Date:From:Subject; b=dXQwSz9GPoioA3nUWK+tvaGPXbDaydNdAvcDTIh8BKTC8TniVgbYXDLSYxDrKPyHjdvhNxMGUHk1tpzNwDNfwqR5Vl2CVs6iwXSPIeO2cZk5JLjXtXxYPwfXn1PFOUQZ9BTgYoZP9g+9Gfr93PKiaCtcqstidRz7pYM9yG4FX3C8kLEOqJinNbjh+JA2amWLRl9ywHSMENjJ581oJ4zVY7evl90fpIeLqRhgbCVWYQagWtnoK32jnArIR/Nt52eK35/SDNMmaEeHGOjTtt+IG1ta7BZysA5o/iF7vgQDUao94qktcdCzMYSkHj/jmjKqT0oIXJcXrF8e1ifnHM2cFA== X-YMail-OSG: u7B08oUVM1nhv1vKykSuTHOLrIKOIusPoMd5cEkSzQEGJW1bbrCLg_UWIfbJqtf wOgX7ZBppYBobCr0RXBaruzjw0rN3yx655PKBD.V6X.Mf1ejzQX2XgysFt.WLtWWb3ubSagtMa4m upCUr6mMqT.unzPt_7IQaDfte8y0K9jDa.6ZZIScDd7zWxaZT7ruVGhZtZ8rKlxPoWyV1FZKvMiW b1ezLwUUKx2VuTLrQwKq5_Dq.iJFJilEW2bhVhivBFVt_WWKh9kfRssh7Z06zKSESU7DQk1w4YnL .FYarQBXzZJWncafm9c4VXoJoV3UMA8BA_Ahfpt.A5NvdcEXRnxxZRqerf2kEnf7TjdGRuf2yt0k 7bS4T8DmQo1vdvPNt2EWBmXgHscvrKBPbTJ1chT6RnYMs1ITzWpNIB4I41kd8dIxQnz2D3tT7Z74 tfIAfjWJvopMdo.FYg1I8KgdJj0QTSKtLktfbkBgHlcFb1kjMo3x5Y_jlKVJHFFHkFpcAW_uiDk4 0BSPRF9mrE4rSkEq6_UVfmdWR3bJjhPgIZbVO2ffjUXJ5dyIP8qtGICD_3CKpWMrAUpSIMamIIVp XKInGAEJ8xV0opBw1B5o0CQmmvyjMCWRDRaQIYCqNn_jqRjdwLBzDpNLN9lXAEq.dhUNdpeZT_de bl0AMjoUfP0O6txChgRWecCaKf3QS.2i0Rp6qGwvxPv1XDv.9evzV.k_6wBa.2aUpq_naq6Kt_kU r3RbiSm1B6oQ0BmjqQW0f6D4nzmetpzjBo3MziSAODrY_0JqEBBP03WLnYp1TUxHVFG2iE87nB14 4Au8MQmpRhK8B7W65OSAZoboYSYG8Z8_q.7VkkvqTE X-Sonic-MF: Original-Received: from sonic.gate.mail.ne1.yahoo.com by sonic313.consmr.mail.ne1.yahoo.com with HTTP; Thu, 30 Dec 2021 01:02:14 +0000 Original-Received: by kubenode519.mail-prod1.omega.sg3.yahoo.com (VZM Hermes SMTP Server) with ESMTPA ID 8a02e5d86b9d6d54aace5f75962e7122; Thu, 30 Dec 2021 01:02:08 +0000 (UTC) In-Reply-To: (Aiko Kyle's message of "Wed, 29 Dec 2021 12:08:08 -0700") X-Mailer: WebService/1.1.19551 mail.backend.jedi.jws.acl:role.jedi.acl.token.atz.jws.hermes.yahoo Received-SPF: pass client-ip=66.163.185.33; envelope-from=luangruo@yahoo.com; helo=sonic313-10.consmr.mail.ne1.yahoo.com X-Spam_score_int: -1 X-Spam_score: -0.2 X-Spam_bar: / X-Spam_report: (-0.2 / 5.0 requ) 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:283599 Archived-At: Aiko Kyle writes: > I think that the question of how well an xwidget obeys "the emacs > paradigm" depends on the content it's displaying. If it were a button > or some other element in a larger button, I agree that the current > model fits the emacs way well enough. However I think when the xwidget > is the only element in a buffer and takes up a large portion or even > the whole window, then I think the correct paradigm would resemble > something like doc-view, where the two widow's xwidgets can show > different views if they have some notion of scrolling. I think Doc View uses per-window overlays to achieve that, which you can also do with xwidgets. > This is the current implementation that Po Lu has fixed various > flickering bugs on master for xwidgets on x. That was the old implementation as well, but it used GDK windows instead of X windows, which could be painted over by Emacs drawing commands, and caused flickering. That doesn't make sense with a GtkSocket, because it uses XEmbed under-the-hood, which basically tells some other program where to place a window. A GtkSocket does no drawing by itself. A better solution would be to redirect a window (given an XID) to some off-screen pixmap, and to display that pixmap in every window instead.