summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
...
| * GdkWin32: Correct generation of crossing events when holding an implicit grabLuca Bacci2022-04-081-34/+9
| | | | | | | | Fixes #4722
| * GdkWin32: Report serial for eventsLuca Bacci2022-04-081-1/+3
|/
* Merge branch 'backport-4406-4.6' into 'gtk-4-6'Luca Bacci2022-04-081-3/+7
|\ | | | | | | | | gdkclipboard-win32.c: Fix call to gdk_clipboard_claim_remote() (backport MR !4604 to gtk-4-6) See merge request GNOME/gtk!4608
| * gdkclipboard-win32.c: Fix call to gdk_clipboard_claim_remote()Chun-wei Fan2022-04-011-3/+7
| | | | | | | | | | | | | | | | | | | | | | The call to gdk_win32_clipboard_request_contentformats() can return NULL even without an error condition being hit (such as when the system clipboard is empty), so check whether the returned GdkContentFormat pointer is not NULL before calling gdk_clipboard_claim_remote(), which expects it to be not NULL, otherwise we face a warning from that funtion and the subsequent g_object_unref(). This at least partially fixes issue #4796.
* | Merge branch 'sumibi-yakitori/fix-minimize-window-macos' into 'main'Christian Hergert2022-04-042-1/+17
| | | | | | | | | | | | | | | | | | | | | | macos: Fix problem that window cannot be minimized by user operation Closes #4811 See merge request GNOME/gtk!4613 (cherry picked from commit d75147db0acd7723732790155fd3a63688193c63) d3cf7088 macos: Skip running `showAndMakeKey` when a window is minimized by user action
* | Merge branch 'sumibi-yakitori/fix-maximize-window-macos' into 'main'Christian Hergert2022-04-033-6/+19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | macos: prohibit fullscreen transition if in transtion This prevents performing additional fullscreen transitions while a transition is already in progress. Closes #4808 See merge request GNOME/gtk!4612 (cherry picked from commit 15b7a4572b3a06aefed75bb7989c711763af65f7) 69a0a5cf macos: Prohibit changing the full-screen state of a window during a full-screen transition 229e4b58 macos: Corrected code style
* | Update Indonesian translationAndika Triwidada2022-04-011-1592/+498
| |
* | Update Indonesian translationAndika Triwidada2022-04-011-723/+858
|/
* Update Latvian translationRūdolfs Mazurs2022-03-271-744/+887
|
* Update Latvian translationRūdolfs Mazurs2022-03-271-1772/+1467
|
* Merge branch 'cherry-pick-351ffef7' into 'gtk-4-6'Emmanuele Bassi2022-03-271-12/+12
|\ | | | | | | | | overlaylayout: Set position style class on child See merge request GNOME/gtk!4598
| * overlaylayout: Set position style class on childAntónio Fernandes2022-03-271-12/+12
|/ | | | | | | | | | | | As documented: > Overlay children whose alignments cause them to be positioned > at an edge get the style classes “.left”, “.right”, “.top”, > and/or “.bottom” according to their position. Likely accidental regression in b7ee2cbc289b4ab8a950cd77bdcd69a6f13932a7 Fixes https://gitlab.gnome.org/GNOME/nautilus/-/issues/2099 (cherry picked from commit 351ffef70481c109f151b6fef84060c4e4847b43)
* Update British English translationBruce Cowan2022-03-241-2353/+2288
|
* Updated Czech translationMarek Černocký2022-03-211-1/+1
|
* Update German translationPhilipp Kiemle2022-03-191-953/+1111
|
* 4.6.24.6.2Matthias Clasen2022-03-182-1/+89
|
* Merge branch 'alatiera/stable-wraps-4-6' into 'gtk-4-6'Matthias Clasen2022-03-197-12/+8
|\ | | | | | | | | meson: use proper handling of wayland-protocols dependency See merge request GNOME/gtk!4580
| * meson: switch some .wrap files to stable branchesJordan Petridis2022-03-176-6/+6
| | | | | | | | | | To avoid random failures if one of the projects starts depending on new things or has incompatible changes.
| * meson: use proper handling of wayland-protocols dependencyEli Schwartz2022-03-171-6/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Ensure that resolution of the subproject occurs via the dependency interface, not the "poke at subprojects manually" interface, and make that actually work via --wrap-mode=forcefallback. There's no need to mark it as not-required and then manually invoke subproject(), since fallback should work correctly and it is always needed. However, if fallback was performed (or forced) it would error out since get_variable() was instructed to only use pkg-config while the relevant variable was exported by the subproject as an internal fallback dependency.
* | filefilter: Fix <suffixes> in buildableJames Westman2022-03-172-2/+8
|/ | | | | A bug in GtkFileFilter's GtkBuildable implementation caused the <suffixes> tag not to be recognized.
* Update Italian translationMilo Casagrande2022-03-171-673/+809
|
* Update Italian translationMilo Casagrande2022-03-171-1526/+425
|
* Update Serbian translationМирослав Николић2022-03-171-1615/+1462
|
* Merge branch 'wip/carlosg/backports-4-6' into 'gtk-4-6'Matthias Clasen2022-03-178-41/+97
|\ | | | | | | | | Backport fixes to 4.6 See merge request GNOME/gtk!4577
| * gtk/imwayland: Use serial to control outbound messagesCarlos Garnacho2022-03-161-11/+17
| | | | | | | | | | | | | | | | | | | | | | | | Following the text-input protocol changes at https://gitlab.freedesktop.org/wayland/wayland-protocols/-/merge_requests/115, use the serial number to have the client push changes to the zwp_text_input_v3 object only after compositor/client states match. This specifically is more lenient to compositors pushing multiple .done events ahead of the client replying to them. Closes: https://gitlab.gnome.org/GNOME/gtk/-/issues/3641
| * gtkimcontextwayland: Add native surface offset to input coordinatesCarlos Garnacho2022-03-161-3/+6
| | | | | | | | | | | | | | | | We were missing the surface offset (e.g. shadows) at the time of expressing the text caret location in surface coordinates. Add this offset so the coordinates are as expected by the compositor. Fixes: https://gitlab.gnome.org/GNOME/gtk/-/issues/4668
| * wayland: xdg-activation: Don't assume there's a focus surfaceGuido Günther2022-03-161-2/+3
| | | | | | | | | | | | | | | | | | | | | | | | Tools like gtk4-launch can't set surface on the activation token so don't require it. If the compositor requires it we can't do anything about it anyway. This avoids a critical: (gtk4-launch:23497): Gdk-CRITICAL **: 17:07:24.704: gdk_wayland_surface_get_wl_surface: assertion 'GDK_IS_WAYLAND_SURFACE (surface)' failed Fixes: be4216e051 ("gdk/wayland: Support the xdg-activation wayland protocol") Signed-off-by: Guido Günther <agx@sigxcpu.org>
| * wayland: Use xdg-activation for non-startup initiated focus requestsCarlos Garnacho2022-03-161-21/+61
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Currently, we have all the plumbing in place so that GTK consumes the startup notification ID when focusing a window through the xdg-activation protocol. This however misses the case that a window might be requested to be focused with no startup ID (i.e. via interaction with the application, not through GApplication or other application launching logic). In this case, we let the application create a token that will be consumed by itself. The serial used is that from the last interaction, so the compositor will still be able to do focus prevention logic if it applies. Since we already do have a last serial at hand, prefer xdg-activation all the way over the now stale gtk-shell focusing support. The timestamp argument becomes unused, but that is a weak argument to prefer the private protocol over the standard one. The gtk-shell protocol support is so far left for interaction with older Mutter.
| * print-editor: Use gtk_window_present()Guido Günther2022-03-161-1/+1
| | | | | | | | | | This lets xdg-activation work as otherwise gdk_wayland_surface_focus is never invoked.
| * demo: Use gtk_window_present()Guido Günther2022-03-161-1/+1
| | | | | | | | | | This lets xdg-activation work as otherwise gdk_wayland_surface_focus is never invoked.
| * widget-factory: Use gtk_window_present()Guido Günther2022-03-161-1/+1
| | | | | | | | | | This lets xdg-activation work as otherwise gdk_wayland_surface_focus is never invoked.
| * wayland: Keep startup_notification_id around long enoughGuido Günther2022-03-162-0/+5
| | | | | | | | | | When using xdg_activation we need to keep the id around until we send the first activate to signal succesful startup.
| * window: Make sure we call gdk_wayland_surface_focusGuido Günther2022-03-161-2/+3
| | | | | | | | | | When using xdg_activation this is responsible for submitting the activation token / startup id to the compositor.
* | Merge branch 'wip/chergert/for-4-6' into 'gtk-4-6'Matthias Clasen2022-03-1624-534/+1055
|\ \ | |/ |/| | | | | backport macOS fixes to gtk-4-6 See merge request GNOME/gtk!4578
| * macos: exclude popups from window listChristian Hergert2022-03-161-1/+1
| | | | | | | | | | This probably only matters if you do window list integration for the global menu on macOS.
| * macos: pass events to foreign windowsChristian Hergert2022-03-161-0/+10
| |
| * macos: dont steal key window from NSPanelChristian Hergert2022-03-162-0/+14
| | | | | | | | Or we risk making it really difficult to use native file choosers.
| * macos: fix window level for popupsChristian Hergert2022-03-161-6/+0
| | | | | | | | | | This comment isn't really accurate anymore it seems, so we can start setting the proper stacking order for popups now.
| * macos: fix attachment of popups to parentsChristian Hergert2022-03-161-0/+24
| | | | | | | | | | | | | | We had code to do it and it never actually got used correctly. This ensures that the popup services are attached to the parents so that they get proper stacking orders when displayed. Additionally, it fixes popups from being shown as their own windows in Exposé.
| * macos: fix window activation during shadow click-throughChristian Hergert2022-03-164-6/+43
| | | | | | | | | | | | | | | | | | If we are clicking through the shadow of a window, we need to take special care to not raise the old window on mouseUp. This is normally done by the display server for us, so we need to use the proper API that is public to handle this (rather than CGSSetWindowTags()). Doing so requires us to dispatch the event to the NSView and then cancel the activcation from the mouseDown: event there.
| * macos: select new key window after processing eventsChristian Hergert2022-03-162-0/+35
| | | | | | | | | | | | | | | | | | | | | | If we closed a key window in response to events, we need to denote another window as the new key window. This is easiest to do from an idle so that we don't clobber notification pairs of "did resign"/"did become" key window. We have a sorted set of surfaces by display server stacking, so we can take the first one we come across that is already mapped and re-show it to become key/main.
| * macos: request layout with server-side decorationChristian Hergert2022-03-161-2/+9
| | | | | | | | | | | | | | If we have server-side decorations we might need to request a layout in response to the resize notification. We don't need to do this in other cases because we already handle that in the process of doing the resize (and that code is that way because of delayed delivery of NSNotification).
| * macos: fix resize when using server-side decorationsChristian Hergert2022-03-161-1/+2
| | | | | | | | | | | | If we are using NSWindow titled windows, we don't end up waking up the frame clock when the window is resized on the display server. This ensures that we do that after getting a notification of resize.
| * macos: set main window in addition to keyChristian Hergert2022-03-161-0/+3
| | | | | | | | | | If we are showing the window, we might also want to make it the main window for the application when shown.
| * macos: make transient-for key window when hiding surfaceChristian Hergert2022-03-161-2/+9
| | | | | | | | This only handled the popover case before and not the transient-for case.
| * macos: actually drop unnecessary momentum eventsChristian Hergert2022-03-161-1/+1
| | | | | | | | | | These would get passed along to the NSApplication which we don't really need to have happen. Denote it as such.
| * macos: queue all pending eventsChristian Hergert2022-03-161-1/+1
| | | | | | | | | | Rather than process these a single event at a time, queue all of the outstanding events from the NSEvent queue.
| * macos: drop enter/exit when in manual drag/resizeChristian Hergert2022-03-161-1/+5
| | | | | | | | | | If we are in a manual resize/drag then we don't want to generate crossing events as they can just confuse things.
| * macos: allow dropping NSEvent without propagationChristian Hergert2022-03-162-1/+7
| | | | | | | | | | | | | | | | There are cases we might want to consume a NSEvent without creating a GdkEvent or passing it along to the NSApplication for processing. This creates a new value we can use and check against to propagate that without having to do out parameters at the slightly odd invalid pointer value for a GdkEvent (similar to how MMAP_FAILED is done).
| * macos: do not focus new window when resigning mainChristian Hergert2022-03-161-36/+0
| | | | | | | | | | | | | | This can get in the way of how we track changes while events are actively processing. Instead, we may want to delay this until the next main loop idle and then check to see if we have a main window as the NSNotification may have come in right after this.