diff options
| author | Dmitry Antipov | 2013-09-09 20:47:43 +0400 |
|---|---|---|
| committer | Dmitry Antipov | 2013-09-09 20:47:43 +0400 |
| commit | 0750a308d0e72331dacf30b6fa176cb289c6ff87 (patch) | |
| tree | 7e6038bd078950f99ae6acb3e236a37e1774ecd4 | |
| parent | 71bd1a008412d223ffa16a5eabd51771b8c94e50 (diff) | |
| download | emacs-0750a308d0e72331dacf30b6fa176cb289c6ff87.tar.gz emacs-0750a308d0e72331dacf30b6fa176cb289c6ff87.zip | |
Review and drop old frame resize hack.
* frame.h (struct frame): Remove force_flush_display_p.
* dispnew.c (update_frame): Adjust user and don't call
flush_frame here. The comment has said that there was an issues
with redisplaying fringes, but I don't see any differences with
and without this hack. Hopefully we can continue without it.
* xdisp.c (clear_garbaged_frames): Adjust user and do not clear
current frame matrices twice if resized_p is set.
| -rw-r--r-- | src/ChangeLog | 11 | ||||
| -rw-r--r-- | src/dispnew.c | 10 | ||||
| -rw-r--r-- | src/frame.h | 4 | ||||
| -rw-r--r-- | src/xdisp.c | 8 |
4 files changed, 14 insertions, 19 deletions
diff --git a/src/ChangeLog b/src/ChangeLog index c6eb58071e8..4b688e43430 100644 --- a/src/ChangeLog +++ b/src/ChangeLog | |||
| @@ -1,5 +1,16 @@ | |||
| 1 | 2013-09-09 Dmitry Antipov <dmantipov@yandex.ru> | 1 | 2013-09-09 Dmitry Antipov <dmantipov@yandex.ru> |
| 2 | 2 | ||
| 3 | Review and drop old frame resize hack. | ||
| 4 | * frame.h (struct frame): Remove force_flush_display_p. | ||
| 5 | * dispnew.c (update_frame): Adjust user and don't call | ||
| 6 | flush_frame here. The comment has said that there was an issues | ||
| 7 | with redisplaying fringes, but I don't see any differences with | ||
| 8 | and without this hack. Hopefully we can continue without it. | ||
| 9 | * xdisp.c (clear_garbaged_frames): Adjust user and do not clear | ||
| 10 | current frame matrices twice if resized_p is set. | ||
| 11 | |||
| 12 | 2013-09-09 Dmitry Antipov <dmantipov@yandex.ru> | ||
| 13 | |||
| 3 | Do not populate pure Xism x_sync to other ports. | 14 | Do not populate pure Xism x_sync to other ports. |
| 4 | * frame.h (x_sync): Move under HAVE_X_WINDOWS. | 15 | * frame.h (x_sync): Move under HAVE_X_WINDOWS. |
| 5 | * frame.c (other_visible_frames) [HAVE_X_WINDOWS]: Use as such. | 16 | * frame.c (other_visible_frames) [HAVE_X_WINDOWS]: Use as such. |
diff --git a/src/dispnew.c b/src/dispnew.c index 74ecfa88bde..a42b3da5fc5 100644 --- a/src/dispnew.c +++ b/src/dispnew.c | |||
| @@ -3061,16 +3061,6 @@ update_frame (struct frame *f, bool force_p, bool inhibit_hairy_id_p) | |||
| 3061 | /* Update windows. */ | 3061 | /* Update windows. */ |
| 3062 | paused_p = update_window_tree (root_window, force_p); | 3062 | paused_p = update_window_tree (root_window, force_p); |
| 3063 | update_end (f); | 3063 | update_end (f); |
| 3064 | |||
| 3065 | /* This flush is a performance bottleneck under X, | ||
| 3066 | and it doesn't seem to be necessary anyway (in general). | ||
| 3067 | It is necessary when resizing the window with the mouse, or | ||
| 3068 | at least the fringes are not redrawn in a timely manner. ++kfs */ | ||
| 3069 | if (f->force_flush_display_p) | ||
| 3070 | { | ||
| 3071 | flush_frame (f); | ||
| 3072 | f->force_flush_display_p = 0; | ||
| 3073 | } | ||
| 3074 | } | 3064 | } |
| 3075 | else | 3065 | else |
| 3076 | { | 3066 | { |
diff --git a/src/frame.h b/src/frame.h index baf8d6b93a9..87e218ee938 100644 --- a/src/frame.h +++ b/src/frame.h | |||
| @@ -185,10 +185,6 @@ struct frame | |||
| 185 | Clear the frame in clear_garbaged_frames if set. */ | 185 | Clear the frame in clear_garbaged_frames if set. */ |
| 186 | unsigned resized_p : 1; | 186 | unsigned resized_p : 1; |
| 187 | 187 | ||
| 188 | /* Set to non-zero in when we want for force a flush_display in | ||
| 189 | update_frame, usually after resizing the frame. */ | ||
| 190 | unsigned force_flush_display_p : 1; | ||
| 191 | |||
| 192 | /* Set to non-zero if the default face for the frame has been | 188 | /* Set to non-zero if the default face for the frame has been |
| 193 | realized. Reset to zero whenever the default face changes. | 189 | realized. Reset to zero whenever the default face changes. |
| 194 | Used to see the difference between a font change and face change. */ | 190 | Used to see the difference between a font change and face change. */ |
diff --git a/src/xdisp.c b/src/xdisp.c index 960ad18709b..df3fa366803 100644 --- a/src/xdisp.c +++ b/src/xdisp.c | |||
| @@ -10767,11 +10767,9 @@ clear_garbaged_frames (void) | |||
| 10767 | if (FRAME_VISIBLE_P (f) && FRAME_GARBAGED_P (f)) | 10767 | if (FRAME_VISIBLE_P (f) && FRAME_GARBAGED_P (f)) |
| 10768 | { | 10768 | { |
| 10769 | if (f->resized_p) | 10769 | if (f->resized_p) |
| 10770 | { | 10770 | redraw_frame (f); |
| 10771 | redraw_frame (f); | 10771 | else |
| 10772 | f->force_flush_display_p = 1; | 10772 | clear_current_matrices (f); |
| 10773 | } | ||
| 10774 | clear_current_matrices (f); | ||
| 10775 | changed_count++; | 10773 | changed_count++; |
| 10776 | f->garbaged = 0; | 10774 | f->garbaged = 0; |
| 10777 | f->resized_p = 0; | 10775 | f->resized_p = 0; |