From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.ciao.gmane.io!not-for-mail From: Eli Zaretskii Newsgroups: gmane.emacs.devel Subject: Re: Emacs canvas support Date: Wed, 29 Apr 2020 11:24:31 +0300 Message-ID: <834kt21yyo.fsf@gnu.org> References: <875zdikdge.fsf.ref@yahoo.com> <875zdikdge.fsf@yahoo.com> Injection-Info: ciao.gmane.io; posting-host="ciao.gmane.io:159.69.161.202"; logging-data="70174"; mail-complaints-to="usenet@ciao.gmane.io" Cc: emacs-devel@gnu.org To: Po Lu Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Wed Apr 29 10:25:32 2020 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 1jTi26-000I6V-KP for ged-emacs-devel@m.gmane-mx.org; Wed, 29 Apr 2020 10:25:30 +0200 Original-Received: from localhost ([::1]:45404 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1jTi25-0002ga-Mt for ged-emacs-devel@m.gmane-mx.org; Wed, 29 Apr 2020 04:25:29 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:54172) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1jTi1T-0001EG-1q for emacs-devel@gnu.org; Wed, 29 Apr 2020 04:24:51 -0400 Original-Received: from fencepost.gnu.org ([2001:470:142:3::e]:50510) by eggs.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1jTi1S-00014z-NU; Wed, 29 Apr 2020 04:24:50 -0400 Original-Received: from [176.228.60.248] (port=4856 helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82) (envelope-from ) id 1jTi1R-0008Kf-DD; Wed, 29 Apr 2020 04:24:49 -0400 In-Reply-To: <875zdikdge.fsf@yahoo.com> (emacs-devel@gnu.org) X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.23 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:248097 Archived-At: > Date: Wed, 29 Apr 2020 14:34:09 +0800 > From: Po Lu via "Emacs development discussions." > > I'd appreciate some feedback on something I came up with during my spare > time: Emacs canvas support. I've read the code and the docs, but I don't think I have a clear idea of what "canvases" are and what would be their intended usage. Perhaps consider starting the documentation with some introductory comments and even a small tutorial. It sounds like you are talking about a way to create images dynamically, but then I don't understand why we need canvas-from-image, for example. Also, is there support for clicking the mouse on a canvas? I don't see it. > For now it only works on X11 + Cairo builds, and I haven't quite figured > out how to make redisplay work reliably on canvases Well, that'd be my main comments. I don't quite understand the parts of the display code you use for this, they seem like a copy/paste from other objects, sometimes with comments that weren't updated and still reference images instead of canvases. If the drawing on the canvas is supposed to be modified by Lisp code, then we'd need a much more elaborate machinery than just one flag to decide when a canvas needs to be redrawn. Thanks.