| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
| |
- Rename GtkLegacyLayout to GtkCustomLayout
- Use for() to iterate over children in GtkBinLayout
- Whitespace fixes for code imported from GtkBox
- Store the GtkLayoutChild instances inside LayoutManager
- Simplify the GtkLayoutManager API by dropping unnecessary arguments
- Fix the ownership model of GtkLayoutManager
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
If a widget has a LayoutManager instance, then we want to parse layout
properties in UI description files; the grammar is similar to packing
properties in GtkContainer:
<child>
<object ...>
<property name="...">...</property>
<layout>
<property name="pname">value</property>
</layout>
</object>
</child>
The properties are applied after a child has been added to its parent,
to the parent's layout manager property should be set.
|
|
|
|
| |
Like GtkBin, but lets you lay out multiple children instead of just one.
|
| |
|
|
|
|
|
|
| |
GtkLegacyLayout is a layout manager for the transitional period between
the introduction of layout managers and the removal of GtkWidget virtual
functions for the size negotiation.
|
|
|
|
|
| |
We can delegate all the layout management to a GtkBoxLayout, now that we
have one.
|
|
|
|
| |
The same layout policy of GtkBox, without all the GtkContainer calories.
|
|
|
|
|
|
|
|
|
|
|
|
| |
Layout managers needs a way to store properties that control the layout
policy of a widget; typically, we used to store these in GtkContainer's
child properties, but since GtkLayoutManager is decoupled from the
actual container widget, we need a separate storage. Additionally, child
properties have their own downsides, like requiring a separate, global
GParamSpecPool storage, and additional lookup API.
GtkLayoutChild is a simple GObject class, which means you can introspect
and document it as you would any other type.
|
|
|
|
|
| |
The type is completely private to GtkLayout, so there's really no need
to namespace it.
|
|
|
|
|
|
| |
We can use a constructor property for existing container widgets with
a layout policy, and move the layout policy implementation out of the
widget itself and into a LayoutManager subclass.
|
|
|
|
|
|
| |
We delegate the size request mode, the measuring, and the allocation of
a widget through a GtkLayoutManager instance, if one has been attached
to the widget; otherwise, we fall back to the widget's own implementation.
|
|
|
|
|
|
|
|
| |
A base abstract class for layout manager delegate objects.
Layout managers are associated to a single widget, like event
controllers, and are responsible for measuring and allocating the
children of the widget they are bound to.
|
| |
|
|
|
|
|
|
| |
Otherwise we're getting warnings about allocating a widget we haven't
measured first, which is fair. The contents gizmo itself will later take
care about whether or not the real popover child is NULL.
|
| |
|
|
|
|
| |
We are not using this anymore.
|
|
|
|
| |
Thats a valid way to end color picking.
|
| |
|
|
|
|
|
|
| |
It was unused through all of GTK 3, so it is not worth supporting.
The best Windows themes do not make use of it at all.
|
|
|
|
|
|
|
| |
We were not paying enough attention to detail when updating
hover and focus state while generating crossing events. The
invariant that we need to preserve here is that when a widget
has focus or hover, its parent does too.
|
|
|
|
|
|
|
| |
We basically don't have child surfaces anymore (the last
use in popovers is on the way out). This really needs
to be done in terms of widgets, not surfaces. For now,
just stop walking parent surfaces.
|
|
|
|
|
|
| |
Remove the uint parser (and use the int parser in the one user of it).
And avoid unnecessarily going through a macro.
|
| |
|
| |
|
|
|
|
|
| |
This was showing up as crashes when closing
the file chooser.
|
|\
| |
| |
| |
| | |
Adwaita: Drop checkbox-selectionmode assets
See merge request GNOME/gtk!634
|
| | |
|
|\ \
| | |
| | |
| | |
| | |
| | |
| | | |
Adwaita: Fix selection-mode checkboxes
Closes #28
See merge request GNOME/gtk!629
|
| | |
| | |
| | |
| | |
| | |
| | | |
Use object-select-symbolic as a check icon, adjust styles.
Closes https://gitlab.gnome.org/GNOME/gtk/issues/28
|
|\ \ \
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Adwaita: Adjust switch margins on headerbars
Closes #1759
See merge request GNOME/gtk!651
|
| | | |
| | | |
| | | |
| | | | |
Closes https://gitlab.gnome.org/GNOME/gtk/issues/1759
|
|\ \ \ \
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Adwaita: draw bigger radius for focus rings
Closes #1756
See merge request GNOME/gtk!649
|
| | | | |
| | | | |
| | | | |
| | | | | |
Fixes https://gitlab.gnome.org/GNOME/gtk/issues/1756
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
When the window gets active / inactive, we
don't propagate events, but just send focus-in / -out
to the current focus_widget. Improve this by updating
its state flags as well.
|
|/ / / /
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
We were walking the parent chain here, which now
always needs to consider whether it should stop
at roots. Like this one should.
The symptom was that a label with a popup attached to
it would end up with an unintentional focus ring that
would not go away.
|
| | | |
| | | |
| | | |
| | | | |
And make sure it's included everywhere it's needed.
|
| | | | |
|
| | | | |
|
| | | |
| | | |
| | | |
| | | |
| | | | |
Don't call a useless function, call gtk_widget_set_child_visible()
directly.
|
| | | |
| | | |
| | | |
| | | | |
Also, add docs for the model property while I'm looking at the file.
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Refactor the child allocation machinery, so that the complex allocation
paths are only run when the animation is running.
And in particular, ensure that when no animation is running, the
identity transform is allocated.
|
| | | | |
|
| | | |
| | | |
| | | |
| | | |
| | | | |
The signature of the enter/leave signals changed.
Adapt all users.
|
| | | |
| | | |
| | | |
| | | | |
Oops
|
|\ \ \ \
| | | | |
| | | | |
| | | | |
| | | | | |
paned: Don't use a grab
See merge request GNOME/gtk!644
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
It does not seem necessary for proper functioning
of the drag handle.
|
|\ \ \ \ \
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
motion controller: add details to signals
See merge request GNOME/gtk!621
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
This information can be needed in signal handlers,
so make it available.
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
Add boolean properties, is-pointer-focus and
contains-pointer-focus, that track whether the pointer
is in the widget itself or in one of its descendants.
|
| | |/ / /
| |/| | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
The ::enter and ::leave signals get emitted up and down the
connecting path between the old an the new pointer location.
The signals are less useful if you can't find out where along
the path you are. That is what crossing mode and detail are
about, so add those to the signals.
|