unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
From: YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
To: emacs-devel@gnu.org
Subject: Re: [Stephen.Berman@gmx.net: Re: redisplay]
Date: Fri, 27 Apr 2007 17:57:57 +0900	[thread overview]
Message-ID: <wld51qurca.wl%mituharu@math.s.chiba-u.ac.jp> (raw)
In-Reply-To: <87lkgergy1.fsf@escher.local.home> <20070424.075017.71197070.mituharu@math.s.chiba-u.ac.jp>

>>>>> On Thu, 26 Apr 2007 22:58:30 +0200, Stephen Berman <Stephen.Berman@gmx.net> said:

>> Stephen, could try the following patch?  I don't think this is a
>> right fix, but at least we can check if we are sharing the same
>> issue.

> I applied your patch and rebuilt Emacs, and I still see the blank
> frame, though, as I mentioned in my previous followup, I don't see
> the effect as consistently as I had thought and reported in my
> original followup.

Thanks for testing.

>>>>> On Tue, 24 Apr 2007 07:50:17 +0900 (JST), YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> said:

> To make things work, expose_frame must correctly draw the contents
> most of the time.  But with the experiment of compositing windows, I
> observe that is not always the case even if !FRAME_GARBARGED_P(f) &&
> updated_window != NULL.  It seems to fail to do so after the current
> matrix is updated with try_window_reusing_current_matrix under a
> certain condition, but I haven't figured it out yet.

Though my issue above has turned out to be unrelated to the dialog
one, I think I figured out the problematic case for my issue.

In try_window_reusing_current_matrix (the scroll-down case), `it.vpos'
rows in the current matrix are disabled.  But the scroll-down height
in rows is stored in `nrows_scrolled' and they differ by 1 when the
header line is present.  As a result, the first row of the reused part
is erroneously disabled and the rows below it don't get redrawn by
Expose events.

The following patch seems to work for me.  Could someone check it and
comment on whether it should be installed before the release or not?

				     YAMAMOTO Mitsuharu
				mituharu@math.s.chiba-u.ac.jp


Index: src/xdisp.c
===================================================================
RCS file: /cvsroot/emacs/emacs/src/xdisp.c,v
retrieving revision 1.1149
diff -c -p -r1.1149 xdisp.c
*** src/xdisp.c	24 Apr 2007 01:32:41 -0000	1.1149
--- src/xdisp.c	27 Apr 2007 08:37:31 -0000
*************** try_window_reusing_current_matrix (w)
*** 13811,13817 ****
  			 nrows_scrolled);
  
  	  /* Disable lines that must be updated.  */
! 	  for (i = 0; i < it.vpos; ++i)
  	    (start_row + i)->enabled_p = 0;
  
  	  /* Re-compute Y positions.  */
--- 13811,13817 ----
  			 nrows_scrolled);
  
  	  /* Disable lines that must be updated.  */
! 	  for (i = 0; i < nrows_scrolled; ++i)
  	    (start_row + i)->enabled_p = 0;
  
  	  /* Re-compute Y positions.  */

  reply	other threads:[~2007-04-27  8:57 UTC|newest]

Thread overview: 41+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-04-23  3:48 [Stephen.Berman@gmx.net: Re: redisplay] Richard Stallman
2007-04-23 15:07 ` Chong Yidong
2007-04-23 19:14   ` Jan Djärv
2007-04-23 22:12     ` Stephen Berman
2007-04-23 22:50       ` YAMAMOTO Mitsuharu
2007-04-24  1:10         ` YAMAMOTO Mitsuharu
2007-04-26 20:58           ` Stephen Berman
2007-04-27  8:57             ` YAMAMOTO Mitsuharu [this message]
2007-04-28  4:06               ` Richard Stallman
2007-04-29  7:35                 ` YAMAMOTO Mitsuharu
2007-04-29 21:41                   ` Richard Stallman
2007-05-01  8:30                     ` YAMAMOTO Mitsuharu
2007-05-02  0:12                       ` Richard Stallman
2007-04-29  7:51                 ` David Kastrup
2007-04-29  9:25                   ` Nick Roberts
2007-04-29 21:41                   ` Richard Stallman
2007-04-29 22:14                     ` David Kastrup
2007-05-01  0:23                       ` YAMAMOTO Mitsuharu
2007-04-24 14:08     ` Stefan Monnier
2007-04-24 14:49       ` Jan Djärv
2007-04-24 18:27       ` Glenn Morris
2007-04-25  8:47         ` Jan Djärv
2007-04-25 14:36           ` Stefan Monnier
2007-04-25 14:50             ` Jan Djärv
2007-04-25 18:30               ` Jan Djärv
2007-04-25 19:34                 ` Stefan Monnier
2007-04-25 19:44                 ` YAMAMOTO Mitsuharu
2007-04-26  5:58                   ` Jan Djärv
2007-04-26  8:35                     ` YAMAMOTO Mitsuharu
2007-04-26  3:08                 ` Glenn Morris
2007-04-26 20:59                 ` Stephen Berman
2007-04-27  5:58                   ` Jan Djärv
2009-03-16  1:37                 ` YAMAMOTO Mitsuharu
2009-03-16 12:16                   ` David Reitter
2009-03-16 15:18                     ` Chong Yidong
2009-03-17  2:43                       ` YAMAMOTO Mitsuharu
2009-03-17  3:59                         ` Chong Yidong
2009-03-17  4:13                           ` YAMAMOTO Mitsuharu
2009-03-17  9:06                             ` YAMAMOTO Mitsuharu
2009-03-17 15:13                               ` Chong Yidong
2009-03-18  8:56                                 ` YAMAMOTO Mitsuharu

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.gnu.org/software/emacs/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=wld51qurca.wl%mituharu@math.s.chiba-u.ac.jp \
    --to=mituharu@math.s.chiba-u.ac.jp \
    --cc=emacs-devel@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).