| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
It's not used anymore.
|
| |
|
|
|
|
|
|
|
| |
Follow the other sources that include cairo.h, by just doing #include
<cairo.h>, not <cairo/cairo.h>.
https://bugzilla.gnome.org/show_bug.cgi?id=773299
|
|
|
|
| |
When the first op is a modelview or projection change.
|
| |
|
|
|
|
|
|
|
|
| |
Adding the offset node broke serialization in 2 ways:
1. We store the enum value in the node, so make sure to not change it
for existing values
2. The offset node was missing in the deserialization lookup table
|
|
|
|
|
|
|
|
|
| |
This is a special case of the transform node that does a 2D translation.
The implementation in the Vulkan and GL renderers is crude and just does
the same as the transform node.
Nothing uses that node yet.
|
|
|
|
| |
These will cause problems later on.
|
| |
|
|
|
|
| |
It's not needed to create Cairo nodes anymore.
|
|
|
|
|
|
|
|
|
|
| |
This way, we can postpone the actual rendeing of the node until the
renderer. This allows the renderer to choose the right scale to
render at, so it can decide to use 2x scale for hidpi on its own.
Last but not least, it makes all nodes independent of the context they
are created in, because they do not need to know at snapshot time what
they will ultimately be rendered into.
|
|
|
|
|
| |
This is in preparation for the next commits which switch Cairo nodes to
recording surfaces.
|
|
|
|
| |
This renames a lot of arguments, local variables and functions.
|
|\
| |
| |
| |
| | |
Rename window to surface
See merge request GNOME/gtk!72
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This is an automatic rename of various things related
to the window->surface rename.
Public symbols changed by this is:
GDK_MODE_WINDOW
gdk_device_get_window_at_position
gdk_device_get_window_at_position_double
gdk_device_get_last_event_window
gdk_display_get_monitor_at_window
gdk_drag_context_get_source_window
gdk_drag_context_get_dest_window
gdk_drag_context_get_drag_window
gdk_draw_context_get_window
gdk_drawing_context_get_window
gdk_gl_context_get_window
gdk_synthesize_window_state
gdk_surface_get_window_type
gdk_x11_display_set_window_scale
gsk_renderer_new_for_window
gsk_renderer_get_window
gtk_text_view_buffer_to_window_coords
gtk_tree_view_convert_widget_to_bin_window_coords
gtk_tree_view_convert_tree_to_bin_window_coords
The commands that generated this are:
git sed -f g "GDK window" "GDK surface"
git sed -f g window_impl surface_impl
(cd gdk; git sed -f g impl_window impl_surface)
git sed -f g WINDOW_IMPL SURFACE_IMPL
git sed -f g GDK_MODE_WINDOW GDK_MODE_SURFACE
git sed -f g gdk_draw_context_get_window gdk_draw_context_get_surface
git sed -f g gdk_drawing_context_get_window gdk_drawing_context_get_surface
git sed -f g gdk_gl_context_get_window gdk_gl_context_get_surface
git sed -f g gsk_renderer_get_window gsk_renderer_get_surface
git sed -f g gsk_renderer_new_for_window gsk_renderer_new_for_surface
(cd gdk; git sed -f g window_type surface_type)
git sed -f g gdk_surface_get_window_type gdk_surface_get_surface_type
git sed -f g window_at_position surface_at_position
git sed -f g event_window event_surface
git sed -f g window_coord surface_coord
git sed -f g window_state surface_state
git sed -f g window_cursor surface_cursor
git sed -f g window_scale surface_scale
git sed -f g window_events surface_events
git sed -f g monitor_at_window monitor_at_surface
git sed -f g window_under_pointer surface_under_pointer
(cd gdk; git sed -f g for_window for_surface)
git sed -f g window_anchor surface_anchor
git sed -f g WINDOW_IS_TOPLEVEL SURFACE_IS_TOPLEVEL
git sed -f g native_window native_surface
git sed -f g source_window source_surface
git sed -f g dest_window dest_surface
git sed -f g drag_window drag_surface
git sed -f g input_window input_surface
git checkout NEWS* po-properties po docs/reference/gtk/migrating-3to4.xml
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
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
|
| |
| |
| |
| | |
By tiling them.
|
| | |
|
| |
| |
| |
| | |
It can't handle the texture sizes we'd like to support
|
| |
| |
| |
| | |
It can't handle the texture sizes we'd like to support
|
| |
| |
| |
| |
| |
| |
| | |
This reverts commit 0234e8e2c94ff6b0c6f4dfcd0c940910a97eca11.
This broke partially clipped-away nodes when they are being transformed,
e.g. by a rotation
|
|/ |
|
|
|
|
|
|
|
| |
This is the default memory format.
I added it because it is way better than including a private header and
using GDK_MEMORY_CAIRO_FORMAT_ARGB32.
|
|
|
|
| |
Use gdk_memory_texture_new() instead.
|
| |
|
|
|
|
|
| |
Drawing shadows is the same task as drawing text in our case and these
two shaders have been the same thing for quite a while.
|
|
|
|
| |
Stop abusing the clip rect for borders.
|
| |
|
|
|
|
| |
It only handles OpenGL shaders.
|
|
|
|
|
| |
We need to draw them upscaled, of course. This fixes button hover (or,
more generally, crossfade nodes) in hidpi setups.
|
| |
|
| |
|
|
|
|
|
|
| |
And then clip the texture using the current (maybe also rounded) clip.
This way, the result is correct. We don't necessarily have to do the
offscreen drawing in any case, but got the safe route for now.
|
|
|
|
|
| |
Temporarily switch to the texture's gl context, download the texture and
create a new one in our context for it.
|
|
|
|
|
|
|
| |
Put GdkGLTexture into its own file and rename the API to
gdk_gl_texture_foo() instead of gdk_texture_foo_for_gl().
Apart from naming, no actual code changes.
|
|
|
|
|
|
| |
An alternative GskTextNode constructor that does no text measuring. That
way, we can measure the text before and check if the node will be
outside of the current clip anyway.
|
| |
|
| |
|
| |
|
|
|
|
|
| |
Otherwise, the radius here ends up being 0 and we don't draw anything at
all.
|
|
|
|
|
| |
Otherwise, the resulting node will be too small and the result looks
clipped.
|
|
|
|
| |
Fixes a rather large memleak.
|
|
|
|
|
| |
This fixes blurry checkbutton marks in hidpi setups, but breaks button
hover effects. That's another problem.
|
| |
|
|
|
|
| |
This way we pick up changes in the GdkWindow's scale_factor.
|
|
|
|
|
|
|
| |
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.
|
|
|
|
| |
This may be useful for applications using render nodes.
|
|
|
|
|
| |
This is a leftover from when GskTexture was moved
to gdk.
|
|
|
|
|
| |
This together with the optimizations in GtkSnapshot was causing circular
buttons to become squared when partially scrolled out of view.
|
|
|
|
|
| |
Get rid of the manual y flipping and cairo business. This keeps the gl
unit tests working at least.
|