[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
feature/pgtk e021e23 043/100: End Resize flickering by copying surface r
From: |
Yuuki Harano |
Subject: |
feature/pgtk e021e23 043/100: End Resize flickering by copying surface rather than just clearing |
Date: |
Tue, 24 Nov 2020 08:02:34 -0500 (EST) |
branch: feature/pgtk
commit e021e233b4e96740dbc78bbc2717de6ee6e68291
Author: Jeff Walsh <jawalsh@localhost.localdomain>
Commit: Jeff Walsh <jeff.walsh@drtusers-MacBook-Pro.local>
End Resize flickering by copying surface rather than just clearing
* src/pgtkterm.h (FRAME_NATIVE_WINDOW):
* src/pgtkterm.c (pgtk_set_window_size): cleanup traces
(x_draw_bar_cursor, pgtk_handle_draw, syms_of_pgtkterm):
---
src/pgtkterm.c | 18 ++++--------------
src/pgtkterm.h | 4 ++--
2 files changed, 6 insertions(+), 16 deletions(-)
diff --git a/src/pgtkterm.c b/src/pgtkterm.c
index e214cc2..86ebf86 100644
--- a/src/pgtkterm.c
+++ b/src/pgtkterm.c
@@ -408,7 +408,6 @@ pgtk_set_window_size (struct frame *f,
block_input ();
gtk_widget_get_size_request(FRAME_GTK_WIDGET(f), &pixelwidth, &pixelheight);
- PGTK_TRACE("old: %dx%d", pixelwidth, pixelheight);
if (pixelwise)
{
@@ -429,18 +428,13 @@ pgtk_set_window_size (struct frame *f,
make_fixnum (FRAME_PGTK_TITLEBAR_HEIGHT (f)),
make_fixnum (FRAME_TOOLBAR_HEIGHT (f))));
- PGTK_TRACE("new: %dx%d", pixelwidth, pixelheight);
for (GtkWidget *w = FRAME_GTK_WIDGET(f); w != NULL; w =
gtk_widget_get_parent(w)) {
- PGTK_TRACE("%p %s %d %d", w, G_OBJECT_TYPE_NAME(w),
gtk_widget_get_mapped(w), gtk_widget_get_visible(w));
gint wd, hi;
gtk_widget_get_size_request(w, &wd, &hi);
- PGTK_TRACE(" %dx%d", wd, hi);
GtkAllocation alloc;
gtk_widget_get_allocation(w, &alloc);
- PGTK_TRACE(" %dx%d+%d+%d", alloc.width, alloc.height, alloc.x, alloc.y);
}
- PGTK_TRACE("pgtk_set_window_size: %p: %dx%d.", f, width, height);
f->output_data.pgtk->preferred_width = pixelwidth;
f->output_data.pgtk->preferred_height = pixelheight;
x_wm_set_size_hint(f, 0, 0);
@@ -679,6 +673,7 @@ x_display_pixel_width (struct pgtk_display_info *dpyinfo)
return gdk_screen_get_width(gscr);
}
+
void
x_set_no_focus_on_map (struct frame *f, Lisp_Object new_value, Lisp_Object
old_value)
/* Set frame F's `no-focus-on-map' parameter which, if non-nil, means
@@ -2632,8 +2627,6 @@ pgtk_draw_window_cursor (struct window *w, struct
glyph_row *glyph_row, int x,
{
PGTK_TRACE("draw_window_cursor: %d, %d, %d, %d, %d, %d.",
x, y, cursor_type, cursor_width, on_p, active_p);
- struct frame *f = XFRAME (WINDOW_FRAME (w));
- PGTK_TRACE("%p\n", f->output_data.pgtk);
if (on_p)
{
@@ -4807,9 +4800,9 @@ pgtk_handle_draw(GtkWidget *widget, cairo_t *cr, gpointer
*data)
if (src == NULL && FRAME_CR_ACTIVE_CONTEXT(f) != NULL)
src = cairo_get_target(FRAME_CR_ACTIVE_CONTEXT(f));
}
- APGTK_TRACE(" surface=%p", src);
+ PGTK_TRACE(" surface=%p", src);
if (src != NULL) {
- APGTK_TRACE(" resized_p=%d", f->resized_p);
+ PGTK_TRACE(" resized_p=%d", f->resized_p);
PGTK_TRACE(" garbaged=%d", f->garbaged);
PGTK_TRACE(" scroll_bar_width=%f", (double) PGTK_SCROLL_BAR_WIDTH(f));
// PGTK_TRACE(" scroll_bar_adjust=%d", PGTK_SCROLL_BAR_ADJUST(f));
@@ -6581,9 +6574,6 @@ pgtk_begin_cr_clip (struct frame *f)
cr = FRAME_CR_CONTEXT (f) = cairo_create (surface);
cairo_surface_destroy (surface);
-
- cr = cairo_create (FRAME_CR_SURFACE (f));
- FRAME_CR_CONTEXT (f) = cr;
}
cairo_save (cr);
@@ -6601,7 +6591,7 @@ pgtk_end_cr_clip (struct frame *f)
void
pgtk_set_cr_source_with_gc_foreground (struct frame *f, Emacs_GC *gc)
{
- PGTK_TRACE("pgtk_set_cr_source_with_gc_foreground: %08lx", gc->foreground);
+ PGTK_TRACE ("pgtk_set_cr_source_with_gc_foreground: %08lx", gc->foreground);
pgtk_set_cr_source_with_color(f, gc->foreground);
}
diff --git a/src/pgtkterm.h b/src/pgtkterm.h
index 5c59d5e..9d6b0a1 100644
--- a/src/pgtkterm.h
+++ b/src/pgtkterm.h
@@ -425,8 +425,8 @@ enum
/* aliases */
#define FRAME_PGTK_VIEW(f) FRAME_GTK_WIDGET(f)
-#define FRAME_X_WINDOW(f) FRAME_GTK_WIDGET(f)
-#define FRAME_NATIVE_WINDOW(f) FRAME_GTK_WIDGET(f)
+#define FRAME_X_WINDOW(f) FRAME_GTK_OUTER_WIDGET(f)
+#define FRAME_NATIVE_WINDOW(f) GTK_WINDOW(FRAME_X_WINDOW(f))
#define FRAME_X_DISPLAY(f) (FRAME_DISPLAY_INFO(f)->gdpy)
- feature/pgtk bc35a1e 032/100: Make multipdisplay work by limiting selection while enabed, (continued)
- feature/pgtk bc35a1e 032/100: Make multipdisplay work by limiting selection while enabed, Yuuki Harano, 2020/11/24
- feature/pgtk d68633b 056/100: * src/pgtkterm.c (pgtk_defined_color): support gtk special colors, Yuuki Harano, 2020/11/24
- feature/pgtk 6957f94 024/100: Add PGTK support for fullscreen, Yuuki Harano, 2020/11/24
- feature/pgtk ae3bb14 029/100: implement restacking and cleanup frame z order, Yuuki Harano, 2020/11/24
- feature/pgtk 49645df 047/100: minimize gtkutil.c differences., Yuuki Harano, 2020/11/24
- feature/pgtk d2a29e8 040/100: emacsclient should use both of DISPLAY and WAYLAND_DISPLAY., Yuuki Harano, 2020/11/24
- feature/pgtk be47e34 077/100: Re-port image drawing code from X, Yuuki Harano, 2020/11/24
- feature/pgtk 0b69b73 085/100: Fix crash when child frame updates toolbar, Yuuki Harano, 2020/11/24
- feature/pgtk 1d549fa 015/100: Add support for make-frame-(in)visible, Yuuki Harano, 2020/11/24
- feature/pgtk 19da22e 018/100: Add support for handing the internal border, Yuuki Harano, 2020/11/24
- feature/pgtk e021e23 043/100: End Resize flickering by copying surface rather than just clearing,
Yuuki Harano <=
- feature/pgtk fd61a86 030/100: improve some efficiency - simplify draws, Yuuki Harano, 2020/11/24
- feature/pgtk 330a346 012/100: Migrate to Emacs_GC, Yuuki Harano, 2020/11/24
- feature/pgtk b1cc62c 037/100: Add support for Jpeglib, Yuuki Harano, 2020/11/24
- feature/pgtk fe2297c 055/100: * pgtkmenu.c (set_frame_menubar): fix empty menu., Yuuki Harano, 2020/11/24
- feature/pgtk a167e23 057/100: * src/pgtkmenu.c (set_frame_menubar): Suppress gcc warning, Yuuki Harano, 2020/11/24
- feature/pgtk 5a72a07 053/100: * pgtk-win.el: fix compile-time warnings., Yuuki Harano, 2020/11/24
- feature/pgtk bb6862d 089/100: Fix crash on drag and drop, Yuuki Harano, 2020/11/24
- feature/pgtk e405404 095/100: Fix startup failure on svg-unsupported environments, Yuuki Harano, 2020/11/24