Christian Hergert
853ef43dae
macos: fix keyboard input on popovers
...
GdkPopup can also become the "key" window (just not the "main" window).
2022-02-16 17:53:59 -08:00
Matthias Clasen
9c1a66518b
Merge branch 'wip/chergert/for-macos-1' into 'main'
...
macos: various correctness fixes
See merge request GNOME/gtk!4485
2022-02-16 13:54:43 +00:00
Matthias Clasen
280544b874
Merge branch 'wip/baedert/for-master' into 'main'
...
gtkgstpaintable: Handle a NULL value
See merge request GNOME/gtk!4484
2022-02-16 13:48:51 +00:00
Christian Hergert
3c9687fcf1
macos: add helper to check if surface is opaque
2022-02-16 03:08:55 -08:00
Christian Hergert
f207402228
macos: use input_region to specify tracking areas
...
We want our tracking area to be limited to the input region so that we
don't pass along events outside of them for the window. This improves the
chances we click-out of a popover with a large shadow.
This still doesn't let us pass-through clicks for large shadows on top-
level windows though.
2022-02-16 03:07:51 -08:00
Christian Hergert
a080f1197a
macos: ignore mouse events outside tracking area
...
We also need to ignore events outside the tracking areas when we are
translating them from NSevent into GdkEvent.
2022-02-16 03:06:51 -08:00
Christian Hergert
8f0b9bf5ae
macos: fix incorrect signal disconnect
2022-02-16 01:46:25 -08:00
Timm Bäder
b74d3c2221
gtkgstpaintable: Handle a NULL value
...
gst_element_factory_make can return NULL.
2022-02-16 10:02:24 +01:00
Benjamin Otte
49b0ee21c1
Merge branch 'wip/otte/for-main' into 'main'
...
glcontext: Remove leftover function call
Closes #4697
See merge request GNOME/gtk!4483
2022-02-16 03:07:05 +00:00
Benjamin Otte
481634930c
glcontext: Remove leftover function call
...
That call should have been removed way back when.
Add a testcase to make sure this keeps working.
Fixes #4697
2022-02-16 03:48:15 +01:00
Christian Hergert
d58c038fe8
macos: remove assertion from external API
...
We only should be asserting in static functions. Furthermore, this function
did not need to have GDK_BEGIN_MACOS_ALLOC_POOL as nothing is being
allocated there which would cause pooling to get used.
2022-02-15 12:38:07 -08:00
Christian Hergert
056e9012d2
macos: improve monitor detection at display coordinates
...
This needs to handle the boundary case where the value is exactly equal
to the edge of a rectangle (which gdk_rectangle_contains_point() does not
consider to be containing). However, if there is a monitor in the list
that is a better match, we still want to prefer it.
2022-02-15 12:38:07 -08:00
Benjamin Otte
82e4690564
Merge branch 'viewport-scroll-to-focus' into 'main'
...
scrolledwindow: Set scroll-to-focus on viewports
See merge request GNOME/gtk!4356
2022-02-15 16:05:32 +00:00
Maximiliano Sandoval R
8dc2c4b24a
viewport: Set scroll-to-focus to TRUE by default
...
In GTK 3 this was the default.
2022-02-15 16:29:08 +01:00
Christian Hergert
3e913ff16e
Merge branch 'mac-scrolling-fix' into 'main'
...
gdk: fix reversed and sluggish scrolling on MacOS
See merge request GNOME/gtk!4479
2022-02-14 23:00:27 +00:00
Andy Russell
37702af22b
gdk: fix reversed and sluggish scrolling on MacOS
...
When using an external mouse on MacOS, the scrolling behavior is
reversed from the user's scrolling preference. Additionally, it is
noticeably sluggish.
This commit fixes both issues by negating the deltas and multiplying
them by 32 before constructing a new scroll event. 32 seems to be the
"traditional" scaling factor according to [Druid], but I'm not sure
where that value actually comes from. Regardless, scaling the deltas by
this amount makes scrolling feel a lot more responsive in the GTK demos.
Scrolling with a trackpad is not affected by either issue because it
triggers a different code path that uses more precise deltas, and
already negates them.
[Druid]: https://linebender.gitbook.io/linebender-graphics-wiki/mouse-wheel#external-mouse-wheel-vs-trackpad
2022-02-14 14:05:39 -05:00
Benjamin Otte
12908ab863
docs: Add Since annotations to GDK_VERSION macros
2022-02-14 00:30:50 +01:00
Matej Urbančič
4cb599f378
Update Slovenian translation
2022-02-13 18:58:22 +00:00
Matej Urbančič
fe210fb0dd
Update Slovenian translation
2022-02-13 18:56:28 +00:00
Asier Sarasua Garmendia
1fee30af36
Update Basque translation
2022-02-13 09:22:58 +00:00
Marek Černocký
1fd03acf9d
Updated Czech translation
2022-02-12 19:48:40 +01:00
Benjamin Otte
a26c1a5f0d
widget-factory: Make <F11> toggle fullscreen
2022-02-12 19:05:19 +01:00
Jordi Mas i Hernandez
c400dce0b1
Update Catalan translation
2022-02-12 14:41:46 +00:00
Matthias Clasen
5912b2d64a
Merge branch 'wip/chergert/fix-text-overdraw' into 'main'
...
css: reduce overdraws from "textview > text"
See merge request GNOME/gtk!4472
2022-02-12 08:34:18 +00:00
Christian Hergert
e38e8ed73e
css: reduce overdraws from "textview > text"
...
This was causing us to draw the same background content twice which is a
significant amount of bits to flip in the GPU for maximized windows,
especially twice.
2022-02-11 23:06:16 -08:00
Matthias Clasen
5088103d31
4.6.1
2022-02-11 20:09:15 -05:00
Matthias Clasen
76b185e6f6
Merge branch 'wip/chergert/popover-opaque-region' into 'main'
...
add opaque regions to popovers
Closes #4689
See merge request GNOME/gtk!4468
2022-02-11 23:16:43 +00:00
Christian Hergert
f3999f7ebf
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
2022-02-11 14:37:46 -08:00
Christian Hergert
f8e7ecfde1
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
2022-02-11 14:37:46 -08:00
Christian Hergert
cc49e044a5
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
2022-02-11 14:37:43 -08:00
Matthias Clasen
9205193147
Merge branch 'bilelmoussaoui/entry-completion' into 'main'
...
entry completion: add checks that entry is set already
See merge request GNOME/gtk!4450
2022-02-11 17:49:26 +00:00
Matthias Clasen
124d689f45
Merge branch 'enum-docs' into 'main'
...
docs: Use links in enums
See merge request GNOME/gtk!4452
2022-02-11 17:35:42 +00:00
Matthias Clasen
d2a2591d28
Merge branch 'bilelmoussaoui/g-i' into 'main'
...
g-i: add a couple of missing nullable annotations
See merge request GNOME/gtk!4470
2022-02-11 17:33:05 +00:00
Carlos Garnacho
64a1a1dd6b
Merge branch 'primary' into 'main'
...
gdk: don't leak wayland primary selection offers
See merge request GNOME/gtk!4458
2022-02-11 14:29:19 +00:00
Bilal Elmoussaoui
3b383569a4
g-i: Add nullable annotations to EventControllerKey::im-context
...
Fixes https://github.com/gtk-rs/gtk4-rs/issues/874
2022-02-11 12:59:55 +01:00
Bilal Elmoussaoui
c2fe438676
g-i: Add nullable annotations to CellArea getters
...
Fixes https://github.com/gtk-rs/gtk4-rs/issues/891
2022-02-11 12:55:28 +01:00
Emmanuele Bassi
0ade146e26
Merge branch 'bilelmoussaoui/layout-manager' into 'main'
...
layout manager: add a check if the widget exists
See merge request GNOME/gtk!4469
2022-02-11 11:51:44 +00:00
Bilal Elmoussaoui
ba266325d0
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
2022-02-11 12:21:58 +01:00
Bilal Elmoussaoui
e6322e177e
g-i: Mark get_print_settings as nullable
...
Fixes https://github.com/gtk-rs/gtk4-rs/issues/880
2022-02-11 12:07:54 +01:00
Maximiliano Sandoval R
080a4cda49
docs: Use links in enums
...
Properties already refer to their object, so
[property@Widget:sensitive] property on [class@Widget]
is redundant.
2022-02-11 12:07:09 +01:00
Bilal Elmoussaoui
6b63868641
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
2022-02-11 12:05:42 +01:00
Bilal Elmoussaoui
cb710f1999
g-i: mark EventController::name as nullable
...
Fixes https://github.com/gtk-rs/gtk4-rs/issues/893
2022-02-11 12:02:07 +01:00
Bilal Elmoussaoui
85bb9aaefc
g-i: add nullable annotation to gtk_single_selection_get_model
2022-02-11 11:56:40 +01:00
Bilal Elmoussaoui
6c02017212
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
2022-02-11 11:44:16 +01:00
Matthias Clasen
90bccf4e82
Merge branch 'fix-wayland-subproject-build' into 'main'
...
NEWS: Updates
See merge request GNOME/gtk!4466
2022-02-10 21:57:27 +00:00
Matthias Clasen
18db7ad470
NEWS: Updates
2022-02-10 15:06:37 -05:00
Julian Orth
468ddd4d49
gdk: don't leak wayland primary selection offers
...
Signed-off-by: Julian Orth <ju.orth@gmail.com>
2022-02-10 20:44:32 +01:00
Matthias Clasen
ff4b5c8996
Merge branch 'fix-wayland-subproject-build' into 'main'
...
Fix build with wayland-protocols subproject
Closes #4530
See merge request GNOME/gtk!4465
2022-02-10 19:13:33 +00:00
Matthias Clasen
06aa640664
Fix build with wayland-protocols subproject
...
The missing files() was pointed out in #4530 .
Fixes : #4530
2022-02-10 13:21:28 -05:00
Matthias Clasen
9f24229f82
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
2022-02-10 11:42:38 +00:00