From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED!not-for-mail From: Stefan Monnier Newsgroups: gmane.emacs.devel Subject: Re: [Emacs-diffs] master fd8f724: * src/xdisp.c (overlay_arrows_changed_p): Fix last change. Date: Thu, 02 Mar 2017 17:32:52 -0500 Message-ID: References: <83y3wqnvol.fsf@gnu.org> <83tw7enq58.fsf@gnu.org> <83r32inna5.fsf@gnu.org> <83bmtlnd4l.fsf@gnu.org> <83mvd3mzus.fsf@gnu.org> <83fuivmnz3.fsf@gnu.org> NNTP-Posting-Host: blaine.gmane.org Mime-Version: 1.0 Content-Type: text/plain X-Trace: blaine.gmane.org 1488493996 26062 195.159.176.226 (2 Mar 2017 22:33:16 GMT) X-Complaints-To: usenet@blaine.gmane.org NNTP-Posting-Date: Thu, 2 Mar 2017 22:33:16 +0000 (UTC) User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/26.0.50 (gnu/linux) To: emacs-devel@gnu.org Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Thu Mar 02 23:33:12 2017 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by blaine.gmane.org with esmtp (Exim 4.84_2) (envelope-from ) id 1cjZHX-000616-5N for ged-emacs-devel@m.gmane.org; Thu, 02 Mar 2017 23:33:07 +0100 Original-Received: from localhost ([::1]:55022 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1cjZHd-0000YK-8T for ged-emacs-devel@m.gmane.org; Thu, 02 Mar 2017 17:33:13 -0500 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:46595) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1cjZHX-0000Y3-9L for emacs-devel@gnu.org; Thu, 02 Mar 2017 17:33:08 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1cjZHU-0007a7-6M for emacs-devel@gnu.org; Thu, 02 Mar 2017 17:33:07 -0500 Original-Received: from [195.159.176.226] (port=59179 helo=blaine.gmane.org) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1cjZHT-0007Zy-Vr for emacs-devel@gnu.org; Thu, 02 Mar 2017 17:33:04 -0500 Original-Received: from list by blaine.gmane.org with local (Exim 4.84_2) (envelope-from ) id 1cjZHL-0004v2-PK for emacs-devel@gnu.org; Thu, 02 Mar 2017 23:32:55 +0100 X-Injected-Via-Gmane: http://gmane.org/ Original-Lines: 18 Original-X-Complaints-To: usenet@blaine.gmane.org Cancel-Lock: sha1:B7nrooAz7ZVY+RAi92KRK/hIxgo= X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] [fuzzy] X-Received-From: 195.159.176.226 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.21 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:212721 Archived-At: >> > Isn't it easier to keep the record of changes in these variables in >> > the buffer object, like we do with BUF_MODIFF etc.? >> I don't understand the question. Which "these variables" are you >> talking about? > The 3 variables related to overlay-arrow whose changes need to trigger > redisplay of the respective buffers: overlay-arrow-position, > overlay-arrow-string, and overlay-arrow-bitmap. But that means we need to watch variable assignments, marker modifications, and symbol property modifications. Using overlays gets us all this "for free" because we already watch all overlay modifications. The issue of where to store the "record of change" is actually rather minor (we currently store it in a global var and that's a bug, but fixing it is fairly easy). Stefan