diff options
author | Po Lu <luangruo@yahoo.com> | 2022-03-09 03:50:16 +0000 |
---|---|---|
committer | Po Lu <luangruo@yahoo.com> | 2022-03-09 03:50:16 +0000 |
commit | e8d35b98bb2fd685c83bb9e9da60c00eb7967d5d (patch) | |
tree | 5e923fe74f19d99164824581048a32051baa94df /src | |
parent | 51784551c57a70ff9236d1fb980bc25d6e4755f9 (diff) | |
download | emacs-e8d35b98bb2fd685c83bb9e9da60c00eb7967d5d.tar.gz emacs-e8d35b98bb2fd685c83bb9e9da60c00eb7967d5d.tar.bz2 emacs-e8d35b98bb2fd685c83bb9e9da60c00eb7967d5d.zip |
Fix flicker during frame resize on Haiku
* haikuterm.c (haiku_update_end): Call BWindow_Flush directly.
(haiku_set_vertical_scroll_bar): Stop calling flush_frame.
(haiku_flush): Only flip buffer of tooltip frames.
Diffstat (limited to 'src')
-rw-r--r-- | src/haikuterm.c | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/src/haikuterm.c b/src/haikuterm.c index 3950e45fe9b..413eedd6683 100644 --- a/src/haikuterm.c +++ b/src/haikuterm.c @@ -1221,7 +1221,7 @@ static void haiku_update_end (struct frame *f) { MOUSE_HL_INFO (f)->mouse_face_defer = false; - flush_frame (f); + BWindow_Flush (FRAME_HAIKU_WINDOW (f)); } static void @@ -2287,7 +2287,6 @@ haiku_set_vertical_scroll_bar (struct window *w, bar->width, bar->height); BView_move_frame (bar->scroll_bar, left, top, left + width - 1, top + height - 1); - flush_frame (WINDOW_XFRAME (w)); BView_publish_scroll_bar (view, left, top, width, height); bar->left = left; bar->top = top; @@ -2515,7 +2514,7 @@ haiku_flush (struct frame *f) { /* This is needed for tooltip frames to work properly with double buffering. */ - if (FRAME_DIRTY_P (f)) + if (FRAME_DIRTY_P (f) && FRAME_TOOLTIP_P (f)) haiku_flip_buffers (f); if (FRAME_VISIBLE_P (f) && !FRAME_TOOLTIP_P (f)) |