diff options
| author | Jeff Walsh | 2020-02-18 17:13:26 +1100 |
|---|---|---|
| committer | Jeff Walsh | 2020-11-24 12:24:39 +1100 |
| commit | ef67659e985dcc31a48cfb3c5eefcf4d9f6aee6e (patch) | |
| tree | c349e6ad0fd1b832fa3f258b7a8d79e5dab0040b /src | |
| parent | c9e6b4486b6aee1e1011c81fdf0ef8270e237a15 (diff) | |
| download | emacs-ef67659e985dcc31a48cfb3c5eefcf4d9f6aee6e.tar.gz emacs-ef67659e985dcc31a48cfb3c5eefcf4d9f6aee6e.zip | |
Set screen/display dpi res to make broadway work as expected
* src/pgtkterm.c (pgtk_initialize_display_info)
(window_state_event, pgtk_term_init):
* src/gtkutil.c (xg_create_frame_widgets):
* src/pgtkterm.c (pgtk_initialize_display_info)
(window_state_event, pgtk_term_init):
* src/ftcrfont.c (ftcrfont_open):
Diffstat (limited to 'src')
| -rw-r--r-- | src/ftcrfont.c | 2 | ||||
| -rw-r--r-- | src/gtkutil.c | 1 | ||||
| -rw-r--r-- | src/pgtkfns.c | 4 | ||||
| -rw-r--r-- | src/pgtkterm.c | 14 |
4 files changed, 14 insertions, 7 deletions
diff --git a/src/ftcrfont.c b/src/ftcrfont.c index 8fffb33ee2c..5bae8dae175 100644 --- a/src/ftcrfont.c +++ b/src/ftcrfont.c | |||
| @@ -136,7 +136,9 @@ ftcrfont_open (struct frame *f, Lisp_Object entity, int pixel_size) | |||
| 136 | filename = XCAR (val); | 136 | filename = XCAR (val); |
| 137 | size = XFIXNUM (AREF (entity, FONT_SIZE_INDEX)); | 137 | size = XFIXNUM (AREF (entity, FONT_SIZE_INDEX)); |
| 138 | if (size == 0) | 138 | if (size == 0) |
| 139 | { | ||
| 139 | size = pixel_size; | 140 | size = pixel_size; |
| 141 | } | ||
| 140 | 142 | ||
| 141 | block_input (); | 143 | block_input (); |
| 142 | 144 | ||
diff --git a/src/gtkutil.c b/src/gtkutil.c index 6573205e7b9..4bd803c74b5 100644 --- a/src/gtkutil.c +++ b/src/gtkutil.c | |||
| @@ -1377,7 +1377,6 @@ xg_create_frame_widgets (struct frame *f) | |||
| 1377 | wtop = gtk_window_new (type); | 1377 | wtop = gtk_window_new (type); |
| 1378 | #ifdef HAVE_PGTK | 1378 | #ifdef HAVE_PGTK |
| 1379 | gtk_widget_add_events(wtop, GDK_ALL_EVENTS_MASK); | 1379 | gtk_widget_add_events(wtop, GDK_ALL_EVENTS_MASK); |
| 1380 | gtk_window_set_hide_titlebar_when_maximized(GTK_WINDOW(wtop), TRUE); | ||
| 1381 | #endif | 1380 | #endif |
| 1382 | 1381 | ||
| 1383 | /* gtk_window_set_has_resize_grip is a Gtk+ 3.0 function but Ubuntu | 1382 | /* gtk_window_set_has_resize_grip is a Gtk+ 3.0 function but Ubuntu |
diff --git a/src/pgtkfns.c b/src/pgtkfns.c index e7ab20897b7..69a7430b8d3 100644 --- a/src/pgtkfns.c +++ b/src/pgtkfns.c | |||
| @@ -3160,7 +3160,7 @@ When using Gtk+ tooltips, the tooltip face is not used. */); | |||
| 3160 | } | 3160 | } |
| 3161 | 3161 | ||
| 3162 | 3162 | ||
| 3163 | 3163 | #ifdef PGTK_DEBUG | |
| 3164 | #include <stdarg.h> | 3164 | #include <stdarg.h> |
| 3165 | #include <time.h> | 3165 | #include <time.h> |
| 3166 | void pgtk_log(const char *file, int lineno, const char *fmt, ...) | 3166 | void pgtk_log(const char *file, int lineno, const char *fmt, ...) |
| @@ -3181,7 +3181,7 @@ void pgtk_log(const char *file, int lineno, const char *fmt, ...) | |||
| 3181 | va_end(ap); | 3181 | va_end(ap); |
| 3182 | fputc('\n', stderr); | 3182 | fputc('\n', stderr); |
| 3183 | } | 3183 | } |
| 3184 | #ifdef PGTK_DEBUG | 3184 | |
| 3185 | void pgtk_backtrace(const char *file, int lineno) | 3185 | void pgtk_backtrace(const char *file, int lineno) |
| 3186 | { | 3186 | { |
| 3187 | Lisp_Object bt = make_uninit_vector(10); | 3187 | Lisp_Object bt = make_uninit_vector(10); |
diff --git a/src/pgtkterm.c b/src/pgtkterm.c index d7ac68c32f2..0ab86b7a427 100644 --- a/src/pgtkterm.c +++ b/src/pgtkterm.c | |||
| @@ -828,8 +828,8 @@ pgtk_initialize_display_info (struct pgtk_display_info *dpyinfo) | |||
| 828 | Initialize global info and storage for display. | 828 | Initialize global info and storage for display. |
| 829 | -------------------------------------------------------------------------- */ | 829 | -------------------------------------------------------------------------- */ |
| 830 | { | 830 | { |
| 831 | dpyinfo->resx = 72.27; /* used 75.0, but this makes pt == pixel, expected */ | 831 | dpyinfo->resx = 96; |
| 832 | dpyinfo->resy = 72.27; | 832 | dpyinfo->resy = 96; |
| 833 | dpyinfo->color_p = 1; | 833 | dpyinfo->color_p = 1; |
| 834 | dpyinfo->n_planes = 32; | 834 | dpyinfo->n_planes = 32; |
| 835 | dpyinfo->root_window = 42; /* a placeholder.. */ | 835 | dpyinfo->root_window = 42; /* a placeholder.. */ |
| @@ -5401,7 +5401,7 @@ static gboolean window_state_event(GtkWidget *widget, GdkEvent *event, gpointer | |||
| 5401 | 5401 | ||
| 5402 | if (inev.ie.kind != NO_EVENT) | 5402 | if (inev.ie.kind != NO_EVENT) |
| 5403 | evq_enqueue(&inev); | 5403 | evq_enqueue(&inev); |
| 5404 | return TRUE; | 5404 | return FALSE; |
| 5405 | } | 5405 | } |
| 5406 | 5406 | ||
| 5407 | static gboolean delete_event(GtkWidget *widget, GdkEvent *event, gpointer *user_data) | 5407 | static gboolean delete_event(GtkWidget *widget, GdkEvent *event, gpointer *user_data) |
| @@ -6297,7 +6297,13 @@ pgtk_term_init (Lisp_Object display_name, char *resource_name) | |||
| 6297 | 6297 | ||
| 6298 | { | 6298 | { |
| 6299 | GdkScreen *gscr = gdk_display_get_default_screen(dpyinfo->gdpy); | 6299 | GdkScreen *gscr = gdk_display_get_default_screen(dpyinfo->gdpy); |
| 6300 | gdouble dpi = gdk_screen_get_resolution(gscr); | 6300 | |
| 6301 | GSettings *set = g_settings_new("org.gnome.desktop.interface"); | ||
| 6302 | gdouble x = g_settings_get_double(set,"text-scaling-factor"); | ||
| 6303 | gdouble dpi = 0; | ||
| 6304 | |||
| 6305 | dpi = 96.0 * x; | ||
| 6306 | gdk_screen_set_resolution(gscr, dpi); | ||
| 6301 | dpyinfo->resx = dpi; | 6307 | dpyinfo->resx = dpi; |
| 6302 | dpyinfo->resy = dpi; | 6308 | dpyinfo->resy = dpi; |
| 6303 | } | 6309 | } |