From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.ciao.gmane.io!not-for-mail From: Alan Third Newsgroups: gmane.emacs.bugs Subject: bug#40845: SVG rendering issues Date: Sun, 3 May 2020 19:38:39 +0100 Message-ID: <20200503183839.GA24860@breton.holly.idiocy.org> References: <17307310-2afc-7941-8a48-5cd345d1ad63@gmail.com> <83k1237b2a.fsf@gnu.org> <20200425174651.GC82687@breton.holly.idiocy.org> <20200426211741.GA93046@breton.holly.idiocy.org> <09a19c49-91cb-8024-8c34-53d846d98313@gmail.com> <20200503141348.GA4071@breton.holly.idiocy.org> <83r1w1ovc3.fsf@gnu.org> <83ftchotee.fsf@gnu.org> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit Injection-Info: ciao.gmane.io; posting-host="ciao.gmane.io:159.69.161.202"; logging-data="116705"; mail-complaints-to="usenet@ciao.gmane.io" Cc: cpitclaudel@gmail.com, 40845@debbugs.gnu.org, pipcet@gmail.com To: Eli Zaretskii Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Sun May 03 20:39:10 2020 Return-path: Envelope-to: geb-bug-gnu-emacs@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 1jVJW9-000UFb-SF for geb-bug-gnu-emacs@m.gmane-mx.org; Sun, 03 May 2020 20:39:09 +0200 Original-Received: from localhost ([::1]:52068 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1jVJW8-0000NP-IL for geb-bug-gnu-emacs@m.gmane-mx.org; Sun, 03 May 2020 14:39:08 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:59252) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1jVJW2-0000NG-4d for bug-gnu-emacs@gnu.org; Sun, 03 May 2020 14:39:02 -0400 Original-Received: from debbugs.gnu.org ([209.51.188.43]:46465) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1jVJW1-0007Ea-Qq for bug-gnu-emacs@gnu.org; Sun, 03 May 2020 14:39:01 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1jVJW1-0004Yl-Ky for bug-gnu-emacs@gnu.org; Sun, 03 May 2020 14:39:01 -0400 X-Loop: help-debbugs@gnu.org Resent-From: Alan Third Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sun, 03 May 2020 18:39:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 40845 X-GNU-PR-Package: emacs Original-Received: via spool by 40845-submit@debbugs.gnu.org id=B40845.158853112817505 (code B ref 40845); Sun, 03 May 2020 18:39:01 +0000 Original-Received: (at 40845) by debbugs.gnu.org; 3 May 2020 18:38:48 +0000 Original-Received: from localhost ([127.0.0.1]:58011 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1jVJVo-0004YG-7t for submit@debbugs.gnu.org; Sun, 03 May 2020 14:38:48 -0400 Original-Received: from idiocy.org ([217.169.17.33]:62406 helo=breton.holly.idiocy.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1jVJVn-0004Xx-3F for 40845@debbugs.gnu.org; Sun, 03 May 2020 14:38:47 -0400 Original-Received: by breton.holly.idiocy.org (Postfix, from userid 501) id 3840E20228A952; Sun, 3 May 2020 19:38:39 +0100 (BST) Mail-Followup-To: Alan Third , Eli Zaretskii , cpitclaudel@gmail.com, 40845@debbugs.gnu.org, pipcet@gmail.com Content-Disposition: inline In-Reply-To: <83ftchotee.fsf@gnu.org> X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: bug-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Original-Sender: "bug-gnu-emacs" Xref: news.gmane.io gmane.emacs.bugs:179605 Archived-At: On Sun, May 03, 2020 at 07:49:45PM +0300, Eli Zaretskii wrote: > > Date: Sun, 3 May 2020 17:24:17 +0100 > > From: Alan Third > > Cc: cpitclaudel@gmail.com, 40845@debbugs.gnu.org, pipcet@gmail.com > > > > One thing is that it gets the foreground colour from the default face > > instead of the current face. I’m not sure how to solve that. > > Can you describe the difficulty in using the current face? I’m mostly unsure how I access it. I don’t think images or image.c have any real concept of where they are in the buffer. I think we’d also have to recreate the image any time the face changed. For example in Clement’s test code from the original bug report, he has the face changing when the mouse hovers over the text. In order to handle that case we would need to create a new version of the image with the updated foreground and background when the mouse moves over it. We can work around having to update the background by using proper transparency, but I don’t know what other problems that might introduce. It’s harder for the foreground. Pip Cet suggested creating masks for foreground and background and using them to draw the image in sections, but I feel that’s perhaps getting a little complex, especially when I think most images won’t be changing their foreground and background colours. I feel it would be easier just to have two or more cached images with different foreground and backgrounds as required. > > I’m unsure if my use of malloc is OK, as I know Emacs code uses some > > different methods in different places. > > It's okay to call malloc and free in image.c. Excellent, thanks. -- Alan Third