all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Eli Zaretskii <eliz@gnu.org>
To: martin rudalics <rudalics@gmx.at>
Cc: 19721@debbugs.gnu.org
Subject: bug#19721: 25.0.50; Mode-line not redrawn with expose events
Date: Sun, 01 Feb 2015 19:27:42 +0200	[thread overview]
Message-ID: <83a90xiltd.fsf@gnu.org> (raw)
In-Reply-To: <54CE548E.5020605@gmx.at>

> Date: Sun, 01 Feb 2015 17:30:06 +0100
> From: martin rudalics <rudalics@gmx.at>
> CC: mituharu@math.s.chiba-u.ac.jp, 19721@debbugs.gnu.org
> 
>  > and (b) there's a tricky condition near the beginning of
>  > redisplay_window that would bypass redisplaying a window, under some
>  > conditions, even if its update_mode_line flag was set (my last patch
>  > attempts at fixing that).
> 
> So if he applies your code and mine we'd probably find out more.  I was
> exactly once able to trigger his initial scenario here on Windows with
> both upper modelines completely disappearing but was not able to repeat
> that experience after that.

I couldn't reproduce the problem with redrawing on expose events
(which is not surprising, since on Windows expose events are almost
never used, except when the frame is first displayed after it's
created).  But I have no trouble at all seeing that the mode-line
glyph row is disabled, by using dump-glyph-matrix.

>  > So I'm not sure this is the right solution.  The situation described
>  > in this report is quite unique, in that the face used for the active
>  > mode line causes the window glyph matrices to be resized each time a
>  > window becomes non-selected one.
> 
> Could you optimize that away (reserving one line more than needed)?

That was my first attempt, and it didn't do a thorough enough job, as
you can see from previous discussions.

>  > It is because of this resizing that
>  > the mode-line row of the current matrix becomes disabled.
> 
> So you mean that we have to update the mode lines of both - the selected
> and the deselected window?

Yes, but not because they become selected/deselected, because their
glyph matrices are resized, and the mode-line row gets disabled in the
process.





  reply	other threads:[~2015-02-01 17:27 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-01-29 10:51 bug#19721: 25.0.50; Mode-line not redrawn with expose events YAMAMOTO Mitsuharu
2015-01-31 10:31 ` YAMAMOTO Mitsuharu
2015-01-31 11:09   ` Eli Zaretskii
2015-01-31 10:53 ` Eli Zaretskii
2015-01-31 11:37   ` YAMAMOTO Mitsuharu
2015-01-31 11:44     ` Eli Zaretskii
2015-02-01  5:40       ` YAMAMOTO Mitsuharu
2015-02-01  8:51         ` martin rudalics
2015-02-01 15:44           ` Eli Zaretskii
2015-02-01 16:30             ` martin rudalics
2015-02-01 17:27               ` Eli Zaretskii [this message]
2015-02-01 18:09                 ` martin rudalics
2015-02-01 18:37                   ` Eli Zaretskii
2015-02-02  3:24             ` YAMAMOTO Mitsuharu
2015-02-01 15:33         ` Eli Zaretskii
2015-02-02  3:27           ` YAMAMOTO Mitsuharu
2015-02-02 16:16             ` Eli Zaretskii

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

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

  git send-email \
    --in-reply-to=83a90xiltd.fsf@gnu.org \
    --to=eliz@gnu.org \
    --cc=19721@debbugs.gnu.org \
    --cc=rudalics@gmx.at \
    /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 external index

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

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.