diff options
| author | Po Lu | 2022-01-31 20:21:04 +0800 |
|---|---|---|
| committer | Po Lu | 2022-01-31 20:21:04 +0800 |
| commit | 46473a4eac2579b88ec843e1301eb2a89835e2ae (patch) | |
| tree | f945e81e20b215f2f5cf2188b1ddf141415b75a9 /src/pgtkterm.h | |
| parent | 790ad61fcf91c75811ed30d21518e1dac99be044 (diff) | |
| download | emacs-46473a4eac2579b88ec843e1301eb2a89835e2ae.tar.gz 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.h | 9 |
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, | |||
| 591 | extern void pgtk_cr_update_surface_desired_size (struct frame *, int, int, bool); | 591 | extern void pgtk_cr_update_surface_desired_size (struct frame *, int, int, bool); |
| 592 | extern cairo_t *pgtk_begin_cr_clip (struct frame *f); | 592 | extern cairo_t *pgtk_begin_cr_clip (struct frame *f); |
| 593 | extern void pgtk_end_cr_clip (struct frame *f); | 593 | extern void pgtk_end_cr_clip (struct frame *f); |
| 594 | extern void pgtk_set_cr_source_with_gc_foreground (struct frame *f, | 594 | extern void pgtk_set_cr_source_with_gc_foreground (struct frame *, Emacs_GC *, bool); |
| 595 | Emacs_GC * gc); | 595 | extern void pgtk_set_cr_source_with_gc_background (struct frame *, Emacs_GC *, bool); |
| 596 | extern void pgtk_set_cr_source_with_gc_background (struct frame *f, | 596 | extern void pgtk_set_cr_source_with_color (struct frame *, unsigned long, bool); |
| 597 | Emacs_GC * gc); | ||
| 598 | extern void pgtk_set_cr_source_with_color (struct frame *f, | ||
| 599 | unsigned long color); | ||
| 600 | extern void pgtk_cr_draw_frame (cairo_t * cr, struct frame *f); | 597 | extern void pgtk_cr_draw_frame (cairo_t * cr, struct frame *f); |
| 601 | extern void pgtk_cr_destroy_frame_context (struct frame *f); | 598 | extern void pgtk_cr_destroy_frame_context (struct frame *f); |
| 602 | extern Lisp_Object pgtk_cr_export_frames (Lisp_Object frames, cairo_surface_type_t surface_type); | 599 | extern Lisp_Object pgtk_cr_export_frames (Lisp_Object frames, cairo_surface_type_t surface_type); |