theme-node-transition: Receive a CoglFramebuffer
This is in preparation for a future where only explicit frambuffer APIs are available, i.e., cogl_get_draw_framebuffer() does not exist. There is absolutely no functional changes in this patch (nor the following ones in this series), only rearrangements so that various functions receive a CoglFramebuffer instead of using the draw framebuffer. https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/283
This commit is contained in:
parent
412003efbf
commit
a2f27a9409
@ -337,11 +337,11 @@ setup_framebuffers (StThemeNodeTransition *transition,
|
||||
|
||||
void
|
||||
st_theme_node_transition_paint (StThemeNodeTransition *transition,
|
||||
CoglFramebuffer *framebuffer,
|
||||
ClutterActorBox *allocation,
|
||||
guint8 paint_opacity)
|
||||
{
|
||||
StThemeNodeTransitionPrivate *priv = transition->priv;
|
||||
CoglFramebuffer *fb = cogl_get_draw_framebuffer ();
|
||||
|
||||
CoglColor constant;
|
||||
float tex_coords[] = {
|
||||
@ -374,7 +374,8 @@ st_theme_node_transition_paint (StThemeNodeTransition *transition,
|
||||
paint_opacity, paint_opacity,
|
||||
paint_opacity, paint_opacity);
|
||||
|
||||
cogl_framebuffer_draw_multitextured_rectangle (fb, priv->material,
|
||||
cogl_framebuffer_draw_multitextured_rectangle (framebuffer,
|
||||
priv->material,
|
||||
priv->offscreen_box.x1,
|
||||
priv->offscreen_box.y1,
|
||||
priv->offscreen_box.x2,
|
||||
|
@ -41,6 +41,7 @@ void st_theme_node_transition_update (StThemeNodeTransition *transition,
|
||||
StThemeNode *new_node);
|
||||
|
||||
void st_theme_node_transition_paint (StThemeNodeTransition *transition,
|
||||
CoglFramebuffer *framebuffer,
|
||||
ClutterActorBox *allocation,
|
||||
guint8 paint_opacity);
|
||||
|
||||
|
@ -414,10 +414,12 @@ void
|
||||
st_widget_paint_background (StWidget *widget)
|
||||
{
|
||||
StWidgetPrivate *priv = st_widget_get_instance_private (widget);
|
||||
CoglFramebuffer *framebuffer;
|
||||
StThemeNode *theme_node;
|
||||
ClutterActorBox allocation;
|
||||
guint8 opacity;
|
||||
|
||||
framebuffer = cogl_get_draw_framebuffer ();
|
||||
theme_node = st_widget_get_theme_node (widget);
|
||||
|
||||
clutter_actor_get_allocation_box (CLUTTER_ACTOR (widget), &allocation);
|
||||
@ -426,12 +428,13 @@ st_widget_paint_background (StWidget *widget)
|
||||
|
||||
if (priv->transition_animation)
|
||||
st_theme_node_transition_paint (priv->transition_animation,
|
||||
framebuffer,
|
||||
&allocation,
|
||||
opacity);
|
||||
else
|
||||
st_theme_node_paint (theme_node,
|
||||
current_paint_state (widget),
|
||||
cogl_get_draw_framebuffer (),
|
||||
framebuffer,
|
||||
&allocation,
|
||||
opacity);
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user