#include "gtksnapshot.h"
#include "gtkrenderbackgroundprivate.h"
#include "gtkrenderborderprivate.h"
-#include "gtkstylecontextprivate.h"
#include "gtktypebuiltins.h"
#include "gtkviewport.h"
#include "gtkwidgetprivate.h"
GtkSnapshot *snapshot)
{
GtkScrolledWindowPrivate *priv = gtk_scrolled_window_get_instance_private (scrolled_window);
- GtkWidget *widget = GTK_WIDGET (scrolled_window);
GtkAllocation hscr_allocation, vscr_allocation;
- GtkStyleContext *context;
+ GtkCssStyle *style;
GdkRectangle junction_rect;
GtkCssBoxes boxes;
junction_rect.width = vscr_allocation.width;
junction_rect.height = hscr_allocation.height;
- context = gtk_widget_get_style_context (widget);
- gtk_style_context_save_to_node (context, priv->junction_node);
+ style = gtk_css_node_get_style (priv->junction_node);
- gtk_css_boxes_init_border_box (&boxes,
- gtk_style_context_lookup_style (context),
+ gtk_css_boxes_init_border_box (&boxes, style,
junction_rect.x, junction_rect.y,
junction_rect.width, junction_rect.height);
gtk_css_style_snapshot_background (&boxes, snapshot);
gtk_css_style_snapshot_border (&boxes, snapshot);
-
- gtk_style_context_restore (context);
}
static void
GtkSnapshot *snapshot)
{
GtkScrolledWindowPrivate *priv = gtk_scrolled_window_get_instance_private (scrolled_window);
- GtkWidget *widget = GTK_WIDGET (scrolled_window);
int overshoot_x, overshoot_y;
- GtkStyleContext *context;
+ GtkCssStyle *style;
GdkRectangle rect;
GtkCssBoxes boxes;
if (!_gtk_scrolled_window_get_overshoot (scrolled_window, &overshoot_x, &overshoot_y))
return;
- context = gtk_widget_get_style_context (widget);
gtk_scrolled_window_inner_allocation (scrolled_window, &rect);
overshoot_x = CLAMP (overshoot_x, - MAX_OVERSHOOT_DISTANCE, MAX_OVERSHOOT_DISTANCE);
if (overshoot_x > 0)
{
- gtk_style_context_save_to_node (context, priv->overshoot_node[GTK_POS_RIGHT]);
- gtk_css_boxes_init_border_box (&boxes,
- gtk_style_context_lookup_style (context),
+ style = gtk_css_node_get_style (priv->overshoot_node[GTK_POS_RIGHT]);
+ gtk_css_boxes_init_border_box (&boxes, style,
rect.x + rect.width - overshoot_x, rect.y, overshoot_x, rect.height);
gtk_css_style_snapshot_background (&boxes, snapshot);
gtk_css_style_snapshot_border (&boxes, snapshot);
- gtk_style_context_restore (context);
}
else if (overshoot_x < 0)
{
- gtk_style_context_save_to_node (context, priv->overshoot_node[GTK_POS_LEFT]);
- gtk_css_boxes_init_border_box (&boxes,
- gtk_style_context_lookup_style (context),
+ style = gtk_css_node_get_style (priv->overshoot_node[GTK_POS_LEFT]);
+ gtk_css_boxes_init_border_box (&boxes, style,
rect.x, rect.y, -overshoot_x, rect.height);
gtk_css_style_snapshot_background (&boxes, snapshot);
gtk_css_style_snapshot_border (&boxes, snapshot);
- gtk_style_context_restore (context);
}
if (overshoot_y > 0)
{
- gtk_style_context_save_to_node (context, priv->overshoot_node[GTK_POS_BOTTOM]);
- gtk_css_boxes_init_border_box (&boxes,
- gtk_style_context_lookup_style (context),
+ style = gtk_css_node_get_style (priv->overshoot_node[GTK_POS_BOTTOM]);
+ gtk_css_boxes_init_border_box (&boxes, style,
rect.x, rect.y + rect.height - overshoot_y, rect.width, overshoot_y);
gtk_css_style_snapshot_background (&boxes, snapshot);
gtk_css_style_snapshot_border (&boxes, snapshot);
- gtk_style_context_restore (context);
}
else if (overshoot_y < 0)
{
- gtk_style_context_save_to_node (context, priv->overshoot_node[GTK_POS_TOP]);
- gtk_css_boxes_init_border_box (&boxes,
- gtk_style_context_lookup_style (context),
+ style = gtk_css_node_get_style (priv->overshoot_node[GTK_POS_TOP]);
+ gtk_css_boxes_init_border_box (&boxes, style,
rect.x, rect.y, rect.width, -overshoot_y);
gtk_css_style_snapshot_background (&boxes, snapshot);
gtk_css_style_snapshot_border (&boxes, snapshot);
- gtk_style_context_restore (context);
}
-G_GNUC_END_IGNORE_DEPRECATIONS
}
static void
GtkSnapshot *snapshot)
{
GtkScrolledWindowPrivate *priv = gtk_scrolled_window_get_instance_private (scrolled_window);
- GtkWidget *widget = GTK_WIDGET (scrolled_window);
- GtkStyleContext *context;
+ GtkCssStyle *style;
GdkRectangle rect;
GtkAdjustment *adj;
GtkCssBoxes boxes;
- context = gtk_widget_get_style_context (widget);
gtk_scrolled_window_inner_allocation (scrolled_window, &rect);
adj = gtk_scrollbar_get_adjustment (GTK_SCROLLBAR (priv->hscrollbar));
if (gtk_adjustment_get_value (adj) < gtk_adjustment_get_upper (adj) - gtk_adjustment_get_page_size (adj))
{
- gtk_style_context_save_to_node (context, priv->undershoot_node[GTK_POS_RIGHT]);
- gtk_css_boxes_init_border_box (&boxes,
- gtk_style_context_lookup_style (context),
+ style = gtk_css_node_get_style (priv->undershoot_node[GTK_POS_RIGHT]);
+ gtk_css_boxes_init_border_box (&boxes, style,
rect.x + rect.width - UNDERSHOOT_SIZE, rect.y, UNDERSHOOT_SIZE, rect.height);
gtk_css_style_snapshot_background (&boxes, snapshot);
gtk_css_style_snapshot_border (&boxes, snapshot);
- gtk_style_context_restore (context);
}
if (gtk_adjustment_get_value (adj) > gtk_adjustment_get_lower (adj))
{
- gtk_style_context_save_to_node (context, priv->undershoot_node[GTK_POS_LEFT]);
- gtk_css_boxes_init_border_box (&boxes,
- gtk_style_context_lookup_style (context),
+ style = gtk_css_node_get_style (priv->undershoot_node[GTK_POS_LEFT]);
+ gtk_css_boxes_init_border_box (&boxes, style,
rect.x, rect.y, UNDERSHOOT_SIZE, rect.height);
gtk_css_style_snapshot_background (&boxes, snapshot);
gtk_css_style_snapshot_border (&boxes, snapshot);
- gtk_style_context_restore (context);
}
adj = gtk_scrollbar_get_adjustment (GTK_SCROLLBAR (priv->vscrollbar));
if (gtk_adjustment_get_value (adj) < gtk_adjustment_get_upper (adj) - gtk_adjustment_get_page_size (adj))
{
- gtk_style_context_save_to_node (context, priv->undershoot_node[GTK_POS_BOTTOM]);
- gtk_css_boxes_init_border_box (&boxes,
- gtk_style_context_lookup_style (context),
+ style = gtk_css_node_get_style (priv->undershoot_node[GTK_POS_BOTTOM]);
+ gtk_css_boxes_init_border_box (&boxes, style,
rect.x, rect.y + rect.height - UNDERSHOOT_SIZE, rect.width, UNDERSHOOT_SIZE);
gtk_css_style_snapshot_background (&boxes, snapshot);
gtk_css_style_snapshot_border (&boxes, snapshot);
- gtk_style_context_restore (context);
}
if (gtk_adjustment_get_value (adj) > gtk_adjustment_get_lower (adj))
{
- gtk_style_context_save_to_node (context, priv->undershoot_node[GTK_POS_TOP]);
- gtk_css_boxes_init_border_box (&boxes,
- gtk_style_context_lookup_style (context),
+ style = gtk_css_node_get_style (priv->undershoot_node[GTK_POS_TOP]);
+ gtk_css_boxes_init_border_box (&boxes, style,
rect.x, rect.y, rect.width, UNDERSHOOT_SIZE);
gtk_css_style_snapshot_background (&boxes, snapshot);
gtk_css_style_snapshot_border (&boxes, snapshot);
- gtk_style_context_restore (context);
}
}