James Westman
fb0229890b
gtkgesturerotate: Fix assertion
...
Fixes #4144 . An assertion would be printed when GtkGestureRotate was
used with a touchscreen.
2021-08-02 16:38:35 -05:00
Matthias Clasen
f59d2ae89d
Merge branch 'input-tweaks' into 'master'
...
imcontext: Tweak Compose sequence preedit
Closes #10 , #4127 , and #4124
See merge request GNOME/gtk!3799
2021-08-02 18:07:46 +00:00
Matthias Clasen
1e22572716
Avoid pango deprecations
...
This function has been deprecated on the main
branch of pango. Since we don't want to bump our
pango dependency to 1.49 yet, ignore the deprecation.
2021-08-01 23:20:01 -04:00
Matthias Clasen
c51f2fc0ec
label: Ignore __ for mnemonics
...
We were not ignoring double underscores for mnemonics
in one place, as we should.
Fixes : #4129
2021-08-01 22:14:12 -04:00
Matthias Clasen
2a528df977
Merge branch 'titlebar-gesture' into 'master'
...
Delegate titlebar action to the compositor if possible
See merge request GNOME/gtk!3797
2021-08-02 01:14:08 +00:00
Matthias Clasen
47072e0441
Merge branch 'fix-iconhelper' into 'master'
...
iconhelper: Fix the paintable implementation
Closes #4140
See merge request GNOME/gtk!3809
2021-07-31 20:35:08 +00:00
Emmanuele Bassi
95f2634ea9
Merge branch 'iter-is-valid-docs' into 'master'
...
docs: Fix iter_is_valid() description
See merge request GNOME/gtk!3810
2021-07-31 13:07:07 +00:00
Emmanuele Bassi
95c032f531
docs: Fix iter_is_valid() description
...
Drop the "WARNING" and the block quote, and follow the existing
documentation style guidelines.
2021-07-31 13:41:13 +01:00
Matthias Clasen
744955753f
iconhelper: Fix the paintable implementation
...
get_current_image was recursing due to an obvious typo.
Fixes : #4140
2021-07-31 08:27:17 -04:00
Florian Müllner
1728aa581c
checkbutton: Activate when moving focus
...
Currently we update the :active property on both the previous and
new focus button. That "visually activate" the button and will
emit ::toggled, but if the button is associated with an action,
the action state won't change.
Fix that by activating the new focus instead of explicitly fiddling
with the :active property.
2021-07-30 20:34:24 +02:00
Florian Müllner
c50475de34
checkbutton: Delegate ::activate to the helper if appropriate
...
If the button is associated with an action, the action is currently
only activated when the button is clicked, not when it is activated.
2021-07-30 20:34:24 +02:00
Matthias Clasen
c4dbb8f01e
imcontext: Code cleanup
2021-07-29 20:37:58 -04:00
Matthias Clasen
e67b2cb54b
composetable: Allow multiple dead keys
...
Remove the limitation on the number of dead keys
that we match, and allow the result be be multiple
characters.
Regenerate the builtin sequences, since this changes
what dead key sequences we can reproduce algorithmically.
Update tests to match.
Fixes : #10
2021-07-29 20:37:30 -04:00
Christian Hergert
908b1e5e12
textview: fix yoffset position when top_margin is set
...
This doesn't need to be included in the calculation or it will cause the
yoffset to continually shift while the window is resized.
Fixes #4134
2021-07-29 16:45:04 -07:00
Matthias Clasen
539391ce6c
composetable: Change an API
...
Make gtk_check_algorithmically take a GString
for the result. This is in preparation for allowing
multi-character results here, in the future.
Update all callers.
2021-07-29 17:29:25 -04:00
Florian Müllner
23e79d2eb2
gtk/windowhandle: Delegate titlebar action to the compositor if possible
...
Delegating the action to the compositor not only improves consistency
with server-side decorations, but also allows for actions that aren't
available client-side (like lower-in-middle-click).
https://gitlab.gnome.org/GNOME/mutter/-/issues/602
2021-07-29 21:39:32 +02:00
Matthias Clasen
b6c0155836
imcontext: Handle Escape in Compose sequence
...
Treat Escape the same in hex sequences and in
Compose sequence: reset the state.
2021-07-29 08:39:17 -04:00
Matthias Clasen
76d67b586c
imcontext: Tweak Compose sequence handling
...
When we don't have any matches for a Compose sequence
anymore, beep, and keep the preedit as it was for the
last match.
Fixes : #4127
2021-07-29 08:24:14 -04:00
Matthias Clasen
914edb1472
composetable: Add a prefix api
...
Add a function that computes the longest prefix
of a buffer for which a compose table has matches.
2021-07-29 08:23:40 -04:00
Matthias Clasen
dbf5033f94
composetable: Reduce the scope of a variable
...
'prefix' is not a good name for a file-scope variable,
move it into the sole function using it.
2021-07-29 08:22:52 -04:00
Matthias Clasen
cc6ecc8b62
Merge branch 'source-static-name' into 'master'
...
Avoid copying static debug strings
See merge request GNOME/gtk!3789
2021-07-29 11:59:02 +00:00
Matthias Clasen
b7e6922605
imcontext: Tweak Compose sequence preedit
...
When sequences contain multiple Compose keys,
don't hide the first one. This is a very fringe
case, but it matches the behavior of IBus.
Fixes : #4124
2021-07-29 07:36:48 -04:00
Matthias Clasen
19b534f7de
Avoid copying static debug strings
...
The g_source_set_name calls were showing up as a
major source of strdups in our profiles. Avoid that
by using new GLib api when available.
2021-07-28 22:42:46 -04:00
Chun-wei Fan
108c423d70
compose-parse.c: Include stdlib.h
...
That is needed for exit(), and it may not have been included by the
other headers.
2021-07-28 15:18:36 +08:00
Matthias Clasen
910f23ea19
Merge branch 'wip/otte/widgetfactory-dnd' into 'master'
...
Improve DND
See merge request GNOME/gtk!3785
2021-07-27 04:12:58 +00:00
Benjamin Otte
192bfa10cb
droptarget: Make formats construct-only writable
...
This way, it can be set in GtkBuilder.
Also make sure to only ever look at the GTypes set in the formats, as
GtkDropTarget cannot deal with mime types.
2021-07-27 04:28:04 +02:00
Benjamin Otte
0781429dc5
builder: Add support for GdkContentFormats
2021-07-27 04:28:04 +02:00
Matthias Clasen
5c4aba4b9c
Merge branch 'wip/compose-parser' into 'master'
...
Clean up the GtkComposeTable api
See merge request GNOME/gtk!3746
2021-07-26 11:51:14 +00:00
Matthias Clasen
d76460343a
sizerequest: Simplify some code
...
Avoid some repeated MAX().
2021-07-24 18:49:41 -04:00
Matthias Clasen
0d8dd0c664
sizerequest: Keep branches in sync
...
There are some unintentional differences between
the path that uses a layout manager, and the path
that uses widget vfuncs. Sync them up.
2021-07-24 18:49:41 -04:00
Matthias Clasen
ee6491f717
widget: Avoid some unnecessary back-and-forth casting
...
Avoid some unnecessary casting and a redundant early exit.
2021-07-24 18:49:27 -04:00
Matthias Clasen
7044951dab
widget: Avoid GObject data for action muxer
...
Most widget have an action muxer now, so just
store it in GtkWidgetPrivate.
2021-07-24 18:48:10 -04:00
Matthias Clasen
98986a25f9
layoutmanager: Avoid some overhead
...
Use inline getters for some things.
2021-07-24 18:48:10 -04:00
Matthias Clasen
ae3e586714
gridlayout: Avoid some unnecessary overhead
...
Use inline functions for some things.
2021-07-24 18:48:10 -04:00
Matthias Clasen
6f04ec9dae
Merge branch 'wip/exalm/gtktext-selection-fix' into 'master'
...
text: Use the widget y coordinate for gestures
See merge request GNOME/gtk!3780
2021-07-23 20:29:07 +00:00
Alexander Mikhaylenko
00cc99818d
text: Use the widget y coordinate for gestures
...
Currently we use layout coordinates and widget height when determining
where a click or drag has happened. If the widget has top padding (which it
does inside a GtkEntry, for example), the area where it's possible to select
text is shifted down, so the part of GtkText above the layout is not counted
as the draggable area and instead the equal area below the widget is counted.
Since GtkText is always single-line, there's no need to do any of that and
we can use widget coordinates. Then the draggable area matches the widget
and the problems goes away.
2021-07-23 23:37:36 +05:00
Matthias Clasen
4c41ef8de3
stack: GtkStackPage:name is not construct-only
...
We have a setter for this property, so we clearly
weren't serious when we marked it as construct-only.
Fixes : #4109
2021-07-22 16:55:15 -04:00
Matthias Clasen
a10b1b7341
Add more sysprof marks
...
Add a few more marks during gtk_init to figure out where
our startup time goes, and avoid the sysprof initialization
from distorting the first mark.
2021-07-22 12:51:32 -04:00
Benjamin Otte
72e2a46c05
inspector: Add support for displaying GL errors
...
Also, no need to show a GL version if GL isn't available.
2021-07-22 16:27:32 +02:00
Matthias Clasen
bdee75cd0f
Sync included icons from adwaita-icon-theme
...
Make sure we stay in sync with the Adwaita.
2021-07-20 17:26:59 -04:00
Benjamin Otte
af0c95c11a
build: Remove sassc option
...
Instead, ensure that sassc is made madatory on git builds (because
it is, we don't ship CSS files anymore) and not even looked for in
release builds (because do ship CSS files there).
2021-07-20 14:00:25 -04:00
Matthias Clasen
3883a98771
Merge branch 'fix-dialog-docs' into 'master'
...
gtk/builder: Port example to GTK 4
See merge request GNOME/gtk!3772
2021-07-20 12:54:55 +00:00
Maximiliano Sandoval R
aa6a9de6ba
gtk/builder: Port example to GTK 4
2021-07-20 13:22:08 +02:00
Maximiliano Sandoval R
ead31db096
password_entry: Header Capitalization on tooltip
...
See https://teams.pages.gitlab.gnome.org/Design/hig-www/feedback/tooltips.html
2021-07-20 13:00:05 +02:00
Benjamin Otte
a76f515569
cssimagecrossfade: Don't abort() when failing to parse image
...
The code wasn't checking if parsing an image failed and just returning
success.
Testcase from bug is attached.
Fixes #4101
2021-07-16 17:50:09 +02:00
Matthias Clasen
6ff85d287a
Merge branch 'wip/chergert/fix-texthistory-insert' into 'master'
...
texthistory: fix calculation of n_chars
See merge request GNOME/gtk!3756
2021-07-16 11:04:21 +00:00
Christian Hergert
5d02a8f5db
texthistory: fix calculation of n_chars
...
This should be the number of characters, not the end position. This fixes
an issue where we wouldn't coalesce insert actions together.
2021-07-15 21:26:30 -07:00
Matthias Clasen
b70b058b66
Merge branch 'transparent-optimizations' into 'master'
...
snapshot: Handle transparent opacity nodes correctly
See merge request GNOME/gtk!3754
2021-07-15 18:39:48 +00:00
Matthias Clasen
aaa68954c3
snapshot: Handle transparent opacity nodes correctly
...
Eliding totally transparent content from the node tree is
not 100% correct, since filters can make things visible, so
we need to at least preserve the bounds. We can do that by
creating a transparent color node.
2021-07-15 13:18:23 -04:00
Timm Bäder
433233258b
snapshot: Only compute start and end point if we have to
...
If the linear gradient results in a color node, we don't need the start
and end point. Only declare and compute it if we need to.
2021-07-15 16:52:38 +02:00