Simon McVittie [Wed, 16 Feb 2022 16:56:08 +0000 (16:56 +0000)]
Release to unstable
Simon McVittie [Wed, 16 Feb 2022 12:42:10 +0000 (12:42 +0000)]
d/run-tests.sh: Show full test log after testing
Simon McVittie [Wed, 16 Feb 2022 11:23:06 +0000 (11:23 +0000)]
Update changelog
Simon McVittie [Wed, 16 Feb 2022 11:12:17 +0000 (11:12 +0000)]
d/copyright: Update
Simon McVittie [Wed, 16 Feb 2022 11:11:56 +0000 (11:11 +0000)]
d/control.in: Update build-dependency versions
Simon McVittie [Wed, 16 Feb 2022 10:32:34 +0000 (10:32 +0000)]
Drop patches that were applied upstream
Simon McVittie [Wed, 16 Feb 2022 11:10:20 +0000 (11:10 +0000)]
New upstream release
Simon McVittie [Wed, 16 Feb 2022 11:10:20 +0000 (11:10 +0000)]
Update upstream source from tag 'upstream/4.6.1+ds'
Update to upstream version '4.6.1+ds'
with Debian dir
a2a2e461e9b0cf1a09d112955e8efe2928126daa
Simon McVittie [Wed, 16 Feb 2022 11:09:40 +0000 (11:09 +0000)]
New upstream version 4.6.1+ds
Simon McVittie [Wed, 16 Feb 2022 10:48:14 +0000 (10:48 +0000)]
Exclude wayland subproject when repacking
Simon McVittie [Wed, 16 Feb 2022 10:28:33 +0000 (10:28 +0000)]
d/watch: Use simpler repack suffix
Matthias Clasen [Sat, 12 Feb 2022 01:09:15 +0000 (20:09 -0500)]
4.6.1
Matthias Clasen [Fri, 11 Feb 2022 23:16:43 +0000 (23:16 +0000)]
Merge branch 'wip/chergert/popover-opaque-region' into 'main'
add opaque regions to popovers
Closes #4689
See merge request GNOME/gtk!4468
Christian Hergert [Fri, 11 Feb 2022 00:54:32 +0000 (16:54 -0800)]
popover: use GtkNative opaque region API
This updates GtkPopover to use the new GtkNative abstraction for
reporting opaque regions of the window, in hopes that it can speed
up compositors for things like animated lists, menu transitions,
and more.
Fixes #4689
Christian Hergert [Fri, 11 Feb 2022 00:23:16 +0000 (16:23 -0800)]
window: use GtkNative API to update opaque region
This switches to using the new GtkNative machinery for updating the
opaque region. Some amount of local calculation is still required for
determining when we should apply shadows, and this inherits what was
done previous for that.
Related #4689
Christian Hergert [Fri, 11 Feb 2022 00:21:48 +0000 (16:21 -0800)]
native: add API to update opaque region
This abstracts the machinery to update the opaque region for a GtkWindow
into GtkNative so it may be used from other native impelementations such
as GtkPopover.
Related #4689
Matthias Clasen [Fri, 11 Feb 2022 17:49:26 +0000 (17:49 +0000)]
Merge branch 'bilelmoussaoui/entry-completion' into 'main'
entry completion: add checks that entry is set already
See merge request GNOME/gtk!4450
Matthias Clasen [Fri, 11 Feb 2022 17:35:42 +0000 (17:35 +0000)]
Merge branch 'enum-docs' into 'main'
docs: Use links in enums
See merge request GNOME/gtk!4452
Matthias Clasen [Fri, 11 Feb 2022 17:33:05 +0000 (17:33 +0000)]
Merge branch 'bilelmoussaoui/g-i' into 'main'
g-i: add a couple of missing nullable annotations
See merge request GNOME/gtk!4470
Carlos Garnacho [Fri, 11 Feb 2022 14:29:19 +0000 (14:29 +0000)]
Merge branch 'primary' into 'main'
gdk: don't leak wayland primary selection offers
See merge request GNOME/gtk!4458
Bilal Elmoussaoui [Fri, 11 Feb 2022 11:59:55 +0000 (12:59 +0100)]
g-i: Add nullable annotations to EventControllerKey::im-context
Fixes https://github.com/gtk-rs/gtk4-rs/issues/874
Bilal Elmoussaoui [Fri, 11 Feb 2022 11:55:28 +0000 (12:55 +0100)]
g-i: Add nullable annotations to CellArea getters
Fixes https://github.com/gtk-rs/gtk4-rs/issues/891
Emmanuele Bassi [Fri, 11 Feb 2022 11:51:44 +0000 (11:51 +0000)]
Merge branch 'bilelmoussaoui/layout-manager' into 'main'
layout manager: add a check if the widget exists
See merge request GNOME/gtk!4469
Bilal Elmoussaoui [Fri, 11 Feb 2022 11:19:10 +0000 (12:19 +0100)]
g-i: Mark FileChooser [s|g]et_current_[folder|name] as nullable
The code seems to already check if folder/name is NULL
Fixes https://github.com/gtk-rs/gtk4-rs/issues/896
Bilal Elmoussaoui [Fri, 11 Feb 2022 11:07:54 +0000 (12:07 +0100)]
g-i: Mark get_print_settings as nullable
Fixes https://github.com/gtk-rs/gtk4-rs/issues/880
Maximiliano Sandoval R [Tue, 8 Feb 2022 10:47:53 +0000 (11:47 +0100)]
docs: Use links in enums
Properties already refer to their object, so
[property@Widget:sensitive] property on [class@Widget]
is redundant.
Bilal Elmoussaoui [Fri, 11 Feb 2022 11:05:42 +0000 (12:05 +0100)]
g-i: mark get_selected_printer as nullable
There is no selected printer if the user closes the dialog
Fixes https://github.com/gtk-rs/gtk4-rs/issues/882
Bilal Elmoussaoui [Fri, 11 Feb 2022 11:02:07 +0000 (12:02 +0100)]
g-i: mark EventController::name as nullable
Fixes https://github.com/gtk-rs/gtk4-rs/issues/893
Bilal Elmoussaoui [Fri, 11 Feb 2022 10:56:40 +0000 (11:56 +0100)]
g-i: add nullable annotation to gtk_single_selection_get_model
Bilal Elmoussaoui [Fri, 11 Feb 2022 10:44:16 +0000 (11:44 +0100)]
layout manager: add a check if the widget exists
Avoid a crash when calling _gtk_widget_get_first_child
Fixes https://github.com/gtk-rs/gtk4-rs/issues/889
Matthias Clasen [Thu, 10 Feb 2022 21:57:27 +0000 (21:57 +0000)]
Merge branch 'fix-wayland-subproject-build' into 'main'
NEWS: Updates
See merge request GNOME/gtk!4466
Matthias Clasen [Thu, 10 Feb 2022 20:06:37 +0000 (15:06 -0500)]
NEWS: Updates
Julian Orth [Tue, 8 Feb 2022 21:47:01 +0000 (22:47 +0100)]
gdk: don't leak wayland primary selection offers
Signed-off-by: Julian Orth <ju.orth@gmail.com>
Matthias Clasen [Thu, 10 Feb 2022 19:13:33 +0000 (19:13 +0000)]
Merge branch 'fix-wayland-subproject-build' into 'main'
Fix build with wayland-protocols subproject
Closes #4530
See merge request GNOME/gtk!4465
Matthias Clasen [Thu, 10 Feb 2022 18:21:28 +0000 (13:21 -0500)]
Fix build with wayland-protocols subproject
The missing files() was pointed out in #4530.
Fixes: #4530
Matthias Clasen [Thu, 10 Feb 2022 11:42:38 +0000 (11:42 +0000)]
Merge branch 'column-view-column-new-nullable-factory' into 'main'
Allow passing a `NULL` factory to `gtk_column_view_column_new()`
See merge request GNOME/gtk!4454
Matthias Clasen [Thu, 10 Feb 2022 11:24:04 +0000 (11:24 +0000)]
Merge branch 'icon-view-drag-dest-item-nullable' into 'main'
Mark `path` out parameter of `gtk_icon_view_get_drag_dest_item()` as `(nullable)`
See merge request GNOME/gtk!4451
Matthias Clasen [Wed, 9 Feb 2022 19:25:32 +0000 (19:25 +0000)]
Merge branch 'gwagner/gtkbuilder-rng' into 'main'
tools: updated gtk4builder.rng to current state
See merge request GNOME/gtk!4457
Matthias Clasen [Wed, 9 Feb 2022 19:23:59 +0000 (19:23 +0000)]
Merge branch 'update-keysyms' into 'main'
gdk: Update keyboard symbols from libxkbcommon
See merge request GNOME/gtk!4422
Matthias Clasen [Wed, 9 Feb 2022 19:19:24 +0000 (19:19 +0000)]
Merge branch 'gtk_assisten_set_current_page-no-pages-guard' into 'main'
Don't dereference a `NULL` page in `gtk_assistant_set_current_page()` if there are no pages at all
See merge request GNOME/gtk!4464
Jeremy Bicha [Wed, 9 Feb 2022 18:26:16 +0000 (13:26 -0500)]
releasing package gtk4 version 4.6.0+ds1-4
Simon McVittie [Sun, 30 Jan 2022 15:38:20 +0000 (15:38 +0000)]
Revert "Add subprojects/gi-docgen to Files-Excluded"
Until we actually remove it (by importing an upstream version without
it), Policy says we need to keep its entries in d/copyright.
gi-docgen upstream also still says gi-docgen is not stable, and still
recommends vendoring it, so keep it included until that changes.
This reverts commit
93ed2478d3e12b429fe75b9e414d26906e04f17c.
Sebastian Dröge [Wed, 9 Feb 2022 15:50:13 +0000 (17:50 +0200)]
Don't dereference a `NULL` page in `gtk_assistant_set_current_page()` if there are no pages at all
Matthias Clasen [Wed, 9 Feb 2022 13:43:50 +0000 (13:43 +0000)]
Merge branch 'bilelmoussaoui/g-i' into 'main'
gdk: mark gdk_device_get_device_tool as nullable
See merge request GNOME/gtk!4463
Matthias Clasen [Wed, 9 Feb 2022 13:13:35 +0000 (13:13 +0000)]
Merge branch 'revert-misdeprecation' into 'main'
Revert "Deprecate GdkDevice:source"
See merge request GNOME/gtk!4462
Bilal Elmoussaoui [Wed, 9 Feb 2022 13:09:47 +0000 (13:09 +0000)]
gdk: mark gdk_device_get_device_tool as nullable
Matthias Clasen [Wed, 9 Feb 2022 12:55:28 +0000 (07:55 -0500)]
Revert "Deprecate GdkDevice:source"
This reverts commit
fd9e0dd13a117637db0d265be85952a71ef128b8.
Luca Bacci [Wed, 9 Feb 2022 10:08:52 +0000 (10:08 +0000)]
Merge branch 'win32-fix-ctrl-shift-gtk4' into 'main'
gdkkeys-win32: Also ignore Ctrl + Shift (etc.)
See merge request GNOME/gtk!4460
Philip Zander [Tue, 8 Feb 2022 19:33:42 +0000 (20:33 +0100)]
gdkkeys-win32: Also ignore Ctrl + Shift (etc.)
Some Windows keymaps have bogus mappings for the Ctrl modifier. !4423 attempted
to fix this by ignoring the Ctrl layer, but that was not enough. We also need to
ignore combinations of Ctrl with other modifiers, i.e. Ctrl + Shift. For example,
Ctrl + Shift + 6 is mapped to the character 0x1E on a US keyboard (but it should
be treated as Ctrl + ^). Basically, always ignore Ctrl unless it is used in
conjunction with Alt, i.e. as part of AltGr.
Related issue: #4667
Christian Hergert [Wed, 9 Feb 2022 00:30:04 +0000 (00:30 +0000)]
Merge branch 'bilelmoussaoui/macos-gdk-display' into 'main'
macos: Don't set NULL as a display name
See merge request GNOME/gtk!4453
Günther Wagner [Tue, 8 Feb 2022 20:42:41 +0000 (21:42 +0100)]
tools: updated gtk4builder.rng to current state
Sebastian Dröge [Tue, 8 Feb 2022 14:25:28 +0000 (16:25 +0200)]
Allow passing a `NULL` factory to `gtk_column_view_column_new()`
Bilal Elmoussaoui [Tue, 8 Feb 2022 12:38:33 +0000 (13:38 +0100)]
macos: Don't set NULL as a display name
Other GDK backends ensure there is always a default name set.
Fixes https://github.com/gtk-rs/gtk4-rs/issues/868
Sebastian Dröge [Tue, 8 Feb 2022 10:50:24 +0000 (12:50 +0200)]
Mark `path` out parameter of `gtk_icon_view_get_drag_dest_item()` as `(nullable)`
It can be set to `NULL` and the function body handles `NULL` explictly,
so annotate it accordingly.
Bilal Elmoussaoui [Tue, 8 Feb 2022 09:51:38 +0000 (10:51 +0100)]
entry completion: add checks that entry is set already
If any of the APIs that assumes that the entry is set already is used
before having one already set, things break pretty badly.
Fixes a downstream issue reported at https://github.com/gtk-rs/gtk4-rs/issues/873
Benjamin Otte [Tue, 8 Feb 2022 02:08:26 +0000 (02:08 +0000)]
Merge branch 'wip/otte/for-main' into 'main'
gltexture: Only use glGetFramebufferParameter() when available
Closes #4678
See merge request GNOME/gtk!4449
Benjamin Otte [Sun, 6 Feb 2022 19:01:49 +0000 (20:01 +0100)]
rgba: Fix GDK_RGBA() macro to work with alpha
Previously we dividied by an integer, so alpha was either 0.0 or 1.0.
Benjamin Otte [Tue, 8 Feb 2022 00:32:44 +0000 (01:32 +0100)]
gltexture: Only use glGetFramebufferParameter() when available
Fixes #4678
Matthias Clasen [Tue, 8 Feb 2022 00:15:45 +0000 (00:15 +0000)]
Merge branch 'wip/jimmac/selected_text' into 'main'
style: legible text selections
Closes #4664
See merge request GNOME/gtk!4433
Matthias Clasen [Mon, 7 Feb 2022 23:57:46 +0000 (23:57 +0000)]
Merge branch 'antoniof-main-patch-89408' into 'main'
columnviewcolumn: Define autocleanup function
See merge request GNOME/gtk!4440
Matthias Clasen [Mon, 7 Feb 2022 23:57:26 +0000 (23:57 +0000)]
Merge branch 'more-noexecstack' into 'main'
demos: Make our stack noexec
See merge request GNOME/gtk!4439
Matthias Clasen [Mon, 7 Feb 2022 23:56:40 +0000 (23:56 +0000)]
Merge branch 'wip/chergert/macos-fixes' into 'main'
various macOS fixes
See merge request GNOME/gtk!4424
Matthias Clasen [Mon, 7 Feb 2022 23:54:55 +0000 (23:54 +0000)]
Merge branch 'mg/gdk-macos-gdkdisplaylinksource' into 'main'
Include `gdk-private.h` to fix error about `g_source_set_static_name`
See merge request GNOME/gtk!4443
Matthias Clasen [Mon, 7 Feb 2022 23:53:36 +0000 (23:53 +0000)]
Merge branch 'mg/implicit-declaration-free' into 'main'
gdkjpeg: include `stdlib.h` necessary for `free`
See merge request GNOME/gtk!4445
Matej Urbančič [Mon, 7 Feb 2022 19:39:08 +0000 (19:39 +0000)]
Update Slovenian translation
Matej Urbančič [Mon, 7 Feb 2022 19:30:34 +0000 (19:30 +0000)]
Update Slovenian translation
Emmanuele Bassi [Mon, 7 Feb 2022 15:17:39 +0000 (15:17 +0000)]
Merge branch 'drop-target-get-formats-transfer-none' into 'main'
Mark `gtk_drop_target_get_formats()` return value as `transfer none`
See merge request GNOME/gtk!4446
Sebastian Dröge [Mon, 7 Feb 2022 14:23:01 +0000 (16:23 +0200)]
Mark `gtk_drop_target_get_formats()` return value as `transfer none`
It was wrongly inferred as `transfer full` by gobject-introspection.
Mosè Giordano [Sun, 6 Feb 2022 15:41:33 +0000 (15:41 +0000)]
gdkjpeg: include `stdlib.h` necessary for `free`
`free` is defined in `stdlib.h`, see for example
<https://pubs.opengroup.org/onlinepubs/
009604499/functions/free.html>. Without
this include compilation can fail with the following error:
```
../gdk/loaders/gdkjpeg.c: In function ‘gdk_save_jpeg’:
../gdk/loaders/gdkjpeg.c:264:7: warning: implicit declaration of function ‘free’ [-Wimplicit-function-declaration]
free (data);
^
../gdk/loaders/gdkjpeg.c:264:7: warning: incompatible implicit declaration of built-in function ‘free’
../gdk/loaders/gdkjpeg.c:264:7: note: include ‘<stdlib.h>’ or provide a declaration of ‘free’
../gdk/loaders/gdkjpeg.c:302:67: error: ‘free’ undeclared (first use in this function)
return g_bytes_new_with_free_func (data, size, (GDestroyNotify) free, NULL);
^
../gdk/loaders/gdkjpeg.c:302:67: note: each undeclared identifier is reported only once for each function it appears in
../gdk/loaders/gdkjpeg.c:303:1: warning: control reaches end of non-void function [-Wreturn-type]
}
^
```
Mosè Giordano [Sat, 5 Feb 2022 21:51:40 +0000 (21:51 +0000)]
Include `gdk-private.h` to fix error about `g_source_set_static_name`
Without this change we get the following error:
```
[1/13] Compiling C object gdk/macos/libgdk-macos.a.p/gdkdisplaylinksource.c.o
ninja: job failed: /opt/bin/aarch64-apple-darwin20-libgfortran5-cxx11/aarch64-apple-darwin20-clang -Igdk/macos/libgdk-macos.a.p -Igdk/macos -I../gdk/macos -I. -I.. -Igdk -I../gdk -Isubprojects/pango/pango -I../subprojects/pango/pango -Isubprojects/pango -I../subprojects/pango -I/workspace/destdir/include/gdk-pixbuf-2.0 -I/workspace/destdir/include -I/workspace/destdir/include/glib-2.0 -I/workspace/destdir/lib/glib-2.0/include -I/workspace/destdir/lib/libffi-3.2.1/include -I/workspace/destdir/include/libpng16 -I/usr/include/libmount -I/usr/include/blkid -I/workspace/destdir/include/cairo -I/workspace/destdir/include/pixman-1 -I/workspace/destdir/include/freetype2 -I/workspace/destdir/include/fribidi -I/workspace/destdir/include/harfbuzz -I/workspace/destdir/include/graphene-1.0 -I/workspace/destdir/lib/graphene-1.0/include -I/workspace/destdir/include/gio-unix-2.0 -fcolor-diagnostics -Wall -Winvalid-pch -std=gnu99 -O2 -g -DG_LOG_USE_STRUCTURED=1 -DGLIB_DISABLE_DEPRECATION_WARNINGS '-DGTK_VERSION="4.6.0"' -D_GNU_SOURCE -DG_ENABLE_DEBUG -DGTK_COMPILATION '-DG_LOG_DOMAIN="Gdk"' -xobjective-c -fno-strict-aliasing -Wno-c++11-extensions -Wno-missing-include-dirs -Wno-typedef-redefinition -Wformat=2 -Wformat-nonliteral -Wformat-security -Wignored-qualifiers -Wimplicit-function-declaration -Wmisleading-indentation -Wmissing-format-attribute -Wmissing-include-dirs -Wmissing-noreturn -Wnested-externs -Wold-style-definition -Wpointer-arith -Wshadow -Wstrict-prototypes -Wswitch-default -Wswitch-enum -Wundef -Wuninitialized -Wunused -Werror=address -Werror=array-bounds -Werror=empty-body -Werror=implicit -Werror=implicit-fallthrough -Werror=init-self -Werror=int-to-pointer-cast -Werror=main -Werror=missing-braces -Werror=missing-declarations -Werror=missing-prototypes -Werror=nonnull -Werror=pointer-to-int-cast -Werror=redundant-decls -Werror=return-type -Werror=sequence-point -Werror=trigraphs -Werror=vla -Werror=write-strings -Wnull-dereference -fvisibility=hidden -MD -MQ gdk/macos/libgdk-macos.a.p/gdkdisplaylinksource.c.o -MF gdk/macos/libgdk-macos.a.p/gdkdisplaylinksource.c.o.d -o gdk/macos/libgdk-macos.a.p/gdkdisplaylinksource.c.o -c ../gdk/macos/gdkdisplaylinksource.c
../gdk/macos/gdkdisplaylinksource.c:201:3: error: implicit declaration of function 'g_source_set_static_name' is invalid in C99 [-Werror,-Wimplicit-function-declaration]
g_source_set_static_name (source, "[gdk] quartz frame clock");
^
1 error generated.
ninja: subcommand failed
```
Christian Hergert [Sat, 5 Feb 2022 20:42:57 +0000 (12:42 -0800)]
macos: fallback to conversion on WCG colorspace
We don't want to risk having something really weird come out if we have a
WCG colorspace, so instead only do the performance hack on systems where
the output is likely reasonable.
We will want to eventually just be drawing in the appropriate colorspace,
but that is not available yet.
Asier Sarasua Garmendia [Sat, 5 Feb 2022 11:21:02 +0000 (11:21 +0000)]
Update Basque translation
Christian Hergert [Fri, 4 Feb 2022 20:29:57 +0000 (12:29 -0800)]
macos: handle sizing changes when switching monitors
This should make sure that our scales are updated as well as
ensuring we repaint the whole surface.
Benjamin Otte [Fri, 4 Feb 2022 18:07:28 +0000 (18:07 +0000)]
Merge branch 'wip/hadess/inspector-search-by-pointer-gtk4' into 'main'
inspector: Search by pointer address
See merge request GNOME/gtk!4442
Christian Hergert [Fri, 4 Feb 2022 17:46:10 +0000 (09:46 -0800)]
macos: assume monitor colorspace when drawing
When using software rendering w/ cairo, assume we're drawing in
the best-monitor's colorspace rather than RGB to avoid colorspace
conversions on every frame.
Christian Hergert [Fri, 4 Feb 2022 17:45:55 +0000 (09:45 -0800)]
macos: add API to get monitor colorspace
Bastien Nocera [Fri, 4 Feb 2022 17:39:56 +0000 (18:39 +0100)]
inspector: Search by pointer address
Useful to find a widget that corresponds to a pointer address in gdb.
Christian Hergert [Fri, 4 Feb 2022 17:31:37 +0000 (09:31 -0800)]
macos: precalculate clip regions as CGRect
We can make our drawRect do less work if we precalculate the clip
and damage regions upfront by intersecting them with the bounds.
António Fernandes [Fri, 4 Feb 2022 11:13:46 +0000 (11:13 +0000)]
columnviewcolumn: Define autocleanup function
Christian Hergert [Fri, 4 Feb 2022 03:21:59 +0000 (19:21 -0800)]
macos: fix unmaximize opacity around edges of window
Christian Hergert [Fri, 4 Feb 2022 02:31:09 +0000 (18:31 -0800)]
macos: use CGContext to draw cairo surfaces
Instead of relying on cairo_t to perform drawing from our backing
image surface to the Core Graphics context, we can convert the
cairo_image_surface_t into a CGImageRef without having to copy
data if we are certain of the alignment of the image up front.
Without this, there are many situations, based on the size of the
window that could cause cairo to take a slow path and malloc/copy
the data to ensure that alignment.
The previous commit titled "macos: align image surface rowstride to
16-bytes" ensures that this invariant is true so that our drawing
code can assume we can reference the framebuffer from the
cairo_image_surface_t using a CGDataProvider.
Since GdkMacosCairoContext and GdkMacosCairoSubview are coordinating,
we can also setup the transformation/scale early when drawing the
cairo_image_surface_t instead of when copying it to Core Graphics.
Furthermore, the CGImageRef is created with an RGB colorspace so
that we are not performing colorspace conversion to the output
device. We don't get color matching between displays, but we don't
expect that anyway, particularly with the software renderer.
Christian Hergert [Fri, 4 Feb 2022 02:21:43 +0000 (18:21 -0800)]
macos: align image surface rowstride to 16-bytes
When creating a cairo_image_surface_t we want both the framebuffer pointer
and each row to be aligned to 16-bytes so that Core Graphics will use more
optimal paths.
However, cairo_image_surface_create() will not guarantee that the rowstride
is aligned to 16-bytes so we must do that ourselves.
Christian Hergert [Thu, 3 Feb 2022 21:01:46 +0000 (13:01 -0800)]
macos: avoid unnecessarily destroying cairo_t
This avoids destroying a cairo_t when we are within the frame as it
otherwise causes the surface to unnecessarily flush.
Christian Hergert [Thu, 3 Feb 2022 21:28:56 +0000 (13:28 -0800)]
macos: cleanup window surface when destroying context
Make sure we release the cairo_surface_t for the window when
disposing the GdkMacosCairoContext.
Christian Hergert [Wed, 2 Feb 2022 00:06:08 +0000 (16:06 -0800)]
macos: be more careful about freezing/thawing surfaces
We need to avoid conflating the managing of frame callbacks from
the freeze/thaw mechanics and ensure we don't perform extra thaw
requests at the wrong time.
Christian Hergert [Mon, 31 Jan 2022 21:02:58 +0000 (13:02 -0800)]
macos: check for destroyed surfaces in vfuncs
Christian Hergert [Sun, 30 Jan 2022 01:07:02 +0000 (17:07 -0800)]
macos: be more defensive about freezing updates
We only need to freeze the updates if we weren't in the queue already.
That should be the case, but just better to be defensive here.
Christian Hergert [Sun, 30 Jan 2022 01:05:48 +0000 (17:05 -0800)]
macos: push to head of awaiting frames
Always add to the head of awaiting frames as the list is processed
in the opposite direction.
Christian Hergert [Sun, 30 Jan 2022 01:04:50 +0000 (17:04 -0800)]
macos: remove popup surface from parent
Christian Hergert [Sun, 30 Jan 2022 00:19:57 +0000 (16:19 -0800)]
macos: handle NULL frame-clock when thawing
Jan Alexander Steffens (heftig) [Thu, 3 Feb 2022 19:14:36 +0000 (19:14 +0000)]
demos: Make our stack noexec
This is similar to https://gitlab.gnome.org/GNOME/gtk/-/merge_requests/4330
and https://gitlab.gnome.org/GNOME/gtk/-/merge_requests/4334, which fixed
the main library but missed the demos.
Emmanuele Bassi [Wed, 2 Feb 2022 23:11:44 +0000 (23:11 +0000)]
Merge branch 'zbrown/its-a-filename' into 'main'
cssprovider: from_path takes a path
See merge request GNOME/gtk!4436
Zander Brown [Wed, 2 Feb 2022 22:47:39 +0000 (22:47 +0000)]
cssprovider: from_path takes a path
Annotate it as such so that bindings can expose that appropriately
Related: https://github.com/gtk-rs/gtk4-rs/issues/861
Emmanuele Bassi [Tue, 1 Feb 2022 20:34:41 +0000 (20:34 +0000)]
Merge branch 'fix-app-launch-context-docs' into 'main'
gdkapplaunchcontext: Fix docs a bit
See merge request GNOME/gtk!4434
Phaedrus Leeds [Tue, 1 Feb 2022 18:55:54 +0000 (10:55 -0800)]
gdkapplaunchcontext: Fix docs a bit
The set_screen() and set_display() methods no longer exist.
Jakub Steiner [Tue, 1 Feb 2022 16:12:52 +0000 (17:12 +0100)]
style: legible text selections
- follow adwaita styling
Fixes https://gitlab.gnome.org/GNOME/gtk/-/issues/4664
Luca Bacci [Tue, 1 Feb 2022 15:33:01 +0000 (15:33 +0000)]
Merge branch 'win32-keys-ignore-ctrl-gtk4' into 'main'
gdkkeys-win32: Ignore CTRL bit for key translation
Closes #4667
See merge request GNOME/gtk!4431
Emmanuele Bassi [Tue, 1 Feb 2022 14:31:47 +0000 (14:31 +0000)]
Merge branch '4602-fix-kerning-of-gl-rendered-glyphs' into 'main'
Fix kerning of GL rendered glyphs
Closes #4602
See merge request GNOME/gtk!4429
Philip Zander [Sat, 29 Jan 2022 21:36:40 +0000 (22:36 +0100)]
gdkkeys-win32: Ignore CTRL bit for key translation
Some keymaps on Windows contain bogus mappings for Ctrl+key for certain
keys, e.g. Ctrl+Backspace = Delete, or Ctrl+[ = 0x1B. These are never
used on Windows, so we should ignore them.
Fixes #4667
Marek Kasik [Mon, 31 Jan 2022 14:41:18 +0000 (15:41 +0100)]
Fix kerning of GL rendered glyphs
Multiple scaled shifts by 1024 too.
Fixes: #4602