forked from AuroraMiddleware/gtk
{box,grid}layout: Access border spacing directly
Instead of going through the style context
This commit is contained in:
parent
8388791f87
commit
b471158e38
@ -186,12 +186,13 @@ count_expand_children (GtkWidget *widget,
|
||||
|
||||
static gint
|
||||
get_spacing (GtkBoxLayout *self,
|
||||
GtkStyleContext *style_context)
|
||||
GtkCssNode *node)
|
||||
{
|
||||
GtkCssStyle *style = gtk_css_node_get_style (node);
|
||||
GtkCssValue *border_spacing;
|
||||
gint css_spacing;
|
||||
|
||||
border_spacing = _gtk_style_context_peek_property (style_context, GTK_CSS_PROPERTY_BORDER_SPACING);
|
||||
border_spacing = style->size->border_spacing;
|
||||
if (self->orientation == GTK_ORIENTATION_HORIZONTAL)
|
||||
css_spacing = _gtk_css_position_value_get_x (border_spacing, 100);
|
||||
else
|
||||
@ -211,7 +212,7 @@ gtk_box_layout_compute_size (GtkBoxLayout *self,
|
||||
int n_visible_children = 0;
|
||||
int required_min = 0, required_nat = 0;
|
||||
int largest_min = 0, largest_nat = 0;
|
||||
int spacing = get_spacing (self, _gtk_widget_get_style_context (widget));
|
||||
int spacing = get_spacing (self, gtk_widget_get_css_node (widget));
|
||||
|
||||
for (child = gtk_widget_get_first_child (widget);
|
||||
child != NULL;
|
||||
@ -285,7 +286,7 @@ gtk_box_layout_compute_opposite_size (GtkBoxLayout *self,
|
||||
if (nvis_children <= 0)
|
||||
return;
|
||||
|
||||
spacing = get_spacing (self, _gtk_widget_get_style_context (widget));
|
||||
spacing = get_spacing (self, gtk_widget_get_css_node (widget));
|
||||
sizes = g_newa (GtkRequestedSize, nvis_children);
|
||||
extra_space = MAX (0, for_size - (nvis_children - 1) * spacing);
|
||||
|
||||
@ -489,7 +490,7 @@ gtk_box_layout_allocate (GtkLayoutManager *layout_manager,
|
||||
|
||||
direction = _gtk_widget_get_direction (widget);
|
||||
sizes = g_newa (GtkRequestedSize, nvis_children);
|
||||
spacing = get_spacing (self, _gtk_widget_get_style_context (widget));
|
||||
spacing = get_spacing (self, gtk_widget_get_css_node (widget));
|
||||
|
||||
if (self->orientation == GTK_ORIENTATION_HORIZONTAL)
|
||||
extra_space = width - (nvis_children - 1) * spacing;
|
||||
|
@ -470,11 +470,13 @@ get_spacing (GtkGridLayout *self,
|
||||
GtkWidget *widget,
|
||||
GtkOrientation orientation)
|
||||
{
|
||||
GtkCssNode *node = gtk_widget_get_css_node (widget);
|
||||
GtkCssStyle *style = gtk_css_node_get_style (node);
|
||||
GtkCssValue *border_spacing;
|
||||
gint css_spacing;
|
||||
int css_spacing;
|
||||
|
||||
border_spacing = style->size->border_spacing;
|
||||
|
||||
border_spacing = _gtk_style_context_peek_property (gtk_widget_get_style_context (widget),
|
||||
GTK_CSS_PROPERTY_BORDER_SPACING);
|
||||
if (orientation == GTK_ORIENTATION_HORIZONTAL)
|
||||
css_spacing = _gtk_css_position_value_get_x (border_spacing, 100);
|
||||
else
|
||||
|
Loading…
Reference in New Issue
Block a user