Benjamin Otte
9cecf123f3
widget-factory: Use a pixbuf instead of a surface
...
This gets rid of the last user of
gdk_cairo_surface_create_from_pixbuf().
2018-04-12 14:03:58 +02:00
Benjamin Otte
af6b2cdb37
testgtk: Don't set cairo surfaces as icons
...
The code expects textures these days, so use those.
2018-04-12 14:03:48 +02:00
Benjamin Otte
3a1c69dce6
gdk: Remove gdk_cairo_get_drawing_context()
...
It's unused.
2018-04-12 14:03:40 +02:00
Benjamin Otte
b9c8c146d2
tests: Use gdk_texture_save_to_png() where appropriate
2018-04-12 14:02:59 +02:00
Benjamin Otte
770866f265
texture: Add gdk_texture_save_to_png()
...
It's needed for debugging Timm's code, so better have it here than
hidden in my random-patch vault.
2018-04-12 14:02:59 +02:00
Benjamin Otte
39d930c065
drawingcontext: Remove unused APIs
2018-04-12 14:02:59 +02:00
Christoph Reiter
814b7d7bb7
ci: allow flatpak jobs to fail for now
...
We can easily revert this when things are fixed again.
2018-04-11 19:52:21 +02:00
Timm Bäder
0965812e37
scrolledwindow: Fix indicator revealing
...
We need to increase the scrollbar bounds size.
2018-04-11 19:14:55 +02:00
Timm Bäder
5e81761ad0
gl renderer: Slightly change ops_offset behavior
...
Add the given delta to the current one instead of replacing it.
2018-04-11 19:14:54 +02:00
Timm Bäder
0336825537
gl renderer: Don't draw all rounded clip nodes to a texture
...
We only need to do that if the rounde clip node intersects with the
outer one.
2018-04-11 19:14:54 +02:00
Руслан Ижбулатов
20f12f9ed7
GDK W32: Fix a missing weak referencing
...
The changes in a82d67bb7d
didn't
preserve a g_object_weak_ref() call that we need to ensure the
objects in hash map don't become stale. Fix this.
2018-04-11 16:39:34 +00:00
Emmanuele Bassi
8fa2db35f8
Merge branch 'gitlab-ci-ccache-again' into 'master'
...
gitlab-ci: Reenable ccache but disable it during the initial meson call
See merge request GNOME/gtk!111
2018-04-11 14:32:37 +00:00
Emmanuele Bassi
a2a99d27c9
Simplify the Wayland code generation
...
Instead of going through an ancillary script to strip away the
`WL_EXPORT` annotation from the generated code, we should bump up the
required version of Wayland, and use the `private-code` argument for
wayland-scanner, which does the right thing for us.
2018-04-11 15:06:43 +01:00
Christoph Reiter
c542115906
gitlab-ci: Reenable ccache but disable it during the initial meson call
...
There where some problems (??) with ccache not detecting changes during meson
checks. Setting CCACHE_DISABLE during the meson execution makes ccache not use
the cache and pass things directly to the compiler.
2018-04-11 15:33:00 +02:00
Timm Bäder
d7af16c8e4
gl renderer: Render everyhing according to MV scale
...
And not the surface's scale factor. This way the magnifier works.
2018-04-11 15:31:22 +02:00
Timm Bäder
cc66b50dcd
gl renderer: Remove unused field
2018-04-11 15:31:22 +02:00
Emmanuele Bassi
d448be007e
ci: Update container to Fedora 28
...
We're going to need updated dependencies that we cannot build as
subprojects, like wayland-protocols.
2018-04-11 13:58:47 +01:00
Benjamin Otte
2dd37e9624
widget: Not all toplevels are containers
...
Guard against GtkInvisible.
2018-04-11 04:04:37 +02:00
Benjamin Otte
b79c138100
widget: Only start/stop idle sizers for toplevels
...
They are the only widgets that have idle sizers.
2018-04-11 03:16:34 +02:00
Benjamin Otte
2abf082231
widget: Move frame clock handling to vfunc
...
Instead of connecting to / disconnecting from the frame clock, do it
inside the vfuncs next to changing the priv->realized boolean.
This removes a race between those 2 cases that could cause child
widgets' unrealize handlers to reconnect this widget to the frame clock
because it was still marked as realize when the widget had already
disconnected from the frame clock.
Fixes #168
2018-04-11 03:16:34 +02:00
Benjamin Otte
7ef8cb652b
widget: Remove gtk_widget_set_realized()
...
Everybody chains up now.
2018-04-11 03:16:34 +02:00
Benjamin Otte
5abc4749de
gtk: Chain up in toplevels' realize
...
Don't call set_realized() manually.
2018-04-11 03:16:34 +02:00
Benjamin Otte
5c51a302a4
widget: Make gtk_widget_real_realize() stricter
...
But in turn, also allow it to work on widgets with their own surface.
This way, we can chain up from everywhere and won't have to export
gtk_widget_set_realized().
2018-04-11 03:16:34 +02:00
Benjamin Otte
0af5316f00
widget: Assert unrealizing
...
Instead of just setting the flag, assert that it was set.
2018-04-11 03:16:34 +02:00
Benjamin Otte
2862ee7682
widget: Remove unused member
2018-04-11 03:16:34 +02:00
Benjamin Otte
3ee2aa1b22
container: Remove gtk_container_maybe_start_idle_sizer()
...
Fold it into gtk_container_start_idle_sizer()
2018-04-11 03:16:34 +02:00
Benjamin Otte
21f15094fb
container: Remove gtk_container_queue_resize_handler()
...
It's the same as gtk_container_maybe_start_idle_sizer()
2018-04-11 03:16:34 +02:00
Benjamin Otte
3df94fe099
container: Use maybe_start_idle_sizer()
...
That way, we don't accidentally start an idle sizer for unrealized
widgets.
2018-04-11 03:16:34 +02:00
Benjamin Otte
e0415fccd7
window: Don't queue resize handler
...
It's not needed, because the queue_allocate() call right above it does
this work.
2018-04-11 03:16:34 +02:00
Benjamin Otte
b591d7bc20
widget: Don't queue resize handler twice
...
We already queue it when we set_alloc_needed(), so there's no need to do
it again.
2018-04-11 03:16:34 +02:00
Benjamin Otte
d6477d0894
container: Don't store the resize clock
...
Use gtk_widget_get_frame_clock() instead
2018-04-11 03:16:34 +02:00
Benjamin Otte
1738b80efd
Merge branch 'gitlab-ci-mingw' into 'master'
...
gitlab-ci: mingw build
See merge request GNOME/gtk!105
2018-04-10 18:59:49 +00:00
Christoph Reiter
f26b2469af
gitlab-ci: Add a 32bit mingw build
2018-04-10 19:24:15 +02:00
Emmanuele Bassi
14c8a603e3
Terminate strncpy() buffers correctly
...
When using strncpy() with a buffer we need to account for the
terminating NUL character. GCC 8 started warning when using PPD_MAX_NAME
as the buffer length for strncpy() because the buffer we're copying into
has the same length — which means that the terminating NUL may be
skipped if the source string has a length of PPD_MAX_NAME.
The appropriate way to handle the case where we're copying a source with
a length bigger than of PPD_MAX_NAME is, as reported in the strncpy()
documentation, to copy `PPD_MAX_NAME - 1` bytes, and explicitly NUL
terminate the destination buffer. This has the additional benefit of
avoiding the compiler warning.
2018-04-10 14:54:45 +01:00
Benjamin Otte
adc0159bdb
wayland: Factor out frame timings request code
...
Also call the code everywhere we draw and not just with Cairo.
2018-04-10 15:13:38 +02:00
Benjamin Otte
e44bbeb558
filechooserbutton: Fix reserved pointers
...
So gcc stops complaining about unnecessary parenthesis.
2018-04-10 15:13:38 +02:00
Benjamin Otte
12063fe53e
ffmpeg: Fix compile warnings for newest version
2018-04-10 15:13:38 +02:00
Timm Bäder
f24d0725ca
vulkancontext: Add new error enum
2018-04-10 09:53:48 +02:00
Timm Bäder
3db4f805ee
widgetfocus: Use gtk_widget_compute_bounds
...
Instead of gtk_widget_get_allocation.
2018-04-10 09:44:14 +02:00
Timm Bäder
3ce6355bf4
widget: Remove _get_own_allocation
...
Replace all usages of it with _compute_bounds
2018-04-10 09:43:47 +02:00
Timm Bäder
3a5b2f54ea
widget: Remove gtk_widget_get_own_allocation
...
Use compute_bounds everywhere.
2018-04-10 09:43:47 +02:00
Timm Bäder
5d1f93796e
widget: Remove get_own_allocation usages
2018-04-10 09:43:47 +02:00
Timm Bäder
b29ee2dc46
notebook: Use compute_bounds
2018-04-10 09:43:47 +02:00
Timm Bäder
d49d391fcd
popover: Use gtk_widget_compute_bounds
...
Instead of the private get_own_allocation
2018-04-10 09:43:47 +02:00
Timm Bäder
3593fd2a29
toolbar: Avoid a get_own_allocation call
...
We want the content allocation here since we are allocation child
widgets.
2018-04-10 09:43:47 +02:00
Timm Bäder
44390c16b2
widget: Fix typo in compute_bounds docs
2018-04-10 09:43:47 +02:00
Timm Bäder
09f04633ca
gdk: Protect against negative GDK_SCALE values
...
Using those should not happen.
2018-04-10 09:43:47 +02:00
Руслан Ижбулатов
27d9f233d4
GDK W32: use clock after_paint signal for timing updates
...
* Previous commit had misleading info. The code was
added to begin_paint() instead of end_paint(). Though
that did not affect its performance in any visible way.
* Company advised to move the code to an "after_paint" signal
handler, so that it works on all renderers, not just Cairo.
This change caused high fluctuation in FPS values in fishbowl
when it is put in a situation where it cannot achieve 60fps
(such as using Cairo renderer at ultra-high resolution).
This seems to be deliberate and not a bug.
2018-04-09 20:21:16 +00:00
Emmanuele Bassi
410b20f904
docs: Link to GResource
...
Since we're referring to GLib's functionality, might as well save some
time to the reader, and link to the GResource API reference page.
2018-04-09 20:55:51 +01:00
Daniel Boles
fae064d5f9
docs/reference/gtk/getting_started: cgit => GitLab
...
master version of b685eb1779
2018-04-09 20:55:14 +01:00