[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Emacs-diffs] /srv/bzr/emacs/trunk r112264: Fix bug #13864 with flickeri
From: |
Eli Zaretskii |
Subject: |
[Emacs-diffs] /srv/bzr/emacs/trunk r112264: Fix bug #13864 with flickering of TTY frames in an emacslient session. |
Date: |
Wed, 10 Apr 2013 18:38:20 +0300 |
User-agent: |
Bazaar (2.5.0) |
------------------------------------------------------------
revno: 112264
fixes bug: http://debbugs.gnu.org/13864
committer: Eli Zaretskii <address@hidden>
branch nick: trunk
timestamp: Wed 2013-04-10 18:38:20 +0300
message:
Fix bug #13864 with flickering of TTY frames in an emacslient session.
src/frame.c (do_switch_frame): Mark the TTY frame we switch to as
garbaged only if it is not already the top frame on its TTY. This
prevents flickering due to constant redrawing of TTY frames when
there are GUI frames open in the same session.
modified:
src/ChangeLog
src/frame.c
=== modified file 'src/ChangeLog'
--- a/src/ChangeLog 2013-04-10 13:31:35 +0000
+++ b/src/ChangeLog 2013-04-10 15:38:20 +0000
@@ -1,3 +1,10 @@
+2013-04-10 Eli Zaretskii <address@hidden>
+
+ * frame.c (do_switch_frame): Mark the TTY frame we switch to as
+ garbaged only if it is not already the top frame on its TTY. This
+ prevents flickering due to constant redrawing of TTY frames when
+ there are GUI frames open in the same session. (Bug#13864)
+
2013-04-10 Stefan Monnier <address@hidden>
* keyboard.c (timer_start_idle): Call internal-timer-start-idle instead
=== modified file 'src/frame.c'
--- a/src/frame.c 2013-04-07 04:41:19 +0000
+++ b/src/frame.c 2013-04-10 15:38:20 +0000
@@ -834,10 +834,18 @@
if (FRAME_TERMCAP_P (XFRAME (frame)) || FRAME_MSDOS_P (XFRAME (frame)))
{
- if (FRAMEP (FRAME_TTY (XFRAME (frame))->top_frame))
- /* Mark previously displayed frame as now obscured. */
- SET_FRAME_VISIBLE (XFRAME (FRAME_TTY (XFRAME (frame))->top_frame), 2);
- SET_FRAME_VISIBLE (XFRAME (frame), 1);
+ Lisp_Object top_frame = FRAME_TTY (XFRAME (frame))->top_frame;
+
+ /* Don't mark the frame garbaged and/or obscured if we are
+ switching to the frame that is already the top frame of that
+ TTY. */
+ if (!EQ (frame, top_frame))
+ {
+ if (FRAMEP (top_frame))
+ /* Mark previously displayed frame as now obscured. */
+ SET_FRAME_VISIBLE (XFRAME (top_frame), 2);
+ SET_FRAME_VISIBLE (XFRAME (frame), 1);
+ }
FRAME_TTY (XFRAME (frame))->top_frame = frame;
}
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Emacs-diffs] /srv/bzr/emacs/trunk r112264: Fix bug #13864 with flickering of TTY frames in an emacslient session.,
Eli Zaretskii <=