[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
master 98163f48a0: Implement `display-monitors-changed-hook' on PGTK
From: |
Po Lu |
Subject: |
master 98163f48a0: Implement `display-monitors-changed-hook' on PGTK |
Date: |
Fri, 20 May 2022 23:29:48 -0400 (EDT) |
branch: master
commit 98163f48a081442616bf680be06cf51ab74b4681
Author: Po Lu <luangruo@yahoo.com>
Commit: Po Lu <luangruo@yahoo.com>
Implement `display-monitors-changed-hook' on PGTK
* src/pgtkterm.c (pgtk_draw_glyphless_glyph_string_foreground):
Pacify GCC 12.
(pgtk_monitors_changed_cb): New function.
(pgtk_term_init): Attach new signal handler.
---
src/pgtkterm.c | 22 ++++++++++++++++++++++
1 file changed, 22 insertions(+)
diff --git a/src/pgtkterm.c b/src/pgtkterm.c
index b9d0b7b512..71b5f23283 100644
--- a/src/pgtkterm.c
+++ b/src/pgtkterm.c
@@ -1587,6 +1587,10 @@ pgtk_draw_glyphless_glyph_string_foreground (struct
glyph_string *s)
false);
x += glyph->pixel_width;
}
+
+ /* Pacify GCC 12 even though s->char2b is not used after this
+ function returns. */
+ s->char2b = NULL;
}
/* Brightness beyond which a color won't have its highlight brightness
@@ -6163,6 +6167,20 @@ drag_data_received (GtkWidget *widget, GdkDragContext
*context,
gtk_drag_finish (context, TRUE, FALSE, time);
}
+static void
+pgtk_monitors_changed_cb (GdkScreen *screen, gpointer user_data)
+{
+ struct terminal *terminal;
+ union buffered_input_event inev;
+
+ EVENT_INIT (inev.ie);
+ terminal = user_data;
+ inev.ie.kind = MONITORS_CHANGED_EVENT;
+ XSETTERMINAL (inev.ie.arg, terminal);
+
+ evq_enqueue (&inev);
+}
+
void
pgtk_set_event_handler (struct frame *f)
{
@@ -6458,6 +6476,10 @@ pgtk_term_init (Lisp_Object display_name, char
*resource_name)
dpyinfo->resx = dpi;
dpyinfo->resy = dpi;
+ g_signal_connect (G_OBJECT (gscr), "monitors-changed",
+ G_CALLBACK (pgtk_monitors_changed_cb),
+ terminal);
+
/* Set up scrolling increments. */
dpyinfo->scroll.x_per_char = 1;
dpyinfo->scroll.y_per_line = 1;
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- master 98163f48a0: Implement `display-monitors-changed-hook' on PGTK,
Po Lu <=