| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
| |
Rename all *window.[ch] source files.
This is an automatic operation, done by the following commands:
for i in $(git ls-files gdk | grep window); do
git mv $i $(echo $i | sed s/window/surface/);
git sed -f g $(basename $i) $(basename $i | sed s/window/surface/) ;
done
git checkout NEWS* po-properties po
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This renames the GdkWindow class and related classes (impl, backend
subclasses) to surface. Additionally it renames related types:
GdkWindowAttr, GdkWindowPaint, GdkWindowWindowClass, GdkWindowType,
GdkWindowTypeHint, GdkWindowHints, GdkWindowState, GdkWindowEdge
This is an automatic conversion using the below commands:
git sed -f g GdkWindowWindowClass GdkSurfaceSurfaceClass
git sed -f g GdkWindow GdkSurface
git sed -f g "gdk_window\([ _\(\),;]\|$\)" "gdk_surface\1" # Avoid hitting gdk_windowing
git sed -f g "GDK_WINDOW\([ _\(]\|$\)" "GDK_SURFACE\1" # Avoid hitting GDK_WINDOWING
git sed "GDK_\([A-Z]*\)IS_WINDOW\([_ (]\|$\)" "GDK_\1IS_SURFACE\2"
git sed GDK_TYPE_WINDOW GDK_TYPE_SURFACE
git sed -f g GdkPointerWindowInfo GdkPointerSurfaceInfo
git sed -f g "BROADWAY_WINDOW" "BROADWAY_SURFACE"
git sed -f g "broadway_window" "broadway_surface"
git sed -f g "BroadwayWindow" "BroadwaySurface"
git sed -f g "WAYLAND_WINDOW" "WAYLAND_SURFACE"
git sed -f g "wayland_window" "wayland_surface"
git sed -f g "WaylandWindow" "WaylandSurface"
git sed -f g "X11_WINDOW" "X11_SURFACE"
git sed -f g "x11_window" "x11_surface"
git sed -f g "X11Window" "X11Surface"
git sed -f g "WIN32_WINDOW" "WIN32_SURFACE"
git sed -f g "win32_window" "win32_surface"
git sed -f g "Win32Window" "Win32Surface"
git sed -f g "QUARTZ_WINDOW" "QUARTZ_SURFACE"
git sed -f g "quartz_window" "quartz_surface"
git sed -f g "QuartzWindow" "QuartzSurface"
git checkout NEWS* po-properties
|
|
|
|
|
| |
This function is unused and has been deprecated
for a long time.
|
|
|
|
|
|
|
| |
Remove all the old 2.x and 3.x version annotations.
GTK+ 4 is a new start, and from the perspective of a
GTK+ 4 developer all these APIs have been around since
the beginning.
|
|
|
|
|
|
|
| |
As far as possible, use per-display debug flags.
This will minimize the debug spew that we get from
the inspector if it is running on a separate display.
|
|
|
|
|
| |
Setting a new transient-for parent is only possible if the given parent
window is valid, not when it is NULL or valid.
|
|
|
|
|
| |
Otherwise, the NULL parent window causes a crash in the
GDK_WINDOW_IS_DESTROYED call.
|
|
|
|
|
|
|
|
| |
Quietly do nothing when there is already an ongoing operation.
This matches the behavior of the ewmh code, and is much nicer
than a crash.
https://bugzilla.gnome.org/show_bug.cgi?id=789054
|
|
|
|
|
| |
Atoms are just interned strings now, so we can just
use g_intern_string.
|
|
|
|
|
|
| |
They are not used anymore.
Gone with them are PropertyNotify events.
|
|
|
|
|
| |
... and just unset it from GtkWindow instead of fiddling with
properties.
|
|
|
|
|
|
| |
It won't stand true anymore that the GdkEventType argument is the
first field of the GdkEvent* structs. All callers have been updated
to use event->any.type instead.
|
|
|
|
|
| |
With this, the GDK_EVENT_SELECTION_REQUEST and GDK_EVENT_SELECTION_CLEAR
and the associated GtkWidget signals are gone, too.
|
| |
|
|
|
|
|
| |
...together with apis that return it. We were not using this
information in GTK+ at all, so no need to provide it.
|
|
|
|
|
| |
Derive GdkX11Screen directly from GObject, and
remove the last remaining uses of GdkScreen.
|
|
|
|
|
| |
This type is going away, so switch to using GdkX11Screen
everywhere.
|
|
|
|
|
| |
The program class is a very X-specific concept.
There should be x11-backend api to deal with it.
|
| |
|
|
|
|
|
| |
This backend never creates a window of this type, so no
need to check for it anymore.
|
|
|
|
| |
We no longer need it.
|
|
|
|
|
|
| |
Avoid calling the get_root_window api that returns
a GdkWindow in some places, and instead use the X
root window directly.
|
|
|
|
|
| |
X11 obviously doesn't use 4 bytes for a 4 bytes pixel. Rather, it uses
unsigned long, which happens to be 8 bytes these days.
|
|
|
|
| |
Use the backend api for this.
|
|
|
|
|
| |
We want to make toplevels have a NULL parent, this
gets us ready for it.
|
|
|
|
| |
Cairo surfaces are bad, mkay?
|
|
|
|
|
| |
That one calls through to GdkDevice.set_window_cursor(), so let's just
use that one.
|
|
|
|
| |
Never necessary, we can just use the field directly.
|
|
|
|
|
| |
There's no point in using this api here, we can directly
get the screen member from the GdkX11Display struct.
|
|
|
|
|
| |
Use GdkMonitor here, since that is our primary monitor
object now, and GdkScreen is going away.
|
|
|
|
|
| |
This type was unused except for serving as a parent
for GdkX11Visual. Just move the fields to that type.
|
|
|
|
| |
This is the replacement for the GdkScreen api of the same name.
|
|
|
|
|
| |
This includes removing the GdkScreen argument from the
create_window_impl display vfunc.
|
|
|
|
| |
There were some parts left, for instance gdk_window_set_icon_list.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This patch makes that work using 1 of 2 options:
1. Add all missing enums to the switch statement
or
2. Cast the switch argument to a uint to avoid having to do that (mostly
for GdkEventType).
I even found a bug while doing that: clearing a GtkImage with a surface
did not notify thae surface property.
The reason for enabling this flag even though it is tedious at times is
that it is very useful when adding values to an enum, because it makes
GTK immediately warn about all the switch statements where this enum is
relevant.
And I expect changes to enums to be frequent during the GTK4 development
cycle.
|
|
|
|
|
|
|
|
|
|
|
|
| |
Instead of relying on special values of edge constraints, this
patch adds an internal-only gdk_window_supports_edge_constraints()
function that by default returns FALSE, and is implemented by
GdkWindowWayland and GdkWindowX11.
This way, we can properly detect server-side support for this
feature and adapt accordingly.
https://bugzilla.gnome.org/show_bug.cgi?id=783669
|
|
|
|
|
| |
_gdk_device_query_state was needlessly shuffling
root windows around.
|
|
|
|
|
|
|
|
| |
Don't set the have_focused field of the window's toplevel to TRUE by
default and don't set the FOCUSED state in gdk_window_map. This a means
toplevel window's state is what the WM expects, and the FOCUSED state
will be set anyway when we map the window and receive a _NET_WM_STATE
message.
|
|
|
|
| |
The GTK+ level API for this is already gone.
|
|
|
|
| |
These symbols are not exported and are local to their compilation unit.
|
|
|
|
| |
They were unused and unimplemented.
|
|
|
|
|
|
| |
We're not currently using this, and dropping it allows us to loose
a bunch of code which leads us towards the goal of having GdkWindow
only for toplevels (and reparenting makes not sense for toplevels).
|
|
|
|
|
|
| |
We can't really support these on e.g. wayland anyway, and we're trying
to get rid of subwindow at totally in the long term, so lets drop this.
It allows us to drop a lot of complexity.
|
|
|
|
|
|
|
|
| |
Instead, complain if somebody calls gdk_x11_window_get_xid() on a
non-native window.
We cannot make random windows native anymore because there's no GSK
renderer associated with them, so we cannot draw them.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
No visible changes as GL rendering is disabled at the moment.
What was done:
1. Move window->invalidate_for_new_frame to glcontext->begin_frame
This moves the code to where it is used (the GLContext) and prepares it
for being called where it is used when actually beginning to draw the
frame.
2. Get rid of buffer-age usage
We want to let the application render directly to the backbuffer.
Because of that, we cannot make any assumptions about the contents the
application renders outside the clip area.
In particular GskGLRenderer renders random stuff there but not actual
contents.
3. Pass the actual GL context
Previously, we passed the shared context to end_frame, now we pass the
actual GL context that the application uses for rendering. This is so
that the vfuncs could prepare the actual contexts for rendering (they
don't currently).
4. Simplify the code
The previous code set up the final drawing method in begin_frame.
Instead, we now just ensure the clip area is something we can render
and decide on the actual method in end_frame.
This is both more robust (we can change the clip area in between if we
want to) and less code.
|
|
|
|
|
| |
No backend is using it, and we can put the backend-specific drawing code
into GdkGLContext.
|
|
|
|
| |
It's completely unused since we have a frame clock.
|
| |
|
|
|
|
|
| |
The only remaining values were always treated as 0, so we just hardcode
them to 0.
|
|
|
|
| |
Your one stop shop for all those nasty hidden input-only windows.
|