Commit Graph

38413 Commits

Author SHA1 Message Date
Matthias Clasen
97a9e23b85 bookmarklist: Avoid an invalid read
This shows up when running the objects-finalize
test under valgrind.
2021-03-27 19:11:56 -04:00
Matthias Clasen
8ea4721d1e filechooser: Make / work as shortcut again
Typing / is meant to open the location entry, so
prevent search from capturing that key.
2021-03-27 09:57:00 -04:00
Matthias Clasen
e8a6b504f3 filechooser: Fix fallout from GtkText
Ever since the GtkText split, the focus is no longer
on an entry, but inside it. The filechooser was never
updated for that.
2021-03-27 09:54:20 -04:00
Matthias Clasen
06ab8f2167 filechooser: Make Ctrl-L work again
Prevent search from preempting the Ctrl-L shortcut
that is meant to show the location entry.
2021-03-27 09:53:43 -04:00
Matthias Clasen
b5558f3e97 layout: Be quiet about trivialities
Commit 8b82993dde added a noisy warning
to gtk_distribute_natural_allocation to quiet a
compiler warning. It turn out that the file chooser
managed to trigger this warning, so make it a quiet
return.
2021-03-27 08:59:21 -04:00
Matthias Clasen
c9ab7c5750 Merge branch 'double-dead-keys' into 'master'
Double dead keys

See merge request GNOME/gtk!3355
2021-03-27 01:22:41 +00:00
Matthias Clasen
8a567d7932 imcontext: Tweak dead key handling
Reshuffle things to allow for a limited amount of
dead key 'chaining'. We keep up to 2 dead keys in
the preedit, so you can type
<dead_acute> <dead_cedilla> <c>
to produce ḉ, while still getting ```c with
<dead_grave> <dead_grave> <dead_grave> <c>.
2021-03-26 20:38:45 -04:00
Matthias Clasen
dbcd24adf4 composetable: Limit algorithmic checking
Only check for combinations of up to 2 dead keys with
a base character. We don't want to spend ages generating
all permutations of long sequences.
2021-03-26 20:27:55 -04:00
Matthias Clasen
f6f07ba238 Merge branch 'icon-fallback' into 'master'
Icon fallback

See merge request GNOME/gtk!3353
2021-03-26 19:33:13 +00:00
Matthias Clasen
775b45ef57 icons: Add text-x-generic
The file chooser needs at least one icon that we can
fall back to for non-directories. text-x-generic is
that icon.
2021-03-26 13:17:51 -04:00
Matthias Clasen
23cb72875d filechooser: Check that icons exist
Otherwise we end up showing missing-image in the
file chooser, and thats sad.
2021-03-26 13:17:51 -04:00
Matthias Clasen
5940de98dd icontheme: Add gtk_icon_theme_has_gicon
Add a utility function to check whether the icontheme
will produce something better than missing-image for
a GIcon. Obviously, we can only answer this question
if the GIcon is a themed icon the begin with.
2021-03-26 13:17:51 -04:00
Matthias Clasen
b5608e93d2 icons: Sync color-select-symbolic with Adwaita
This icon changed a bit since we incorporated it.
2021-03-26 11:59:01 -04:00
Matthias Clasen
1ea2ea520f icons: Add system-run-symbolic
This is used by Adwaita for devel headers, so include it.
2021-03-26 11:42:09 -04:00
Matthias Clasen
6dcef28e12 icon: Add a printer icon
This showed up as missing icon in the print dialog when
used with the hicolor icontheme.
2021-03-26 11:30:14 -04:00
Matthias Clasen
c9b312c860 icons: Add icons that are used in the inspector
These were showing up as missing icons when opening
the Inspector with the hicolor icontheme:

system-search-symbolic
go-previous-symbolic
go-next-symbolic
display-brightness-symbolic
2021-03-26 11:00:01 -04:00
Matthias Clasen
019855a27f textview: Use device timestamps for obscured cursors
Stash away the device timestamp when obscuring
the pointer, and compare it when we decice whether
to unobscure it. This fixes a problem where synthetic
motion events would make the cursor reappear
prematurely.

Fixes: #3792
2021-03-26 10:30:33 -04:00
Matthias Clasen
cdfdf031b5 text: Use device timestamps for obscured cursors
Stash away the device timestamp when obscuring
the pointer, and compare it when we decice whether
to unobscure it. This fixes a problem where synthetic
motion events would make the cursor reappear
prematurely.
2021-03-26 10:30:33 -04:00
Matthias Clasen
6f82408056 Add logging for icon fallback
Add GTK_DEBUG=iconfallback which prints out what icon names
we fall back to image-missing for.
2021-03-25 17:26:15 -04:00
Mohammed Sadiq
e211740da6 stack: Fix check if page is selected
When there is no visible child, gtk_selection_model_is_selected()
was returning TRUE for any invalid position.

So check if the page is non-NULL and match
2021-03-24 20:23:09 +05:30
Mohammed Sadiq
0351bc766c stack: Increase reference only if page is non-NULL
g_list_nth_data() may return NULL if position is off the end
2021-03-24 20:21:13 +05:30
Bilal Elmoussaoui
3761dbba8b gtk: add missing nullable annotations to StringFilter 2021-03-22 12:42:19 +01:00
Bilal Elmoussaoui
ae7b19c760 gtk: add missing nullable annotations to BoolFilter 2021-03-22 12:42:13 +01:00
Matthias Clasen
64a62ebcfb Regenerate compose sequence file
Update our compose sequences based on the current
update xorg Compose.pre file. Beyond that, remove
some deadkey sequences that we are now handling
(better) in code.
2021-03-21 21:48:03 -04:00
Matthias Clasen
a42a133a18 Move compose related tooling to a subdir
This reduces the clutter in gtk/.
2021-03-21 21:48:03 -04:00
Matthias Clasen
a41cd9b1fa compose-parse: Add a negative lookaside
Make this script parse gtk-compose-remove.txt for
sequences to remove from the xorg Compose file.
This will be used for removing some deadkey combinations
that we can handle better in code.

Also, make this script explicitly python2. I tried
porting it to python3, but gave up in the end.
2021-03-21 21:48:03 -04:00
Matthias Clasen
8bfc6afe33 imcontext: Improve dead key handling more
For sequences like ``, we want to commit the first
deadkey and then continue preedit with the second.

The alternative is to do chained deadkeys, where
entering ~~a yields ̃̀̃̃a. But we don't do that, and
I think that would be more controversial.
2021-03-21 21:48:03 -04:00
Matthias Clasen
5b67e6817c imcontext: Improve dead key handling
For sequences like `x, where we don't have a compose
sequence, we still want to commit "`x", and not silently
eat the keys.
2021-03-21 21:48:01 -04:00
Matthias Clasen
c5aa35f8ef inspector: Allow inspecting Unicode
Add a way to show text as a Unicode sequence.
This can be helpful in understanding what is
happening with text.
2021-03-21 16:05:10 -04:00
Matthias Clasen
9640bfb3fe calendar: Typo fix 2021-03-21 16:05:10 -04:00
Matthias Clasen
3cfe69d711 a11y: Don't copy attribute names in attribute sets
We only need these names when serializing a11y information
for tests. And copying these strings is entirely unnecessary.
So, just pass a callback instead.
2021-03-19 17:01:28 -04:00
Matthias Clasen
9981f19409 texttag: A few typo fixes 2021-03-19 14:04:27 -04:00
Matthias Clasen
948e032072 text tag: Typo fix 2021-03-18 22:53:37 -04:00
Matthias Clasen
21aa8ae29f Cosmetics
Remove a stale comment.
2021-03-18 22:53:37 -04:00
Matthias Clasen
4fce3ceffc Cosmetics
Pack the GtkTextAttributes struct better.
2021-03-18 22:53:37 -04:00
Matthias Clasen
1536f6a59c Merge branch 'matthiasc/for-master' into 'master'
inspector: Respect GDK_DEBUG=vulkan-disable

Closes #3748

See merge request GNOME/gtk!3312
2021-03-18 21:43:14 +00:00
Bilal Elmoussaoui
0b100229e3 IMContext: add since annotations to the new APIs 2021-03-18 22:25:38 +01:00
Matthias Clasen
eaf09a4625 Cosmetics
Pango lets us pass NULL for the font desc and language
in pango_context_get_font_metrics() to use the context
values.
2021-03-18 07:52:03 -04:00
Matthias Clasen
a576bd190b inspector: Respect GDK_DEBUG=vulkan-disable
Respect the debug settings for disabling Vulkan or GL,
and do not try to initialize those contexts. This can
be necessary to work around crashes.

Fixes: #3748
2021-03-17 23:19:08 -04:00
Matthias Clasen
e6b1443fbb label: Fix tooltips on links
Fix pointed out by Timm Baeder.

Fixes: #3765
2021-03-17 19:46:02 -04:00
Emmanuele Bassi
6d4f93bb7f Merge branch 'select-list-model-null' into 'master'
gtk: Allow selection models to take null list model during construction

See merge request GNOME/gtk!3309
2021-03-17 14:09:37 +00:00
Matthias Clasen
600cbdb7ba treestore: Initialize some local variables
gcc 11 is warning that these might be used uninitialized
otherwise.
2021-03-17 07:51:27 -04:00
Matthias Clasen
8b82993dde sizerequest: Avoid a corner case
gcc 11 warns that the code isn't safe when
n_requested_sizes is 0. Add a precondition check
to make it clear that that never happens.
2021-03-17 07:50:24 -04:00
Matthias Clasen
ea185cbdda cssshadowvalue: Handle error condition propertly
We were parsing off the end of our array before noticing
that we've gone too far. gcc 11 warns about this.
2021-03-17 07:49:06 -04:00
Matthias Clasen
ee837dfc12 checkbutton: Add a warning about cyclic groups
Setting up check or toggle button group relationships
in a cycle will lead to lockups. Add a warning about
this, and catch the simplest case with a precondition
check.

Fixes: #3763
2021-03-17 07:38:57 -04:00
Jason Francis
cd77485193
gtk: Allow selection models to take null list model during construction
This brings it in line with the documentation, and with the respective
set_model() functions.
2021-03-15 15:55:47 -04:00
Emmanuele Bassi
0a7af75639 docs: Update annotations for WidgetClass.query_action()
The parameter_type and property_name out arguments can be set to NULL.

Fixes: #3757
2021-03-15 13:48:35 +00:00
Matthias Clasen
cfc91b62b0 window: Add a way to disable F10 shortcut
This is needed for terminal emulators.

Fixes: #3727
2021-03-14 19:47:06 -04:00
Matthias Clasen
9be2f130f0 textview: Fix blinking block cursors
When we have a block cursor, we need to discard the
cached node of the line containing the cursor, in order
to get a blinking cursor.
2021-03-12 21:50:07 -05:00
Matthias Clasen
3a928c8980 textlayout: Render cursors at the end
Don't place the insertion cursor render nodes in the
middle of the text nodes for all the text. This helps
the renderer batching the text draw calls together.
2021-03-12 19:28:36 -05:00