summaryrefslogtreecommitdiff
path: root/src/pgtkterm.h
diff options
context:
space:
mode:
authorPo Lu <luangruo@yahoo.com>2022-01-31 20:21:04 +0800
committerPo Lu <luangruo@yahoo.com>2022-01-31 20:21:04 +0800
commit46473a4eac2579b88ec843e1301eb2a89835e2ae (patch)
treef945e81e20b215f2f5cf2188b1ddf141415b75a9 /src/pgtkterm.h
parent790ad61fcf91c75811ed30d21518e1dac99be044 (diff)
downloademacs-46473a4eac2579b88ec843e1301eb2a89835e2ae.tar.gz
emacs-46473a4eac2579b88ec843e1301eb2a89835e2ae.tar.bz2
emacs-46473a4eac2579b88ec843e1301eb2a89835e2ae.zip
Implement `alpha-background' on PGTK
* src/ftcrfont.c (ftcrfont_draw): Respect alpha-background where appropriate. * src/gtkutil.c (xg_create_frame_widgets): Swap some conditionals around to get the right visual and signal handlers on PGTK. (xg_widget_style_updated): Likewise. * src/pgtkfns.c (pgtk_set_alpha_background): New function. (pgtk_frame_parm_handlers): Add it instead of the generic param handler. (Fx_create_frame): Fix typo. * src/pgtkterm.c (pgtk_fill_rectangle): (pgtk_set_cr_source_with_gc_foreground): (pgtk_set_cr_source_with_gc_background): (pgtk_set_cr_source_with_color): New argument `respect_alpha_backend'. All callers changed. * src/pgtkterm.h: Update function prototypes.
Diffstat (limited to 'src/pgtkterm.h')
-rw-r--r--src/pgtkterm.h9
1 files changed, 3 insertions, 6 deletions
diff --git a/src/pgtkterm.h b/src/pgtkterm.h
index 42b03e315ef..4d2285cdb0a 100644
--- a/src/pgtkterm.h
+++ b/src/pgtkterm.h
@@ -591,12 +591,9 @@ extern void x_set_z_group (struct frame *f, Lisp_Object new_value,
extern void pgtk_cr_update_surface_desired_size (struct frame *, int, int, bool);
extern cairo_t *pgtk_begin_cr_clip (struct frame *f);
extern void pgtk_end_cr_clip (struct frame *f);
-extern void pgtk_set_cr_source_with_gc_foreground (struct frame *f,
- Emacs_GC * gc);
-extern void pgtk_set_cr_source_with_gc_background (struct frame *f,
- Emacs_GC * gc);
-extern void pgtk_set_cr_source_with_color (struct frame *f,
- unsigned long color);
+extern void pgtk_set_cr_source_with_gc_foreground (struct frame *, Emacs_GC *, bool);
+extern void pgtk_set_cr_source_with_gc_background (struct frame *, Emacs_GC *, bool);
+extern void pgtk_set_cr_source_with_color (struct frame *, unsigned long, bool);
extern void pgtk_cr_draw_frame (cairo_t * cr, struct frame *f);
extern void pgtk_cr_destroy_frame_context (struct frame *f);
extern Lisp_Object pgtk_cr_export_frames (Lisp_Object frames, cairo_surface_type_t surface_type);