Matthias Clasen
6dfd92b191
aspectframe: Fix use in ui files
...
GtkAspectFrame code assumes that its child will be in
self->child, but that is only the case if we arrange
for <child> in ui files to end up calling
gtk_aspect_frame_set_child(). Therefore, implement
GtkBuildable.
Fixes : #3020
2020-08-05 14:05:47 -04:00
Matthias Clasen
d7c4f93c76
Merge branch 'wip/compute-size' into 'master'
...
Compute size via signal
See merge request GNOME/gtk!2325
2020-08-05 16:19:19 +00:00
Matthias Clasen
df19049dde
inspector: Stop showing settings bindings
...
We were playing fast-and-loose with private GIO data
when showing settings bindings in the property editor,
and this was causing crashes.
We can show this information again if GIO ever gets
api to introspect it.
Fixes : #3015
2020-08-05 11:11:58 -04:00
Jonas Ådahl
2ff74eb667
gdk/toplevel: Negotiate surface size via a compute-size signal
...
GTK will not up front know how to correctly calculate a size, since it
will not be able to reliably predict the constraints that may exist
where it will be mapped.
Thus, to handle this, calculate the size of the toplevel by having GDK
emitting a signal called 'compute-size' that will contain information
needed for computing a toplevel window size.
This signal may be emitted at any time, e.g. during
gdk_toplevel_present(), or spontaneously if constraints change.
This also drops the max size from the toplevel layout, while moving the
min size from the toplevel layout struct to the struct passed via the
signal,
This needs changes to a test case where we make sure we process
GDK_CONFIGURE etc, which means we also needs to show the window and
process all pending events in the test-focus-chain test case.
2020-08-05 15:49:00 +02:00
Matthias Clasen
d44d9ad40d
Adwaita: Reduce the solid csd borders
...
Reduce the borders we draw ourselves for solid csd
to 1 pixel. It still doesn't look great, but at least
it doesn't look outright broken.
Fixes : #2997
2020-08-05 08:47:00 -04:00
Matthias Clasen
e60d6f70bf
Merge branch 'drop-accel-label' into 'master'
...
Drop accel label
See merge request GNOME/gtk!2368
2020-08-05 03:44:43 +00:00
Matthias Clasen
8562c623d3
Drop GtkAccelLabel
...
We no longer use this widget anywhere.
2020-08-04 23:05:18 -04:00
Matthias Clasen
2b8aeed4d8
Drop GtkCallback
...
It is no longer used in any of our public APIs.
2020-08-04 22:24:33 -04:00
Matthias Clasen
ce89f1eda1
selectionfiltermodel: Drop a leftover symbol
...
We decided not to do new_for_type() for list model
wrappers, so this function does not exist.
2020-08-04 22:11:34 -04:00
Matthias Clasen
f561000124
docs: Clean up many dangling links
...
In many cases, these were references to no longer
existing api, so some rewording was necessary.
2020-08-04 22:11:34 -04:00
Matthias Clasen
0e1afbbdad
Merge branch 'popoverflow' into 'master'
...
popover: Set overflow: hidden
Closes #3012
See merge request GNOME/gtk!2365
2020-08-04 15:47:50 +00:00
Matthias Clasen
d6e352e862
popover: Set overflow: hidden
...
This keeps overlay scrollbars from wrecking our
nice rounded corners.
Fixes : #3012
2020-08-04 11:10:49 -04:00
Matthias Clasen
f7eb5f8897
a11y: Don't do unnecessary work
...
Only serialize all the attributes if we are actually
going to print them.
2020-08-04 11:02:00 -04:00
Matthias Clasen
7398323b82
scrolledwindow: Fix a11y support code
...
This error was introduced by me in 971ee2d28a
and causes a crash in the scrolling benchmark in gtk-demo.
Fixes : #3014
2020-08-04 11:00:32 -04:00
Jonas Ådahl
cebe469898
gtk/window: Don't remember size from GdkSurface
...
If we're maximized, and try to remember the non-maximized size, we'd
still get the maximized size.
2020-08-04 15:04:24 +02:00
Matthias Clasen
e818e98187
Merge branch 'pagesetup-leftover' into 'master'
...
Pagesetup leftover
See merge request GNOME/gtk!2362
2020-08-04 03:47:13 +00:00
Matthias Clasen
942a90cd64
pagesetupdialog: Fix leftover tree model code
...
This was overlooked when the rest of the dialog
was ported to use list models.
2020-08-03 20:25:00 -04:00
Matthias Clasen
20c1fb0a0a
docs: Tweak documentation for list widgets
...
Fix numerous cases of : vs :: for signal references,
add some more details here and there.
2020-08-03 18:43:25 -04:00
Matthias Clasen
7972dc8776
docs: Unify docs around incremental operations
...
Sync up the wording around incremental filtering
and sorting to be more similar.
2020-08-03 18:43:25 -04:00
Matthias Clasen
7cb0dd9039
docs: Fix signal references
...
It is :: for signals, : for properties, | for actions.
2020-08-03 18:43:25 -04:00
Alex
c8d51a7b98
show: remove obsolete comment
...
g_app_info_launch_default_for_uri supports x-scheme-handler directly since at least 2.27.1, released almost 10 years ago.
Link: https://bugzilla.gnome.org/show_bug.cgi?id=631410
Link: 9b262f1c5f
2020-08-03 15:36:36 +00:00
Matthias Clasen
83682d919f
treeview: Don't react to clicks on cell editables
...
We need to let these pass through, otherwise we
interfere with the entries that are used for editing.
Fixes : #3008
2020-08-03 07:51:09 -04:00
Matthias Clasen
348a38a876
textview: Make insert-emoji replace the selection
...
This is the expected behavior, and matches what
GtkText does.
Fixes : #2996
2020-08-02 20:48:14 -04:00
Matthias Clasen
0d98bab82b
Merge branch 'filechooser-completions' into 'master'
...
filechooser: Prevent over-eager completions
Closes #2995
See merge request GNOME/gtk!2347
2020-08-03 00:23:28 +00:00
Matthias Clasen
992c5fade7
Merge branch 'wip/chergert/gtk4-textview-fix-selections' into 'master'
...
textlinedisplaycache: short-circuit y_range invalidation
Closes #2975
See merge request GNOME/gtk!2348
2020-08-03 00:23:13 +00:00
Christian Hergert
94d17a6809
textlinedisplaycache: short-circuit y_range invalidation
...
If we have a y==-1 then we are generally invalidating the whole textview.
For this case, we can just discard the entire GtkTextLineDisplay cache.
Fixes #2975
2020-08-02 16:35:50 -07:00
Matthias Clasen
9605e49fbf
filechooser: Prevent over-eager completions
...
We don't want the completions to pop up after we call
gtk_file_chooser_set_current_name(). This used to be
handled by gtk_entry_set_text() blocking the completion
signal handler. We don't have that anymore, so block
popup completion around the call to gtk_editable_set_text()
instead.
Fixes : #2995
2020-08-02 19:18:11 -04:00
Matthias Clasen
71be1751c6
builder-tool: Rewrite top/left-attach
...
Rewrite the GtkGrid:top/left-attach child properties
to the GtkGridLayoutChild:row/column layout properties.
Update expected test output to match.
2020-08-02 17:58:03 -04:00
Matthias Clasen
ed13e6a41e
grid layout: Rename some properties
...
Rename GtkGridLayoutChild:left-attach/top-attach to
GtkGridLayoutChild:column/row. Update all users.
Fixes : #2967
2020-08-02 17:58:03 -04:00
Matthias Clasen
4340f75304
textbuffer: Fix a test failure
...
The previous change to gtktextbuffer.c was breaking
the textiter testcase.
2020-08-02 17:23:26 -04:00
Matthias Clasen
0add626822
textbuffer: Be careful with tags when copying
...
We can only insert tags in the buffer if they come
from the same GtkTextTagTable as the buffer uses.
If that is not the case, paste the text without tags.
Fixes : #2991
2020-08-02 13:54:06 -04:00
Matthias Clasen
793ea05f4a
Merge branch 'text-drag-select' into 'master'
...
textview: Only claim the event when appropriate
Closes #2999
See merge request GNOME/gtk!2344
2020-08-02 17:45:30 +00:00
Matthias Clasen
c959f9c701
textview: Only claim the event when appropriate
...
Don't claim the event unconditionally for the click gesture,
since we may want to start a drag selection.
Fixes : #2999
2020-08-02 13:32:37 -04:00
Matthias Clasen
f8a303b0e5
popovermenu: Avoid a critical
...
While we guarantee that the widget that a controller
is attached to stays around while it is handling an event,
the same is not true for the root that the widget belongs
to. In corner cases (such as clicking "Close" in the
fallback window menu), it may already be gone.
Avoid a critical in that case.
Fixes : #2998
2020-08-02 13:09:00 -04:00
Matthias Clasen
ddda963f81
Merge branch 'selectable-label-draw' into 'master'
...
label: Redraw when focus changes
See merge request GNOME/gtk!2342
2020-08-02 16:40:12 +00:00
Matthias Clasen
9bf50e5650
Merge branch 'linked-button-fixes' into 'master'
...
Adwaita: Add linked styling for particular button widgets
Closes #2939 and #1903
See merge request GNOME/gtk!2339
2020-08-02 16:39:59 +00:00
Matthias Clasen
1c8471c38f
label: Redraw when focus changes
...
When focus changes in a selectable label, we need to
redraw to make the text caret (dis)appear.
2020-08-02 12:11:38 -04:00
Matthias Clasen
17208ca7fa
Go back to keeping a list of event controllers
...
This reverts 4b9e5304cc
. It caused a number of regressions,
such as event controller ordering changes.
2020-08-02 12:01:06 -04:00
Matthias Clasen
1c16cb751f
Revert "Add gtk_widget_prepend_controller"
...
This reverts commit 692cc42e10
.
2020-08-02 12:01:06 -04:00
Matthias Clasen
127612d213
Revert "entry completion: Make keynav work again"
...
This reverts commit 53a30eaa12
.
2020-08-02 12:01:06 -04:00
Matthias Clasen
888a65c1fb
shortcutswindow: Clear search entry on unmap
...
Otherwise, the search term will linger around until
somebody clicks the search button again.
Fixes : #2981
2020-08-02 09:33:52 -04:00
nana-4
891027f0c3
Adwaita: Add linked styling for particular button widgets
...
Those button widgets need some special linked styling like what
combobox has.
Fixes https://gitlab.gnome.org/GNOME/gtk/-/issues/1903
Fixes https://gitlab.gnome.org/GNOME/gtk/-/issues/2939
2020-08-02 19:14:26 +09:00
nana-4
5f00675de4
appchooserbutton: Set a CSS name
...
Otherwise it has a CSS name "widget".
2020-08-02 18:26:40 +09:00
Matthias Clasen
d17e51df06
Merge branch 'inspector-device-details' into 'master'
...
inspector: Introspect enum values
See merge request GNOME/gtk!2338
2020-08-02 03:25:33 +00:00
Matthias Clasen
0d608c492d
inspector: Introspect enum values
...
Stop hardcoding arrays with names for enum values.
This has bitten us repeatedly as these enums were
changed around; time to stop doing it.
2020-08-01 23:05:24 -04:00
Matthias Clasen
e0c7d7daeb
menusectionbox: Avoid a critical warning
...
The popover may already be gone when the item
is activated. Don't trigger a critical in that
case.
Related: #2986
2020-08-01 22:03:41 -04:00
Matthias Clasen
64ed69c56f
label: Be more selective when selecting on focus-in
...
We don't want to select on focus-in when the focus
comes from a child. The case where this does harm
is when you activate copy or paste actions from the
context menu. We close the menu before triggering the
action, and if that causes the text in the label to
be selected, unexpected things happen, since the action
applies to the current selection.
This is the equivalent of cd9f5733b3
for GtkLabel.
2020-08-01 22:01:52 -04:00
Matthias Clasen
74662776d4
togglebutton: Don't crash on click
...
The code used to do
if (parent_class->clicked)
parent_class->clicked (...)
That is pointless because the parent_class never changes,
so there' no need for that if and commit 415946eb0f
took it out. Unfortunately, p arent_class->clicked is NULL
though, so the whole call needs to go.
2020-08-01 20:09:05 -04:00
Timm Bäder
41b458fba7
Fix and improve various code samples
2020-08-01 20:01:04 +02:00
Timm Bäder
f716daa483
aboutdialog: Fix a code sample
...
gdk_texture_new_from_file takes a GFile these days.
2020-08-01 19:30:31 +02:00
Timm Bäder
415946eb0f
togglebutton: Modernice source file
...
Make this a little less ancient looking.
2020-08-01 19:24:54 +02:00
Timm Bäder
65b79d2585
Avoid refering to old GtkContainer API in the docs
2020-08-01 15:34:59 +02:00
Timm Bäder
e976825342
button: Use g_object_notify_by_pspec()
2020-08-01 15:34:07 +02:00
Timm Bäder
b489a1f6b5
stack: Allow NULL names
...
Does this work?
2020-08-01 15:27:13 +02:00
Timm Bäder
2f65459fcc
stack: Only compare page names if the new page has one
2020-08-01 15:26:53 +02:00
Timm Bäder
f5af18738b
listbox: Add _append
...
To have easy replacement API for gtk_container_add.
2020-08-01 15:26:28 +02:00
Timm Bäder
b37b85333d
adwaita: Reset popover background in backdrop
...
Otherwise it inherits the generic background color from .background
Fixes #2766
2020-08-01 10:34:04 +02:00
Timm Bäder
76f2396764
popover: Use gtk_widget_add_css_class
2020-08-01 10:31:38 +02:00
Timm Bäder
547842e7f0
window: Keep titlebar after main child
...
Fixes #2949
2020-08-01 09:30:48 +02:00
Timm Bäder
ebaea07286
inspector: Avoid some failing casts
...
We might be inspecting a non-widget here, so can't just cast that.
2020-08-01 08:59:46 +02:00
Timm Bäder
0822de1971
textview: Only show "insert emoji" menu item if editable
...
Fixes #2974
2020-08-01 08:59:46 +02:00
Timm Bäder
bf24da0d80
inspector: Add a type check
...
We only connect to this signal if sl->obejct is a GtkAccessible, so only
disconnect from it on the same condition.
Fixes #2980
2020-08-01 08:59:41 +02:00
Rico Tzschichholz
d1cab4fbdd
gtk: Add annotations to improve GIR API
2020-07-31 20:56:36 +02:00
Matthias Clasen
fc31f3d629
placesview: Keep up with GLib deprecations
...
We were using deprecated GBookmarkFile api here too.
2020-07-31 12:54:57 -04:00
Matthias Clasen
72e14bd6dd
recentmanager: Keep up with GLib deprecations
...
All the time_t based apis in GBookmarkFile have
been deprecated; use GDateTime instead. This
changes a few GtkRecentManager APIs.
2020-07-31 12:18:47 -04:00
Matthias Clasen
99bb8bb3f7
numericsorter: Ignore deprecations
...
We use g_value_get_char here; replacing it with
g_value_get_schar is not entirely trivial, so just
ignore deprecations for now.
2020-07-31 11:36:03 -04:00
Matthias Clasen
ff42c94174
gtkicontheme: Stop using GTimeVal
...
It has been deprecated and the deprecation warnings
break our -Werror build in ci.
2020-07-31 11:22:16 -04:00
Matthias Clasen
8c66e2ff66
widget: Drop unnecessary includes
...
We don't need to include gobjectnotifyqueue.c anymore,
since style properties are gone. This should fix the
build with -Werror.
2020-07-31 10:34:37 -04:00
Matthias Clasen
62803c19f5
Merge branch 'focus-active' into 'master'
...
Focus active
Closes #2390
See merge request GNOME/gtk!2324
2020-07-30 17:50:54 +00:00
Matthias Clasen
643d873f47
eventcontrollerkey: Update im focus when active window changes
...
Use the new GTK_CROSSING_ACTIVE crossing events to update
the im context focus when the window becomes active or
inactive. IBus requires this, since it has only a single,
global focus location.
Fixes : #2390
2020-07-30 13:23:45 -04:00
Matthias Clasen
b0d40403e1
window: Emit GTK_CROSSING_ACTIVE crossing events
...
Emit crossing events when the active window changes.
We don't want to emit GTK_CROSSING_FOCUS events, since
every window has its own focus location (focus does not
jump from window to window), so we use the new
GTK_CROSSING_ACTIVE type of crossing event for this.
2020-07-30 13:22:26 -04:00
Matthias Clasen
12170acf46
Define GTK_CROSSING_ACTIVE
...
Document the different crossing event kinds that we use,
and add GTK_CROSSING_ACTIVE. We are going to use it in
the future when the active window changes.
2020-07-30 13:21:28 -04:00
Carlos Garnacho
96452a2e46
gdk: Rename gdk_seat_get_physical_devices() to gdk_seat_get_devices()
...
We don't want to tell what they are, and the distinction is now less
clear. Remove the adjective from the function name.
2020-07-30 18:44:40 +02:00
Carlos Garnacho
2f792396d7
gtkimcontext: Avoid gdk_device_get_associated_device()
...
Query the seat for that.
2020-07-30 18:30:13 +02:00
Carlos Garnacho
6730b26b43
gtktextview: Avoid gdk_device_get_associated_device()
...
Query the seat for that.
2020-07-30 18:30:13 +02:00
Carlos Garnacho
6e83d1f54e
gtkwindowhandle: Avoid gdk_device_get_associated_device()
...
Query the seat for that.
2020-07-30 18:19:44 +02:00
Carlos Garnacho
fb9db7fede
gtkdragsource: Avoid gdk_device_get_associated_device()
...
Query the seat for that.
2020-07-30 18:19:44 +02:00
Benjamin Otte
4dc2ab61c9
Merge branch 'wip/otte/geometry' into 'master'
...
Some GdkGeometry cleanups
See merge request GNOME/gtk!2322
2020-07-30 15:31:27 +00:00
Benjamin Otte
13d3afa56e
Remove unused GDK_HINT_POS
2020-07-30 17:06:15 +02:00
Benjamin Otte
3dd0e6d0b1
Remove gravity from GdkGeometry
...
It's always northwest
2020-07-30 17:06:15 +02:00
Benjamin Otte
11db6ad574
Remove aspect ratio from GdkGeometry
...
It's unused.
2020-07-30 17:06:15 +02:00
Benjamin Otte
b12b06e917
gdk: Remove base_size and increment from GdkGeometry
...
It's unused.
2020-07-30 16:55:45 +02:00
neyfag
a27c3039d0
Scroll to cursor after canceling a selection
2020-07-30 15:52:57 +02:00
Rico Tzschichholz
f02a17805e
a11y: Fix typo in GtkATContext::state-changed docs
2020-07-30 09:06:49 +02:00
Matthias Clasen
e8026e29b6
Merge branch 'surface-cleanup' into 'master'
...
Surface cleanup
See merge request GNOME/gtk!2317
2020-07-30 03:43:30 +00:00
Matthias Clasen
abf8cbeaea
a11y: Set an accessible role for GtkLevelBar
...
Use the 'meter' role for GtkLevelBar, and set the
appropriate properties.
Update the docs and add a test.
2020-07-29 22:46:00 -04:00
Matthias Clasen
c0de580d46
a11y: Set an accessible role for GtkExpander
...
Use the button accessible role for GtkExpander
and set attributes as appropriate.
Update the documentation and add a test.
2020-07-29 22:46:00 -04:00
Matthias Clasen
144114bf40
a11y: Set accessible role for GtkLinkButton
...
Set the accessible role for GtkLinkButton to button.
We don't use the 'link' role since ARIA says "if it
behaves like a button, use 'button'".
Update docs and add a test.
This changes should not be neccessary, since
GtkLinkButton derives from GtkButton, see #2965 .
2020-07-29 22:46:00 -04:00
Matthias Clasen
c68fe1053a
a11y: Set an accessible role for GtkTextView
...
Use the text-box accessible role for GtkTextView
and set properties as appropriate.
Update the documentation and add a test.
2020-07-29 22:46:00 -04:00
Matthias Clasen
4d012a6d95
Rename gdk_surface_queue_expose
...
We don't have expose events anymore; instead, there
is a ::render signal. So rename queue_expose to
queue_render to match.
Update all callers.
2020-07-29 22:40:01 -04:00
Jonas Ådahl
c7c71137b2
gdk/monitor: Remove gdk_monitor_work_area and GdkMonitor::work-area
...
It's not a portable API, so remove it. The corresponding backend
specific functions are still available, if they were implemented, e.g.
gdk_macos_monitor_get_workarea() and gdk_x11_monitor_get_workarea().
2020-07-29 17:57:30 +02:00
Matthias Clasen
d40b1d31b5
Merge branch 'doc-fixes' into 'master'
...
Doc fixes
See merge request GNOME/gtk!2314
2020-07-29 11:24:48 +00:00
Matthias Clasen
5fd03f3297
Merge branch 'a11y-work' into 'master'
...
A11y work
See merge request GNOME/gtk!2312
2020-07-29 11:19:22 +00:00
Matthias Clasen
d0abe5a919
filter: Typo fix
2020-07-28 22:40:10 -04:00
Matthias Clasen
26200c0f7e
filechooser: Document the response.activate action
2020-07-28 22:40:10 -04:00
Matthias Clasen
07bf9045fb
a11y: Document GtkATContext::state-changed
2020-07-28 22:40:10 -04:00
Matthias Clasen
e07b9605bc
a11y: Fix a few glitches in the role enum
...
When the enumeration was synced with the latest draft
of the ARIA spec, the math and note roles missed the boat.
2020-07-28 22:20:40 -04:00
Matthias Clasen
b5f256937f
Merge branch 'wip/carlosg/device-api-cleanup' into 'master'
...
Cleanups to device/event API
See merge request GNOME/gtk!2313
2020-07-28 23:49:35 +00:00
Carlos Garnacho
cab1dcb696
gdk: Conflate GDK devices
...
Make GdkEvents hold a single GdkDevice. This device is closer to
the logical device conceptually, although it must be sufficient for
device checks (i.e. GdkInputSource), which makes it similar to the
physical devices.
Make the logical devices have a more accurate GdkInputSource where
needed, and conflate the event devices altogether.
2020-07-29 01:27:51 +02:00
Carlos Garnacho
2736633a60
inspector: Show tool axes, instead of device axes
...
We are moving away from the latter as they are inconsistent with
Wayland. Make the inspector introspect known tools and their info,
instead.
2020-07-29 01:27:51 +02:00