gtk4.git
5 years agowayland: Don't artificially prefer ASK
Matthias Clasen [Sat, 4 Jan 2020 16:07:54 +0000 (11:07 -0500)]
wayland: Don't artificially prefer ASK

We were always adding ASK to the list of possible
actions, and preferring it. This was causing the
ask cursor to show up when both the source and
the target support ASK, even though it is only
meant to happen if you hold the Alt modifier.

Instead, use one of the supported actions as
preferred action.

5 years agodocs: Small clarifications to DND docs
Matthias Clasen [Sat, 4 Jan 2020 17:06:36 +0000 (12:06 -0500)]
docs: Small clarifications to DND docs

Clear up the documentation around ASK handling
a bit.

5 years agowayland: Minor cleanup
Matthias Clasen [Sat, 4 Jan 2020 15:37:58 +0000 (10:37 -0500)]
wayland: Minor cleanup

Stop storing selected_action, mainly since the name
is confusing. Instead, just pass the value directly
in the 2 places where it is used.

5 years agowayland: Fix action handling more
Matthias Clasen [Sat, 4 Jan 2020 14:16:26 +0000 (09:16 -0500)]
wayland: Fix action handling more

When updating GdkDrop::actions from changes sent by
the compositor, we were inadvertently setting them to 0,
causing drops to appear impossible.

5 years agowayland: Finish pending offer handling
Matthias Clasen [Sat, 4 Jan 2020 14:14:33 +0000 (09:14 -0500)]
wayland: Finish pending offer handling

When creating a new GdkDrop object on drag_enter, take pending
source_actions and action into account. The code to store the
pending actions was already there, they were just not passed
on to the drop object when we create it.

5 years agowayland: Clean up drags
Matthias Clasen [Sat, 4 Jan 2020 05:12:57 +0000 (00:12 -0500)]
wayland: Clean up drags

We need to set the drag to NULL in gdk_wayland_drag_drop_done,
otherwise, all future drags will be considered local after the
first local one. Worse, they will also provide the wrong data.

5 years agoAdwaita: Make dnd marks in text views green
Matthias Clasen [Fri, 3 Jan 2020 17:45:20 +0000 (12:45 -0500)]
Adwaita: Make dnd marks in text views green

We already do this in entries, this just updates
text views to match.

5 years agotextview: Render visible marks better
Matthias Clasen [Fri, 3 Jan 2020 17:43:30 +0000 (12:43 -0500)]
textview: Render visible marks better

The only other visible mark that is in common use
besides insert and selection_bound is dnd_mark, and
we don't want it to blink or be affected by 'cursor'
visibility.

Therefore, cache not just the cursor positions, but
also whether they are insert or selection_bound,
and take that into account when rendering them.

5 years agoMerge branch 'remove-xim' into 'master'
Matthias Clasen [Fri, 3 Jan 2020 17:56:26 +0000 (17:56 +0000)]
Merge branch 'remove-xim' into 'master'

Remove the XIM input method

See merge request GNOME/gtk!1195

5 years agoAdd a text view mark/cursor test
Matthias Clasen [Fri, 3 Jan 2020 15:14:19 +0000 (10:14 -0500)]
Add a text view mark/cursor test

This has testcases for some issues around invalidation
of marks.

5 years agoFix the previous commit
Matthias Clasen [Thu, 2 Jan 2020 05:43:27 +0000 (00:43 -0500)]
Fix the previous commit

We need to actually use the right coordinates.

5 years agostackswitcher: Fix switch-while-drag functionality
Matthias Clasen [Thu, 2 Jan 2020 05:24:54 +0000 (00:24 -0500)]
stackswitcher: Fix switch-while-drag functionality

5 years agodnd: Be safer
Matthias Clasen [Tue, 31 Dec 2019 21:03:33 +0000 (16:03 -0500)]
dnd: Be safer

The contents of the selection are documented
to not be NULL if size is non-negative. So
use an empty string instead of NULL for size 0,
avoiding a crash.

5 years agowayland: Fix dnd type negotiation
Matthias Clasen [Tue, 31 Dec 2019 02:14:17 +0000 (21:14 -0500)]
wayland: Fix dnd type negotiation

We need to call gdk_content_formats_union_serialize_mime_types
like GdkClipboard does, in order to get mime types that we can
sent out.

5 years agocontentprovider: cosmetic fix
Matthias Clasen [Wed, 1 Jan 2020 17:10:02 +0000 (12:10 -0500)]
contentprovider: cosmetic fix

5 years agocontentserializer: Fix an annotation
Matthias Clasen [Tue, 31 Dec 2019 02:13:27 +0000 (21:13 -0500)]
contentserializer: Fix an annotation

5 years agoUpdated Spanish translation
Daniel Mustieles [Tue, 31 Dec 2019 07:45:12 +0000 (08:45 +0100)]
Updated Spanish translation

5 years agoMerge branch 'drag-icon' into 'master'
Matthias Clasen [Mon, 30 Dec 2019 21:20:26 +0000 (21:20 +0000)]
Merge branch 'drag-icon' into 'master'

Drag icon

See merge request GNOME/gtk!1274

5 years agomountoperation: Handle D-Bus missing
Matthias Clasen [Mon, 30 Dec 2019 20:24:51 +0000 (15:24 -0500)]
mountoperation: Handle D-Bus missing

Still not great to make sync calls here, but
at least we should handle failure without criticals.

5 years agoMerge branch 'fix-dnd' into 'master'
Matthias Clasen [Mon, 30 Dec 2019 17:12:30 +0000 (17:12 +0000)]
Merge branch 'fix-dnd' into 'master'

Fix dnd

See merge request GNOME/gtk!1273

5 years agowayland: Pass root coordinates for dnd events
Matthias Clasen [Mon, 30 Dec 2019 17:00:53 +0000 (12:00 -0500)]
wayland: Pass root coordinates for dnd events

That is what the api currently requires, so provide it.

This fixes DND to work again, for the most part.

5 years agogdk: Populate dnd event coords
Matthias Clasen [Mon, 30 Dec 2019 16:58:11 +0000 (11:58 -0500)]
gdk: Populate dnd event coords

The GdkDrop emit... apis take root coordinates.
That should be changed to surface coordinates,
eventually. For now, make the functions fill
the x, y fields.

5 years agogdk: Fix coordinates in dnd events
Matthias Clasen [Mon, 30 Dec 2019 16:56:49 +0000 (11:56 -0500)]
gdk: Fix coordinates in dnd events

Don't store coordinates as shorts. Use doubles,
as everywhere else. Also add x, y in addition
to x_root, y_root, and actually return those
in gdk_event_get_coords.

5 years agoUpdate POTFILES.in
Piotr Drąg [Mon, 30 Dec 2019 16:30:18 +0000 (17:30 +0100)]
Update POTFILES.in

5 years agotooltip: Never set a window to be its own parent
Matthias Clasen [Mon, 30 Dec 2019 14:52:13 +0000 (09:52 -0500)]
tooltip: Never set a window to be its own parent

We do get events on the tooltip window too, and
we better ignore them, or bad things may happen,
such as widgets that are their own parents and
cause infinite loops.

Fixes: https://gitlab.gnome.org/GNOME/gtk/issues/2339
5 years agotooltipwindow: Cosmetic fix
Matthias Clasen [Mon, 30 Dec 2019 03:47:49 +0000 (22:47 -0500)]
tooltipwindow: Cosmetic fix

5 years agoRevert "Updated Spanish translation"
Daniel Mustieles García [Mon, 30 Dec 2019 13:59:22 +0000 (13:59 +0000)]
Revert "Updated Spanish translation"

This reverts commit 62b95e33b8c27be806880239aaaeb270bf323523

5 years agoUpdated Spanish translation
Daniel Mustieles [Mon, 30 Dec 2019 11:53:45 +0000 (12:53 +0100)]
Updated Spanish translation

5 years agoUpdated Spanish translation
Daniel Mustieles [Mon, 30 Dec 2019 11:52:55 +0000 (12:52 +0100)]
Updated Spanish translation

5 years agoUpdated Spanish translation
Daniel Mustieles [Mon, 30 Dec 2019 11:52:01 +0000 (12:52 +0100)]
Updated Spanish translation

5 years agoRemove gtk_window_set_hardcoded_surface
Matthias Clasen [Mon, 30 Dec 2019 05:31:32 +0000 (00:31 -0500)]
Remove gtk_window_set_hardcoded_surface

It is not used anymore.

5 years agocontainer: Be more careful with roots
Matthias Clasen [Mon, 30 Dec 2019 05:26:39 +0000 (00:26 -0500)]
container: Be more careful with roots

We were warning if we hit non-container
roots. Instead, call suitable naive api.

5 years agowidget: Be more careful with roots
Matthias Clasen [Mon, 30 Dec 2019 05:24:32 +0000 (00:24 -0500)]
widget: Be more careful with roots

We were assuming that all roots are windows,
and calling GtkWindow apis on them.

5 years agodnd: Use GtkDragIcon
Matthias Clasen [Mon, 30 Dec 2019 05:24:13 +0000 (00:24 -0500)]
dnd: Use GtkDragIcon

Use the new GtkDragIcon instead of a window
of type GTK_WINDOW_POPUP and
gtk_window_set_hardcoded_surface.

5 years agoAdd GtkDragIcon
Matthias Clasen [Mon, 30 Dec 2019 03:47:26 +0000 (22:47 -0500)]
Add GtkDragIcon

This is a GtkRoot implemntation for drag icons,
using the surface provided by GdkDrag. This lets
us avoid GTK_WINDOW_POPUP and
gtk_window_set_hardcoded_surface.

5 years agotooltipwindow: Cosmetic fix
Matthias Clasen [Mon, 30 Dec 2019 03:47:49 +0000 (22:47 -0500)]
tooltipwindow: Cosmetic fix

5 years agoMerge branch 'tooltip-redo' into 'master'
Matthias Clasen [Mon, 30 Dec 2019 03:24:58 +0000 (03:24 +0000)]
Merge branch 'tooltip-redo' into 'master'

Tooltip redo

See merge request GNOME/gtk!1271

5 years agodocs: Mention custom tooltip windows in the migration guide
Matthias Clasen [Mon, 30 Dec 2019 01:57:05 +0000 (20:57 -0500)]
docs: Mention custom tooltip windows in the migration guide

These no longer exist.

5 years agotooltips: Stop using GTK_WINDOW_POPUP
Matthias Clasen [Sun, 29 Dec 2019 02:04:19 +0000 (21:04 -0500)]
tooltips: Stop using GTK_WINDOW_POPUP

Make GtkTooltipWindow a GtkNative implementation,
instead of using a GTK_WINDOW_POPUP window.

5 years agotesttooltips: Test tooltips on popovers
Matthias Clasen [Sun, 29 Dec 2019 04:16:57 +0000 (23:16 -0500)]
testtooltips: Test tooltips on popovers

They do not currently work right.

5 years agoDrop custom tooltip windows
Matthias Clasen [Sun, 29 Dec 2019 03:36:35 +0000 (22:36 -0500)]
Drop custom tooltip windows

We want to put tooltips into something other than
windows, so this needs to go. Custom widgets are
still possible.

5 years agoMerge branch 'kill-tree-menu' into 'master'
Matthias Clasen [Mon, 30 Dec 2019 01:46:29 +0000 (01:46 +0000)]
Merge branch 'kill-tree-menu' into 'master'

Menu removal, part 2

See merge request GNOME/gtk!1270

5 years agodocs: Touch up menu button docs
Matthias Clasen [Mon, 30 Dec 2019 01:16:52 +0000 (20:16 -0500)]
docs: Touch up menu button docs

5 years agodocs: Mention the demise of menus in the migration guide
Matthias Clasen [Mon, 30 Dec 2019 00:52:22 +0000 (19:52 -0500)]
docs: Mention the demise of menus in the migration guide

This needs more details, but it is a start.

Also add sections about grabs and about toolbar
overflow handling.

5 years agodocs: Rewrite popover menu docs
Matthias Clasen [Mon, 30 Dec 2019 00:44:31 +0000 (19:44 -0500)]
docs: Rewrite popover menu docs

These were outdated and did not reflect current api.

5 years agotreeview: Use a popover for search
Matthias Clasen [Sat, 28 Dec 2019 17:57:17 +0000 (12:57 -0500)]
treeview: Use a popover for search

This is a more modern way of doing things, and avoids a window
of type GTK_WINDOW_POPUP. With a popover, it doesn't make sense
to have a positioning function, so remove that api.

5 years agowin32: Use a regular window for printing
Matthias Clasen [Sat, 28 Dec 2019 16:55:12 +0000 (11:55 -0500)]
win32: Use a regular window for printing

We never show this window, so it should not matter.
Ideally, we'd just create a surface to get handle,
anyway.

5 years agoRemove gdk_seat_grab
Matthias Clasen [Sat, 28 Dec 2019 14:12:33 +0000 (09:12 -0500)]
Remove gdk_seat_grab

We are no longer using free-standing grabs
in GTK. The replacement is the autohide
functionality of popup surfaces.

5 years agoaccelcellrenderer: Stop grabbing
Matthias Clasen [Sat, 28 Dec 2019 14:02:51 +0000 (09:02 -0500)]
accelcellrenderer: Stop grabbing

Standalone grabs are going away.

5 years agoaccelcellrenderer: Fix editing
Matthias Clasen [Sat, 28 Dec 2019 06:42:11 +0000 (01:42 -0500)]
accelcellrenderer: Fix editing

5 years agogtk: Remove menu code
Matthias Clasen [Fri, 27 Dec 2019 13:46:08 +0000 (08:46 -0500)]
gtk: Remove menu code

GtkMenu, GtkMenuBar, GtkMenuItem and their subclasses
and supporting classes are replaced by model-based popover
implementations.

5 years agodoc: Build fixes
Matthias Clasen [Sat, 28 Dec 2019 05:27:56 +0000 (00:27 -0500)]
doc: Build fixes

5 years agodocs: Remove mentions of GtkMenuItem
Matthias Clasen [Sat, 28 Dec 2019 14:55:05 +0000 (09:55 -0500)]
docs: Remove mentions of GtkMenuItem

5 years agoaccellabel: Don't mention GtkMenuItem in the docs
Matthias Clasen [Sat, 28 Dec 2019 14:59:38 +0000 (09:59 -0500)]
accellabel: Don't mention GtkMenuItem in the docs

5 years agolabel: Stop referring to GtkMenuItem in the docs
Matthias Clasen [Sat, 28 Dec 2019 14:53:49 +0000 (09:53 -0500)]
label: Stop referring to GtkMenuItem in the docs

5 years agobuildertool: Drop menu properties
Matthias Clasen [Sat, 28 Dec 2019 14:52:06 +0000 (09:52 -0500)]
buildertool: Drop menu properties

5 years agoinspector: Remove menu special-casing
Matthias Clasen [Fri, 27 Dec 2019 13:48:03 +0000 (08:48 -0500)]
inspector: Remove menu special-casing

5 years agowidget: Remove menu special-casing
Matthias Clasen [Fri, 27 Dec 2019 13:47:33 +0000 (08:47 -0500)]
widget: Remove menu special-casing

5 years agolabel: Remove menu support code
Matthias Clasen [Fri, 27 Dec 2019 13:46:56 +0000 (08:46 -0500)]
label: Remove menu support code

5 years agotests: Stop using menus
Matthias Clasen [Fri, 27 Dec 2019 04:16:53 +0000 (23:16 -0500)]
tests: Stop using menus

5 years agotestsuite: Remove menu special-casing
Matthias Clasen [Fri, 27 Dec 2019 13:48:55 +0000 (08:48 -0500)]
testsuite: Remove menu special-casing

5 years agotestsuite: Remove menu tests
Matthias Clasen [Fri, 27 Dec 2019 03:59:38 +0000 (22:59 -0500)]
testsuite: Remove menu tests

Menus are going away.

5 years agotestsuite: Cosmetic change
Matthias Clasen [Fri, 27 Dec 2019 03:59:05 +0000 (22:59 -0500)]
testsuite: Cosmetic change

5 years agomenubutton: Stop supporting menus
Matthias Clasen [Fri, 27 Dec 2019 03:41:47 +0000 (22:41 -0500)]
menubutton: Stop supporting menus

5 years agoheaderbar: Stop using GtkMenuButton::use-popover
Matthias Clasen [Fri, 27 Dec 2019 03:07:20 +0000 (22:07 -0500)]
headerbar: Stop using GtkMenuButton::use-popover

This property is going away.

5 years agomenutoolbutton: Stop supporting menus
Matthias Clasen [Fri, 27 Dec 2019 03:41:19 +0000 (22:41 -0500)]
menutoolbutton: Stop supporting menus

5 years agomenutoolbutton: Fix sensitivity handling
Matthias Clasen [Fri, 27 Dec 2019 06:46:04 +0000 (01:46 -0500)]
menutoolbutton: Fix sensitivity handling

We don't need to set the arrow button explicitly
to insensitive, GtkMenuButton handles that automatically.

5 years agotoolbar: Simplify overflow implementation
Matthias Clasen [Fri, 27 Dec 2019 06:32:27 +0000 (01:32 -0500)]
toolbar: Simplify overflow implementation

Do away with the proxy menu items, and instead
just have toolitems provide a label for overflow
items. We create the overflow widgets ourselves
already, as model buttons.
Also replace the toggle button used for overflow
with a menubutton, simplifying things further.

5 years agotestsuite: Update combobox tests
Matthias Clasen [Sun, 29 Dec 2019 22:07:41 +0000 (17:07 -0500)]
testsuite: Update combobox tests

Some of the expected output needs to be updated.

5 years agocombobox: Replace GtkTreeMenu with a popover
Matthias Clasen [Thu, 26 Dec 2019 05:06:48 +0000 (00:06 -0500)]
combobox: Replace GtkTreeMenu with a popover

This does not currently try to reproduce the exact
placement, since GtkPopover doesn't have to have
the necessary placement hints.

5 years agogtk-demo: Remove the change display demo
Matthias Clasen [Sat, 28 Dec 2019 16:02:49 +0000 (11:02 -0500)]
gtk-demo: Remove the change display demo

The window picking code has been broken for a while.
Since this is not really functionality that we should
highlight to application developers, remove the demo
instead of patching it up.

5 years agogtk-demo: Convert the builder demo to a menu model
Matthias Clasen [Sat, 28 Dec 2019 15:57:43 +0000 (10:57 -0500)]
gtk-demo: Convert the builder demo to a menu model

5 years agogtk-demo: Remove menus from listbox demo
Matthias Clasen [Sat, 28 Dec 2019 15:12:51 +0000 (10:12 -0500)]
gtk-demo: Remove menus from listbox demo

5 years agogtk-demo: Cosmetics
Matthias Clasen [Sat, 28 Dec 2019 14:47:23 +0000 (09:47 -0500)]
gtk-demo: Cosmetics

5 years agogtk-demo: Remove the menus demo
Matthias Clasen [Fri, 27 Dec 2019 03:58:37 +0000 (22:58 -0500)]
gtk-demo: Remove the menus demo

Menus are going away.

5 years agogtk-demo: Convert the dnd demo to a popover
Matthias Clasen [Fri, 27 Dec 2019 03:30:23 +0000 (22:30 -0500)]
gtk-demo: Convert the dnd demo to a popover

5 years agogtk-demo: Remove a somewhat silly bit of code
Matthias Clasen [Fri, 27 Dec 2019 03:04:23 +0000 (22:04 -0500)]
gtk-demo: Remove a somewhat silly bit of code

Putting a context menu on an overlay scrollbar
is too much of an easter egg to count as a useful
demo. Remove it, rather than changing it to a
popover.

5 years agogtk-demo: Use a popover in the clipboard demo
Matthias Clasen [Fri, 27 Dec 2019 03:03:52 +0000 (22:03 -0500)]
gtk-demo: Use a popover in the clipboard demo

5 years agogtk-demo: Replace a menu with a popover
Matthias Clasen [Fri, 27 Dec 2019 02:06:56 +0000 (21:06 -0500)]
gtk-demo: Replace a menu with a popover

5 years agoaccellabel: Remove an example using menus
Matthias Clasen [Fri, 27 Dec 2019 03:08:05 +0000 (22:08 -0500)]
accellabel: Remove an example using menus

5 years agodocs: Avoid using a menu for an example
Matthias Clasen [Fri, 27 Dec 2019 03:06:20 +0000 (22:06 -0500)]
docs: Avoid using a menu for an example

5 years agodocs: Remove menubars from the visual index
Matthias Clasen [Sat, 28 Dec 2019 14:43:46 +0000 (09:43 -0500)]
docs: Remove menubars from the visual index

5 years agodocs: Stop taking menubar screenshots
Matthias Clasen [Fri, 27 Dec 2019 04:49:50 +0000 (23:49 -0500)]
docs: Stop taking menubar screenshots

The widget is going away.

5 years agowidget-factory: Remove the menubar
Matthias Clasen [Fri, 27 Dec 2019 13:45:47 +0000 (08:45 -0500)]
widget-factory: Remove the menubar

5 years agowindow: Move F10 handling to popover menubars
Matthias Clasen [Fri, 27 Dec 2019 13:45:21 +0000 (08:45 -0500)]
window: Move F10 handling to popover menubars

5 years agoapplicationwindow: Stop using a menu bar
Matthias Clasen [Fri, 27 Dec 2019 04:49:26 +0000 (23:49 -0500)]
applicationwindow: Stop using a menu bar

We have a replacement with popovers now.

5 years agonotebook: Remove menu remnants
Matthias Clasen [Fri, 27 Dec 2019 13:47:12 +0000 (08:47 -0500)]
notebook: Remove menu remnants

5 years agoappchooserwidget: Remove ::populate-popup
Matthias Clasen [Thu, 26 Dec 2019 15:06:08 +0000 (10:06 -0500)]
appchooserwidget: Remove ::populate-popup

We are no longer doing menus this way; if a menu turns out to be
needed at all here, we can add a menu model later.

5 years agoplacesview: Use a popover
Matthias Clasen [Fri, 27 Dec 2019 01:10:34 +0000 (20:10 -0500)]
placesview: Use a popover

Replace the context menu with a popover.

5 years agomountoperation: Use a popover
Matthias Clasen [Thu, 26 Dec 2019 18:09:04 +0000 (13:09 -0500)]
mountoperation: Use a popover

Replace the context menu with a popover.

5 years agofilechooserbutton: Be smarter about 'None'
Matthias Clasen [Thu, 26 Dec 2019 14:29:36 +0000 (09:29 -0500)]
filechooserbutton: Be smarter about 'None'

Don't refilter the model while the combo box is popped up,
that wreaks havoc with layout and does not really work.
Instead, repurpose one of the separator rows for the 'none'
case. This works because the row separator function is not
consulted for the cellview in the button.

5 years agowindow: Complete the popover conversion
Matthias Clasen [Sat, 28 Dec 2019 05:08:29 +0000 (00:08 -0500)]
window: Complete the popover conversion

5 years agopopovermenubar: Cosmetics
Matthias Clasen [Sat, 28 Dec 2019 14:42:43 +0000 (09:42 -0500)]
popovermenubar: Cosmetics

5 years agopopovermenu: Use a weak ref for active item
Matthias Clasen [Fri, 27 Dec 2019 06:31:25 +0000 (01:31 -0500)]
popovermenu: Use a weak ref for active item

Otherwise, we can end up with a dangling pointer,
leading to badness.

5 years agosurface: Only unpause events if we paused them
Matthias Clasen [Sun, 29 Dec 2019 18:31:36 +0000 (13:31 -0500)]
surface: Only unpause events if we paused them

When a new popup surface is created, it may end up
getting a resume-events signal from its frame clock
without having seen a flush-events first.

Don't unpause events in that case, since it messes
up the displays pause counter.

This was causing criticals with tooltips.

5 years agoRevert unintended changes
Matthias Clasen [Sun, 29 Dec 2019 17:49:17 +0000 (12:49 -0500)]
Revert unintended changes

I didn't mean to make this a complicated
portal test. Go back to being a simple test.

5 years agoRemove more mir remnants
Matthias Clasen [Sun, 29 Dec 2019 02:52:34 +0000 (21:52 -0500)]
Remove more mir remnants

The mir backend was removed a while ago, so
GDK_WINDOWING_MIR is never defined.

5 years agotooltip: Remove some unneeded includes
Matthias Clasen [Sun, 29 Dec 2019 02:49:09 +0000 (21:49 -0500)]
tooltip: Remove some unneeded includes

5 years agopopover: Remove some dead code
Matthias Clasen [Sun, 29 Dec 2019 02:04:42 +0000 (21:04 -0500)]
popover: Remove some dead code

5 years agoUpdated Lithuanian translation
Aurimas Černius [Sat, 28 Dec 2019 16:18:53 +0000 (18:18 +0200)]
Updated Lithuanian translation