diff options
author | Po Lu <luangruo@yahoo.com> | 2022-03-17 11:59:56 +0800 |
---|---|---|
committer | Po Lu <luangruo@yahoo.com> | 2022-03-17 11:59:56 +0800 |
commit | a06ac9b6fdc0e6edc326c74240be1f7ba4e6471e (patch) | |
tree | 2c98e4d3f2d385562a1a703d1c8fff2206179692 | |
parent | 667775e1ae259dc2fe0dee96ebb506beeef4d5ce (diff) | |
download | emacs-a06ac9b6fdc0e6edc326c74240be1f7ba4e6471e.tar.gz |
Restore old PGTK scrolling code
* src/pgtkterm.c (pgtk_copy_bits): Restore old code using
cairo_surface_create_similar. (bug#54040)
-rw-r--r-- | src/pgtkterm.c | 15 |
1 files changed, 4 insertions, 11 deletions
diff --git a/src/pgtkterm.c b/src/pgtkterm.c index 9f9768cf2ab..e00ed7fa85d 100644 --- a/src/pgtkterm.c +++ b/src/pgtkterm.c @@ -2940,20 +2940,13 @@ pgtk_copy_bits (struct frame *f, cairo_rectangle_t *src_rect, cairo_rectangle_t *dst_rect) { cairo_t *cr; - GdkWindow *window; cairo_surface_t *surface; /* temporary surface */ - int scale; - - window = gtk_widget_get_window (FRAME_GTK_WIDGET (f)); surface = - gdk_window_create_similar_surface (window, CAIRO_CONTENT_COLOR_ALPHA, - FRAME_CR_SURFACE_DESIRED_WIDTH (f), - FRAME_CR_SURFACE_DESIRED_HEIGHT - (f)); - - scale = gtk_widget_get_scale_factor (FRAME_GTK_WIDGET (f)); - cairo_surface_set_device_scale (surface, scale, scale); + cairo_surface_create_similar (FRAME_CR_SURFACE (f), + CAIRO_CONTENT_COLOR_ALPHA, + (int) src_rect->width, + (int) src_rect->height); cr = cairo_create (surface); cairo_set_source_surface (cr, FRAME_CR_SURFACE (f), -src_rect->x, |