aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorJeff Walsh2020-02-18 17:13:26 +1100
committerJeff Walsh2020-11-24 12:24:39 +1100
commitef67659e985dcc31a48cfb3c5eefcf4d9f6aee6e (patch)
treec349e6ad0fd1b832fa3f258b7a8d79e5dab0040b /src
parentc9e6b4486b6aee1e1011c81fdf0ef8270e237a15 (diff)
downloademacs-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.c2
-rw-r--r--src/gtkutil.c1
-rw-r--r--src/pgtkfns.c4
-rw-r--r--src/pgtkterm.c14
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>
3166void pgtk_log(const char *file, int lineno, const char *fmt, ...) 3166void 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
3185void pgtk_backtrace(const char *file, int lineno) 3185void 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
5407static gboolean delete_event(GtkWidget *widget, GdkEvent *event, gpointer *user_data) 5407static 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 }