GNU bug report logs - #3347
23.0.93; unnecessary display updates with mouse-drag-region

Previous Next

Package: emacs;

Reported by: YAMAMOTO Mitsuharu <mituharu <at> math.s.chiba-u.ac.jp>

Date: Fri, 22 May 2009 03:00:03 UTC

Severity: normal

To reply to this bug, email your comments to 3347 AT debbugs.gnu.org.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to bug-submit-list <at> lists.donarmstrong.com, Emacs Bugs <bug-gnu-emacs <at> gnu.org>:
bug#3347; Package emacs. (Fri, 22 May 2009 03:00:03 GMT) Full text and rfc822 format available.

Acknowledgement sent to YAMAMOTO Mitsuharu <mituharu <at> math.s.chiba-u.ac.jp>:
New bug report received and forwarded. Copy sent to Emacs Bugs <bug-gnu-emacs <at> gnu.org>. (Fri, 22 May 2009 03:00:03 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> emacsbugs.donarmstrong.com (full text, mbox):

From: YAMAMOTO Mitsuharu <mituharu <at> math.s.chiba-u.ac.jp>
To: emacs-pretest-bug <at> gnu.org
Subject: 23.0.93; unnecessary display updates with mouse-drag-region
Date: Fri, 22 May 2009 11:54:58 +0900
Mouse dragging over a text in the default face causes unnecessary
updates in other windows displaying the same buffer.

Steps to reproduce:

  1. Invoke "Quartz Debug.app" on Mac OS X and check the "Flash screen
     updates" button.
  2. $ emacs -Q -D
  3. C-x 2
  4. Drag the mouse over the *scratch* buffer text in the first
     window.

Result:

  The text not only in the first window but also the other one is
  flashed whereas the latter doesn't need updates.  The flashed area
  corresponds to the extended/shrunken part of the region in the first
  window.

The updates in the second window do not happen if the text is in
non-default face (e.g., start with "emacs -Q" instead of "emacs -Q
-D").

I can't observe this phenomenon on Emacs 22.3.

				     YAMAMOTO Mitsuharu
				mituharu <at> math.s.chiba-u.ac.jp

In GNU Emacs 23.0.93.1 (powerpc-apple-darwin9.6.0, X toolkit)
 of 2009-05-22 on yamamoto-mitsuharu-no-power-mac-g5.local
Windowing system distributor `The X.Org Foundation', version 11.0.10402000
configured using `configure  '--without-jpeg' '--without-gif' '--without-tiff''

Important settings:
  value of $LC_ALL: nil
  value of $LC_COLLATE: nil
  value of $LC_CTYPE: nil
  value of $LC_MESSAGES: nil
  value of $LC_MONETARY: nil
  value of $LC_NUMERIC: nil
  value of $LC_TIME: nil
  value of $LANG: ja_JP.UTF-8
  value of $XMODIFIERS: nil
  locale-coding-system: utf-8-unix
  default-enable-multibyte-characters: t

Major mode: Fundamental

Minor modes in effect:
  tooltip-mode: t
  tool-bar-mode: t
  mouse-wheel-mode: t
  menu-bar-mode: t
  file-name-shadow-mode: t
  blink-cursor-mode: t
  global-auto-composition-mode: t
  auto-encryption-mode: t
  auto-compression-mode: t
  line-number-mode: t
  transient-mark-mode: t




Severity set to `serious' from `normal' Request was from Stefan Monnier <monnier <at> iro.umontreal.ca> to control <at> emacsbugs.donarmstrong.com. (Fri, 22 May 2009 04:35:03 GMT) Full text and rfc822 format available.

Information forwarded to bug-submit-list <at> lists.donarmstrong.com, Emacs Bugs <bug-gnu-emacs <at> gnu.org>:
bug#3347; Package emacs. (Sat, 23 May 2009 02:05:06 GMT) Full text and rfc822 format available.

Acknowledgement sent to YAMAMOTO Mitsuharu <mituharu <at> math.s.chiba-u.ac.jp>:
Extra info received and forwarded to list. Copy sent to Emacs Bugs <bug-gnu-emacs <at> gnu.org>. (Sat, 23 May 2009 02:05:06 GMT) Full text and rfc822 format available.

Message #12 received at 3347 <at> emacsbugs.donarmstrong.com (full text, mbox):

From: YAMAMOTO Mitsuharu <mituharu <at> math.s.chiba-u.ac.jp>
To: 3347 <at> debbugs.gnu.org
Subject: Re: bug#3347: 23.0.93;	unnecessary display updates with mouse-drag-region
Date: Sat, 23 May 2009 11:00:13 +0900
>>>>> On Fri, 22 May 2009 11:54:58 +0900, YAMAMOTO Mitsuharu <mituharu <at> math.s.chiba-u.ac.jp> said:

> Mouse dragging over a text in the default face causes unnecessary
> updates in other windows displaying the same buffer.

> Steps to reproduce:

>   1. Invoke "Quartz Debug.app" on Mac OS X and check the "Flash screen
>      updates" button.
>   2. $ emacs -Q -D
>   3. C-x 2
>   4. Drag the mouse over the *scratch* buffer text in the first
>      window.

> Result:

>   The text not only in the first window but also the other one is
>   flashed whereas the latter doesn't need updates.  The flashed area
>   corresponds to the extended/shrunken part of the region in the first
>   window.

> The updates in the second window do not happen if the text is in
> non-default face (e.g., start with "emacs -Q" instead of "emacs -Q
> -D").

> I can't observe this phenomenon on Emacs 22.3.

I tried some older versions and found that the change below made the
difference.

				     YAMAMOTO Mitsuharu
				mituharu <at> math.s.chiba-u.ac.jp

2008-07-08  Chong Yidong  <cyd <at> stupidchicken.com>

	* xfaces.c (Finternal_merge_in_global_face): Save merged
	attributes for the default face back into the face vector.

--- xfaces.c	2008/07/06 03:51:06	1.404
+++ xfaces.c	2008/07/08 17:27:28	1.405
@@ -3966,7 +3966,7 @@
     else if (! UNSPECIFIEDP (gvec[i]))
       lvec[i] = gvec[i];
 
-  /* If the default face was changed, realize it again, and update the
+  /* If the default face was changed, update the face cache and the
      `font' frame parameter.  */
   if (EQ (face, Qdefault))
     {
@@ -3977,9 +3977,12 @@
       /* This can be NULL (e.g., in batch mode).  */
       if (oldface)
 	{
+	  /* Ensure that the face vector is fully specified by merging
+	     the previously-cached vector.  */
 	  bcopy (oldface->lface, attrs, sizeof attrs);
 	  merge_face_vectors (f, lvec, attrs, 0);
-	  newface = realize_face (c, attrs, DEFAULT_FACE_ID);
+	  bcopy (attrs, lvec, sizeof attrs);
+	  newface = realize_face (c, lvec, DEFAULT_FACE_ID);
 
 	  if ((! UNSPECIFIEDP (gvec[LFACE_FAMILY_INDEX])
 	       || ! UNSPECIFIEDP (gvec[LFACE_FOUNDRY_INDEX])



Information forwarded to bug-submit-list <at> lists.donarmstrong.com, Emacs Bugs <bug-gnu-emacs <at> gnu.org>:
bug#3347; Package emacs. (Wed, 10 Jun 2009 17:00:03 GMT) Full text and rfc822 format available.

Acknowledgement sent to Chong Yidong <cyd <at> stupidchicken.com>:
Extra info received and forwarded to list. Copy sent to Emacs Bugs <bug-gnu-emacs <at> gnu.org>. (Wed, 10 Jun 2009 17:00:03 GMT) Full text and rfc822 format available.

Message #17 received at 3347 <at> emacsbugs.donarmstrong.com (full text, mbox):

From: Chong Yidong <cyd <at> stupidchicken.com>
To: YAMAMOTO Mitsuharu <mituharu <at> math.s.chiba-u.ac.jp>
Cc: 3347 <at> debbugs.gnu.org
Subject: Re: 23.0.93; unnecessary display updates with mouse-drag-region
Date: Wed, 10 Jun 2009 12:50:23 -0400
> Mouse dragging over a text in the default face causes unnecessary
> updates in other windows displaying the same buffer.
>
> I tried some older versions and found that the change below made the
> difference.
>
> 2008-07-08  Chong Yidong  <cyd <at> stupidchicken.com>
>
>             * xfaces.c (Finternal_merge_in_global_face): Save merged
>             attributes for the default face back into the face vector.

I don't see why.  Is Finternal_merge_in_global_face called when you
perform mouse dragging?  It should not be (and on my current GNU/Linux
build it isn't).



Information forwarded to bug-submit-list <at> lists.donarmstrong.com, Emacs Bugs <bug-gnu-emacs <at> gnu.org>:
bug#3347; Package emacs. (Thu, 11 Jun 2009 00:35:04 GMT) Full text and rfc822 format available.

Acknowledgement sent to YAMAMOTO Mitsuharu <mituharu <at> math.s.chiba-u.ac.jp>:
Extra info received and forwarded to list. Copy sent to Emacs Bugs <bug-gnu-emacs <at> gnu.org>. (Thu, 11 Jun 2009 00:35:05 GMT) Full text and rfc822 format available.

Message #22 received at 3347 <at> emacsbugs.donarmstrong.com (full text, mbox):

From: YAMAMOTO Mitsuharu <mituharu <at> math.s.chiba-u.ac.jp>
To: Chong Yidong <cyd <at> stupidchicken.com>
Cc: 3347 <at> debbugs.gnu.org
Subject: Re: 23.0.93; unnecessary display updates with mouse-drag-region
Date: Thu, 11 Jun 2009 09:28:10 +0900
>>>>> On Wed, 10 Jun 2009 12:50:23 -0400, Chong Yidong <cyd <at> stupidchicken.com> said:

>> Mouse dragging over a text in the default face causes unnecessary
>> updates in other windows displaying the same buffer.
>>
>> I tried some older versions and found that the change below made the
>> difference.
>>
>> 2008-07-08  Chong Yidong  <cyd <at> stupidchicken.com>
>>
>>             * xfaces.c (Finternal_merge_in_global_face): Save merged
>>             attributes for the default face back into the face vector.

> I don't see why.  Is Finternal_merge_in_global_face called when you
> perform mouse dragging?  It should not be (and on my current GNU/Linux
> build it isn't).

No.  The breakpoint didn't hit during mouse dragging.

				     YAMAMOTO Mitsuharu
				mituharu <at> math.s.chiba-u.ac.jp



Severity set to 'important' from 'serious' Request was from Chong Yidong <cyd <at> stupidchicken.com> to control <at> debbugs.gnu.org. (Sat, 03 Apr 2010 00:12:02 GMT) Full text and rfc822 format available.

Severity set to 'normal' from 'important' Request was from Chong Yidong <cyd <at> gnu.org> to control <at> debbugs.gnu.org. (Mon, 27 Feb 2012 09:22:02 GMT) Full text and rfc822 format available.

Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#3347; Package emacs. (Mon, 14 Sep 2020 14:46:01 GMT) Full text and rfc822 format available.

Message #29 received at 3347 <at> debbugs.gnu.org (full text, mbox):

From: Lars Ingebrigtsen <larsi <at> gnus.org>
To: YAMAMOTO Mitsuharu <mituharu <at> math.s.chiba-u.ac.jp>
Cc: 3347 <at> debbugs.gnu.org
Subject: Re: bug#3347: 23.0.93; unnecessary display updates with
 mouse-drag-region
Date: Mon, 14 Sep 2020 16:44:39 +0200
YAMAMOTO Mitsuharu <mituharu <at> math.s.chiba-u.ac.jp> writes:

> Mouse dragging over a text in the default face causes unnecessary
> updates in other windows displaying the same buffer.
>
> Steps to reproduce:
>
>   1. Invoke "Quartz Debug.app" on Mac OS X and check the "Flash screen
>      updates" button.
>   2. $ emacs -Q -D
>   3. C-x 2
>   4. Drag the mouse over the *scratch* buffer text in the first
>      window.

(This was 11 years ago.)

The Quartz Debug app doesn't seem to exist on Macos any more, so I'm
unable to try the recipe.

Do you still see this problem in more recent versions of Emacs?

-- 
(domestic pets only, the antidote for overdose, milk.)
   bloggy blog: http://lars.ingebrigtsen.no




Added tag(s) moreinfo. Request was from Lars Ingebrigtsen <larsi <at> gnus.org> to control <at> debbugs.gnu.org. (Mon, 14 Sep 2020 14:46:02 GMT) Full text and rfc822 format available.

Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#3347; Package emacs. (Wed, 16 Sep 2020 04:26:01 GMT) Full text and rfc822 format available.

Message #34 received at 3347 <at> debbugs.gnu.org (full text, mbox):

From: YAMAMOTO Mitsuharu <mituharu <at> math.s.chiba-u.ac.jp>
To: Lars Ingebrigtsen <larsi <at> gnus.org>
Cc: 3347 <at> debbugs.gnu.org
Subject: Re: bug#3347: 23.0.93;
 unnecessary display updates with mouse-drag-region
Date: Wed, 16 Sep 2020 13:25:38 +0900
On Mon, 14 Sep 2020 23:44:39 +0900,
Lars Ingebrigtsen wrote:
> 
> YAMAMOTO Mitsuharu <mituharu <at> math.s.chiba-u.ac.jp> writes:
> 
> > Mouse dragging over a text in the default face causes unnecessary
> > updates in other windows displaying the same buffer.
> >
> > Steps to reproduce:
> >
> >   1. Invoke "Quartz Debug.app" on Mac OS X and check the "Flash screen
> >      updates" button.
> >   2. $ emacs -Q -D
> >   3. C-x 2
> >   4. Drag the mouse over the *scratch* buffer text in the first
> >      window.
> 
> (This was 11 years ago.)
> 
> The Quartz Debug app doesn't seem to exist on Macos any more, so I'm
> unable to try the recipe.

It is now included in "Additional Tools for Xcode", which can be
downloaded from https://developer.apple.com/download/more/ (You might
need to sign in with your Apple ID.)


> Do you still see this problem in more recent versions of Emacs?

Yes, but you need to disable double-buffering with
(set-frame-paremter nil 'inhibit-double-buffering t) .
Otherwise, Quartz Debug thinks the whole frame is updated.

				     YAMAMOTO Mitsuharu
				mituharu <at> math.s.chiba-u.ac.jp




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#3347; Package emacs. (Wed, 09 Dec 2020 15:12:02 GMT) Full text and rfc822 format available.

Message #37 received at 3347 <at> debbugs.gnu.org (full text, mbox):

From: Lars Ingebrigtsen <larsi <at> gnus.org>
To: YAMAMOTO Mitsuharu <mituharu <at> math.s.chiba-u.ac.jp>
Cc: 3347 <at> debbugs.gnu.org
Subject: Re: bug#3347: 23.0.93; unnecessary display updates with
 mouse-drag-region
Date: Wed, 09 Dec 2020 16:11:40 +0100
Lars Ingebrigtsen <larsi <at> gnus.org> writes:

> Do you still see this problem in more recent versions of Emacs?

More information was requested, but no response was given within a few
months, so I'm closing this bug report.  If the problem still exists,
please respond to this email and we'll reopen the bug report.

-- 
(domestic pets only, the antidote for overdose, milk.)
   bloggy blog: http://lars.ingebrigtsen.no




bug closed, send any further explanations to 3347 <at> debbugs.gnu.org and YAMAMOTO Mitsuharu <mituharu <at> math.s.chiba-u.ac.jp> Request was from Lars Ingebrigtsen <larsi <at> gnus.org> to control <at> debbugs.gnu.org. (Wed, 09 Dec 2020 15:12:02 GMT) Full text and rfc822 format available.

Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#3347; Package emacs. (Wed, 09 Dec 2020 16:40:02 GMT) Full text and rfc822 format available.

Message #42 received at 3347 <at> debbugs.gnu.org (full text, mbox):

From: Lars Ingebrigtsen <larsi <at> gnus.org>
To: YAMAMOTO Mitsuharu <mituharu <at> math.s.chiba-u.ac.jp>
Cc: 3347 <at> debbugs.gnu.org
Subject: Re: bug#3347: 23.0.93; unnecessary display updates with
 mouse-drag-region
Date: Wed, 09 Dec 2020 17:39:08 +0100
Lars Ingebrigtsen <larsi <at> gnus.org> writes:

> Lars Ingebrigtsen <larsi <at> gnus.org> writes:
>
>> Do you still see this problem in more recent versions of Emacs?
>
> More information was requested, but no response was given within a few
> months, so I'm closing this bug report.  If the problem still exists,
> please respond to this email and we'll reopen the bug report.

Sorry; this was closed by mistake; reopening.

-- 
(domestic pets only, the antidote for overdose, milk.)
   bloggy blog: http://lars.ingebrigtsen.no




Removed tag(s) moreinfo. Request was from Lars Ingebrigtsen <larsi <at> gnus.org> to control <at> debbugs.gnu.org. (Wed, 09 Dec 2020 16:40:03 GMT) Full text and rfc822 format available.

Did not alter fixed versions and reopened. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Wed, 09 Dec 2020 16:40:03 GMT) Full text and rfc822 format available.

This bug report was last modified 4 years and 185 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.