Matthias Clasen
f03c7c379a
text: Fix selection bubble handling
...
Same fix as the previous commit.
2019-06-11 17:46:01 +00:00
Matthias Clasen
67c82e8bd9
text view: Fix selection bubble handling
...
We can't call gtk_widget_destroy on something
that wasn't added as a child to a container -
it ends up calling gtk_container_remove, which
asserts if it doesn't find the child.
2019-06-11 17:45:55 +00:00
Matthias Clasen
37090a7ab4
popover menu: Set autohide
...
This is the expected behavior for menus.
2019-06-11 17:38:22 +00:00
Matthias Clasen
ddee5cfc43
widget: Improve focus handling
...
Make gtk_widget_real_focus do the right
thing for focusable widgets with children.
A case where this is (now) relevant is
an entry with a context popover.
2019-06-11 17:14:49 +00:00
Matthias Clasen
31066a697b
window: Fix focus wraparound
...
If tab focus falls off the end, and we have an empty headerbar,
we end up with window->focus == NULL. Don't let that happen
2019-06-11 10:14:14 -04:00
Matthias Clasen
f1b9e7c23b
Rename a bunch of private headers
...
We want to follow the convention that all
private headers have names ending in private.h
2019-06-10 03:10:13 +00:00
Matthias Clasen
9182f0fe9d
Adwaita: Make selection in menus visible
2019-06-10 02:27:56 +00:00
Georges Basile Stavracas Neto
c82dcc8e3a
build: Install gtkpopovermenubar.h
...
It is not listed in 'gtk_public_headers', so it is not
installed, and breaks anyone including gtk.h
2019-06-09 15:40:55 -03:00
Matthias Clasen
3c1163e7f4
popovermenubar: Add docs
2019-06-09 17:42:11 +00:00
Matthias Clasen
8e5985d05e
Typo fix
2019-06-09 17:42:10 +00:00
Matthias Clasen
17ec958f30
Rename GtkPopoverBar to GtkPopoverMenuBar
...
Clarity over beauty.
2019-06-09 17:42:07 +00:00
Matthias Clasen
65f71cdbae
popover bar: Add setters
...
Add setters/getters for the menu-model property.
2019-06-09 17:40:51 +00:00
Matthias Clasen
d936967b7a
Adwaita: Adapt to popover bar changes
...
Add some initial styling for popover bars
and popover menus. This needs revision.
2019-06-09 17:40:08 +00:00
Matthias Clasen
d78b6451b3
popoverbar: Use a box layout
...
Its the cool way to do layout these days.
2019-06-09 17:40:00 +00:00
Matthias Clasen
bc4f744562
main: Warn if GDK sends us bad focus events
...
The new rule for focus events from the windowing
system is: We only want them for toplevels. If you
put focus on popups, we don't want to know about
it, and you still need to deliver key events to
the toplevel.
2019-06-09 17:38:54 +00:00
Matthias Clasen
6342287288
popover menu: Disappear on focus out
...
We try to keep focus inside by wrapping arrow keynav.
But focus can still escape. If it does, we want to
disappear, like any good menu should.
2019-06-09 17:38:54 +00:00
Matthias Clasen
143ea34ca1
popover bar: Don't grab focus away from open menus
...
It makes them unhappy and disappear.
2019-06-09 17:38:54 +00:00
Matthias Clasen
abc9fef615
popover menu: Implement focus
...
We want to cycle around for up/down arrows.
2019-06-09 17:38:54 +00:00
Matthias Clasen
18fd512c80
popover bar: Implement focus
...
This is the proper way to do focus.
We want to cycle around for left/right arrows.
2019-06-09 17:38:54 +00:00
Matthias Clasen
f82898f393
model button: Make left/right switch submenus
...
This is expected menu keynav behavior: If the
focused item has a submenu, open it on right
arrow press. And if we are in a submenu title,
make left arrow press close it.
2019-06-09 17:38:54 +00:00
Matthias Clasen
ae8373f116
menu button: Use proper focus api
...
Widgets are supposed to call gtk_widget_child_focus.
Calling internal focus_move function directly makes
us skip the childs ::focus() implementation, which
is where the magic happens.
2019-06-09 17:38:54 +00:00
Matthias Clasen
f01e5d2267
popover bar: Add arrow keynav
...
Make left/right cycle the active item
among the bars children. Separate the styling
for the active item from :hover, since it is
a separate state, and only mixed up in menus
for historical reasons.
2019-06-09 17:38:54 +00:00
Matthias Clasen
0d800acd40
popover bar: Add a model property
...
This makes it less annoying to use in ui files.
2019-06-09 17:38:54 +00:00
Matthias Clasen
4ecaa754e2
popover bar: Break out items
...
These will grow enough functionality that its
worth having an object for it.
2019-06-09 17:38:54 +00:00
Matthias Clasen
6f689ec5b1
label: Fix mnemonic visibility handling
...
With non-widgets having children, we can no
longer assume that using gtk_container_forall
lets us walk the entire tree.
2019-06-09 17:38:54 +00:00
Matthias Clasen
583c6a9072
popover bar: towards menubar-like behavior
...
Make the open popover follow the pointer.
2019-06-09 17:38:54 +00:00
Matthias Clasen
c1791d030a
widget: Ignore natives for picking
...
The natives transforms are not set up properly
to make this work, so ignore them here, for now.
This my need to be revisited later.
2019-06-09 17:38:54 +00:00
Matthias Clasen
d736778c2f
popover: Respect alignment for positioning
...
We lost the code that takes the halign of
the popover into account when positioning it.
Bring it back, since we want to use it for
popover menus.
2019-06-09 17:38:54 +00:00
Matthias Clasen
f91cc6c473
Introduce a popover bar
...
This is meant to grow into a menubar replacement
with popovers. For now, it is just a box of menubuttons,
and not very much like a menubar at all.
2019-06-09 17:38:54 +00:00
Matthias Clasen
609f1659bd
Rationalize popover menu apis
...
Make gtk_popover_new_from_model() return a GtkPopoverMenu,
rename it to gtk_popover_menu_new_from_model() and add
a relative_to argument to gtk_popover_menu_new().
Update all callers.
2019-06-09 17:38:54 +00:00
Matthias Clasen
724f315ae6
Stop exporting gtk_popover_bind_model
...
We can't improve popover menus as long as we
have to be able to work with any old popover
we're given. Remove this, so we can make
gtk_popover_new_from_model return a subclass.
2019-06-09 17:38:54 +00:00
Matthias Clasen
59ed4da717
box layout: Handle native children
...
These need to be skipped in measuring,
and we need to call gtk_native_check_resize
on them during allocation.
This was showing up as the new-style
context menu in widget-factory forcing
its relative-to box to grow when its
shown.
2019-06-09 17:38:53 +00:00
Matthias Clasen
640c7939ea
modelbutton: Sizing fixes
...
We only want to reserve indicator size if
there are any checks or radios in the popover.
Unfortunately, GtkIcon has a hardcoded min-size
of 16, defeating this use. Work around by
wrapping each indicator in a box, and showing/
hiding the actual indicator.
2019-06-09 17:38:53 +00:00
Matthias Clasen
698e39bcac
popover menu: Fix style classes
...
We want the same style classes that are produced
when creating a popover from a menu model.
2019-06-09 17:38:53 +00:00
Matthias Clasen
e080f35d25
menu section box: Add style classes for display hints
...
This makes it easier to realize some of the new
styles for popover menus.
2019-06-09 17:38:53 +00:00
Matthias Clasen
3313322864
menu section box: Introduce more section variants
...
Allow display-hint to be circular-buttons or
inline-buttons, to produce variations of horizontal
button layouts.
2019-06-09 17:38:53 +00:00
Matthias Clasen
dd572ed10a
model button: Look up accels if needed
...
When we are not given an explicit accel (as is
the case when the popover is constructed from
a model), then look it up from the GtkApplication
at map time.
2019-06-09 17:38:53 +00:00
Matthias Clasen
fc3d3fb3af
model button: Show shortcuts
...
Most of the machinery for this is already
in place. We just need to add an accel property
to GtkMenuButton and pass it through.
2019-06-09 17:38:53 +00:00
Matthias Clasen
eda31dff5d
model button: Redo layout
...
Move checks to the left, and introduce a size group
to align things. The size group is provided by the
parent, using the new ::indicator-size-group property.
2019-06-09 17:38:53 +00:00
Matthias Clasen
30f6bea25f
model button: Drop centered, inverted properties
...
These properties were only useful for titles,
and we have a role for that now.
2019-06-09 17:38:53 +00:00
Matthias Clasen
fc6010be37
model button: Add a role for titles
...
This gets us out of using direct presentational
markup like 'inverted' and 'centered' and will
make it easier to play with different layout.
Use the new role when creating popover
menus from models.
2019-06-09 17:38:53 +00:00
Matthias Clasen
0d59ece4a4
model button: Small fixes
...
Make iconic model buttons work better.
2019-06-09 17:38:53 +00:00
Christian Hergert
4a954a9a1c
gtkapplication: track changes to profiler D-Bus API
...
Recently, to make things more forward-portable, Sysprof and Mutter altered
the API for org.gnome.Sysprof3.Profiler. This tracks those changes.
2019-06-06 17:24:33 -07:00
Christian Hergert
828c36636c
va_marshaller: add various va_marshallers
...
We don't need to cover every case with a va_marshaller, but there are a
number of them that are useful because they will often only be connected
to by a single signal handler.
Generally speaking, if I opened into a file to add a va_marshaller, I just
set all of them.
2019-06-06 15:30:42 -07:00
Matthias Clasen
0aa9e16294
Bring brink skip_allocate
...
This was removed by accident in 580aa8204f
,
together with some no longer needed popover
special-casing.
2019-06-05 00:31:53 +00:00
Benjamin Otte
bb5871fd81
docs: Remove mention of queue_draw_area()
...
and queue_draw_region(). They're gone since 73650c6da2
.
2019-06-04 14:59:32 +00:00
Timm Bäder
ac333d712d
snapshot: Make append_node_internal transfer-full
...
There is only one case where we do *not* directly unref the node again
after calling this.
2019-06-04 16:48:08 +02:00
Benjamin Otte
836635d1ae
builder: Allow values of type GType
...
In particular this allows setting the item-type property of GListStore.
2019-06-04 06:11:44 +02:00
Benjamin Otte
6a0e0031b1
builder: Make GListStore buildable
...
Treats GListStore like any other object and allows <child> to add items
to it.
2019-06-04 06:11:44 +02:00
Timm Bäder
88344ccf4e
widget: Unref priv->{allocated_,}transform
2019-06-03 17:03:02 +02:00
Matthias Clasen
c7ccaa5ef2
menu: Update scrollbar policy
...
We want to avoid sizing problems for small menus
due to the vertical scrollbar imposing a min-height on
its slider.
Closes: https://gitlab.gnome.org/GNOME/gtk/issues/1930
2019-06-03 14:49:13 +00:00
Michael Natterer
caf50bcb93
gtk: fix weed_out_neg_zero() in spinbutton and scale
...
It was not copying the terminating \0 in the string, breaking output
in spinbutton (didn't try scale). Fixes #3452 .
(cherry picked from commit ae2ef1472c
)
2019-06-03 00:34:44 +00:00
Christian Hergert
41e373f10c
gtk: fix all uses of g_cclosure_marshal_generic
...
This adds specific marshallers for all of the locations where a generic
marshaller is being used. It also provides va_marshallers to reduce the
chances that we get stack traces from perf going through ffi_call_unix64.
This is forward ported from gtk-3-24.
# Conflicts:
# gtk/gtkeventcontrollerkey.c
# gtk/gtkeventcontrollermotion.c
# gtk/gtkgesture.c
# gtk/gtkgesturemultipress.c
2019-06-02 14:24:51 -07:00
Matthias Clasen
aa267c1c84
Add gtkmenubarprivate.h
...
Move private api into a private header.
2019-06-01 21:56:49 +00:00
Matthias Clasen
3dea73bd4a
Cosmetics
...
Remove comments that are old enough to still
talk about option menus and item factories.
2019-06-01 21:56:49 +00:00
Matthias Clasen
03964b5edb
Remove an unused enum
...
No use of GtkArrowPlacement anywhere.
2019-06-01 04:11:22 +00:00
Matthias Clasen
0c7e567c32
Merge branch 'global-coords' into 'master'
...
Drop global coordinates
See merge request GNOME/gtk!899
2019-06-01 03:53:13 +00:00
Matthias Clasen
fcdea03796
Fix menu item accessible
...
The menu shell is not a direct parent anymore.
2019-06-01 03:39:12 +00:00
Matthias Clasen
feef0ef93a
menu: Fix destruction
...
Now that menubar and menu are containers
with internal structure, we need to be
careful about doing the right thing in
forall and dispose.
2019-06-01 03:32:10 +00:00
Matthias Clasen
6c201e7927
menu: Fix keynav between submenus
...
Left/Right arrow now work again to enter
or leave a submenu.
2019-05-31 23:36:35 +00:00
Matthias Clasen
ace30d42ea
menu: Bring back the scroll keybindings
...
Home, End, Page Up/Down, work again.
2019-05-31 23:36:35 +00:00
Matthias Clasen
e599336ad4
menu: Keep selected item in view
...
This gets us most of the way to working scrolling.
2019-05-31 23:36:35 +00:00
Matthias Clasen
8ba3c75682
More menu work
2019-05-31 23:36:35 +00:00
Matthias Clasen
3f6272f56e
More menu restructuring
...
Make GtkMenuBar use a box as well,
and let GtkMenuShell get the items
from GtkMenuBar and GtkMenu via
a vfunc. Use that to fix the keynav
implementation in GtkMenuShell.
2019-05-31 23:36:35 +00:00
Matthias Clasen
13e010deb6
menu: Use a scrolled window
...
This brings back some support for scrolling.
We still need to reinstate some of the
scroll-to-selected and keynav functionality.
2019-05-31 23:36:35 +00:00
Matthias Clasen
ae1ba79f63
menu: Use a box
...
This makes some of the GtkMenuShell api
no longer work, since we don't let the
menu shell code maintain the list of
children anymore.
2019-05-31 23:36:35 +00:00
Matthias Clasen
17cd6d7f44
widget: Stop setting root coords in events
...
Nothing should use them anymore.
2019-05-31 23:36:35 +00:00
Matthias Clasen
f645c4e923
menu: Remove global coordinates
...
This commit removes support for scrolling and
for the keep-up triangle from GtkMenu, and gets
rid of all use of global coordinates.
2019-05-31 23:36:34 +00:00
Benjamin Otte
4e464b4960
menu: Only set position in one place
2019-05-31 23:36:34 +00:00
Benjamin Otte
d971c4e69d
menu: Simplify function
...
No need to do complicated math when we can just look at the allocation.
2019-05-31 23:36:34 +00:00
Benjamin Otte
e702a33432
menuitem: Introduce gtk_menu_item_get_menu_shell()
...
Returns the parent menu shell or NULL.
Replace all calls to gtk_widget_get_parent() with this function.
2019-05-31 23:36:34 +00:00
Lubomir Rintel
8799e5798b
builder-tool: Rewrite GtkDialog
...
Changes
<object class="GtkDialog">
<child internal-child="vbox">
<...>
<child internal-child="action_area">...</child>
...
</...>
<packing />
</child>
<object>
to
<object class="GtkDialog">
<child internal-child="content_area">
<...>
...
</...>
</child>
<child internal-child="action_area">...</child>
<object>
2019-05-31 17:03:12 +00:00
Matthias Clasen
97e15b8718
scrolled window: respect overlay-scrolling setting
...
If the gtk-overlay-scrolling setting is FALSE,
don't use overlay scrollbars.
2019-05-31 15:04:23 +00:00
Matthias Clasen
2ae6f1a741
Add a gtk-overlay-scrolling setting
...
This is in preparation for letting user opt out of
overlay scrolling in the control-center.
2019-05-31 14:07:15 +00:00
Matthias Clasen
8145872e27
Merge branch 'wip/chergert/remove-cclosure' into 'master'
...
gtk: rely on default marshallers
See merge request GNOME/gtk!893
2019-05-31 10:57:27 +00:00
Benjamin Otte
4df049e81c
Merge branch 'for-master' into 'master'
...
For master
See merge request GNOME/gtk!892
2019-05-31 04:07:11 +00:00
Christian Hergert
bd26cce812
gtk: rely on default marshallers
...
Similar to previous removals of g_cclosure_marshal_VOID__VOID we can remove
other marshallers for which are a simple G_TYPE_NONE with single parameter.
In those cases, GLib will setup both a c_marshaller and va_marshaller for
us. Before this commit, we would not get a va_marshaller because the
c_marshaller is set.
Related to GNOME/Initiatives#10
2019-05-30 20:56:50 -07:00
Benjamin Otte
6b2518a190
widget: fix CSS transforms with margins
...
The CSS transform should operate on the border-box, not the margin box.
So we need to shrink the bounds by the margin before we apply the CSS
transform.
2019-05-31 05:36:50 +02:00
Niels De Graef
df9aed6c61
Fix some GObject introspection annotations
...
Fixes several warnings by the GIR compiler.
2019-05-30 20:34:43 +02:00
Benjamin Otte
1e0c0c0ba7
rendernodeparser: Parse cairo script
...
Use cairo-script-interpreter to parse the scripts that generate cairo
nodes.
This requires libcairoscriptinterpreter.so to work properly, but if
it isn't found we disable this (unimportant for normal functioning)
code and just emits a parser warning.
The testsuite requires it however or it will fail.
A new test is included that tests all of this.
2019-05-30 15:32:36 +02:00
Matthias Clasen
2f37207487
Remove leftover debug spew
2019-05-30 08:19:08 -04:00
Matthias Clasen
d71bf4d35c
Add gtknative.h to public headers
2019-05-30 08:18:29 -04:00
Matthias Clasen
93a34eb62d
Merge branch 'lr/builder-tool-templates' into 'master'
...
builder-tool: Rewrite GtkBuilder templates too
See merge request GNOME/gtk!888
2019-05-30 11:56:05 +00:00
Lubomir Rintel
1e7225aa1c
builder-tool: Set the parent of newly created GtkAssistantPage
...
...and its property. Otherwise simplify_element() blows up when looking
up the hierarchy to determine a property type.
$ gtk4-builder-tool simplify --3to4 /dev/stdin <<EOF
> <?xml version="1.0" encoding="UTF-8"?>
> <!-- Generated with glade 3.20.2 -->
> <interface domain="nm-applet">
> <object class="GtkAssistant">
> <child>
> <object class="GtkBox" id="confirm_page">
> </object>
> <packing>
> <property name="page_type">confirm</property>
> <property name="complete">True</property>
> </packing>
> </child>
> </object>
> </interface>
> EOF
/dev/stdin: Packing property GtkAssistant::page_type not found
/dev/stdin: Packing property GtkAssistant::complete not found
Segmentation fault (core dumped)
2019-05-30 11:39:09 +02:00
Lubomir Rintel
2d55fce23d
builder-tool: Rewrite GtkBuilder templates too
2019-05-30 10:34:24 +02:00
Matthias Clasen
e0cc72e94f
Fix shortcuts window sizing
...
We were deferring the reflow until map, but this
leads to the section initially having an enormous
height and the window picks up that size before
we have a chance to reflow, This could be seen
in the "Builder" demo in gtk4-demo.
Closes: https://gitlab.gnome.org/GNOME/gtk/issues/11
2019-05-29 17:06:27 -04:00
Christian Hergert
82afe850e8
marshallers: add missing g_cclosure_marshal_VOID__VOID fixes
2019-05-29 13:48:33 -07:00
Christian Hergert
f507a79056
marshallers: ensure g_cclosure_marshal_VOID__VOIDv is used
...
If we set c_marshaller manually, then g_signal_newv() will not setup a
va_marshaller for us. However, if we provide c_marshaller as NULL, it will
setup both the c_marshaller (to g_cclosure_marshal_VOID__VOID) and
va_marshaller (to g_cclosure_marshal_VOID__VOIDv) for us.
2019-05-29 13:22:31 -07:00
Matthias Clasen
90f330e27a
Merge branch 'gesture-click' into 'master'
...
Rename GtkGestureMultiPress to GtkGestureClick
See merge request GNOME/gtk!878
2019-05-29 18:39:09 +00:00
Matthias Clasen
2be733497b
Merge branch 'global-coords' into 'master'
...
Drop global coordinates
See merge request GNOME/gtk!879
2019-05-29 18:29:57 +00:00
Matthias Clasen
b867cbe0d8
Cosmetics
...
Remove an unused variable.
2019-05-29 18:04:08 +00:00
Matthias Clasen
956e94a8d4
Remove a misleading comment
...
We don't have windowed widgets anymore, and
gdk_surface_move_resize is about to go away.
2019-05-29 18:04:08 +00:00
Matthias Clasen
2081bf346e
window: Remove move unused fields
...
position_constraints_changed is never used.
2019-05-29 18:04:08 +00:00
Matthias Clasen
74db7cbe00
window: Never call gdk_surface_move
...
With gtk_window_set_position gone, we should never
come up with a new position to set in this code.
Leave a warning in place and remove the gdk_surface_move
calls.
2019-05-29 18:04:08 +00:00
Matthias Clasen
d6d5d60703
Drop an empty function
...
gtk_window_constrain_position is not doing anything
anymore, so no need to call it.
2019-05-29 18:04:08 +00:00
Matthias Clasen
ece7fff339
window: Drop more unused fields
...
need_default_position is never used.
2019-05-29 18:04:08 +00:00
Matthias Clasen
147adc0bc5
window: Drop some unused fields
...
initial_x/y and initial_pos_set are never used.
2019-05-29 18:04:08 +00:00
Matthias Clasen
b636e32d85
widget: Stop using gdk_device_get_position
...
Root coordinates are going away. Stop
setting them in crossing events, so we
can drop this api.
2019-05-29 18:04:08 +00:00
Matthias Clasen
a8899cc6a3
window: Drop gtk_window_set_position
...
This is heavily using global coordinates, and
can't be guaranteed to work across wms / platforms.
2019-05-29 18:04:08 +00:00
Matthias Clasen
f0ef5332be
a11y: Stop using gdk_surface_get_frame_extnts
...
This api is going away.
2019-05-29 18:04:08 +00:00
Matthias Clasen
83827d3199
a11y: Stop using gdk_surface_get_origin
...
Global coordinates are going away.
Stop supporting ATK_XY_SCREEN.
2019-05-29 18:04:08 +00:00
Matthias Clasen
fcc8a365b9
main: Use gdk_surface_translate_coordinates
...
This gets rid of another use of global coordinates.
2019-05-29 18:04:08 +00:00
Matthias Clasen
7f65e5f96b
Rename GtkGestureMultiPress to GtkGestureClick
...
The name just made it hard for people to find the
right gesture to use.
2019-05-29 17:10:46 +00:00
Colomban Wendling
745a7cf29e
HighContrast: Improve contrast of notebook tabs
2019-05-29 17:46:41 +02:00
Benjamin Otte
56db17e5e8
Revert "window: Chain up in show/hide"
...
This reverts commit 863f4d13ff
.
2019-05-29 16:52:13 +02:00
Benjamin Otte
863f4d13ff
window: Chain up in show/hide
2019-05-29 16:34:56 +02:00
Benjamin Otte
cabe39862b
widget: Add marshallers to signals
...
Yay for better sysprof logs!
2019-05-29 16:34:56 +02:00
Benjamin Otte
2380f9673b
widget: Do proper clean up in real_hide()
...
Do the same things set_visible_flag() does.
2019-05-29 16:34:56 +02:00
Benjamin Otte
170c25a9d2
widget: Move functions around
...
Copy them further up so that we can use them there in the next commit.
2019-05-29 16:34:56 +02:00
Benjamin Otte
e85f1e176a
widget: Insist on proper vfunc calling
...
Insist that ->show() is only called for invisible and ->hide only for
visible widgets.
2019-05-29 16:34:56 +02:00
Benjamin Otte
a079fd2def
widget: Fix transform refcounting in allocate()
...
Make the transform (transfer full).
1. This makes sure we actually reference the transform. Previously we
did not.
2. Most callers create a new transform to pass to us. Now they don't
have to uref it anymore.
2019-05-29 16:34:56 +02:00
Benjamin Otte
89fb752a8f
css: Use %f, not %.17f
...
The testusite failures explain why:
We don't want to print "1.00000000000000000", but "1".
2019-05-29 14:30:13 +02:00
Benjamin Otte
d71c196c5c
css: Don't print numbers with exponent
...
CSS does not do exponents, so printing numbers close to 0 as 1.234e-15
does not work.
Also up the accuracy to 17 digits because that's what everyone else
uses.
2019-05-29 07:14:31 +02:00
Matthias Clasen
ead96b65fd
notebook: Drop position from ::create-window
...
Global coordinates are going away.
2019-05-28 23:23:06 -04:00
Matthias Clasen
0cc94ed72e
Some entry completion fixes
...
This gets popover-based entry completion closer
to working as expected. And it drops a use of
gdk_surface_get_origin.
2019-05-28 23:23:06 -04:00
Matthias Clasen
dd5839dfe8
tree models: Use standard padding
2019-05-28 23:23:06 -04:00
Matthias Clasen
9abc7262b0
treeview column: Make final
2019-05-28 23:22:57 -04:00
Matthias Clasen
79940b32b5
treeview: Make final
...
Make GtkTreeSelection final as well.
2019-05-28 21:42:38 -04:00
Matthias Clasen
aec5e3d71e
flow box: Make final
...
We keep GtkFlowBoxChild subclassable, though.
2019-05-28 20:01:43 -04:00
Matthias Clasen
217115d35f
listbox Make final
...
We keep GtkListBoxRow subclassable, though.
2019-05-28 20:01:43 -04:00
Matthias Clasen
ee29b9ba95
notebook: Make final
2019-05-28 20:01:43 -04:00
Matthias Clasen
c34abb6775
label: Make final
2019-05-28 19:45:45 -04:00
Matthias Clasen
b523f2b46a
menubar: Make final
2019-05-28 19:43:43 -04:00
Matthias Clasen
6836bfc208
toolbar: make final
2019-05-28 23:38:16 +00:00
Matthias Clasen
8695e8c1b8
menu: Make final
2019-05-28 23:38:16 +00:00
Matthias Clasen
6ffc9f9e6e
Forgotten file
2019-05-28 23:30:02 +00:00
Matthias Clasen
0a6813d0aa
menu tool button: Make final
2019-05-28 18:58:58 -04:00
Matthias Clasen
ef3e20cffe
radio tool button: Make final
2019-05-28 18:58:46 -04:00
Matthias Clasen
5db4530a22
toggle tool button: Use standard padding
2019-05-28 18:58:31 -04:00
Matthias Clasen
4b5fee943e
tool button: Use standard padding
2019-05-28 18:58:05 -04:00
Matthias Clasen
f0fd4843d5
iconview: Make final
2019-05-28 22:50:08 +00:00
Matthias Clasen
700e9e03c5
stack: Make final
2019-05-28 22:35:36 +00:00
Matthias Clasen
055a991e08
file chooser error stack: Don't derive from stack
...
We can just have a GtkStack, instead.
2019-05-28 22:35:36 +00:00
Matthias Clasen
bc739e607b
scrolled window: Make final
2019-05-28 22:35:36 +00:00
Matthias Clasen
211128fb7c
inspector: Stop deriving from scrolled window
2019-05-28 22:35:36 +00:00
Matthias Clasen
461e8e0218
places sidebar: Don't derive from scrolled window
...
We can just have a scrolled window, instead.
2019-05-28 22:35:36 +00:00
Matthias Clasen
a4b1ff7736
Forgotten file
2019-05-28 22:35:36 +00:00
Matthias Clasen
908632138c
inspector: Show surface and renderer
2019-05-28 20:25:17 +00:00
Руслан Ижбулатов
90058ed951
Don't assume that gdk_surface[_move]_resize() is asynchronous
...
On Windows that call resizes the native window immediately,
and the corresponding GDK event is emitted and processed
before the control is returned to gtk_window_move_resize().
Therefore, update freeze and configure_request_count increment
must happen before the call, not after it.
2019-05-28 20:25:17 +00:00
Руслан Ижбулатов
82c80c06e8
Add missing include
2019-05-28 20:25:17 +00:00
Matthias Clasen
5ccb081fdb
Avoid compiler warnings
...
Avoid priv being flagged as unused on win32.
2019-05-28 20:25:17 +00:00
Matthias Clasen
d08805d7f0
popover: Don't constantly redraw the beak
...
We don't want to constantly draw the arrow
if we don't have to. Save the render node
to achieve this.
2019-05-28 20:25:17 +00:00
Matthias Clasen
f154fd4c09
popover: Stop needles allocations
...
We were queuing an allocation whenever
the popover is flipped over, unnecessarily,
since we don't change the size of the surface.
This was showing up as popovers being invisible
when flipped over, under X.
2019-05-28 20:25:17 +00:00
Matthias Clasen
c638a0aa59
Adwaita: Remove Emoji completion special case
...
We can use GtkPopover::has-arrow now.
2019-05-28 20:25:16 +00:00
Matthias Clasen
db21cbdfb3
inspector: Avoid a critical warning
2019-05-28 20:25:16 +00:00
Matthias Clasen
ec413357c6
popover: Make it possible to not have an arrow
...
This will make popovers move flexible for other
uses, such as the Emoji completion popup.
2019-05-28 20:25:16 +00:00
Matthias Clasen
a841ff0316
popover: Set input shapes on wayland too
...
No reason not to do it. Wayland has input shapes.
2019-05-28 20:25:16 +00:00
Руслан Ижбулатов
83f952d771
IME IM: Be able to handle NULL widget correctly
2019-05-28 20:25:16 +00:00
Matthias Clasen
8f291be8c6
tooltip: fix critical warnings
...
We might trigger a requery while unrooted.
Deal with it.
2019-05-28 20:25:16 +00:00
Matthias Clasen
693b2aa4d1
Drop gtk_widget_get_toplevel
...
Not used anymore.
2019-05-28 20:25:16 +00:00
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
Matthias Clasen
a86160265a
css provider: Remove outdated version check
...
When looking for versioned theme files, we were
looking for directories names gtk-4.x for x
bigger than 14, which mades sense for GTK 3,
but we are starting out at 0 again, so remove
this check.
2019-05-08 14:33:23 +00:00
Matthias Clasen
8aaa8958c4
Merge branch 'inspector-css' into 'master'
...
Inspector css
See merge request GNOME/gtk!830
2019-05-08 04:01:45 +00:00
Matthias Clasen
97b450dfd7
Improve the action editor more
2019-05-08 03:34:14 +00:00
Matthias Clasen
46c1e154f1
inspector: Fix showing the frame clock
...
We want to go to the object, not just select it
in the list (which does not even contain frame clocks).
2019-05-08 02:44:24 +00:00
Matthias Clasen
fcb1408e1e
Merge branch 'inspector-css' into 'master'
...
inspector: Port actions to a list view
See merge request GNOME/gtk!829
2019-05-08 02:27:31 +00:00
Matthias Clasen
4cc27285b1
inspector: Port actions to a list view
2019-05-08 02:20:50 +00:00
Benjamin Otte
bc7972dfa7
csstokenizer: Handle backslash at end of document
...
Testcases included.
2019-05-08 00:58:52 +02:00
Matthias Clasen
e1c1c46e34
inspector: Style the property list
...
Make the property list look more like a list.
2019-05-07 22:04:41 +00:00
Matthias Clasen
725e7c7470
emoji chooser: Name the idle
...
We recently added an idle that does quite a bit of work.
It should have a name.
2019-05-07 18:41:22 +00:00
Matthias Clasen
18127be3bd
GtkApplication: Add a profiler dbus api
...
Implement the org.gnome.Sysprof2.Profiler D-Bus
api to let sysprof start and stop tracing at runtime,
and get the data directly, via a passed fd.
2019-05-07 09:37:59 -07:00
Matthias Clasen
4ff578db10
Fix the compiler warning, again
2019-05-07 14:57:53 +00:00
Matthias Clasen
248c07c65e
Fix a compiler warning
2019-05-07 04:01:21 +00:00
Matthias Clasen
77b7817266
a11y: Stop using child-notify
...
This was showing up in the accessibility tests failing.
2019-05-07 02:21:30 +00:00
Matthias Clasen
c6a42e92bb
widget: Revert the event translation change
...
This is a temporary revert to make menus work
in the 3.96 release, until we land the popup
surface work and port menus to it.
Closes: https://gitlab.gnome.org/GNOME/gtk/issues/1755
2019-05-06 22:20:51 +00:00
Matthias Clasen
a8aa7afa13
Merge branch 'header-bar-leak4' into 'master'
...
GtkHeaderBar: Don't leak decoration layout
See merge request GNOME/gtk!822
2019-05-06 14:17:17 +00:00
Emmanuele Bassi
fe473dbef8
Make get_layout_manager_type() public
...
The inspector, and other tools introspecting the widget structure like
gtk-builder-tool and Glade, may very well want to access the default
layout manager used by a class, especially if there are layout
properties involved, without having a whitelist of widget/layout manager
associations.
2019-05-06 12:15:21 +01:00
Emmanuele Bassi
59c6862a03
Use gtk_widget_class_set_layout_manager_type()
...
Instead of manually creating the layout manager inside the instance
initialization function, we can let GtkWidget do that for us.
2019-05-06 12:06:27 +01:00
Guido Günther
e98973e2c0
GtkHeaderBar: Don't leak decoration layout
...
Currently we leak priv->decoration_layout if the layout is set
multiple times.
2019-05-06 12:59:20 +02:00
Emmanuele Bassi
c6b2184aa0
Allow specifying the layout manager for a widget type
...
Some widgets have a well-defined layout manager created alongside their
own instance; if they do, we can handle the layout manager creation at
the GtkWidget instantiation.
2019-05-06 11:57:32 +01:00
Benjamin Otte
562e492056
csstokenizer: Consume the \ when encountering an error
...
Otherwise we infinitely end up with the error again.
Testcases added.
2019-05-06 05:56:06 +02:00
Matthias Clasen
15b8ee4564
Merge branch 'simplify-tests' into 'master'
...
Simplify tests
See merge request GNOME/gtk!820
2019-05-05 20:19:13 +00:00
Matthias Clasen
d8e92d4859
builder-tool: Handle layout properties more properly
...
Change things so we first rewrite the whole tree,
and then simplify the rewritten tree. And look
for paramspecs for layout properties.
2019-05-05 17:13:38 +00:00
Matthias Clasen
4eb00a3e41
builder-tool: Stop warnings for stack rewrites
...
When rewriting a GtkStack from 3 to 4, we were emitting
warnings for missing child properties. Stop doing that.
2019-05-05 17:13:38 +00:00
Matthias Clasen
84d3848c01
Merge branch 'focus-fixes' into 'master'
...
Focus fixes
See merge request GNOME/gtk!819
2019-05-05 14:20:04 +00:00
Matthias Clasen
c4013eeb26
Merge branch 'builder-tool-fixes' into 'master'
...
Builder tool fixes
See merge request GNOME/gtk!817
2019-05-05 06:57:21 +00:00
Matthias Clasen
96cce3ae23
Merge branch 'emoji-chooser-fixes' into 'master'
...
Emoji chooser fixes
See merge request GNOME/gtk!816
2019-05-05 06:41:31 +00:00
Matthias Clasen
09b6dbb7ef
builder-tool: Handle default values changing
...
The default value of GtkWidget::visible changed
from FALSE to TRUE from GTK 3 to 4. Make --3to4
deal with this by ensuring the visible property
is explicitly set, before simplifying.
2019-05-04 23:41:30 -07:00
Benjamin Otte
6594ccf716
gsk: Export gsk_gl_renderer_new()
2019-05-05 07:18:39 +02:00
Benjamin Otte
3c6aa84e44
cssparser: Add gtk_css_parser_has_number()
2019-05-05 07:18:39 +02:00
Matthias Clasen
44b0a893fc
entry: Drop our own Emoji chooser
...
We were using one Emoji chooser when triggered
via the context menu, and another one when
triggered via the icon.
Change things to always use the same Emoji
chooser instance.
2019-05-04 18:54:37 +00:00
Matthias Clasen
32fd55a66d
window: Stop duplicating focus change events
...
We had code in gtkwindow.c that generated duplicate,
and defective, focus-change events, in the following
way:
- gtkmain.c generates a chain of focus-change events
for moving focus from one window to another
- gtkwindow.c catches a focus-in event in the middle
of this chain and sets itself as 'active'
- and then it proceeds to generate focus-change
events towards its own focus widget without a
related target
This is not necessary since we gtkmain.c already
generates a complete sequence of focus-change events.
So stop doing it.
2019-05-04 18:22:33 +00:00
Matthias Clasen
9af01bea5e
window: Make _gtk_window_set_is_active static
...
It is not used outside gtkwindow.c.
2019-05-04 18:22:28 +00:00
Matthias Clasen
40fe3d94ac
builder-tool: Handle GtkWidget::visible properly
...
This property has a 'smart' default that depends
on the class of the object we're creating. Take
that into account when deciding whether to omit
properties that are set to their default value.
2019-05-04 18:18:42 +00:00
Matthias Clasen
6fe203d0e2
emoji chooser: Make Escape work again
...
Escape is expected to close the Emoji chooser.
2019-05-04 18:18:20 +00:00
Matthias Clasen
7b6f652630
emoji chooser: Fix handling of no recent Emoji
...
If the recent section is empty, we want to hide
it, make its button insensitive, and select the
next section, initially. This was not working
properly, since nothing was ever setting the
section box to invisible.
2019-05-04 18:18:09 +00:00
Matthias Clasen
67e6d1087e
emoji chooser: populate incrementally
...
It takes half a second on my system to initially
populate the Emoji chooser. That is too long. Do
the work in 8 millisecond chunks to give GTK a
chance to get some frames done.
2019-05-04 02:12:02 +00:00
Timm Bäder
d702bfe7b7
filechooserbutton: Clean up finalize & destroy
2019-05-03 20:06:25 +02:00
Timm Bäder
596c9a3c0b
filechooserbutton: Clear model in destroy()
...
Since we're destroying priv->chooser right after. We can't wait until
finalize() since clearing the model will try to work with priv->chooser.
2019-05-03 20:06:23 +02:00
Timm Bäder
c675d1c9e1
filechooserbutton: Use a bin layout
2019-05-03 20:06:10 +02:00
Matthias Clasen
1c9a486d60
css: Use multiple font-family values
...
Pango API to support this, so we can implement
this very easily.
Closes: https://gitlab.gnome.org/GNOME/gtk/issues/1854
2019-05-03 01:44:02 +00:00
Matthias Clasen
299422994a
fixup! event controller: Don't deliver events to insensitive widgets
2019-05-02 20:20:20 +00:00
Matthias Clasen
b1d90cc171
spin button: Listen for ::cancel on gestures
...
Otherwise, we keep spinning when we should stop.
Closes: https://gitlab.gnome.org/GNOME/gtk/issues/1861
2019-05-02 15:54:17 -04:00
Matthias Clasen
af2207bc0b
widget: Reset controllers when going numb
...
Reset event controllers when their
widget is going insensitive. This is
the expected behavior.
2019-05-02 15:53:30 -04:00
Matthias Clasen
522bbc182d
gesture: Chain up in filter_event
...
This is the right thing to do.
We want to exclude more events.
2019-05-02 15:53:30 -04:00
Matthias Clasen
65233726f8
event controller: Don't deliver events to insensitive widgets
...
This is another way to avoid delivering events
to insensitive widgets.
2019-05-02 15:50:44 -04:00
Matthias Clasen
ed52c029a0
gtk: Small documentation fixes
2019-05-01 23:24:14 -04:00
Matthias Clasen
7b1201cd4d
box layout: Documentation additions
2019-05-01 23:24:14 -04:00
Matthias Clasen
eff4b6377d
Merge branch 'inspector-menus' into 'master'
...
inspector: Fix showing of menus
See merge request GNOME/gtk!810
2019-05-02 02:12:28 +00:00
Matthias Clasen
a18647af0e
Merge branch 'inspector-actions' into 'master'
...
inspector: Show the default.activate action
See merge request GNOME/gtk!809
2019-05-02 02:09:03 +00:00
Matthias Clasen
c7df0c907a
inspector: Fix showing of menus
...
We were hitting an assertion in some leftover
code that assumed property editors are popovers.
2019-05-02 02:05:46 +00:00