gtk issueshttps://gitlab.gnome.org/GNOME/gtk/-/issues2022-05-08T00:55:32Zhttps://gitlab.gnome.org/GNOME/gtk/-/issues/1968Gtk-3-24 Requires Harfbuzz on a Quartz-only build.2022-05-08T00:55:32ZJohn RallsGtk-3-24 Requires Harfbuzz on a Quartz-only build.And it shouldn't, the Quartz backend uses CoreText instead of Freetype & Harfbuzz.And it shouldn't, the Quartz backend uses CoreText instead of Freetype & Harfbuzz.https://gitlab.gnome.org/GNOME/gtk/-/issues/4873GTK3: Heap corruption leading to crash when creating compose cache for very l...2022-05-02T08:26:40ZCharlotte DelenkGTK3: Heap corruption leading to crash when creating compose cache for very large/unusual Compose file<!--
Please, read the CONTRIBUTING.md guide on how to file a new issue.
https://gitlab.gnome.org/GNOME/gtk/-/blob/main/CONTRIBUTING.md
-->
## Steps to reproduce
<!--
Please, explain the sequence of actions necessary to reproduce ...<!--
Please, read the CONTRIBUTING.md guide on how to file a new issue.
https://gitlab.gnome.org/GNOME/gtk/-/blob/main/CONTRIBUTING.md
-->
## Steps to reproduce
<!--
Please, explain the sequence of actions necessary to reproduce the
crash
-->
1. Set up ibus with compose functionality
2. clear the GTK3 compose cache (`rm -rf ~/.cache/gtk-3.0/compose`)
3. Download [This .XCompose file](https://raw.githubusercontent.com/DarkKirb/nixos-config/main/extra/.XCompose) and set XCOMPOSEFILE to its location
4. launch any GTK 3 application, such as the demos
The application is likely going to crash immediately or after you start entering text.
I can no longer reproduce the crash after I remove the .XCompose file or comment out the following line in gtk/gtkcomposetable.c:
```c
gtk_compose_table_save_cache (compose_table);
```
<!--
You should try and reproduce with the demos applications available
under the `demos` directory, or the test programs in the `tests` directory.
Alternatively, please attach a *small and self-contained* example that
exhibits the issue.
-->
## Version information
- GTK 3.24.33 (other versions are affected too)
- NixOS 22.05, also happens when manually building gtk (with the same configure flags)
<!--
- Which version of GTK you are using
- What operating system and version
- for Linux, which distribution
- If you built GTK yourself, the list of options used to configure the build
-->
## Error messages
While aborting, glibc will output a message like “double free or corruption (!prev)” or “malloc(): unaligned tcache chunk detected”
## Backtrace
```
(gdb) bt full
#0 0x00007ffff686dadf in __pthread_kill_implementation () from /nix/store/ayrsyv7npr0lcbann4k9lxr19x813f0z-glibc-2.34-115/lib/libc.so.6
No symbol table info available.
#1 0x00007ffff6823062 in raise () from /nix/store/ayrsyv7npr0lcbann4k9lxr19x813f0z-glibc-2.34-115/lib/libc.so.6
No symbol table info available.
#2 0x00007ffff680e45c in abort () from /nix/store/ayrsyv7npr0lcbann4k9lxr19x813f0z-glibc-2.34-115/lib/libc.so.6
No symbol table info available.
#3 0x00007ffff6862418 in __libc_message () from /nix/store/ayrsyv7npr0lcbann4k9lxr19x813f0z-glibc-2.34-115/lib/libc.so.6
No symbol table info available.
#4 0x00007ffff68770ca in malloc_printerr () from /nix/store/ayrsyv7npr0lcbann4k9lxr19x813f0z-glibc-2.34-115/lib/libc.so.6
No symbol table info available.
#5 0x00007ffff6878cec in _int_free () from /nix/store/ayrsyv7npr0lcbann4k9lxr19x813f0z-glibc-2.34-115/lib/libc.so.6
No symbol table info available.
#6 0x00007ffff687b2c1 in free () from /nix/store/ayrsyv7npr0lcbann4k9lxr19x813f0z-glibc-2.34-115/lib/libc.so.6
No symbol table info available.
#7 0x00007ffff7906b68 in gtk_compose_table_save_cache (compose_table=0x7fffd0001710) at gtkcomposetable.c:706
contents = <optimized out>
length = <optimized out>
path = 0x7fffd156fb20 "/home/darkkirb/.cache/gtk-3.0/compose/7f6d2bc1.cache"
error = 0x0
path = <optimized out>
contents = <optimized out>
error = <optimized out>
length = <optimized out>
__func__ = "gtk_compose_table_save_cache"
out_save_cache = <optimized out>
#8 gtk_compose_table_list_add_file (compose_tables=0x8fdc60, compose_file=<optimized out>) at gtkcomposetable.c:877
hash = <optimized out>
compose_table = 0x7fffd0001710
__func__ = "gtk_compose_table_list_add_file"
#9 0x00007ffff79bfd85 in gtk_im_context_simple_init_compose_table () at gtkimcontextsimple.c:191
locale = <optimized out>
langs = 0x0
lang = 0x0
sys_langs = {0x7ffff7bce198 "el_gr", 0x7ffff7bce19e "fi_fi", 0x7ffff7bce1a4 "pt_br", 0x0}
sys_lang = 0x0
x11_compose_file_dir = <optimized out>
path = 0x7fffd00011a0 "/home/darkkirb/.XCompose"
home = <optimized out>
path = <optimized out>
home = <optimized out>
locale = <optimized out>
langs = <optimized out>
lang = <optimized out>
sys_langs = <optimized out>
sys_lang = <optimized out>
x11_compose_file_dir = <optimized out>
_pp = <optimized out>
_ptr = <optimized out>
_pp = <optimized out>
_ptr = <optimized out>
_pp = <optimized out>
_ptr = <optimized out>
_pp = <optimized out>
_ptr = <optimized out>
#10 init_compose_table_thread_cb (task=<optimized out>, source_object=<optimized out>, task_data=<optimized out>, cancellable=<optimized out>) at gtkimcontextsimple.c:255
before = <optimized out>
#11 0x00007ffff73291d4 in g_task_thread_pool_thread () from /nix/store/abwcp8fsvrign29hrqrha5psz8kkc4rx-glib-2.72.0/lib/libgio-2.0.so.0
No symbol table info available.
#12 0x00007ffff715dea4 in g_thread_pool_thread_proxy () from /nix/store/abwcp8fsvrign29hrqrha5psz8kkc4rx-glib-2.72.0/lib/libglib-2.0.so.0
No symbol table info available.
#13 0x00007ffff715d5ad in g_thread_proxy () from /nix/store/abwcp8fsvrign29hrqrha5psz8kkc4rx-glib-2.72.0/lib/libglib-2.0.so.0
No symbol table info available.
#14 0x00007ffff686beb2 in start_thread () from /nix/store/ayrsyv7npr0lcbann4k9lxr19x813f0z-glibc-2.34-115/lib/libc.so.6
No symbol table info available.
#15 0x00007ffff68ee31c in clone3 () from /nix/store/ayrsyv7npr0lcbann4k9lxr19x813f0z-glibc-2.34-115/lib/libc.so.6
No symbol table info available.
```https://gitlab.gnome.org/GNOME/gtk/-/issues/4866GtkPlug: Scroll event deltas are lost2022-04-27T09:42:49ZGaël BonithonGtkPlug: Scroll event deltas are lostGTK 3.24.33 on Arch Linux
When a GtkPlug and a GtkSocket are used in two separate processes, a scroll event on the widget contained in the GtkPlug has its `delta_x` and `delta_y` members always set to 0.
However, if the mouse wheel is ...GTK 3.24.33 on Arch Linux
When a GtkPlug and a GtkSocket are used in two separate processes, a scroll event on the widget contained in the GtkPlug has its `delta_x` and `delta_y` members always set to 0.
However, if the mouse wheel is pressed before scrolling, then the `delta_x` and `delta_y` members are correctly set to +/- 1.
Downstream report: https://gitlab.xfce.org/xfce/xfce4-panel/-/issues/411https://gitlab.gnome.org/GNOME/gtk/-/issues/4703Unable to produce ć in gtk3 applications2022-03-25T16:47:01ZChristoph BinnerUnable to produce ć in gtk3 applicationsIn gtk3 applications dead acute + c produces ç instead of ć. Other toolkits seem ok (QT, GTK4, even xterm).
Other letters with acute work fine: áéíóúýńśźç
The same problem applies to `<Compose>'c`.
Old bugs reports seem to suggest thi...In gtk3 applications dead acute + c produces ç instead of ć. Other toolkits seem ok (QT, GTK4, even xterm).
Other letters with acute work fine: áéíóúýńśźç
The same problem applies to `<Compose>'c`.
Old bugs reports seem to suggest this might be a hack to help Portuguese users but surely this shouldn’t affect other keyboard layouts:
`$ localectl
System Locale: LANG=de_DE.UTF-8
VC Keymap: neo
X11 Layout: de
X11 Model: pc105
X11 Variant: neo`https://gitlab.gnome.org/GNOME/gtk/-/issues/3720gtk_widget_destroy on GtkSwitch inside a window segfaults2022-03-24T10:32:41ZViktor Fukalagtk_widget_destroy on GtkSwitch inside a window segfaultsoriginal report: https://gitlab.gnome.org/GNOME/gtkmm/-/issues/82
## Steps to reproduce
Destruction of a `GtkSwitch` which is still a child of a window leads to a crash. See [crashing_switch.c](/uploads/90eb233a44a534dd2d61ac25b6228e69/...original report: https://gitlab.gnome.org/GNOME/gtkmm/-/issues/82
## Steps to reproduce
Destruction of a `GtkSwitch` which is still a child of a window leads to a crash. See [crashing_switch.c](/uploads/90eb233a44a534dd2d61ac25b6228e69/crashing_switch.c). There, a `GtkSwitch` is added to a window and after a 5-second timeout, the `GtkSwitch` is destroyed.
Compile command for the example:
`` gcc `pkg-config --cflags gtk+-3.0` -ggdb3 -Og crashing_switch.c -o prg `pkg-config gtk+-3.0 --libs` ``
## Version information
* GTK: v. 3.24.26
* OS: Ubuntu 20.10_x86-64
* GTK and its dependencies build with `-Wall -ggdb3 -O0`
## Warnings
I'm getting
```
Gtk-Message: 10:35:27.033: Failed to load module "canberra-gtk-module"
Gtk-Message: 10:35:27.034: Failed to load module "canberra-gtk-module"
```
, but I doubt that's relevant.
## Backtrace
```
(gdb) bt
#0 0x00007ffff77de6fe in gtk_css_gadget_set_state (gadget=0x0, state=GTK_STATE_FLAG_DIR_LTR) at ../../../../jhbuild/checkout/gtk+-3/gtk/gtkcssgadget.c:413
#1 0x00007ffff7a15b99 in gtk_switch_state_flags_changed (widget=0x5555556bb210, previous_state_flags=(GTK_STATE_FLAG_BACKDROP | GTK_STATE_FLAG_DIR_LTR))
at ../../../../jhbuild/checkout/gtk+-3/gtk/gtkswitch.c:633
#2 0x00007ffff73e40c9 in g_cclosure_marshal_VOID__FLAGSv (closure=0x5555555baf60, return_value=0x0, instance=0x5555556bb210, args=0x7fffffffcad0, marshal_data=0x7ffff7a15b43 <gtk_switch_state_flags_changed>,
n_params=1, param_types=0x5555555baf90) at ../../../../jhbuild/checkout/glib/gobject/gmarshal.c:1136
#3 0x00007ffff73dfc6e in g_type_class_meta_marshalv (closure=0x5555555baf60, return_value=0x0, instance=0x5555556bb210, args=0x7fffffffcad0, marshal_data=0xe8, n_params=1, param_types=0x5555555baf90)
at ../../../../jhbuild/checkout/glib/gobject/gclosure.c:1034
#4 0x00007ffff73df7b7 in _g_closure_invoke_va (closure=0x5555555baf60, return_value=0x0, instance=0x5555556bb210, args=0x7fffffffcad0, n_params=1, param_types=0x5555555baf90)
at ../../../../jhbuild/checkout/glib/gobject/gclosure.c:873
#5 0x00007ffff73fd945 in g_signal_emit_valist (instance=0x5555556bb210, signal_id=66, detail=0, var_args=0x7fffffffcad0) at ../../../../jhbuild/checkout/glib/gobject/gsignal.c:3406
#6 0x00007ffff73fec3e in g_signal_emit (instance=0x5555556bb210, signal_id=66, detail=0) at ../../../../jhbuild/checkout/glib/gobject/gsignal.c:3553
#7 0x00007ffff7b05d2e in gtk_widget_propagate_state (widget=0x5555556bb210, data=0x7fffffffcc6c) at ../../../../jhbuild/checkout/gtk+-3/gtk/gtkwidget.c:12932
#8 0x00007ffff7afe0da in gtk_widget_update_state_flags (widget=0x5555556bb210, flags_to_set=GTK_STATE_FLAG_NORMAL, flags_to_unset=GTK_STATE_FLAG_BACKDROP)
at ../../../../jhbuild/checkout/gtk+-3/gtk/gtkwidget.c:8872
#9 0x00007ffff7afe320 in gtk_widget_unset_state_flags (widget=0x5555556bb210, flags=GTK_STATE_FLAG_BACKDROP) at ../../../../jhbuild/checkout/gtk+-3/gtk/gtkwidget.c:8941
#10 0x00007ffff7af5656 in gtk_widget_unparent (widget=0x5555556bb210) at ../../../../jhbuild/checkout/gtk+-3/gtk/gtkwidget.c:4703
#11 0x00007ffff775586c in gtk_bin_remove (container=0x55555580a2c0, child=0x5555556bb210) at ../../../../jhbuild/checkout/gtk+-3/gtk/gtkbin.c:151
#12 0x00007ffff7b24345 in gtk_window_remove (container=0x55555580a2c0, widget=0x5555556bb210) at ../../../../jhbuild/checkout/gtk+-3/gtk/gtkwindow.c:8557
#13 0x00007ffff73e4fbf in g_cclosure_marshal_VOID__OBJECTv (closure=0x5555555fd510, return_value=0x0, instance=0x55555580a2c0, args=0x7fffffffd1d0, marshal_data=0x7ffff7b24295 <gtk_window_remove>, n_params=1,
param_types=0x5555555fd540) at ../../../../jhbuild/checkout/glib/gobject/gmarshal.c:1910
#14 0x00007ffff73dfc6e in g_type_class_meta_marshalv (closure=0x5555555fd510, return_value=0x0, instance=0x55555580a2c0, args=0x7fffffffd1d0, marshal_data=0x340, n_params=1, param_types=0x5555555fd540)
at ../../../../jhbuild/checkout/glib/gobject/gclosure.c:1034
#15 0x00007ffff73df7b7 in _g_closure_invoke_va (closure=0x5555555fd510, return_value=0x0, instance=0x55555580a2c0, args=0x7fffffffd1d0, n_params=1, param_types=0x5555555fd540)
at ../../../../jhbuild/checkout/glib/gobject/gclosure.c:873
#16 0x00007ffff73fd945 in g_signal_emit_valist (instance=0x55555580a2c0, signal_id=130, detail=0, var_args=0x7fffffffd1d0) at ../../../../jhbuild/checkout/glib/gobject/gsignal.c:3406
#17 0x00007ffff73fec3e in g_signal_emit (instance=0x55555580a2c0, signal_id=130, detail=0) at ../../../../jhbuild/checkout/glib/gobject/gsignal.c:3553
#18 0x00007ffff77cd84b in gtk_container_remove (container=0x55555580a2c0, widget=0x5555556bb210) at ../../../../jhbuild/checkout/gtk+-3/gtk/gtkcontainer.c:1906
#19 0x00007ffff7b04495 in gtk_widget_dispose (object=0x5555556bb210) at ../../../../jhbuild/checkout/gtk+-3/gtk/gtkwidget.c:12151
#20 0x00007ffff7a164b5 in gtk_switch_dispose (object=0x5555556bb210) at ../../../../jhbuild/checkout/gtk+-3/gtk/gtkswitch.c:823
#21 0x00007ffff73e7917 in g_object_run_dispose (object=0x5555556bb210) at ../../../../jhbuild/checkout/glib/gobject/gobject.c:1226
#22 0x00007ffff7af5859 in gtk_widget_destroy (widget=0x5555556bb210) at ../../../../jhbuild/checkout/gtk+-3/gtk/gtkwidget.c:4776
#23 0x0000555555555309 in destroy_the_switch (data=<optimized out>) at crashing_switch.c:26
#24 0x00007ffff72d4591 in g_timeout_dispatch (source=0x555555573c50, callback=0x5555555552e9 <destroy_the_switch>, user_data=0x0) at ../../../../jhbuild/checkout/glib/glib/gmain.c:4889
#25 0x00007ffff72d227a in g_main_dispatch (context=0x555555573cc0) at ../../../../jhbuild/checkout/glib/glib/gmain.c:3337
#26 0x00007ffff72d3291 in g_main_context_dispatch (context=0x555555573cc0) at ../../../../jhbuild/checkout/glib/glib/gmain.c:4055
#27 0x00007ffff72d3490 in g_main_context_iterate (context=0x555555573cc0, block=1, dispatch=1, self=0x555555568a90) at ../../../../jhbuild/checkout/glib/glib/gmain.c:4131
#28 0x00007ffff72d3570 in g_main_context_iteration (context=0x555555573cc0, may_block=1) at ../../../../jhbuild/checkout/glib/glib/gmain.c:4196
#29 0x00007ffff754d5da in g_application_run (application=0x5555555720f0, argc=1, argv=0x7fffffffd768) at ../../../../jhbuild/checkout/glib/gio/gapplication.c:2560
#30 0x00005555555553db in main (argc=1, argv=0x7fffffffd768) at crashing_switch.c:38
```
[bt_full](/uploads/3d6cbdf0605a441669fd1e3881e9613e/bt_full) for `(gdb) bt full`
If at the time of the `GtkSwitch`'s destruction, it had focus, one can get a slightly different btrace: [unfocus_bt_full](/uploads/f7ec048376df74bcd36bb1b63c716619/unfocus_bt_full).
## Possible explanation
As a part of the `GtkSwitch`'s destruction, `gtk_switch_dispose` clears the `GtkSwitch`'s `CssGadget`s. Lines 815 -- 818 of `gtkswitch.c`:
```
g_clear_object (&priv->gadget);
g_clear_object (&priv->slider_gadget);
g_clear_object (&priv->on_gadget);
g_clear_object (&priv->off_gadget);
```
Then, `gtk_widget_dispose` removes the `GtkSwitch` from its parent container (the window) and that triggers changes in the `GtkSwitch`'s state flags, which get propagated to the `GtkSwitch`'s `CssGadget`s. But the gadgets are already `NULL`; hence, the crash.
The only other widget I could find that clears its `CssGadget`s in `gtk_WIDGET_NAME_dispose` was `GtkMenuItem` and I didn't manage to destroy that one such that it would crash. My point: I don't see why `gtk_switch_dispose` clears the `CssGadget`s when most other widgets don't do that.https://gitlab.gnome.org/GNOME/gtk/-/issues/1986gdk_window_move_to_rect() does not reposition already shown window2022-03-18T10:12:48ZMartin Stranskygdk_window_move_to_rect() does not reposition already shown windowWhen a GdkWindow is already positioned by gdk_window_move_to_rect() and shown, all subsequent gdk_window_move_to_rect() calls to this window does not have any effect. It's because xdg_positioner is created/updated only from gdk_wayland_w...When a GdkWindow is already positioned by gdk_window_move_to_rect() and shown, all subsequent gdk_window_move_to_rect() calls to this window does not have any effect. It's because xdg_positioner is created/updated only from gdk_wayland_window_create_xdg_popup() which is called in map() only.
A workaround is to encapsule gdk_window_move_to_rect() by gtk_window_hide()/gtk_window_show().
It's firefox bug https://bugzilla.mozilla.org/show_bug.cgi?id=1562141https://gitlab.gnome.org/GNOME/gtk/-/issues/4458Flatpak installation hijacks hicolor icon theme icons2022-03-17T14:51:22ZMilan CrhaFlatpak installation hijacks hicolor icon theme iconsWhile investigating https://gitlab.gnome.org/GNOME/evolution/-/issues/1698 I realized, if I'm not mistaken, that all icons in `/usr/share/icons/hicolor` are ignored, when there is installed flatpak. At least according to my testing, when...While investigating https://gitlab.gnome.org/GNOME/evolution/-/issues/1698 I realized, if I'm not mistaken, that all icons in `/usr/share/icons/hicolor` are ignored, when there is installed flatpak. At least according to my testing, when the fallback icon theme named `hicolor` is loaded, it knows of these paths here:
```
insert_theme: 0xce51c0: path[0]: '/home/mcrha/.local/share/icons/hicolor'
insert_theme: 0xce51c0: path[1]: '/home/mcrha/.icons/hicolor'
insert_theme: 0xce51c0: path[2]: '/build/local/share/icons/hicolor'
insert_theme: 0xce51c0: path[3]: '/home/mcrha/.local/share/flatpak/exports/share/icons/hicolor'
insert_theme: 0xce51c0: path[4]: '/var/lib/flatpak/exports/share/icons/hicolor'
insert_theme: 0xce51c0: path[5]: '/usr/local/share/icons/hicolor'
insert_theme: 0xce51c0: path[6]: '/usr/share/icons/hicolor'
insert_theme: 0xce51c0: path[7]: '/build/local/share/pixmaps/hicolor'
insert_theme: 0xce51c0: path[8]: '/home/mcrha/.local/share/flatpak/exports/share/pixmaps/hicolor'
insert_theme: 0xce51c0: path[9]: '/var/lib/flatpak/exports/share/pixmaps/hicolor'
insert_theme: 0xce51c0: path[10]: '/usr/local/share/pixmaps/hicolor'
insert_theme: 0xce51c0: path[11]: '/usr/share/pixmaps/hicolor'
```
then there is checked, which directory contains an `index.theme` file and the first in the list wins, thus for me:
```
insert_theme: 0xce51c0: path[0]: no such file '/home/mcrha/.local/share/icons/hicolor/index.theme'
insert_theme: 0xce51c0: path[1]: no such file '/home/mcrha/.icons/hicolor/index.theme'
insert_theme: 0xce51c0: path[2]: no such file '/build/local/share/icons/hicolor/index.theme'
insert_theme: 0xce51c0: path[3]: has file '/home/mcrha/.local/share/flatpak/exports/share/icons/hicolor/index.theme'
```
and no other directory is considered. This can be fine for the real themes, but the fallback theme should load all icons from all directories, not only from the first, which is in whatever order.
I also need to load icons from an application private directory (see https://gitlab.gnome.org/GNOME/evolution/-/issues/1698 for more information), but only as the last fallback of the fallback, aka when nothing else provides the icons.https://gitlab.gnome.org/GNOME/gtk/-/issues/1402"Print Screen" throws warning in GDK/Win32 (GetClipboardOwner failed with cod...2022-03-16T02:20:33ZPatrick Storz"Print Screen" throws warning in GDK/Win32 (GetClipboardOwner failed with code 203) - even if window not active!When using the "Print Screen" key to create a shortcut gtk3 applications throw the following error (here with gtk3 3.24.1-1 from MSYS2 project):
```
(gtk3-demo.exe:10932): Gdk-WARNING **: 23:20:34.982: gdkdisplay-win32.c:569: GetClipboar...When using the "Print Screen" key to create a shortcut gtk3 applications throw the following error (here with gtk3 3.24.1-1 from MSYS2 project):
```
(gtk3-demo.exe:10932): Gdk-WARNING **: 23:20:34.982: gdkdisplay-win32.c:569: GetClipboardOwner failed with code 203: The system could not find the environment option that was entered.
```
Fortunately the screenshot still seems to be copied to clipboard properly.
However there's also some unsettling behavior:
The warning is also produced if the gtk3 application window is not even focused but only open in background. I assume the application should not even receive, let alone handle messages in this scenario?Luca Bacciluca.bacci@outlook.comLuca Bacciluca.bacci@outlook.comhttps://gitlab.gnome.org/GNOME/gtk/-/issues/1996Context menu for a folder has empty space at the bottom with gtk 3.242022-03-14T21:59:19ZTaegil BaeContext menu for a folder has empty space at the bottom with gtk 3.24# Steps to reproduce
<!--
Explain in detail the steps on how the issue can be reproduced.
-->
1. upgrade to gtk 3.24.7
2. open nautilus
3. select a folder and right-click on it
Reproducible in:
<!--
Please test if the issue was ...# Steps to reproduce
<!--
Explain in detail the steps on how the issue can be reproduced.
-->
1. upgrade to gtk 3.24.7
2. open nautilus
3. select a folder and right-click on it
Reproducible in:
<!--
Please test if the issue was already fixed in the unstable version of the app.
For that, follow these steps:
1. Make sure Flatpak is installed or install it following these steps https://flatpak.org/setup
2. Install the unstable version of the app following this link
https://gitlab.gnome.org/GNOME/gnome-apps-nightly/raw/master/NautilusMaster.flatpakref and save
it as a ".flatpakref" file
If these steps failed, write in 'Other' the distribution you’re using and
the version of the app.
-->
- Flatpak unstable: (yes or no) <!-- Write "yes" or "no" after the semicolon. -->
- Other: Arch Linux, Nautilus 3.32.0, GTK 3.24.7
# Current behavior
<!-- Describe the current behavior. -->
The context menu has an empty space at the bottom.
![screenshot_nautilus_gtk3.24.7](/uploads/bbfa15cd98d4ade432e97dcb6c44b0fe/screenshot_nautilus_gtk3.24.7.png)
# Expected behavior
<!-- Describe the expected behavior. -->
The context menu should not have an empty space.
# Additional information
<!--
Provide more information that could be relevant.
If the issue is a crash, provide a stack trace following the steps in:
https://wiki.gnome.org/Community/GettingInTouch/Bugzilla/GettingTraces
-->
If you copy items, this issue will disappear. I can't see this issue with GTK 3.24.5.
<!-- Ignore the text under this line. -->https://gitlab.gnome.org/GNOME/gtk/-/issues/3558Stylus Mapping bug with multi-monitor & multi-DPI setups2022-03-11T19:25:00Zkleines filmröllchenStylus Mapping bug with multi-monitor & multi-DPI setupsThis issue was previously discussed on the [issue tracker of Xournal++.](https://github.com/xournalpp/xournalpp/issues/2436)
## Steps to reproduce
1. Have more than one monitor active, with at least one (and not all) monitor on a high...This issue was previously discussed on the [issue tracker of Xournal++.](https://github.com/xournalpp/xournalpp/issues/2436)
## Steps to reproduce
1. Have more than one monitor active, with at least one (and not all) monitor on a high-DPI setting (Windows settings -> System -> Display -> Scaling percentage for the monitor > 100%) and the others at 100% DPI. The exact combinations that make this fail are not exactly known, but I have tried multiple, including having the stylus drawing monitor scaled and unscaled, as well as scaling other monitors.
2. Use any application that provides instant visual feedback for stylus input. I tested both Xournal++ and Inkscape.
3. Observe the stylus location as observed by the program versus the operating system (mouse pointer and touch animations).
## Current behavior
The stylus press is mapped to an offset wrong location; judging by how the offset changes over the drawing surface, it seems like GTK assumes the stylus screen space to be larger or smaller than it actually is. The exact offsets and behaviors vary with monitor scaling, order, and resolution. The only possible workaround was found by @allenzhao on the Xournal++ issue tracker (see above) and simply involves setting all screens to 100% DPI (unscaled).
## Expected outcome
The stylus press should map to the position that the operating system detects it at, i.e. at the physical location of the stylus where the mouse pointer is drawn.
## Version information
- GTK 3.24.23 for Xournal++ 1.0.19, Inkscape 1.0.1 (unknown GTK version)
- OS: Windows 10 version 1909 (it is not known whether this issue occurs on other OSes but it seems likely)
## Additional information
The exact monitors in my setup is one 768x1024 on 100% DPI, one 3840x2160 (4K) on 150% DPI, and the tablet screen 1920x1080 (HD) on 100% DPI. I use an XP-Pen Artist 12 drawing tablet that cooperates nicely with all non-GTK applications.
This issue also happened with Blackmagic Design's DaVinci Resolve 16 and 17 beta, which I don't think use GTK (only QT 5, couldn't find any DLLs that are named GTK).
I had several instances for Xournal++ where the bug suddenly went away with active scaling differences, then reappeared on changing scaling once again, or logging out and back in again, or restarting.https://gitlab.gnome.org/GNOME/gtk/-/issues/4726Gtk 3.24: MacOS uninitialized variable causes exception2022-03-05T14:22:29ZLukas OberhuberGtk 3.24: MacOS uninitialized variable causes exceptionUninitialized variable in `gdkmonitor-quartz.c` causes Segfault. This arose while the mac was sleeping.
```
objc_msgSend_stret (@objc_msgSend_stret:13)
gdk_quartz_monitor_get_workarea (/Users/user/gtk/source/gtk+-3.24.31/gdk/quartz/gdkm...Uninitialized variable in `gdkmonitor-quartz.c` causes Segfault. This arose while the mac was sleeping.
```
objc_msgSend_stret (@objc_msgSend_stret:13)
gdk_quartz_monitor_get_workarea (/Users/user/gtk/source/gtk+-3.24.31/gdk/quartz/gdkmonitor-quartz.c:53)
gdk_monitor_get_workarea (/Users/user/gtk/source/gtk+-3.24.31/gdk/gdkmonitor.c:318)
gimp_tool_palette_get_n_tools (/Users/user/gtk/source/gimp/app/widgets/gimptoolpalette.c:193)
gimp_tool_palette_get_preferred_width (/Users/user/gtk/source/gimp/app/widgets/gimptoolpalette.c:214)
gtk_widget_query_size_for_orientation (/Users/user/gtk/source/gtk+-3.24.31/gtk/gtksizerequest.c:181)
gtk_widget_compute_size_for_orientation (/Users/user/gtk/source/gtk+-3.24.31/gtk/gtksizerequest.c:399)
gtk_widget_get_preferred_width (/Users/user/gtk/source/gtk+-3.24.31/gtk/gtksizerequest.c:492)
gtk_box_get_size (/Users/user/gtk/source/gtk+-3.24.31/gtk/gtkbox.c:1611)
gtk_box_get_content_size (/Users/user/gtk/source/gtk+-3.24.31/gtk/gtkbox.c:2071)
gtk_css_custom_gadget_get_preferred_size (/Users/user/gtk/source/gtk+-3.24.31/gtk/gtkcsscustomgadget.c:124)
gtk_css_gadget_get_preferred_size (/Users/user/gtk/source/gtk+-3.24.31/gtk/gtkcssgadget.c:683)
gtk_box_get_preferred_width (/Users/user/gtk/source/gtk+-3.24.31/gtk/gtkbox.c:1725)
gtk_widget_query_size_for_orientation (/Users/user/gtk/source/gtk+-3.24.31/gtk/gtksizerequest.c:181)
gtk_widget_compute_size_for_orientation (/Users/user/gtk/source/gtk+-3.24.31/gtk/gtksizerequest.c:399)
gtk_widget_get_preferred_width (/Users/user/gtk/source/gtk+-3.24.31/gtk/gtksizerequest.c:492)
gtk_box_get_size (/Users/user/gtk/source/gtk+-3.24.31/gtk/gtkbox.c:1611)
gtk_box_get_content_size (/Users/user/gtk/source/gtk+-3.24.31/gtk/gtkbox.c:2071)
gtk_css_custom_gadget_get_preferred_size (/Users/user/gtk/source/gtk+-3.24.31/gtk/gtkcsscustomgadget.c:124)
gtk_css_gadget_get_preferred_size (/Users/user/gtk/source/gtk+-3.24.31/gtk/gtkcssgadget.c:683)
gtk_box_get_preferred_width (/Users/user/gtk/source/gtk+-3.24.31/gtk/gtkbox.c:1725)
gtk_widget_query_size_for_orientation (/Users/user/gtk/source/gtk+-3.24.31/gtk/gtksizerequest.c:181)
gtk_widget_compute_size_for_orientation (/Users/user/gtk/source/gtk+-3.24.31/gtk/gtksizerequest.c:399)
gtk_widget_get_preferred_width (/Users/user/gtk/source/gtk+-3.24.31/gtk/gtksizerequest.c:492)
gtk_box_get_size (/Users/user/gtk/source/gtk+-3.24.31/gtk/gtkbox.c:1611)
gtk_box_get_content_size (/Users/user/gtk/source/gtk+-3.24.31/gtk/gtkbox.c:2071)
gtk_css_custom_gadget_get_preferred_size (/Users/user/gtk/source/gtk+-3.24.31/gtk/gtkcsscustomgadget.c:124)
gtk_css_gadget_get_preferred_size (/Users/user/gtk/source/gtk+-3.24.31/gtk/gtkcssgadget.c:683)
gtk_box_get_preferred_width (/Users/user/gtk/source/gtk+-3.24.31/gtk/gtkbox.c:1725)
gtk_widget_query_size_for_orientation (/Users/user/gtk/source/gtk+-3.24.31/gtk/gtksizerequest.c:181)
gtk_widget_compute_size_for_orientation (/Users/user/gtk/source/gtk+-3.24.31/gtk/gtksizerequest.c:399)
gtk_widget_get_preferred_width (/Users/user/gtk/source/gtk+-3.24.31/gtk/gtksizerequest.c:492)
gtk_box_get_size (/Users/user/gtk/source/gtk+-3.24.31/gtk/gtkbox.c:1611)
gtk_box_get_content_size (/Users/user/gtk/source/gtk+-3.24.31/gtk/gtkbox.c:2071)
gtk_css_custom_gadget_get_preferred_size (/Users/user/gtk/source/gtk+-3.24.31/gtk/gtkcsscustomgadget.c:124)
gtk_css_gadget_get_preferred_size (/Users/user/gtk/source/gtk+-3.24.31/gtk/gtkcssgadget.c:683)
gtk_box_get_preferred_width (/Users/user/gtk/source/gtk+-3.24.31/gtk/gtkbox.c:1725)
gtk_widget_query_size_for_orientation (/Users/user/gtk/source/gtk+-3.24.31/gtk/gtksizerequest.c:181)
gtk_widget_compute_size_for_orientation (/Users/user/gtk/source/gtk+-3.24.31/gtk/gtksizerequest.c:399)
gtk_widget_get_preferred_width (/Users/user/gtk/source/gtk+-3.24.31/gtk/gtksizerequest.c:492)
gtk_box_get_size (/Users/user/gtk/source/gtk+-3.24.31/gtk/gtkbox.c:1611)
gtk_box_get_content_size (/Users/user/gtk/source/gtk+-3.24.31/gtk/gtkbox.c:2071)
gtk_css_custom_gadget_get_preferred_size (/Users/user/gtk/source/gtk+-3.24.31/gtk/gtkcsscustomgadget.c:124)
gtk_css_gadget_get_preferred_size (/Users/user/gtk/source/gtk+-3.24.31/gtk/gtkcssgadget.c:683)
gtk_box_get_preferred_width (/Users/user/gtk/source/gtk+-3.24.31/gtk/gtkbox.c:1725)
gtk_widget_query_size_for_orientation (/Users/user/gtk/source/gtk+-3.24.31/gtk/gtksizerequest.c:181)
gtk_widget_compute_size_for_orientation (/Users/user/gtk/source/gtk+-3.24.31/gtk/gtksizerequest.c:399)
gtk_widget_get_preferred_width (/Users/user/gtk/source/gtk+-3.24.31/gtk/gtksizerequest.c:492)
_gtk_widget_get_preferred_size_for_size (/Users/user/gtk/source/gtk+-3.24.31/gtk/gtksizerequest.c:871)
gtk_paned_get_preferred_size_for_orientation (/Users/user/gtk/source/gtk+-3.24.31/gtk/gtkpaned.c:1076)
gtk_paned_measure (/Users/user/gtk/source/gtk+-3.24.31/gtk/gtkpaned.c:1237)
gtk_css_custom_gadget_get_preferred_size (/Users/user/gtk/source/gtk+-3.24.31/gtk/gtkcsscustomgadget.c:124)
gtk_css_gadget_get_preferred_size (/Users/user/gtk/source/gtk+-3.24.31/gtk/gtkcssgadget.c:683)
gtk_paned_get_preferred_width (/Users/user/gtk/source/gtk+-3.24.31/gtk/gtkpaned.c:1247)
gtk_widget_query_size_for_orientation (/Users/user/gtk/source/gtk+-3.24.31/gtk/gtksizerequest.c:181)
gtk_widget_compute_size_for_orientation (/Users/user/gtk/source/gtk+-3.24.31/gtk/gtksizerequest.c:399)
gtk_widget_get_preferred_width (/Users/user/gtk/source/gtk+-3.24.31/gtk/gtksizerequest.c:492)
gtk_box_get_size (/Users/user/gtk/source/gtk+-3.24.31/gtk/gtkbox.c:1611)
gtk_box_get_content_size (/Users/user/gtk/source/gtk+-3.24.31/gtk/gtkbox.c:2071)
gtk_css_custom_gadget_get_preferred_size (/Users/user/gtk/source/gtk+-3.24.31/gtk/gtkcsscustomgadget.c:124)
gtk_css_gadget_get_preferred_size (/Users/user/gtk/source/gtk+-3.24.31/gtk/gtkcssgadget.c:683)
gtk_box_get_preferred_width (/Users/user/gtk/source/gtk+-3.24.31/gtk/gtkbox.c:1725)
gtk_widget_query_size_for_orientation (/Users/user/gtk/source/gtk+-3.24.31/gtk/gtksizerequest.c:181)
gtk_widget_compute_size_for_orientation (/Users/user/gtk/source/gtk+-3.24.31/gtk/gtksizerequest.c:399)
gtk_widget_get_preferred_width (/Users/user/gtk/source/gtk+-3.24.31/gtk/gtksizerequest.c:492)
gtk_box_get_size (/Users/user/gtk/source/gtk+-3.24.31/gtk/gtkbox.c:1611)
gtk_box_get_content_size (/Users/user/gtk/source/gtk+-3.24.31/gtk/gtkbox.c:2071)
gtk_css_custom_gadget_get_preferred_size (/Users/user/gtk/source/gtk+-3.24.31/gtk/gtkcsscustomgadget.c:124)
gtk_css_gadget_get_preferred_size (/Users/user/gtk/source/gtk+-3.24.31/gtk/gtkcssgadget.c:683)
gtk_box_get_preferred_width (/Users/user/gtk/source/gtk+-3.24.31/gtk/gtkbox.c:1725)
gtk_widget_query_size_for_orientation (/Users/user/gtk/source/gtk+-3.24.31/gtk/gtksizerequest.c:181)
gtk_widget_compute_size_for_orientation (/Users/user/gtk/source/gtk+-3.24.31/gtk/gtksizerequest.c:399)
gtk_widget_get_preferred_width (/Users/user/gtk/source/gtk+-3.24.31/gtk/gtksizerequest.c:492)
gtk_window_get_preferred_width (/Users/user/gtk/source/gtk+-3.24.31/gtk/gtkwindow.c:8839)
gtk_widget_query_size_for_orientation (/Users/user/gtk/source/gtk+-3.24.31/gtk/gtksizerequest.c:181)
gtk_widget_compute_size_for_orientation (/Users/user/gtk/source/gtk+-3.24.31/gtk/gtksizerequest.c:399)
gtk_widget_get_preferred_width (/Users/user/gtk/source/gtk+-3.24.31/gtk/gtksizerequest.c:492)
_gtk_widget_get_preferred_size_and_baseline (/Users/user/gtk/source/gtk+-3.24.31/gtk/gtksizerequest.c:685)
gtk_widget_get_preferred_size (/Users/user/gtk/source/gtk+-3.24.31/gtk/gtksizerequest.c:750)
gtk_window_compute_hints (/Users/user/gtk/source/gtk+-3.24.31/gtk/gtkwindow.c:10299)
gtk_window_compute_configure_request (/Users/user/gtk/source/gtk+-3.24.31/gtk/gtkwindow.c:9611)
gtk_window_move_resize (/Users/user/gtk/source/gtk+-3.24.31/gtk/gtkwindow.c:9820)
gtk_window_check_resize (/Users/user/gtk/source/gtk+-3.24.31/gtk/gtkwindow.c:8571)
g_cclosure_marshal_VOID__VOIDv (/Users/user/gtk/source/glib-2.70.0/gobject/gmarshal.c:165)
g_type_class_meta_marshalv (/Users/user/gtk/source/glib-2.70.0/gobject/gclosure.c:1058)
_g_closure_invoke_va (/Users/user/gtk/source/glib-2.70.0/gobject/gclosure.c:893)
g_signal_emit_valist (/Users/user/gtk/source/glib-2.70.0/gobject/gsignal.c:3406)
g_signal_emit (/Users/user/gtk/source/glib-2.70.0/gobject/gsignal.c:3553)
gtk_container_check_resize (/Users/user/gtk/source/gtk+-3.24.31/gtk/gtkcontainer.c:2176)
gtk_container_idle_sizer (/Users/user/gtk/source/gtk+-3.24.31/gtk/gtkcontainer.c:2066)
g_cclosure_marshal_VOID__VOIDv (/Users/user/gtk/source/glib-2.70.0/gobject/gmarshal.c:165)
_g_closure_invoke_va (/Users/user/gtk/source/glib-2.70.0/gobject/gclosure.c:893)
g_signal_emit_valist (/Users/user/gtk/source/glib-2.70.0/gobject/gsignal.c:3406)
g_signal_emit (/Users/user/gtk/source/glib-2.70.0/gobject/gsignal.c:3553)
_gdk_frame_clock_emit_layout (/Users/user/gtk/source/gtk+-3.24.31/gdk/gdkframeclock.c:651)
gdk_frame_clock_paint_idle (/Users/user/gtk/source/gtk+-3.24.31/gdk/gdkframeclockidle.c:575)
gdk_threads_dispatch (/Users/user/gtk/source/gtk+-3.24.31/gdk/gdk.c:769)
g_timeout_dispatch (/Users/user/gtk/source/glib-2.70.0/glib/gmain.c:4933)
g_main_dispatch (/Users/user/gtk/source/glib-2.70.0/glib/gmain.c:3381)
g_main_context_dispatch (/Users/user/gtk/source/glib-2.70.0/glib/gmain.c:4099)
g_main_context_iterate (/Users/user/gtk/source/glib-2.70.0/glib/gmain.c:4175)
g_main_loop_run (/Users/user/gtk/source/glib-2.70.0/glib/gmain.c:4373)
app_run (/Users/user/gtk/source/gimp/app/app.c:422)
main (/Users/user/gtk/source/gimp/app/main.c:784)
start (@start:110)
```
Here is the patch to fix it:
[gtk+-3.24.31-bad-screen.patch](/uploads/f391a3fa40b25e3b17aec48c1732fce1/gtk+-3.24.31-bad-screen.patch)https://gitlab.gnome.org/GNOME/gtk/-/issues/4610gdk_keymap_get_entries_for_keycode() returning hundreds of uninitialised GdkK...2022-02-26T12:45:59ZDavid Hogangdk_keymap_get_entries_for_keycode() returning hundreds of uninitialised GdkKeymapKey on WindowsWindows 11
gtk 3.24.31 (as provided by msys2 package mingw-w64-x86_64-gtk3 version 3.24.31-1)
Steps to reproduce:
1. Build attached program `gcc keytest.c -o keytest $(pkg-config --libs --cflags gtk+-3.0)`
2. Run, focus on the popup wi...Windows 11
gtk 3.24.31 (as provided by msys2 package mingw-w64-x86_64-gtk3 version 3.24.31-1)
Steps to reproduce:
1. Build attached program `gcc keytest.c -o keytest $(pkg-config --libs --cflags gtk+-3.0)`
2. Run, focus on the popup window and press some keys on the keyboard. On my machine, the 'A' key will usually trigger the bug.
Expected output, something like 6 GdkKeymapKey entries:
```
keyval: 0061 keyname: a hw-code: 0041 string: a group: 0000 state:0 ismodifier:0
keymap entries (6 total):
index: 0 keyval: 0061 group: 0 level: 0 character: a keyname: a
index: 1 keyval: 0041 group: 0 level: 1 character: A keyname: A
index: 2 keyval: 0061 group: 1 level: 0 character: a keyname: a
index: 3 keyval: 0041 group: 1 level: 1 character: A keyname: A
index: 4 keyval: 00e1 group: 1 level: 2 character: á keyname: aacute
index: 5 keyval: 00c1 group: 1 level: 3 character: Á keyname: Aacute
```
Instead, I see something like the following (it varies):
```
keyval: 0061 keyname: a hw-code: 0041 string: a group: 0000 state:0 ismodifier:0
keymap entries (555 total):
index: 0 keyval: 0061 group: 0 level: 0 character: a keyname: a
index: 1 keyval: 0041 group: 0 level: 1 character: A keyname: A
index: 2 keyval: 0061 group: 1 level: 0 character: a keyname: a
index: 3 keyval: 0041 group: 1 level: 1 character: A keyname: A
index: 4 keyval: 00e1 group: 1 level: 2 character: á keyname: aacute
index: 5 keyval: 00c1 group: 1 level: 3 character: Á keyname: Aacute
index: 6 keyval: 0000 group: 7864438 level: 3276903 character: keyname: (null)
index: 7 keyval: 0000 group: 7012404 level: 3407928 character: keyname: (null)
index: 8 keyval: 0000 group: 6619246 level: 7209079 character: keyname: (null)
index: 9 keyval: 0000 group: 7340144 level: 6881388 character: keyname: (null)
index: 10 keyval: 6d04051 group: 6881396 level: 7209071 character: keyname: 0x6d04051
index: 11 keyval: 80000735 group: 82418682 level: -1879031296 character: keyname: 0x80000735
<snip>
index: 548 keyval: 740073 group: 3407974 level: 7143522 character: keyname: 0x740073
index: 549 keyval: 0000 group: 6619240 level: 7077996 character: keyname: (null)
index: 550 keyval: 6a5432a group: 6619248 level: 110 character: keyname: 0x6a5432a
index: 551 keyval: 8c000400 group: 89298253 level: -1879019776 character: keyname: 0x8c000400
index: 552 keyval: 4b0048 group: 1936876915 level: 1986094172 character: keyname: 0x4b0048
index: 553 keyval: 590045 group: 1851877231 level: 1886413148 character: keyname: 0x590045
index: 554 keyval: 43005f group: 1668246620 level: 1885105249 character: keyname: 0x43005f
```
The valid entries are listed, and are followed by a large number of invalid entries. Not all keys do this, and it doesn't happen all of the time. I've not see this issue occur on macOS.
We've had some Windows VICE users complain that our GTK3 application crashes as soon as they press a key, but most users cannot replicate this, and no macOS / Linux users have reported it. I wonder if there's a link to the issue illustrated here.
[keytest.c](/uploads/2f3b0e68f67af4c12d08fb447306f5d0/keytest.c)https://gitlab.gnome.org/GNOME/gtk/-/issues/4690Windows 10 (msys2) current Gtk3 dual monitor gtk_window_get_position + gtk_wi...2022-02-17T12:43:54ZGiuseppeWindows 10 (msys2) current Gtk3 dual monitor gtk_window_get_position + gtk_window_move and the window disappearsI'm attaching few lines of code to reproduce the bug, building with current gtk3 on Windows 10 (msys2)
Basically if you have dual monitor where one extends the other, if you gtk_window_get_position you get (x, y) then you gtk_window_mov...I'm attaching few lines of code to reproduce the bug, building with current gtk3 on Windows 10 (msys2)
Basically if you have dual monitor where one extends the other, if you gtk_window_get_position you get (x, y) then you gtk_window_move to the (x, y) just retrieved and the windows should not move, but it goes away.
[window_position_get_set.c](/uploads/08ef25aa7a5492bc4dca9eac9799095e/window_position_get_set.c)
This affects my gtkmm3 application on windows https://github.com/giuspen/cherrytree/issues/1943https://gitlab.gnome.org/GNOME/gtk/-/issues/4667Invalid keynames are reported for some keys with CTRL2022-02-17T11:27:41ZBob AndrewsInvalid keynames are reported for some keys with CTRLOn some systems - apparently depending on language and/or keyboard layout, some keypresses report invalid keynames. One of our users reported the problem with english (US) keyboard layout.
I have attached a simple test program, compile ...On some systems - apparently depending on language and/or keyboard layout, some keypresses report invalid keynames. One of our users reported the problem with english (US) keyboard layout.
I have attached a simple test program, compile and run, then (with an english/US keyboard layout) press the following keys:
CTRL (press and hold), then the "[", "]" and "\\" keys (the three keys on the right in the row above "enter").
The expected output (on a system that is not affected by the bug) looks like this:
```
keyval: ffe3 keyname: Control_L keyval from name: ffe3 scancode: 001d hw-keycode: 0011
keyval: 005b keyname: bracketleft keyval from name: 005b scancode: 001a hw-keycode: 00db
keyval: 005d keyname: bracketright keyval from name: 005d scancode: 001b hw-keycode: 00dd
keyval: 005c keyname: backslash keyval from name: 005c scancode: 002b hw-keycode: 00dc
```
But on a system that is affected by the bug, we instead get this:
```
keyval: ffe3 keyname: Control_L keyval from name: ffe3 scancode: 001d hw-keycode: 0011
keyval: 100001b keyname: U+001B keyval from name: ffffff scancode: 001a hw-keycode: 00db
keyval: 100001d keyname: U+001D keyval from name: ffffff scancode: 001b hw-keycode: 00dd
keyval: 100001c keyname: U+001C keyval from name: ffffff scancode: 002b hw-keycode: 00dc
```
Fortunately i could reproduce the problem on my windows10 setup, so if you need further info just ask :). My guess is that it occurs when the first installed language and keyboard layout is NOT english (in my case it is german), and then another language/layout is installed after that.
This is with msys2 on windows10, gtk 3.24.31+56+g7e9935e381-1
https://gitlab.gnome.org/GNOME/gtk/-/issues/4665 looks like it could be a closely related issue
[keycodetest.c](/uploads/1fdbff4d487959960363daf7dd01f4e8/keycodetest.c)https://gitlab.gnome.org/GNOME/gtk/-/issues/4665Alt-gr key not working in gtk3-demo on Windows (7/10) with latest version of ...2022-01-31T16:14:06ZMaxime RichezAlt-gr key not working in gtk3-demo on Windows (7/10) with latest version of MSYS2 using french keyboard layout<!--
Please, read the CONTRIBUTING.md guide on how to file a new issue.
https://gitlab.gnome.org/GNOME/gtk/-/blob/main/CONTRIBUTING.md
-->
## Steps to reproduce
Just doing some tests on entry field (gtkentryfield) with gtk3-demo (l...<!--
Please, read the CONTRIBUTING.md guide on how to file a new issue.
https://gitlab.gnome.org/GNOME/gtk/-/blob/main/CONTRIBUTING.md
-->
## Steps to reproduce
Just doing some tests on entry field (gtkentryfield) with gtk3-demo (latest version of Msys2-64) on Windows (7 or 10)
## Current behavior
Nothing displayed
## Expected outcome
Special characters displayed with alt-gr key : #; @
## Version information
GTK 3.24.31 (https://packages.msys2.org/package/mingw-w64-x86_64-gtk3)
## Additional information
<!--
- Screenshots or screen recordings are useful for visual errors
- Attaching a screenshot or a video without explaining the current
behavior and the actions necessary to reproduce the bug will lead
to the bug being closed
- Please report any warning or message printed on the terminal
-->https://gitlab.gnome.org/GNOME/gtk/-/issues/2146Compile 3.24.11 with mingw fails2022-01-28T11:55:13ZMikkel Kruse JohnsenCompile 3.24.11 with mingw failsI can't cross compile the newest Gtk 3.24.11 for Windows (on Fedora 30).
```
make[5]: Leaving directory '/home/mkj/Projects/GSharpKit/GSharpKit/rpm/BUILD/gtk+-3.24.11/build_win32/gdk/win32'
make[4]: Leaving directory '/home/mkj/Projects...I can't cross compile the newest Gtk 3.24.11 for Windows (on Fedora 30).
```
make[5]: Leaving directory '/home/mkj/Projects/GSharpKit/GSharpKit/rpm/BUILD/gtk+-3.24.11/build_win32/gdk/win32'
make[4]: Leaving directory '/home/mkj/Projects/GSharpKit/GSharpKit/rpm/BUILD/gtk+-3.24.11/build_win32/gdk/win32'
Making all in .
make[4]: Entering directory '/home/mkj/Projects/GSharpKit/GSharpKit/rpm/BUILD/gtk+-3.24.11/build_win32/gdk'
GEN gdkconfig.h
CCLD libgdk-3.la
*** Warning: Trying to link with static lib archive /usr/i686-w64-mingw32/sys-root/mingw/lib/libintl.dll.a.
*** I have the capability to make that library automatically link in when
*** you link to this library. But I can only do this if you have a
*** shared version of the library, which you do not appear to have
*** because the file extensions .a of this argument makes me believe
*** that it is just a static archive that I should not use here.
win32/.libs/libgdk-win32.a(gdkmonitor-win32.o): In function `get_device_property':
/home/mkj/Projects/GSharpKit/GSharpKit/rpm/BUILD/gtk+-3.24.11/build_win32/gdk/win32/../../../gdk/win32/gdkmonitor-win32.c:176: undefined reference to `SetupDiGetDevicePropertyW'
/home/mkj/Projects/GSharpKit/GSharpKit/rpm/BUILD/gtk+-3.24.11/build_win32/gdk/win32/../../../gdk/win32/gdkmonitor-win32.c:204: undefined reference to `SetupDiGetDevicePropertyW'
collect2: error: ld returned 1 exit status
make[4]: *** [Makefile:1219: libgdk-3.la] Error 1
make[4]: Leaving directory '/home/mkj/Projects/GSharpKit/GSharpKit/rpm/BUILD/gtk+-3.24.11/build_win32/gdk'
make[3]: *** [Makefile:1715: all-recursive] Error 1
make[3]: Leaving directory '/home/mkj/Projects/GSharpKit/GSharpKit/rpm/BUILD/gtk+-3.24.11/build_win32/gdk'
make[2]: *** [Makefile:1138: all] Error 2
make[2]: Leaving directory '/home/mkj/Projects/GSharpKit/GSharpKit/rpm/BUILD/gtk+-3.24.11/build_win32/gdk'
make[1]: *** [Makefile:724: all-recursive] Error 1
make[1]: Leaving directory '/home/mkj/Projects/GSharpKit/GSharpKit/rpm/BUILD/gtk+-3.24.11/build_win32'
make: *** [Makefile:618: all] Error 2
make: Leaving directory '/home/mkj/Projects/GSharpKit/GSharpKit/rpm/BUILD/gtk+-3.24.11/build_win32'
```https://gitlab.gnome.org/GNOME/gtk/-/issues/593Children of ScrolledWindow receive scroll events when scrolling2022-01-25T21:58:53ZBugzillaChildren of ScrolledWindow receive scroll events when scrolling## Submitted by Lukas
Assigned to **gtk..@..tk.org**
**[Link to original bug (#760644)](https://bugzilla.gnome.org/show_bug.cgi?id=760644)**
## Description
When placing widgets that receive scroll events (spinbutton, scale, etc) i...## Submitted by Lukas
Assigned to **gtk..@..tk.org**
**[Link to original bug (#760644)](https://bugzilla.gnome.org/show_bug.cgi?id=760644)**
## Description
When placing widgets that receive scroll events (spinbutton, scale, etc) inside of a scrolledwindow they receive scroll events when the mouse cursor happens to be over them while scrolling. It goes like this: user finds a 'safe' area to start scrolling, scrolls on and on, until a widget is hit. The scroll events now get directed to the widget, user is unhappy because he inadvertently changed a value and has to find a new place to continue scrolling.
Proposed fix: When scrolling, the scrolledwindow captures all scroll events until the mouse is moved by a certain amount.
Version: 3.22.x
### See also
* [Bug 738859](https://bugzilla.gnome.org/show_bug.cgi?id=738859)https://gitlab.gnome.org/GNOME/gtk/-/issues/4658gtk+-3.24.31 doesn't build due to missing header file gdkkeys-win32.h2022-01-25T14:25:51ZJan Postránskýgtk+-3.24.31 doesn't build due to missing header file gdkkeys-win32.hCross-compiling Windows version of gtk+-3.24.31 on my Gentoo Linux box fails due to missing header file `gdkkeys-win32.h`.Attached Gentoo's [build.log](/uploads/12a0cc07579c63ea36937f6bd5e4d9a3/build.log) showing the compilation.Cross-compiling Windows version of gtk+-3.24.31 on my Gentoo Linux box fails due to missing header file `gdkkeys-win32.h`.Attached Gentoo's [build.log](/uploads/12a0cc07579c63ea36937f6bd5e4d9a3/build.log) showing the compilation.https://gitlab.gnome.org/GNOME/gtk/-/issues/2865EventKey-related varying behaviour with GTK on Windows and Linux, buggy behav...2022-01-18T02:45:17Zjohn01davEventKey-related varying behaviour with GTK on Windows and Linux, buggy behaviour on bothI'm trying to implement a cross-platform terminal (VTE is Linux -only, so I can't use it), based on `gtk::TextView` in the `gtk-rs` bindings for Rust, and I'm basically done but there's a problem. On Windows, `connect_key_press_event` do...I'm trying to implement a cross-platform terminal (VTE is Linux -only, so I can't use it), based on `gtk::TextView` in the `gtk-rs` bindings for Rust, and I'm basically done but there's a problem. On Windows, `connect_key_press_event` does not emit an event when backspace or enter is pressed, which is highly problematic as backspace is an essential part of a working terminal. Backspace is emitted correctly on Linux.
Additionally, arrow keys do not emit the event on Linux or Windows. I'm not sure if this is an upstream GTK bug, or a GTK-rs bug, but when [I asked on the gtk-rs issue tracker, I was redirected](https://github.com/gtk-rs/gtk/issues/1025) to the upstream project.
The textarea itself, which needs arrows, backspace, etc. seems to work properly on all platforms, so there must be another signal or something that I can connect to in order to get this information, but I'm at a loss as to which signal it is. Additionally, this difference in behavior between Linux and Windows seems like a bug.Luca Bacciluca.bacci@outlook.comLuca Bacciluca.bacci@outlook.comhttps://gitlab.gnome.org/GNOME/gtk/-/issues/2957PangoAttrList with foreground-alpha can bleed into other widget rendering2022-01-16T17:21:27ZChristian HergertPangoAttrList with foreground-alpha can bleed into other widget renderingCurrently, if you have a label with a UI like:
```xml
<attributes>
<attribute name="foreground-alpha">30000</attribute>
</attributes>
```
and a GtkTextView, it's possible for the textview to be rendered with the alpha transparency un...Currently, if you have a label with a UI like:
```xml
<attributes>
<attribute name="foreground-alpha">30000</attribute>
</attributes>
```
and a GtkTextView, it's possible for the textview to be rendered with the alpha transparency under some situations.