Matthias Clasen
7447abb52b
Stop using gtk_widget_get_toplevel
...
All uses of it can be replaced by gtk_widget_get_root.
2019-05-28 20:25:16 +00:00
Matthias Clasen
6674f2764e
Drop gtk_widget_is_toplevel
...
No longer used.
2019-05-28 20:25:16 +00:00
Matthias Clasen
948347afa9
Stop using gtk_widget_is_toplevel
2019-05-28 20:25:16 +00:00
Matthias Clasen
8fc6f07327
Drop gtk_widget_get_surface
...
It is no longer used.
2019-05-28 20:25:16 +00:00
Matthias Clasen
302d2a04ae
Stop using gtk_widget_get_surface
...
Replace all uses of gtk_widget_get_surface by
gtk_native_get_surface.
2019-05-28 20:25:16 +00:00
Matthias Clasen
a65696fc9f
builder tool: Handle modal->autohide rename
...
Add a facility for renamed properties,
and use it for GtkPopover::modal.
2019-05-28 20:25:15 +00:00
Matthias Clasen
25aef96d5d
popover: Rename modal to autohide
...
This is the term we use for the surface,
and it matches the behavior a bit better
than modal.
Update all callers.
2019-05-28 20:25:15 +00:00
Matthias Clasen
09ec88d0ce
win32: Build fixes
2019-05-28 20:25:15 +00:00
Matthias Clasen
0b3a971056
window: Make unrealize work again
...
GtkWidgets unrealize accesses the frame clock
of the surface, so we need to keep the surface
in place until after we've chained up.
2019-05-28 20:25:15 +00:00
Matthias Clasen
b99962e7a2
Drop gtk_widget_set_surface
...
Not used anymore. Only GtkNative's have surfaces.
2019-05-28 20:25:15 +00:00
Matthias Clasen
43bed7986a
Drop GtkWidget::surface
...
Unneeded.
2019-05-28 20:25:15 +00:00
Matthias Clasen
0047492bf9
Work toward dropping widget->surface
...
Drop special-casing of GtkNative in
most widget vfuncs. GtkNative implementations
need to override these anyway.
2019-05-28 20:25:15 +00:00
Matthias Clasen
18788c2a86
Remove gtk_widget_get/set_has_surface
...
These serve no purpose anymore - widgets don't
have surfaces, unless they're a GtkNative.
2019-05-28 20:25:15 +00:00
Matthias Clasen
fd0a290d77
popover: Bring back the beak
...
Bring back the code that draws an arrow.
2019-05-28 20:25:15 +00:00
Matthias Clasen
61247a8921
widget: Remove a popover special case
...
We never run this since GtkPopover has its
own size_allocate, anyway.
2019-05-28 20:25:15 +00:00
Matthias Clasen
a33d4f0f49
text view: Allocate popovers
2019-05-28 20:25:15 +00:00
Matthias Clasen
6c3ffa1380
places sidebar: Allocate popovers
2019-05-28 20:25:15 +00:00
Matthias Clasen
07426da074
color swatch: Allocate popovers
2019-05-28 20:25:15 +00:00
Matthias Clasen
4cab6ae61a
entry: Allocate popovers
2019-05-28 20:25:15 +00:00
Matthias Clasen
507b2d332e
scale button: Allocate popovers
...
Call gtk_native_check_resize() from size_allocate,
as is required now. This gets volume buttons closer
to working again (dragging the slider still doesn't
work).
2019-05-28 20:25:15 +00:00
Matthias Clasen
e6f71d841e
text: Allocate popovers
...
We need to do the same thing the menu button
does, and call gtk_native_check_resize for
all our popovers
2019-05-28 20:25:15 +00:00
Matthias Clasen
1f2d3c0900
window: Don't inherit cursors across surfaces
...
I can't think of a case where this is the desired
behavior. So, instead of setting an explicit cursor
on all popups, just stop walking the parents at
surface boundaries.
2019-05-28 20:25:15 +00:00
Matthias Clasen
f3559fe0f0
widget: Optimize resize propagation
...
When a GtkNative widget is marked as resize_needed,
we need a current position for its parent and we need
the parent to be allocated (so we can position our
surface), but we don't need the parent to be marked
as resize_needed, since the parent size is entirely
independent of the popup size.
2019-05-28 20:25:15 +00:00
Matthias Clasen
27596c328a
widget: Improve warning messages
...
When we print warnings about a widget, using
gtk_widget_get_name() is slightly better than
G_OBJECT_TYPE_NAME(), since it will give us
the widgets unique name when available.
2019-05-28 20:25:15 +00:00
Matthias Clasen
49268c23fd
popover: Use GdkSurface::autohide
...
The new api is made for this case.
2019-05-28 20:25:14 +00:00
Matthias Clasen
d2951d3aac
Rename surface constructors
...
We want to use a gdk_surface_new_popup for popups,
and align the constructor names with the surface
types, so rename
gdk_surface_new_popup -> gdk_surface_new_temp
gdk_surface_new_popup_full -> gdk_surface_new_popup
The temp surface type will disappear eventually.
2019-05-28 20:25:14 +00:00
Matthias Clasen
346bd3f6b5
menu: Stop using gdk_surface_new_temp
...
We can just as well use gdk_surface_new_popup.
2019-05-28 20:25:14 +00:00
Matthias Clasen
bab5836e89
Drop gtk_widget_register_surface
...
This is no longer used.
2019-05-28 20:25:14 +00:00
Matthias Clasen
fa25b06a28
popover: Stop using gtk_widget_register_surface
...
The GtkRoot implementations are expected to handle
the necessary surface setup themselves, going forward.
2019-05-28 20:25:14 +00:00
Matthias Clasen
81a673c908
window: Stop using gtk_widget_register_surface
...
The GtkRoot implementations are expected to handle
the necessary surface setup themselves, going forward.
2019-05-28 20:25:14 +00:00
Matthias Clasen
55c286661b
menu: Stop using gtk_widget_register_surface
...
It does not seem to be necessary at all.
2019-05-28 20:25:14 +00:00
Matthias Clasen
989792cbc0
Drop child surfaces
...
Drop gdk_surface_child_new and the child surface type,
since we no longer use them. Deprecate surface apis
that only make sense with child surfaces.
2019-05-28 20:25:13 +00:00
Matthias Clasen
52c3507ae1
widget: Stop using child surface apis
...
All our surfaces are toplevels now, and thus all native.
2019-05-28 20:25:13 +00:00
Matthias Clasen
43d4c908c9
a11y: Stop supporting ATK_XY_SCREEN
...
We were already not supporting ATK_XY_PARENT, and we can't
support global positions, so just always do ATK_XY_WINDOW.
2019-05-28 20:25:13 +00:00
Matthias Clasen
d6a85188b6
xim: Stop using child surface apis
...
We no longer have child surfaces.
Drop code that only makes sense in
their presence.
2019-05-28 20:25:13 +00:00
Matthias Clasen
c3c33ac168
entry completion: Use a popover
...
This lets us remove a use of GTK_WINDOW_POPUP,
which should eventually be going away.
We need to disable treeview search, since it
creates a toplevel that will disrupt our grabbing
popup, causing it to be dismissed.
We don't need to grab ourselves, since the popover
code does it for us. We don't need to reposition our
window, since the popover takes care of that too.
2019-05-28 20:25:13 +00:00
Matthias Clasen
0d25233e39
main: Use gtk_widget_get_native
2019-05-28 20:25:13 +00:00
Matthias Clasen
66ccc825de
main: Remove special-case hiding popopvers
...
This is now happening in GDK, so we don't have
to do this here anymore.
2019-05-28 20:25:13 +00:00
Matthias Clasen
580aa8204f
widget: Remove some unneeded popover special-casing
2019-05-28 20:25:13 +00:00
Matthias Clasen
82d506acd8
Adwaita: Give popover menus a background
...
This makes the hover highlight on menu items visible.
2019-05-28 20:25:13 +00:00
Matthias Clasen
1cbc26d9ee
menubutton: Allocate the popover
...
This is temporary, until we've figured out
the proper way of hooking this up
2019-05-28 20:25:13 +00:00
Matthias Clasen
4bf4f04d1f
Adapt to new popover lifecycle
...
We need to unparent popovers in dispose.
2019-05-28 20:25:13 +00:00
Matthias Clasen
6ab8ab87c8
Reimplement GtkPopover
2019-05-28 20:25:13 +00:00
Matthias Clasen
2764652b3c
menushell: Keep outside clicks working
...
We need to unset event propagation limits here
to keep receiving outside clicks that cause us
to close the menu.
2019-05-28 20:25:13 +00:00
Matthias Clasen
2606ca0bd1
Introduce event controller propagation limits
...
Limit event handlers by default to only handle
events targeting the same surface as their widget.
2019-05-28 20:25:13 +00:00
Matthias Clasen
54662f4ca0
widget: Don't snapshot foreign children
...
When snapshotting, we walk down the widget tree.
We need to skip children that have a different
surface, since those will do their own snapshot.
2019-05-28 20:25:13 +00:00
Matthias Clasen
8713397948
root: Make gtk_root_get_display public
...
This is following the precedent of making
GtkNative getters public.
2019-05-28 20:25:02 +00:00
Matthias Clasen
f2447e06af
GtkRoot: Drop overlap with GtkNative
...
Drop the parts from the GtkRoot interface
that have been taken over by GtkNative.
2019-05-28 20:24:39 +00:00
Matthias Clasen
5de06f47cf
widget: Use GtkNative
2019-05-28 20:24:39 +00:00
Matthias Clasen
9059eee2f0
Review and replace uses of get_toplevel
...
Now that roots can have parent widgets, we need to
carefully examine all calls of gtk_widget_get_toplevel,
and replace them with gtk_widget_get_root if we want
the nearest root, and not the ultimate end of the parent
chain.
2019-05-28 20:24:39 +00:00
Matthias Clasen
c1d5e82d95
Use GtkNative APIs instead of GtkRoot
2019-05-28 20:24:39 +00:00
Matthias Clasen
7dcb163ee6
Add gtk_widget_get_native
...
This is a common enough operation to deserve api.
2019-05-28 20:24:39 +00:00
Matthias Clasen
d4257d20f8
root: Require GtkNative
2019-05-28 20:24:39 +00:00
Matthias Clasen
5bf2b633bb
window: Implement GtkNative
...
Adapt GtkWindow to implement both GtkRoot and GtkNative.
2019-05-28 20:24:39 +00:00
Matthias Clasen
d51c85cf4e
native: Add to docs
2019-05-28 20:24:37 +00:00
Matthias Clasen
12a16a298b
Introduce GtkNative
...
Split off the parts of GtkRoot that are specific
to widgets having a surface into the GtkNative
interface.
2019-05-28 19:54:32 +00:00
Matthias Clasen
618f1f08ec
main: guard window-specific code paths
...
This was overlooked when I first tried to
make things for GtkRoot.
2019-05-28 19:54:32 +00:00
Matthias Clasen
afcf3e66f6
widget: guard popover-specific code paths
...
This is essentially a special case just for GtkPopover,
which is the last widget with a child surface.
2019-05-28 19:54:32 +00:00
Matthias Clasen
ff1150d87c
Export gtk_widget_render privately
...
We need it in gtkwindow.c and gtkpopover.c.
2019-05-28 19:54:32 +00:00
Matthias Clasen
81548911de
file chooser widget: Drop the priv pointer
2019-05-28 03:02:33 +00:00
Matthias Clasen
236983d2aa
file chooser dialog: Drop the priv pointer
2019-05-28 02:48:26 +00:00
Matthias Clasen
2ae531ee9f
file chooser dialog: Make final
2019-05-28 02:42:14 +00:00
Matthias Clasen
e795c0c67e
file chooser widget: Make final
2019-05-28 02:41:15 +00:00
Matthias Clasen
6a7bf78b15
file chooser button: Make final
2019-05-28 02:40:08 +00:00
Matthias Clasen
933a9fba70
font chooser dialog: Drop the priv pointer
2019-05-27 22:37:41 -04:00
Matthias Clasen
27f854042d
font chooser widget: Drop the priv pointer
2019-05-27 22:27:47 -04:00
Matthias Clasen
19de2ce937
font chooser dialog: Make final
2019-05-28 00:57:47 +00:00
Matthias Clasen
1b34e15893
font chooser widget: Make final
2019-05-28 00:56:41 +00:00
Matthias Clasen
e11c1fcb91
font button: Make final
2019-05-28 00:55:28 +00:00
Matthias Clasen
dbdb137428
app chooser dialog: Drop the priv pointer
2019-05-27 20:51:46 -04:00
Matthias Clasen
e0a9952a56
app chooser widget: Drop the priv pointer
2019-05-27 20:44:01 -04:00
Matthias Clasen
b080a980d9
app chooser dialog: Make final
2019-05-27 20:30:59 -04:00
Matthias Clasen
5c16de71f5
app chooser widget: Make final
2019-05-27 20:30:48 -04:00
Matthias Clasen
5b4dfb3079
app chooser button: Make final
2019-05-27 20:30:35 -04:00
Matthias Clasen
4b4e370c9d
color chooser dialog: Drop the priv pointer
2019-05-27 20:23:50 -04:00
Matthias Clasen
d5fe6fa517
color chooser widget: Drop the priv pointer
2019-05-27 20:23:50 -04:00
Matthias Clasen
fe2865259f
color chooser dialog: Make final
2019-05-27 20:23:50 -04:00
Matthias Clasen
44640aeeea
color chooser widget: Make final
2019-05-27 20:23:50 -04:00
Matthias Clasen
36e76db0d0
color button: Make final
2019-05-27 20:23:50 -04:00
Matthias Clasen
2ef8bd0b95
entry completion: Make final
2019-05-27 20:23:50 -04:00
Matthias Clasen
90aebd4f84
text tag table: Make final
...
And also move private function to a private header.
2019-05-27 20:23:50 -04:00
Matthias Clasen
f111e3f467
text mark: Use standard padding
2019-05-27 20:23:50 -04:00
Matthias Clasen
1e2874fc59
text tag: Use standard padding
2019-05-27 20:23:50 -04:00
Matthias Clasen
b49d1e8c6b
overlay: Make final
2019-05-27 20:23:50 -04:00
Timm Bäder
e22073dc97
sizerequest: Fix request mode for layout managers
...
We can't just call GtkWidgetClass::get_request_mode() anymore. If the
widget has a layout manager, we need to ask that one.
2019-05-27 18:12:26 +02:00
Timm Bäder
4134b67827
layoutmanager: Never pass NULL pointers to ->measure
...
We don't do that in GtkWidgetClass::measure() implementations either, so
make the semantics match.
2019-05-27 18:12:26 +02:00
Timm Bäder
23ddac2e72
filechooserentry: Correctly annotate a return value as (nullable)
2019-05-27 18:12:26 +02:00
Timm Bäder
3a26efb5ca
filechooserentry: Rename function to make sense
...
This is GtkFileChooserEntry API, not GtkFileChooser API.
2019-05-27 18:12:25 +02:00
Matthias Clasen
cfe648eb11
Don't load print backends more than once
...
The modules don't depend on the default display
at all, and loading them more than once makes
the displayclose test fail here, locally.
2019-05-27 12:59:36 +00:00
Matthias Clasen
be305d6dab
check menu item: Drop the priv pointer
2019-05-27 00:41:58 -04:00
Matthias Clasen
5e4512d4c7
check menu item: Use standard padding
2019-05-27 04:33:30 +00:00
Matthias Clasen
273fa042a8
radio menu item: Drop the priv pointer
2019-05-27 00:32:39 -04:00
Matthias Clasen
d26eb4fce7
radio menu item: Make final
2019-05-27 04:26:34 +00:00
Matthias Clasen
5d3c85c7e9
radio button: Make final
2019-05-27 00:10:48 -04:00
Matthias Clasen
a29fe385df
check button: Use standard padding
2019-05-27 04:09:41 +00:00
Matthias Clasen
6d9bac47b3
toggle button: Use standard padding
2019-05-27 04:08:07 +00:00
Matthias Clasen
bf2ff5f582
grid: Use standard padding
2019-05-26 23:30:21 -04:00
Matthias Clasen
4e7f251b18
search bar: Make final
2019-05-26 23:27:15 -04:00
Matthias Clasen
749c9720ce
paned: Make final
2019-05-27 03:25:34 +00:00
Matthias Clasen
b68554b14a
spin button: Make final
2019-05-26 23:22:47 -04:00
Matthias Clasen
bba97eae36
search entry: Make final
2019-05-26 23:21:07 -04:00
Matthias Clasen
a2d2c8afc4
range: Use standard padding
2019-05-26 23:18:38 -04:00
Matthias Clasen
546cbd55eb
scale: Use standard padding
2019-05-26 23:17:28 -04:00
Matthias Clasen
4730b5c281
menu item: Use standard padding
2019-05-26 23:14:36 -04:00
Matthias Clasen
e57da00824
menu shell: Use standard padding
2019-05-26 23:13:55 -04:00
Matthias Clasen
a62a7ab282
menu button: Make final
2019-05-26 23:10:57 -04:00
Matthias Clasen
54f469bba4
revealer: Make final
2019-05-27 03:08:37 +00:00
Matthias Clasen
ff115472e3
entry: Use standard padding
2019-05-27 03:03:47 +00:00
Matthias Clasen
30925a532d
separator tool item: Make final
2019-05-26 23:01:34 -04:00
Matthias Clasen
85cd9ab7c6
separator menu item: Make final
2019-05-26 23:00:15 -04:00
Matthias Clasen
efed83d3c6
status bar: Make final
2019-05-27 02:51:44 +00:00
Matthias Clasen
53010fd0b3
expander: Make final
2019-05-26 22:50:03 -04:00
Matthias Clasen
58bad1d409
cell area context: Drop the priv pointer
2019-05-26 22:44:08 -04:00
Matthias Clasen
7167113da9
cell area context: Use standard padding
2019-05-26 22:40:02 -04:00
Matthias Clasen
19b3f692d1
separator: Make final
2019-05-26 22:37:56 -04:00
Matthias Clasen
835f392196
scrollbar: Make final
2019-05-26 22:37:42 -04:00
Matthias Clasen
4a3ae35832
header bar: Make final
2019-05-26 22:32:21 -04:00
Matthias Clasen
8cffa11a8b
info bar: Make final
2019-05-26 22:30:33 -04:00
Matthias Clasen
aea82cb331
level bar: Make final
2019-05-26 22:24:14 -04:00
Matthias Clasen
f47a84f233
image: Make final
2019-05-26 22:22:40 -04:00
Matthias Clasen
86f81a11d8
gl area: Use standard padding
2019-05-26 22:19:21 -04:00
Matthias Clasen
23f55f1c24
combo box: Use standard padding
2019-05-26 22:19:21 -04:00
Matthias Clasen
72ef09f55d
combo box text: Make final
2019-05-26 22:16:58 -04:00
Matthias Clasen
537cf2acec
cell view: Drop the priv pointer
2019-05-26 22:14:20 -04:00
Matthias Clasen
265daf9082
cell view: Make final
2019-05-26 22:14:20 -04:00
Matthias Clasen
886de6c164
action bar: Make final
2019-05-26 21:57:42 -04:00
Matthias Clasen
597c816368
cell area box: Drop the priv pointer
2019-05-26 21:56:00 -04:00
Matthias Clasen
50f753c60a
builder: Use standard padding
2019-05-26 21:43:34 -04:00
Matthias Clasen
d5b41a55a6
cell area: Drop the priv pointer
2019-05-26 21:42:22 -04:00
Matthias Clasen
51036ff043
cell area: Use standard padding
2019-05-27 01:34:06 +00:00
Matthias Clasen
dcfa2fa4bd
aspect frame: Make final
2019-05-27 01:32:24 +00:00
Matthias Clasen
b2da9c919b
assistant: Drop the priv pointer
2019-05-26 21:20:53 -04:00
Matthias Clasen
028417185f
assistant: Make final
2019-05-26 21:08:01 -04:00
Matthias Clasen
651a2b2e40
accel label: Make final
2019-05-26 21:01:33 -04:00
Matthias Clasen
9ce9f0427e
about dialog: Make final
2019-05-26 20:49:19 -04:00
Matthias Clasen
ee299e80fa
cell renderer pixbuf: Drop the priv pointer
2019-05-26 20:46:38 -04:00
Matthias Clasen
12042332ef
cell renderer pixbuf: Make final
2019-05-26 20:44:07 -04:00
Matthias Clasen
8dba12e1c5
cell renderer progress: Drop the priv pointer
2019-05-26 20:42:08 -04:00
Matthias Clasen
367f350f1f
cell renderer progress: Make final
2019-05-26 20:40:15 -04:00
Matthias Clasen
dc918a00fc
cell renderer spin: Drop the priv pointer
2019-05-26 20:37:42 -04:00
Matthias Clasen
c21d74e48d
cell renderer spin: Make final
2019-05-26 20:35:26 -04:00
Matthias Clasen
d20c7e3077
cell renderer spinner: Drop priv pointer
2019-05-26 20:33:38 -04:00
Matthias Clasen
0a41fc5452
cell renderer spinner: Make final
2019-05-26 20:30:04 -04:00
Matthias Clasen
70af933804
cell renderer text: Drop the priv pointer
2019-05-26 20:28:38 -04:00
Matthias Clasen
a5c2ad18d5
cell renderer text: Use standard padding
2019-05-26 20:21:50 -04:00
Matthias Clasen
509cd3ae61
cell renderer toggle: Drop the priv pointer
2019-05-26 20:20:11 -04:00
Matthias Clasen
c1cc94b08b
cell renderer toggle: Make final
2019-05-26 20:17:15 -04:00
Matthias Clasen
ebc2bb9a2f
cell renderer combo: Drop the priv pointer
2019-05-26 20:12:40 -04:00
Matthias Clasen
b55f1b4c8f
cell renderer combo: Make final
2019-05-26 20:07:53 -04:00
Matthias Clasen
11e121d344
cell renderer accel: Drop the priv pointer
2019-05-26 19:51:49 -04:00
Matthias Clasen
0b65c4476d
cell renderer accel: Make final
2019-05-26 19:47:04 -04:00
Matthias Clasen
b835367413
cell renderer: Use standard padding
2019-05-26 23:35:24 +00:00
Matthias Clasen
695b450e80
calendar: Drop the priv pointer
2019-05-26 19:20:26 -04:00
Matthias Clasen
76f2a8f2dc
calendar: Make final
2019-05-26 18:56:56 -04:00
Matthias Clasen
796ee8816c
spinner: Make final
2019-05-26 18:50:49 -04:00
Matthias Clasen
864da2fcd5
progress bar: Make final
2019-05-26 18:49:21 -04:00
Matthias Clasen
6a669265ac
print operation: Drop the priv pointer
2019-05-26 18:38:44 -04:00
Matthias Clasen
cc1c1df405
print operation: Use standard class padding
2019-05-26 18:38:41 -04:00
Matthias Clasen
15f4c40a91
Rename gtkprintbackend.h to gtkprintbackendprivate.h
...
Follow the naming convention for private headers.
2019-05-26 22:23:52 +00:00
Matthias Clasen
33bb80f387
print job: Make final
...
No need to subclass this.
2019-05-26 17:51:24 -04:00
Matthias Clasen
651b29b797
printer: Drop the priv pointer
2019-05-26 17:51:02 -04:00
Matthias Clasen
9422973c2a
printer: Make private
...
We want to subclass this in print backends,
but we don't want to allow out-of-tree subclassing.
2019-05-26 20:35:55 +00:00
Matthias Clasen
cb2369bf70
Rename gtkprinter-private.h
...
Name this header gtkprinterprivate.h, following
our convention for private headers.
2019-05-26 16:29:57 -04:00
Matthias Clasen
6a5963a395
stack switcher: Make final
...
This should not be subclassed.
2019-05-26 16:23:17 -04:00
Matthias Clasen
5ec165e088
stack sidebar: Make final
...
This should not be subclassed.
2019-05-26 16:19:44 -04:00
Matthias Clasen
c0eea6c5de
print dialog: Drop the priv pointer
2019-05-26 20:08:01 +00:00
Matthias Clasen
bb46cc6470
print dialog: Make final
...
Nobody should subclass this.
2019-05-26 19:55:41 +00:00
Matthias Clasen
210a439365
page setup dialog: Drop the priv pointer
2019-05-26 19:43:41 +00:00
Matthias Clasen
8438510034
page setup dialog: Make final
...
No subclassing needed.
2019-05-26 19:38:39 +00:00
Matthias Clasen
fb334b1b15
switch: Make final
...
This should not be subclassed.
2019-05-26 15:34:31 -04:00
Matthias Clasen
96eefd49fa
icon theme: Make final
...
Nobody should subclass GtkIconTheme or GtkIconInfo.
2019-05-26 15:33:10 -04:00
Matthias Clasen
c2fd6b9fa4
textview: Use standard padding
...
Given that GtkSourceView exists, we will have
to keep GtkTextView subclassable until a replacement
appears.
2019-05-26 15:25:46 -04:00
Matthias Clasen
e9bc767691
viewport: Cleanup
2019-05-26 15:18:42 -04:00
Matthias Clasen
8de9f41b5d
viewport: Make final
...
No need to derive from it.
2019-05-26 15:16:00 -04:00
Matthias Clasen
4df64bce83
color plane: Don't allocate 0-size textures
...
This triggers critials, and does us no good.
2019-05-26 00:01:15 -04:00
Matthias Clasen
8d1f05f5ac
Cosmetics
2019-05-26 04:00:07 +00:00
Benjamin Otte
0cd8dd4294
inspector: Make updates overlay not crash
...
... when a window gets hidden and later reshown.
The code now properly cleans up a window when it gets unmapped instead
of trying to retain previous updates information.
2019-05-25 22:32:35 +02:00
Matthias Clasen
6c3e874701
menu button: Add popup/popdown functions
...
These are needed, after all.
2019-05-24 00:30:39 +00:00
Matthias Clasen
5ec7a31cf1
menu button: Add a relief property
...
This is used in various places.
2019-05-21 19:05:41 -04:00
Daniel Boles
7575d5216f
ScrolledWindow: Annotate h|vadjustment as nullable
...
The code interprets NULL to mean 'create a new Adjustment and use that,
deposing the old one', but we neither documented nor annotated that
ability, so users could be unsure how to "unlink" a specific Adjustment.
While users could pass their own Adjustment in if this wasn't nullable,
we already support NULL in the code, and it doesn't hurt to document
that this is available as a convenience while retaining the behaviour.
2019-05-21 21:21:14 +01:00
Daniel Boles
45a98d6a93
ScrolledWindow: Replace deprecated (allow-none)
...
We prefer (nullable) for in arguments and (optional) for out arguments
that can be passed as NULL to avoid assigning anything to them.
2019-05-21 21:21:14 +01:00
Federico Mena Quintero
2a9b3c6a0c
Use g_once for all the mkenums template files
...
Without this, initialization of enum/flags values from multithreaded
programs may not work correctly.
Fixes #1617 .
2019-05-21 10:32:08 -05:00
Benjamin Otte
9f739ab135
Merge branch 'win32-enable-werror' into 'master'
...
Win32 enable werror
See merge request GNOME/gtk!861
2019-05-21 14:39:53 +00:00
Timm Bäder
a474beb7b8
widget: Don't always call get_display() when allocating
...
The GTK_DISPLAY_DEBUG_CHECK macro will cleverly only call the function
if any of the display debug flags are set, so in the common case it
won't even be executed.
2019-05-21 08:17:13 +02:00
Benjamin Otte
ca2bffc060
imcontextime: Add missing semicolon
...
I wonder how thoroughly this was tested... ;)
2019-05-21 07:23:30 +02:00
Benjamin Otte
b36b9323fc
win32: Add missing enum value to switch statement
2019-05-21 07:23:30 +02:00
Benjamin Otte
3ace1f5939
imcontextime: Remove unused variables
2019-05-21 07:23:30 +02:00
Benjamin Otte
4f0cc3086f
win32: Rename a shadowing variable
2019-05-21 07:23:30 +02:00
Benjamin Otte
9521af0f6a
window: Remove unneeded variable
...
The variable would show up as a gcc warning in builds without X11
support.
2019-05-21 07:23:30 +02:00
Benjamin Otte
a1d08b4b52
rendernode: Take a graphene_point_t for the offset
...
... instead of 2 floats.
2019-05-21 06:43:59 +02:00
Matthias Clasen
5327799046
inspector: Don't apply button api to menu buttons
2019-05-20 23:33:45 +00:00
Matthias Clasen
322507f24c
builder-tool: Remove debug spew
2019-05-20 00:04:57 +00:00
Matthias Clasen
a798e2ff5e
lock button: Don't allow subclassing
2019-05-19 17:12:24 -04:00
Matthias Clasen
c8a901c1dc
link button: Don't allow subclassing
2019-05-19 21:05:40 +00:00
Matthias Clasen
825b48911b
Fix a compiler warning
2019-05-19 16:46:07 -04:00
Matthias Clasen
56e93332d8
popover menu: Make not subclassable
2019-05-19 16:46:07 -04:00
Matthias Clasen
cbab83b843
popover: Cosmetics
...
Use the same amount of padding as everywhere else.
2019-05-19 20:34:49 +00:00
Matthias Clasen
2dec0b8d7f
volume button: Don't allow subclassing
...
If you want to subclass, there's GtkScaleButton.
2019-05-19 20:34:13 +00:00
Matthias Clasen
8c1bce72d5
settings: Drop the priv pointer
2019-05-19 20:04:47 +00:00
Matthias Clasen
ced07b92a2
application window: Drop the priv pointer
2019-05-19 19:52:34 +00:00
Matthias Clasen
d9626820e9
sizegroup: Drop the priv pointer
2019-05-19 19:22:53 +00:00
Matthias Clasen
f6dc6bed07
settings: Make not subclassable
...
Part of being more explicit about what
we allow to be subclassed and what not.
2019-05-19 15:13:19 -04:00
Matthias Clasen
8808e194cf
Forgotten file
2019-05-19 15:09:36 -04:00
Matthias Clasen
be40ecbfe6
shortcuts window: Make not subclassable
...
Part of being more explicit about what
we allow to be subclassed and what not.
2019-05-19 19:03:49 +00:00
Matthias Clasen
c31eadc3a1
css provider: Make not subclassable
...
Part of being more explicit about what
we allow to be subclassed and what not.
2019-05-19 18:41:33 +00:00
Matthias Clasen
963152a85a
size group: Make not subclassable
...
Part of being more explicit about what
we allow to be subclassed and what not.
2019-05-19 17:49:07 +00:00
Matthias Clasen
f656d38e59
password entry: Make not subclassable
...
Part of being more explicit about what
we allow to be subclassed and what not.
2019-05-19 13:29:37 -04:00
Matthias Clasen
3250e703b6
Padding review
...
Ensure that the class structs of all subclassable
types have sufficient padding (standardizing on 8
slots, here).
GtkBox
GtkButton
GtkDrawingArea
GtkFixed
GtkFrame
2019-05-19 17:18:48 +00:00
Matthias Clasen
2c9a1f8b6c
message dialog: Make not subclassable
...
Part of being more explicit about what
we allow to be subclassed and what not.
2019-05-19 16:49:45 +00:00
Matthias Clasen
bd6c4a0dec
Padding review
...
Ensure that the class structs of all subclassable
types have sufficient padding (standardizing on 8
slots, here).
GtkApplication
GtkWidget
GtkContainer
GtkWindow
GtkDialog
GtkApplicationWindow
GtkToolItem
GtkBin
2019-05-19 16:24:44 +00:00
Matthias Clasen
68f2cd1f09
Trivial: Remove a few +'s
2019-05-19 15:29:04 +00:00
Matthias Clasen
bcfff5e469
Drop gtk_button_clicked
...
This is not an api we want to propagate anymore.
If you need to, you can still emit the "clicked"
action signal on a button using g_signal_emit_by_name.
2019-05-18 14:33:41 -04:00
Matthias Clasen
cf47bb9355
gtk: Stop using gtk_button_clicked
...
This function is going away.
2019-05-18 14:27:09 -04:00
Benjamin Otte
6e2df85ec8
Merge branch 'wip/otte/for-master' into 'master'
...
Wip/otte/for master
Closes #1900
See merge request GNOME/gtk!854
2019-05-18 15:19:29 +00:00
Benjamin Otte
2bad613cb0
text: Ensure indexes are ordered properly
2019-05-18 17:06:08 +02:00
Benjamin Otte
fe592cd414
widget: Make gtk_widget_render() static
2019-05-18 17:06:08 +02:00
Matthias Clasen
9d16715eb3
Merge branch 'menubutton-no-button' into 'master'
...
Menubutton: don't derive from GtkButton
See merge request GNOME/gtk!853
2019-05-18 13:13:48 +00:00
Matthias Clasen
0eb7784785
Update all users for menubutton changes
2019-05-18 13:06:32 +00:00
Matthias Clasen
9111541807
a11y: Adapt to menu button changes
2019-05-18 13:06:32 +00:00
Matthias Clasen
6a7d70cc9f
menubutton: Don't derive from GtkToggleButton
...
Make GtkMenuButton a widget that has a
toggle button, instead of deriving from it.
We give it icon-name and label properties,
to let people do what they expect to do
with menu buttons.
2019-05-18 13:06:32 +00:00
Timm Bäder
1e613485d3
sidebarrow: Don't focus on click
...
This is sometimes important, e.g. when saving in the filechooser. We
don't want to move the focus out of the filename entry in that case.
2019-05-18 13:47:59 +02:00
Timm Bäder
3a863ccd00
filechooserwidget: Remove unused gobject data
2019-05-18 13:47:59 +02:00
Timm Bäder
7cec5323d1
Merge branch 'fix-non-csd-menu-corners-gtk4' into 'master'
...
Adwaita: Don't round the non-csd menu corners (GTK4)
See merge request GNOME/gtk!835
2019-05-17 13:46:06 +00:00
Antoine Jacoutot
7d8be1c1ff
pid_get_parent: fix potential leak of kp
2019-05-17 11:55:16 +00:00
Benjamin Otte
061b36e6e4
Merge branch 'wip/otte/for-master' into 'master'
...
Wip/otte/for master
See merge request GNOME/gtk!843
2019-05-15 23:12:49 +00:00
Benjamin Otte
3e5f5d3959
flattenlistmodel: Do proper check
...
If we want the model items to be listmodels, we don't need to do a ==
comparison. We need to do g_type_is_a(). Implementations of listmodels
are obviously fine.
2019-05-15 23:39:37 +02:00
Timm Bäder
7793818f2a
query: Remove private pointer
2019-05-15 17:53:18 +02:00
Timm Bäder
d53d7eb9e7
filechooserwidget: Remove some unused struct members
2019-05-15 17:08:58 +02:00
Timm Bäder
d9b6435f9a
accellabel: use a box layout
...
Instead of a GtkBox child widget.
2019-05-15 17:08:21 +02:00
Carlos Garnacho
c4cf72ecb8
gdk/x11: Remove gdk_disable_multidevice()
...
Core events will be discontinued, so this call is meaningless now.
2019-05-15 01:05:20 +02:00
Matthias Clasen
599806ca82
Try again to fix profiler setup
...
We were trying to store the profiler_id
in a struct that does not exist at the time.
Store it somewhere else.
2019-05-14 20:09:44 +00:00
Matthias Clasen
c009611401
Fix registration of profiler DBus api
2019-05-14 12:06:55 +00:00
Timm Bäder
66dcbcdfe7
cellrendererpixbuf: Avoid creating expander textures...
...
... every frame. Create them once when setting the pixbuf instead.
2019-05-14 09:05:51 +02:00
Timm Bäder
2164c3dba7
cellrendererpixbuf: Remove an unused local variable
2019-05-14 08:51:03 +02:00
Antoine Jacoutot
0334ea1c88
pid_get_parent: fix for OpenBSD
...
This fixes a long standing bug in pid_get_parent on OpenBSD (which was mine
so... my fault). kp wasn't properly allocated and the function could return
random failures.
2019-05-13 20:47:46 +02:00
Matthias Clasen
9281e058f3
Merge branch 'modifier-events' into 'master'
...
key controller: Don't eat modifier events
Closes #1884
See merge request GNOME/gtk!839
2019-05-13 17:31:19 +00:00
Matthias Clasen
91d6893f02
key controller: Don't eat modifier events
...
The key controller was consuming key events
for modifier keys, for no entirely convincing
reason, which leads to problems when somebody
actually listens for those, such as the simple
input method does for C-S-u processing.
Closes: https://gitlab.gnome.org/GNOME/gtk/issues/1884
2019-05-13 17:01:51 +00:00
Florian Müllner
66c8a996f9
dialog: Use default decoration for non-custom headerbars
...
There are two ways GTK can add a headerbar to a dialog:
- the dialog is constructed with the :use-header-bar property
- all windows should use client-side decorations
In the first case, the headerbar is added by GtkDialog with no
dedicated style class, and in the latter by GtkWindow with the
"default-decoration" style.
As a result, dialogs with plain titlebars can end up with clearly
distinct and inconsistent styles.
To address this, allow headerbars to track whether they should use
the "default-decoration" style and enable it for dialogs.
https://gitlab.gnome.org/GNOME/gtk/merge_requests/836
2019-05-12 20:09:03 +00:00
Matthias Clasen
1318d3748a
about dialog: Fix page visibility
...
The handling of page visibility broke when the dialog
was ported to GtkStackPage in 52b83ac553
.
Closes: https://gitlab.gnome.org/GNOME/gtk/issues/1877
2019-05-12 18:20:52 +00:00
Matthias Clasen
04754d753b
Reinstate the activate-focus keybinding
...
Commit 3b62d9c027
was a bit overzealous in
removing not just the public API for activating the focus
widget, but also the plumbing needed to make the keybinding
work.
Closes: https://gitlab.gnome.org/GNOME/gtk/issues/1879
2019-05-12 18:07:33 +00:00
Benjamin Otte
0886ade182
cssparser: Make gsk_renderer_consume_url() return a string
...
We don't want to return a GFile because GFile can't handle can't deal
with data: urls.
That makes the code a bit more complicated that doesn't deal with those
URLs, but it makes the other code actually work.
GtkCssImageUrl also now decodes data urls immediately instead of only at
the first load. So don't use data urls if you care about performance.
2019-05-12 17:28:19 +02:00
Benjamin Otte
b76d5bda37
cssparser: Don't allow commit_token() on block EOF
...
When we're at the end of a block and gtk_css_parser_get_token() returns
NULL, gtk_css_parser_commit_token() still consumed the next token.
It does not anymore.
This does not affect the CSS parser, but it exposes issues with the
render parser, which previously just consumed too many closing } tokens
in the past.
2019-05-12 17:28:19 +02:00
Benjamin Otte
6f6b07aaae
testsuite: Stop using g_test_bug()
...
The calls used old bugzilla URLs and nobody cared about that.
So apparently they are very unused.
There's also a potential conflict between gitlab and bugzilla URLs and
what base bug to use there.
The old usages have been converted to comments.
2019-05-12 17:28:18 +02:00
Benjamin Otte
8be95ca348
css: Add data URL parsing to images
2019-05-12 17:27:01 +02:00
Benjamin Otte
5da58ba47d
css: Add gtk_css_data_url_parse()
...
This surprisingly decodes data URLs.
2019-05-12 17:27:01 +02:00
nana-4
7b7fe14b23
Adwaita: Don't round the non-csd menu corners
...
Otherwise, the menu will have ugly black corners.
See https://gitlab.gnome.org/GNOME/gtk/issues/1661
2019-05-12 17:40:47 +09:00
Matthias Clasen
4f0ea69e9b
settings: Update docs
...
We no longer create settings on demand.
2019-05-09 14:53:32 +00:00
Matthias Clasen
f2e197a389
css provider: Stop mentioning key themes
...
We no longer do this.
2019-05-09 14:53:32 +00:00
Matthias Clasen
cb51699098
profiler: Update the D-Bus interface name
...
Sysprof is bumping its name to Sysprof3, so
lets change to that before this gets used.
2019-05-08 16:49:47 +00:00
Matthias Clasen
d91f04eefd
Correct theme loading docs
...
The docs were failing to mention the VARIANT.
2019-05-08 14:47:08 +00:00