Matthias Clasen [Sat, 28 Mar 2020 19:22:13 +0000 (15:22 -0400)]
printing: Avoid a crash
When no printer has been selected (e.g. because we don't
find any printers), the 'print at' radio group should be
insensitive, except for the 'now' choice. Selecting another
option in this situation will lead to a crash.
Matthias Clasen [Sat, 28 Mar 2020 19:21:11 +0000 (15:21 -0400)]
printing: Fix initial page range radio group
Only set one radio button as active in the ui file.
Otherwise we end up with multiple options appearing
as selected initially.
Matthias Clasen [Sat, 28 Mar 2020 19:35:36 +0000 (19:35 +0000)]
Merge branch 'matthiasc/for-master' into 'master'
Matthiasc/for master
See merge request GNOME/gtk!1580
Matthias Clasen [Sat, 28 Mar 2020 19:03:33 +0000 (15:03 -0400)]
gesture: Fix gtk_gesture_get_bounding_box
When we stopped translating event coordinates in-place,
this function inadvertently started returning surface-relative
bounding boxes instead of widget-relative ones, as expected.
Fix this by using the widget-relative coordinates that we
already store.
Matthias Clasen [Sat, 28 Mar 2020 18:56:26 +0000 (14:56 -0400)]
cellarea: Fix cell editing
We need to translate the event coordinates to
widget-relative coordinates. This broke when
we stopped translating event coordinates in-place.
Matthias Clasen [Sat, 28 Mar 2020 18:33:01 +0000 (14:33 -0400)]
button: Fix an event handling gotcha
We no longer translate event coordinates in-place,
so gdk_event_get_position() returns surface-relative
coordinates, not widget-relative ones. Just use the
coordinates we are given.
Matthias Clasen [Sat, 28 Mar 2020 18:29:08 +0000 (14:29 -0400)]
imcontextsimple: Don't use g_object_unref on events
Events are not objects anymore.
Matthias Clasen [Sat, 28 Mar 2020 18:28:36 +0000 (14:28 -0400)]
x11: Don't use g_object_unref on events
Events are not object anymore.
Matthias Clasen [Sat, 28 Mar 2020 16:09:01 +0000 (16:09 +0000)]
Merge branch 'matthiasc/for-master' into 'master'
Matthiasc/for master
See merge request GNOME/gtk!1579
Piotr Drąg [Sat, 28 Mar 2020 15:04:52 +0000 (16:04 +0100)]
Update POTFILES.in and POTFILES.skip
Matthias Clasen [Sat, 28 Mar 2020 14:59:12 +0000 (10:59 -0400)]
appchooserdialog: Drop the Private struct
Matthias Clasen [Sat, 28 Mar 2020 14:49:54 +0000 (10:49 -0400)]
image: Drop the Private struct
Matthias Clasen [Sat, 28 Mar 2020 14:48:15 +0000 (10:48 -0400)]
infobar: Drop the Private struct
Matthias Clasen [Sat, 28 Mar 2020 14:36:09 +0000 (10:36 -0400)]
texthandle: Drop the Private struct
Matthias Clasen [Sat, 28 Mar 2020 14:28:22 +0000 (10:28 -0400)]
searchentry: Drop the Private struct
Matthias Clasen [Sat, 28 Mar 2020 14:23:01 +0000 (10:23 -0400)]
statusbar: Drop the Private struct
Matthias Clasen [Sat, 28 Mar 2020 14:16:18 +0000 (10:16 -0400)]
settings: Drop the Private struct
Also drop class padding - pointless for final types.
Matthias Clasen [Sat, 28 Mar 2020 14:15:50 +0000 (10:15 -0400)]
accellabel: Drop unused class fields
We are not using these anymore.
Matthias Clasen [Sat, 28 Mar 2020 14:06:26 +0000 (10:06 -0400)]
accellabel: Drop the Private struct
Matthias Clasen [Sat, 28 Mar 2020 13:59:12 +0000 (09:59 -0400)]
actionbar: Drop the Private struct
Matthias Clasen [Sat, 28 Mar 2020 04:42:44 +0000 (00:42 -0400)]
aboutdialog: Drop the Private struct
Matthias Clasen [Sat, 28 Mar 2020 04:35:13 +0000 (00:35 -0400)]
menubutton: Drop the Private struct
Timm Bäder [Sat, 28 Mar 2020 07:34:35 +0000 (08:34 +0100)]
applicationaccels: Fix shortcut memory leaks
g_list_model_get_item() is transfer-full.
Matthias Clasen [Sat, 28 Mar 2020 04:40:52 +0000 (04:40 +0000)]
Merge branch 'matthiasc/for-master' into 'master'
Matthiasc/for master
Closes #2489
See merge request GNOME/gtk!1578
Matthias Clasen [Sat, 28 Mar 2020 04:07:05 +0000 (00:07 -0400)]
gtk-demo: Fix the stack demo
The GtkSpinner:active property was renamed to :spinning.
Matthias Clasen [Sat, 28 Mar 2020 04:06:14 +0000 (00:06 -0400)]
gtk-demo: Fix the sliding puzzle
Update for a change in gtk_shortcut_controller_add_shortcut
behavior.
Matthias Clasen [Sat, 28 Mar 2020 04:05:48 +0000 (00:05 -0400)]
gtk-demo: Fix the shortcuts demo
We don't have margins anymore.
Matthias Clasen [Sat, 28 Mar 2020 04:04:25 +0000 (00:04 -0400)]
gtk-demo: Fix the rotated text demo
Off-by-one on the heart!
Matthias Clasen [Sat, 28 Mar 2020 02:57:10 +0000 (22:57 -0400)]
gtk-demo: Fix the overlay demo
We must use two separate boxes for the label and
the entry, otherwise we can't keep their can-target
properties apart.
Matthias Clasen [Sat, 28 Mar 2020 02:31:18 +0000 (22:31 -0400)]
gtk-demo: Use mnemonics in menu buttons
Use GtkMenuButton:use-underline in the modelbutton demo.
Matthias Clasen [Sat, 28 Mar 2020 02:28:49 +0000 (22:28 -0400)]
menubutton: Add a use-underline property
This is necessary since apps no longer have direct
access to the label.
Closes: https://gitlab.gnome.org/GNOME/gtk/-/issues/2489
Matthias Clasen [Fri, 27 Mar 2020 20:38:06 +0000 (16:38 -0400)]
gtk-demo: Visual fixes to the model button demo
Matthias Clasen [Fri, 27 Mar 2020 21:10:19 +0000 (21:10 +0000)]
Merge branch 'matthiasc/for-master' into 'master'
Matthiasc/for master
See merge request GNOME/gtk!1577
Matthias Clasen [Fri, 27 Mar 2020 20:24:20 +0000 (16:24 -0400)]
gtk-demo: Fix the search entry demo
Avoid critical warnings when setting up the context
menu actions.
Matthias Clasen [Fri, 27 Mar 2020 20:06:03 +0000 (16:06 -0400)]
widget-factory: Fix the radio button example
We only want one of the sensitive buttons to be active,
so don't tell them all to be active.
Matthias Clasen [Fri, 27 Mar 2020 16:37:31 +0000 (16:37 +0000)]
Merge branch 'rename-theme-resources' into 'master'
Rename GResources for standard GTK themes
See merge request GNOME/gtk!1576
Matthias Clasen [Fri, 27 Mar 2020 15:45:08 +0000 (15:45 +0000)]
Merge branch 'trigger-parser' into 'master'
Improve GtkShortcutTrigger parser
See merge request GNOME/gtk!1572
Emmanuele Bassi [Fri, 27 Mar 2020 15:20:59 +0000 (15:20 +0000)]
Rename GResources for standard GTK themes
After commit
2ab9be54fb34c61eedbbb89b78ce9db23ba81e8a we had to rename
the generated CSS files to be included into the GResource bundle; we
kept the URI stable to avoid too much churn, and allow backporting the
change to the 3.24 stable branch. This had the adverse effect of making
it harder to debug issues, as the on-disk file name does not match the
location in the GResource that will be used to print out warnings,
errors, and debugging messages.
Emmanuele Bassi [Fri, 27 Mar 2020 14:35:09 +0000 (14:35 +0000)]
Improve GtkShortcutTrigger parsing tests
Split off all possible cases into sub-tests, and add more thorough
checks on the invalid strings unit.
Emmanuele Bassi [Thu, 26 Mar 2020 16:58:55 +0000 (16:58 +0000)]
Add parsing for GtkAlternativeTrigger
Alternative triggers are separate by a pipe character.
Emmanuele Bassi [Thu, 26 Mar 2020 16:48:03 +0000 (16:48 +0000)]
tests: Add more cases for the trigger parser
Emmanuele Bassi [Thu, 26 Mar 2020 16:47:15 +0000 (16:47 +0000)]
Parse keyval name directly for mnemonic triggers
We don't need to parse the full accelerator format for mnemonic
triggers.
Emmanuele Bassi [Thu, 26 Mar 2020 17:11:25 +0000 (17:11 +0000)]
Return a full reference when parsing triggers
We're not returning a full reference for GtkNeverTrigger, but we are
returning full references for mnemonic and keyval triggers; this means
we're either going to leak mnemonic and keyval triggers if we consider
this function a "transfer none" one, or we are going to trigger an
assertion failure when finalizing a never trigger, if we consider this
function a "transfer full" one.
Let's be consistent, and always return a full reference to the caller.
Timm Bäder [Fri, 27 Mar 2020 07:39:16 +0000 (08:39 +0100)]
calendar: Only highlight one day as today
Fixes #2490
Timm Bäder [Thu, 26 Mar 2020 16:31:38 +0000 (17:31 +0100)]
shortcutscontroller: Make add_shortcut transfer-full
Like all the other shortcut api
Timm Bäder [Thu, 26 Mar 2020 16:31:22 +0000 (17:31 +0100)]
filechooserwidget: Plug a memory leak
Matthias Clasen [Thu, 26 Mar 2020 18:23:11 +0000 (18:23 +0000)]
Merge branch 'widget-factory-theme' into 'master'
widget-factory: Add theme switch
See merge request GNOME/gtk!1573
Matthias Clasen [Thu, 26 Mar 2020 17:51:59 +0000 (13:51 -0400)]
widget-factory: Add theme switch
Add a submenu to test the builtin themes. This is mainly
for the benefit of the artists working on those themes.
Matthias Clasen [Thu, 26 Mar 2020 17:24:42 +0000 (17:24 +0000)]
Merge branch 'wip/jimmac/HC-redesign' into 'master'
HC: derive from Adwaita
Closes #1450
See merge request GNOME/gtk!1571
Jakub Steiner [Thu, 26 Mar 2020 14:35:01 +0000 (15:35 +0100)]
Adwaita: make insensitive slightly less sensitive
- will expose itself even more in HC
Jakub Steiner [Tue, 24 Mar 2020 14:59:33 +0000 (15:59 +0100)]
HC: derive from Adwaita
Fixes https://gitlab.gnome.org/GNOME/gtk/-/issues/1450
Jakub Steiner [Thu, 26 Mar 2020 16:19:19 +0000 (17:19 +0100)]
Revert "Adwaita: make insensitive slightly less sensitive"
This reverts commit
bf3ccaa1bfb8d1bedb019a7057c01cf2d06eee89.
Jakub Steiner [Thu, 26 Mar 2020 14:35:01 +0000 (15:35 +0100)]
Adwaita: make insensitive slightly less sensitive
- will expose itself even more in HC
Matthias Clasen [Thu, 26 Mar 2020 03:40:22 +0000 (03:40 +0000)]
Merge branch 'wip/matthiasc/shortcut-4' into 'master'
Shortcuts
See merge request GNOME/gtk!1569
Matthias Clasen [Thu, 26 Mar 2020 02:30:15 +0000 (22:30 -0400)]
Some documentation fixes
Matthias Clasen [Wed, 25 Mar 2020 21:13:37 +0000 (17:13 -0400)]
shortcutmanager: Add some more docs
Matthias Clasen [Tue, 24 Mar 2020 21:01:18 +0000 (17:01 -0400)]
shortcuttrigger: Some documentation fixups
Matthias Clasen [Tue, 24 Mar 2020 20:57:27 +0000 (16:57 -0400)]
shortcutaction: Some documentation fixups
Matthias Clasen [Tue, 24 Mar 2020 20:29:47 +0000 (16:29 -0400)]
shortcutcontroller: Expand the docs
Matthias Clasen [Tue, 24 Mar 2020 20:11:07 +0000 (16:11 -0400)]
docs: Update the overview input chapter
Update the wording around events to reflect current
usage, and add information about shortcuts and the
shortcut controller.
Matthias Clasen [Tue, 24 Mar 2020 16:45:12 +0000 (12:45 -0400)]
popovermenu: Show mnemonics on keynav
This is the expected behavior for menus.
Matthias Clasen [Tue, 24 Mar 2020 16:45:43 +0000 (12:45 -0400)]
popover: Implement auto mnemonics
Unfortunately, this involves copying a bunch of
code from gtkwindow.c. The only difference here
is that we add a private method to turn this off,
which will be used by GtkPopoverMenu to implement
its own auto mnemonics.
Matthias Clasen [Tue, 24 Mar 2020 16:44:08 +0000 (12:44 -0400)]
label: Respect GtkPopover::mnemonics-visible
When inside a popover, look to the popover for
whether to show mnemonics or not.
Matthias Clasen [Tue, 24 Mar 2020 16:29:26 +0000 (12:29 -0400)]
popover: Add a mnemonics-visible property
This will be handled separately for popovers, so we
need our own property for it.
Matthias Clasen [Tue, 24 Mar 2020 15:54:17 +0000 (11:54 -0400)]
label: Disconnect visible mnemonics in popovers
The controller handling mnemonics is limited to same-native,
so showing mnemonics in other natives.
Matthias Clasen [Tue, 24 Mar 2020 05:07:09 +0000 (01:07 -0400)]
modelbutton: Install accels when inside a popover
When a model button in a popover displays a shortcut,
it is probably from the global shortcut controllers,
and will not work inside the popover, since that is
a different native. Install a shortcut using the same
trigger that just activates the model button. This
shortcut will end up in the managed shortcut controller
of the popover.
Matthias Clasen [Tue, 24 Mar 2020 04:00:43 +0000 (00:00 -0400)]
popovermenu: Make mnemonics work without Alt
This is expected menu behavior.
Matthias Clasen [Tue, 24 Mar 2020 03:04:53 +0000 (23:04 -0400)]
shortcutcontroller: Inject accels into the action muxer
This is the way model button pic up accels for their actions.
Matthias Clasen [Tue, 24 Mar 2020 03:04:06 +0000 (23:04 -0400)]
popover: Implement GtkShortcutManager
This makes mnemonics work in popovers.
Matthias Clasen [Tue, 24 Mar 2020 03:03:29 +0000 (23:03 -0400)]
modelbutton: Make activatable
This is expected of button-like widgets, and is necessary
to make keynav in popover menus work as expected.
Matthias Clasen [Mon, 23 Mar 2020 18:46:20 +0000 (14:46 -0400)]
modelbutton: Remove accel poking
Stop manually poking GtkApplication for accels.
GtkApplication already feeds them into the action
muxer machinery, so that is where will get them.
Emmanuele Bassi [Fri, 20 Mar 2020 15:19:45 +0000 (15:19 +0000)]
Turn GtkShortcutAction into a GObject
Just like we did for GtkShortcutTrigger.
This allows language bindings to properly deal with all the actions.
Emmanuele Bassi [Thu, 19 Mar 2020 15:57:02 +0000 (15:57 +0000)]
Turn GtkShortcutTrigger into an object
The lightweight inheritance mechanism used for GtkShortcutTrigger is not
going to be usable by bindings, because boxed types cannot have derived
types.
We could use GTypeInstance and derive everything from that, like
GParamSpec, but in the end shortcuts are not really a performance
critical paths, unlike CSS values or render nodes.
Emmanuele Bassi [Thu, 19 Mar 2020 15:53:35 +0000 (15:53 +0000)]
Add definition macro for internal types
GTK defines various types that are meant to be derivable only within GTK
itself, and "final" from the perspective of consumers of the GTK API.
The existing macros defined by GObject, such as G_DECLARE_FINAL_TYPE and
G_DECLARE_DERIVABLE_TYPE, lack this functionality.
While we wait for GObject to get this kind of macro, we should define
our own.
Matthias Clasen [Mon, 23 Mar 2020 12:37:01 +0000 (08:37 -0400)]
widget: Remove some leftover accel group plumbing
The ::can-activate-accel and ::accel-closures-changed signals
are not used anymore, remove them.
Matthias Clasen [Mon, 23 Mar 2020 00:58:35 +0000 (20:58 -0400)]
shortcutcontroller: Only activate shortcuts of visible widgets
Our shortcuts are like mnemonics in this respect - they only
activate when the widget is viewable.
Matthias Clasen [Sun, 22 Mar 2020 20:15:36 +0000 (16:15 -0400)]
Drop GtkKeyHash
Matthias Clasen [Sun, 22 Mar 2020 20:14:55 +0000 (16:14 -0400)]
window: Remove GtkKeyHash remnants
It is not used anymore.
Matthias Clasen [Sun, 22 Mar 2020 20:08:11 +0000 (16:08 -0400)]
Drop the keyhash test
GtkKeyHash is going away.
Matthias Clasen [Sun, 22 Mar 2020 16:55:49 +0000 (12:55 -0400)]
shortcutcontroller: Implement mnemonic cycling
Make GtkShortcutController collect matching shortcuts
in the same way GtkKeyHash did (accept fuzzy matches
if we don't have any exact matches), and cycle among
the matches if we have multiple.
Matthias Clasen [Sun, 22 Mar 2020 13:54:15 +0000 (09:54 -0400)]
shortcuttrigger: Do elaborate matching for key events
Copy the logic from GtkKeyHash for matching key events
to shortcuts.
Adapt shortcuts test to work with the better matching,
by creating more complete key events.
Matthias Clasen [Sun, 22 Mar 2020 13:16:57 +0000 (09:16 -0400)]
shortcuttrigger: Introduce partial matches
Allow GtkShortcutTrigger to return partial matches.
Currently, no triggers produce such results, and
GtkShortcutController treats partial matches like
exact ones.
Matthias Clasen [Fri, 20 Mar 2020 03:58:59 +0000 (23:58 -0400)]
Add tests for shortcut actions
Matthias Clasen [Fri, 20 Mar 2020 02:41:59 +0000 (22:41 -0400)]
Add a test for shortcut triggers
Matthias Clasen [Thu, 19 Mar 2020 04:56:46 +0000 (00:56 -0400)]
widget: Drop the ::popup-menu signal
This is now done in widgets which have context
menus.
Matthias Clasen [Thu, 19 Mar 2020 04:52:05 +0000 (00:52 -0400)]
placesview: Stop using ::popup-menu
This signal is going away.
Matthias Clasen [Thu, 19 Mar 2020 04:07:45 +0000 (00:07 -0400)]
filechooser: Stop using ::popup-menu
This signal is going away.
Matthias Clasen [Thu, 19 Mar 2020 02:56:53 +0000 (22:56 -0400)]
mountoperation: Stop using ::popup-menu
We can just use a shortcut controller directly.
Matthias Clasen [Thu, 19 Mar 2020 02:40:13 +0000 (22:40 -0400)]
gtk-demo: Stop emitting ::popup-menu
The signal was not used anyway, in the font explorer demo.
Matthias Clasen [Thu, 19 Mar 2020 02:36:31 +0000 (22:36 -0400)]
colorchooser: Stop using ::popup-menu
This signal is going away. Use an action instead.
Matthias Clasen [Thu, 19 Mar 2020 01:57:51 +0000 (21:57 -0400)]
range: Remove ::popup-menu emission
This signal is going away, and having context menus
on sliders is not really a thing anyway.
Matthias Clasen [Thu, 19 Mar 2020 01:55:08 +0000 (21:55 -0400)]
scrollbar: Remove :popup-menu forwarding
This signal is going away.
Matthias Clasen [Wed, 18 Mar 2020 20:52:52 +0000 (16:52 -0400)]
emojichooser: Stop using ::popup-menu
This signal is going away. Use an action instead.
Matthias Clasen [Mon, 16 Mar 2020 02:25:09 +0000 (22:25 -0400)]
Use an action for the context menu keybinding
The ::popup-menu signal is going away.
Matthias Clasen [Mon, 16 Mar 2020 02:10:39 +0000 (22:10 -0400)]
Print mnemonic triggers clearly
Matthias Clasen [Mon, 16 Mar 2020 00:48:31 +0000 (20:48 -0400)]
inspector: Show shortcuts
At a tab that lists the shortcuts contained in a
GtkShortcutController.
Benjamin Otte [Sun, 26 Aug 2018 16:39:51 +0000 (18:39 +0200)]
filechooser: Trigger the location popup via bindings
Simplifies code quite a bit.
Benjamin Otte [Fri, 24 Aug 2018 06:46:54 +0000 (08:46 +0200)]
accels: Remove GtkAccelGroup
Benjamin Otte [Fri, 24 Aug 2018 05:41:28 +0000 (07:41 +0200)]
testmenubutton: Don't create a GtkAccelGroup
It's unused.
Benjamin Otte [Fri, 24 Aug 2018 05:40:49 +0000 (07:40 +0200)]
testsuite: Remove GtkAccelGroup usage