Benjamin Otte
f34297cfba
x11: Constify XEvent usage
2017-12-13 00:56:52 +01:00
Matthias Clasen
9f6b556dc2
Stop using foreign windows for xsettings
...
Stop wrapping the xsettings manager window in a foreign
window. This means that we cannot use the gdk window filter
APIs anymore, so just do the filtering in a non-generic
way.
2017-11-01 22:55:17 -04:00
Matthias Clasen
fee93d8d7b
x11: Stop using gdk_screen_get_display
...
Never necessary, we can just use the field directly.
2017-11-01 20:48:03 -04:00
Matthias Clasen
463fba18a6
Port to gdk_display_get_root_window
...
This is the replacement for the GdkScreen api of the same name.
2017-10-31 21:27:24 -04:00
Matthias Clasen
01dfb49bbe
Drop the screen resolution api
...
GTK+ now uses the gtk-xft-dpi setting directly.
Note: this commit only fixes the backends that
currently provide this setting. The win32 and
Quartz backends still need to be fixed.
2017-10-31 19:13:21 -04:00
Matthias Clasen
31b7555b7b
Stop using screen resolution
...
This api is going away.
2017-10-31 18:53:29 -04:00
Matthias Clasen
a27bfaa0a3
Drop the GDK_DPI_SCALE variable
...
It complicates the dpi handling, and was really just a workaround
for non-dpi aware applications when hidpi support was first introduced.
2017-10-31 18:37:54 -04:00
Matthias Clasen
51ba0b41a2
x11: Stop using gdk_screen_get_setting
...
Use gdk_display_get_setting instead.
2017-10-30 17:01:18 -04:00
Matthias Clasen
10ba84a6a9
gdk: Drop settings events
...
We are not emitting these events anymore, so lets remove them
from the api. The GdkSettingAction enum is moved to xsettings-client.c
where its only use remains.
2017-10-30 09:49:02 -04:00
Matthias Clasen
7e8e4dcf76
x11: Stop emitting settings events
...
Not needed anymore.
2017-10-30 09:49:02 -04:00
Matthias Clasen
8686526b4a
x11: Emit GdkDisplay::setting-changed
...
We still generate the event too.
That will be removed in a future commit.
2017-10-30 09:29:09 -04:00
Benjamin Otte
c1e9869329
build: Don't turn off critical warnings
...
-Wint-conversion is important because it checks casts from ints to
pointers.
-Wdiscarded-qualifiers is important to catch cases where we don't
strings when we should.
2017-10-06 16:03:08 +02:00
Matthias Clasen
2ad19c70ce
x11: Don't use g_print for debug output
...
The g_print documentation explicitly says not to do this, since
g_print is meant to be redirected by applications. Instead use
g_message for logging that can be triggered via GTK_DEBUG.
2016-02-28 21:40:24 -05:00
Owen W. Taylor
fc6e2cc4b2
Handle resolution changes in the GDK backend code
...
gdk_x11_display_set_window_scale() affects the interpretation of the
Xft/DPI XSETTING - it is substituted inside GDK with the value of
Gdk/UnscaledDPI xsetting. However, this change is not propagated to
GTK+ and from GTK+ back to gdk_screen_set_resolution() until the
main loop is run.
Fix this by handling the screen resolution directly in gdk/x11.
This requires duplication of code between GDK and GTK+ since we still
have to handle DPI in GTK+ in the case that GdkSettings:gtk-xft-dpi
is set by the application.
https://bugzilla.gnome.org/show_bug.cgi?id=733076
2014-07-13 15:35:23 -04:00
Owen W. Taylor
99ac2f5c49
Fix font size when gdk_x11_display_set_window_scale() is used
...
We have a hack in the XSETTINGS code to substitute gtk-xft-dpi
with gdk-unscaled-dpi unless the screen has a fixed window scale,
in which case we just use gtk-xft-dpi.
But if the screen is changed to have a fixed window scale, then
the substituted value of gdk-unscaled-dpi will stick around until
the next (coincidental) change to XSETTINGS. To fix this, force
an immediate reread of the XSETTINGS property when
gdk_x11_display_set_window_scale() is used.
https://bugzilla.gnome.org/show_bug.cgi?id=725754
2014-03-06 23:20:00 -05:00
Tim Lunn
17b6819991
gdk: Don't leak GValue when xsetting is unknown
...
https://bugzilla.gnome.org/show_bug.cgi?id=722070
2014-01-13 22:20:28 -05:00
Alexander Larsson
867ba1df27
x11: Don't follow dpi and scale from xsettings when GDK_SCALE set
...
If things are hardcoded in the environment, that wins.
2013-07-03 14:36:05 +02:00
Alexander Larsson
4b9c08f48d
x11: Add Gdk/UnscaledDPI to override Xft/DPI
...
This lets use use a scaled Xft/DPI for old apps while not
blowing up the size of scaled windows. Only apps supporting
Gdk/WindowScaleFactor should supprt Gdk/UnscaledDPI.
2013-07-03 14:34:25 +02:00
Alexander Larsson
d89a98e31e
x11: Support the Gdk/WindowScalingFactor xsetting
...
This xsetting can be used to tell Gtk to use a specific window
scaling for the screen.
2013-07-03 14:34:14 +02:00
Benjamin Otte
588513fc9a
x11: Get rid of XSettingsClient object
...
Instead, store its variables in the GdkX11Screen.
2013-02-19 14:33:39 +01:00
Benjamin Otte
3eef3290ad
x11: Use _gdk_x11_get_xatom_for_display_printf()
...
instead of keeping the atom around all the time
2013-02-19 14:33:39 +01:00
Benjamin Otte
b2043511ee
x11: Don't keep an "in_init" variable
...
Instead, track the init state with a boolean argument.
2013-02-19 14:33:39 +01:00
Benjamin Otte
200d6fe664
x11: Clean up xsettings header
...
- Don't use defines for renames
- Move enum into only source file using it
2013-02-19 14:33:38 +01:00
Benjamin Otte
e1efe3269c
x11: Get rid of XSettingsSetting
...
Use GValue throughout instead.
2013-02-19 14:33:38 +01:00
Benjamin Otte
84679ba78b
x11: Remove extra variable
...
Use a getter instead.
2013-02-19 14:33:38 +01:00
Benjamin Otte
78ce2563be
x11: Split xsettings event filter into 2 functions
...
One for each type of window we watch.
2013-02-19 14:33:38 +01:00
Benjamin Otte
f6d6e932de
x11: Make stored xsettings window a GdkWindow
2013-02-19 14:33:38 +01:00
Benjamin Otte
5507954e04
x11: Split function into two
...
Instead of a boolean is_start, have a start and an end function.
2013-02-19 14:33:38 +01:00
Benjamin Otte
8028a5b24a
x11: Use gdk_display_flush()
2013-02-19 14:33:38 +01:00
Benjamin Otte
c91843edea
x11: Get selection atom useing GDK functions
...
Don't call XInternAtoms ourselves.
2013-02-19 14:33:38 +01:00
Benjamin Otte
8596142336
x11: Warning improvements to xsettings code
...
... and using g_warning() instead of fprintf()
2013-02-19 14:33:37 +01:00
Benjamin Otte
01be4ce166
x11: Use usual Atom handling in xsettings code
2013-02-19 14:33:37 +01:00
Benjamin Otte
ed38dbe28f
x11: Consolidate root window event setting in one place
...
No need to duplicate things in xsettings code.
2013-02-19 14:33:37 +01:00
Benjamin Otte
9ed7e883f2
x11: Remove unused argument
2013-02-19 14:33:37 +01:00
Benjamin Otte
edf19ab7b4
x11: Store GDK name in xsettings hash table
...
The X name is only used while reading the property, so no need to keep
it.
2013-02-19 14:33:37 +01:00
Benjamin Otte
afa3d611d6
x11: Remove XSettingsAction type
...
Use GdkSettingAction instead.
2013-02-19 14:33:37 +01:00
Benjamin Otte
a4f11fa4f5
x11: Make xsettings callbacks code go away
...
It's the same callbacks every time, so just move them into the source
file.
2013-02-19 14:33:37 +01:00
Benjamin Otte
c3607fd551
x11: Don't store name in XSettingsSetting anymore
...
This is in preparation to switching XSettingsSetting to GValue
2013-02-19 14:33:36 +01:00
Benjamin Otte
30a4150c8e
x11: Use boolean instead of enum for errors in xsettings code
2013-02-19 14:33:36 +01:00
Benjamin Otte
23b039c8cd
x11: Move error reporting to where the error happens
...
Also, use g_warning() instead of fprintf().
2013-02-19 14:33:36 +01:00
Benjamin Otte
b36b89151e
x11: Move length checking into return_if_fail() macro
2013-02-19 14:33:36 +01:00
Benjamin Otte
e3206b9de4
x11: Use GDK error trapping code
2013-02-19 14:33:36 +01:00
Benjamin Otte
c84e303fb5
x11: Split out xsettings string reading code
2013-02-19 14:33:36 +01:00
Benjamin Otte
2b83062fc6
x11: Clean up xsettings header
...
Move private struct definitions into source file, remove unneeded C++
guards.
2013-02-19 14:33:36 +01:00
Benjamin Otte
0c58cb744c
x11: Add debugging output for xsettings code
2013-02-19 14:33:36 +01:00
Benjamin Otte
08a6f554c3
x11: Use glib malloc funcs for XSettings
2013-02-19 14:32:41 +01:00
Benjamin Otte
7800e68b73
x11: Call grab functions directly
...
... instead of going via vfuncs.
2013-02-19 14:32:41 +01:00
Benjamin Otte
eb4792128f
x11: Pass the GdkScreen to the XSettingsClient
2013-02-19 14:32:41 +01:00
Benjamin Otte
bb4953f3e8
x11: Fold xsettings-common.[ch] into xsettings-client.[ch]
2013-02-19 14:32:41 +01:00
Benjamin Otte
63f0797e70
x11: Return XSetting without copying
2013-02-19 14:32:41 +01:00