From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED.blaine.gmane.org!not-for-mail From: Ergus Newsgroups: gmane.emacs.devel Subject: Re: Question about display engine Date: Wed, 28 Aug 2019 20:19:58 +0200 Message-ID: <20190828181958.364qto4kv3hsqtqt@Ergus> References: <20190826043145.pm5aplrxna5hwcso@Ergus> <83y2zgfjzs.fsf@gnu.org> <20190826081819.cuhm3tpw3lq3m5jh@Ergus> <83mufwfe8o.fsf@gnu.org> <20190827222025.p2cbjwak4ysi3ept@Ergus> <3ea328a6-2b35-5a01-77a1-bbf9ff7f16f2@gmx.at> <83lfvdd5f7.fsf@gnu.org> <20190828163142.kds3mfnyrjvxxxcj@Ergus> <83v9uhb3ud.fsf@gnu.org> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii; format=flowed Injection-Info: blaine.gmane.org; posting-host="blaine.gmane.org:195.159.176.226"; logging-data="163858"; mail-complaints-to="usenet@blaine.gmane.org" User-Agent: NeoMutt/20180716 Cc: rudalics@gmx.at, emacs-devel@gnu.org To: Eli Zaretskii Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Wed Aug 28 20:20:48 2019 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([209.51.188.17]) by blaine.gmane.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.89) (envelope-from ) id 1i32Yp-000gSE-VX for ged-emacs-devel@m.gmane.org; Wed, 28 Aug 2019 20:20:48 +0200 Original-Received: from localhost ([::1]:39572 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1i32Yo-0004Cc-P8 for ged-emacs-devel@m.gmane.org; Wed, 28 Aug 2019 14:20:46 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:58077) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1i32YG-0004CT-GA for emacs-devel@gnu.org; Wed, 28 Aug 2019 14:20:13 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1i32YE-0007zs-Tl for emacs-devel@gnu.org; Wed, 28 Aug 2019 14:20:12 -0400 Original-Received: from sonic312-26.consmr.mail.ir2.yahoo.com ([77.238.178.97]:44941) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1i32YE-0007yp-ER for emacs-devel@gnu.org; Wed, 28 Aug 2019 14:20:10 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=aol.com; s=a2048; t=1567016408; bh=RdRfoFlNB2a6l3yGpUgRKKTf7K6/JLx+dbRR6y5V6ug=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From:Subject; b=o3vLLge1XigbUYILuZ+N8p4kEskwrGjwJwdrbhQ9gYv+qaRjgm7oV1mz/LlLggE9wVjWsV26DFIJj4SNTtbvv2AyORhS6FqZWeMIQ7MWP5w3HiB6IntYUAjvd1A7/zNYyLfxWOHNIomUOcCpchxr+RYmiwEhqWSxxOi/ZFKtKQkw4aY4cA8UDtubs2BQzYEDqJOUBgy5ODd+v94iHoBLF8Ec6hhDoFCkHJNHCtRdK3fXi/OukXeSEH3TC3nFgT44WV3FxL4ze72oZx+U9HlzxnWjomIPIQWYFdxos2le+rDNErEmObzLDXYVUZ5katuUyIVPHWRnMJ688p6sN7k9XA== X-YMail-OSG: jtXBCwsVM1nuurZeZxp_bsLIu0i8idnWU3xG31fao2uIYwPrbm7Kr.hWDf70CEH p7G1yeWoYMs7_ebOuM2tuALCMYLiu25AbggMpj2XazC0zIWBrGYjyddViTQj3rTppZ4Qga1tsCIz Lnbx8NrXd6vNY7RlUWRx552c.mIgBDZmhAOuQbNK9ZHt_yHfecxmqNvKpV7Me8ae85.Y8mIAagW4 3mTE0IcYZ5jlP5uNqrtOFJN.h3qsdKazM8WSRwm_XzNpNvpMPZd1tOFJr8mUylIppmgzNe3cX74y 52kgi5XZ5lKXBppc3MPFEijvWF_8ySXsKs6RgXsl6NwB_lA5fLiMUw4dBVOXHevNakbo7TnRIc8V ObgT_Pv1LDV8nHsOOaZBFluFMhcFgYnmjfzT9BSfZDocfflkJzMT_je2.UU_luslewg6POEyfFWk PZbTo_ZtEd30k7NWHMp9_pIdlSDi03cIAJEcpZ9gmGOdRMDa9.HaQRndQjT4E_bWBcVbb6XxTyb3 4CTUSxjB5RXssRY_QGRhz6IqlrRBjOAiizEHSyUyYsTLOo43JmmNM3IQN4hU00Q1ByUFHSqkH0Zf NpbZCELnZ49q.ojt3eSXO9vc3VyRS8JPO0D2eoIHQYy1E6nv6MZ.2QuFxOY__4b8tU5lsOJnemmD paE2aGJrbrRWH7REQBA70mSf2HGMUUi6.CbQBlyy.dmgtBXBdOp8e_jltHf93dhoIqgbtv59ecOz BBADM.GV8TJk0piwJmLvAsFY_JODmgyv8kRF8VaGXQaJBkGN2NbveGIoQyBhKPMxzYZFP9a3ehbw ohJkmO9dnqFxVvk8QBwnP4uUH7TZGOWUE1bV2y.zbk Original-Received: from sonic.gate.mail.ne1.yahoo.com by sonic312.consmr.mail.ir2.yahoo.com with HTTP; Wed, 28 Aug 2019 18:20:08 +0000 Original-Received: by smtp413.mail.ir2.yahoo.com (Oath Hermes SMTP Server) with ESMTPA ID 21bc05be2c618a28939c9d976a42588c; Wed, 28 Aug 2019 18:20:03 +0000 (UTC) Content-Disposition: inline In-Reply-To: <83v9uhb3ud.fsf@gnu.org> X-detected-operating-system: by eggs.gnu.org: GNU/Linux 3.x X-Received-From: 77.238.178.97 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.org@gnu.org Original-Sender: "Emacs-devel" Xref: news.gmane.org gmane.emacs.devel:239650 Archived-At: On Wed, Aug 28, 2019 at 08:24:26PM +0300, Eli Zaretskii wrote: >> Date: Wed, 28 Aug 2019 18:31:42 +0200 >> From: Ergus >> Cc: Eli Zaretskii , emacs-devel@gnu.org >> >> Any way my question comes from 2 frequent use cases I don't know what's >> the expected behavior: >> >> 1) Base face sets background and extend; and face sets only background. > >The background of the base face will be extended. > But AFAIU the actual merging rules now will create a new face (if not there already) that will have the new background; so this means that then we need a way to remember the last background color where background and extend where set at the same time; so the extend flag will be not a bool flag, but a pointer (or a copy) to a previous point (value) in the faces stack?? Then at the last step of the merge we could potentially have N exact equal faces that only have difference in those points. >> 2) Base face sets extend but not background; and face sets both. > >The background of the face will be extended. > >> in what condition the :extend attribute goes to the merged face? Always? >> when in base_face? When in face? > >The :extend attribute determines whether the background color of the >face with that attribute does or doesn't get merged into the "merged >face" to be used by the iterator. >