This is an automated email from the git hooks/post-receive script.

nomad pushed a commit to branch master
in repository apps/xfdashboard.

commit 8ff46fdf4bd3c5fe94aaf213edf47155691cc2ff
Author: Stephan Haller <[email protected]>
Date:   Tue Aug 23 13:54:11 2016 +0200

    Revert "Allow overriding draw function of background borders and corner, 
e.g. interesting for popup-menus to draw an arrow on any side of outline"
    
    This reverts commit 30745d685e119b9e5d4f254f2bc7991d6b418e19.
---
 libxfdashboard/outline-effect.c | 149 ++++++++++++++++++----------------------
 libxfdashboard/outline-effect.h |   4 --
 2 files changed, 65 insertions(+), 88 deletions(-)

diff --git a/libxfdashboard/outline-effect.c b/libxfdashboard/outline-effect.c
index 2a7123e..1c5607a 100644
--- a/libxfdashboard/outline-effect.c
+++ b/libxfdashboard/outline-effect.c
@@ -71,23 +71,29 @@ static GParamSpec* 
XfdashboardOutlineEffectProperties[PROP_LAST]={ 0, };
 
 /* IMPLEMENTATION: Private variables and methods */
 
-/* Draw outline */
-static void _xfdashboard_outline_effect_draw(XfdashboardOutlineEffect *self,
-                                                                               
                ClutterEffectPaintFlags inFlags,
-                                                                               
                gfloat inWidth,
-                                                                               
                gfloat inHeight)
+/* Draw effect after actor was drawn */
+static void _xfdashboard_outline_effect_paint(ClutterEffect *inEffect, 
ClutterEffectPaintFlags inFlags)
 {
+       XfdashboardOutlineEffect                        *self;
        XfdashboardOutlineEffectPrivate         *priv;
+       ClutterActor                                            *target;
+       gfloat                                                          width, 
height;
        gfloat                                                          
lineWidth;
 
-       g_return_if_fail(XFDASHBOARD_IS_OUTLINE_EFFECT(self));
-       g_return_if_fail(inWidth>=0.0);
-       g_return_if_fail(inHeight>=0.0);
+       g_return_if_fail(XFDASHBOARD_IS_OUTLINE_EFFECT(inEffect));
 
+       self=XFDASHBOARD_OUTLINE_EFFECT(inEffect);
        priv=self->priv;
 
-       /* Round line inWidth for better looking and check if we can draw
-        * outline with configured line inWidth. That means it needs to be
+       /* Chain to the next item in the paint sequence */
+       target=clutter_actor_meta_get_actor(CLUTTER_ACTOR_META(self));
+       clutter_actor_continue_paint(target);
+
+       /* Get size of outline to draw */
+       clutter_actor_get_size(target, &width, &height);
+
+       /* Round line width for better looking and check if we can draw
+        * outline with configured line width. That means it needs to be
         * greater or equal to 1.0
         */
        lineWidth=floor(priv->width+0.5);
@@ -107,12 +113,12 @@ static void 
_xfdashboard_outline_effect_draw(XfdashboardOutlineEffect *self,
                gfloat                                                  
outerRadius, innerRadius;
 
                /* Determine radius for rounded corners of outer and inner 
lines */
-               outerRadius=MIN(priv->cornersRadius+(lineWidth/2.0f), 
inWidth/2.0f);
-               outerRadius=MIN(outerRadius, inWidth/2.0f);
+               outerRadius=MIN(priv->cornersRadius+(lineWidth/2.0f), 
width/2.0f);
+               outerRadius=MIN(outerRadius, width/2.0f);
                outerRadius=MAX(outerRadius, 0.0f);
 
-               innerRadius=MIN(priv->cornersRadius-(lineWidth/2.0f), 
inWidth/2.0f);
-               innerRadius=MIN(innerRadius, inWidth/2.0f);
+               innerRadius=MIN(priv->cornersRadius-(lineWidth/2.0f), 
width/2.0f);
+               innerRadius=MIN(innerRadius, width/2.0f);
                innerRadius=MAX(innerRadius, 0.0f);
 
                /* Top-left corner */
@@ -141,8 +147,8 @@ static void 
_xfdashboard_outline_effect_draw(XfdashboardOutlineEffect *self,
 
                        cogl_path_new();
                        cogl_path_move_to(offset1, 0);
-                       cogl_path_line_to(inWidth-offset2, 0);
-                       cogl_path_line_to(inWidth-offset2, 
outerRadius-innerRadius);
+                       cogl_path_line_to(width-offset2, 0);
+                       cogl_path_line_to(width-offset2, 
outerRadius-innerRadius);
                        cogl_path_line_to(offset1, outerRadius-innerRadius);
                        cogl_path_line_to(offset1, 0);
                        cogl_path_fill_preserve();
@@ -155,11 +161,11 @@ static void 
_xfdashboard_outline_effect_draw(XfdashboardOutlineEffect *self,
                        priv->borders & XFDASHBOARD_BORDERS_RIGHT)
                {
                        cogl_path_new();
-                       cogl_path_move_to(inWidth-outerRadius, 0);
-                       cogl_path_arc(inWidth-outerRadius, outerRadius, 
outerRadius, outerRadius, 270, 360);
-                       cogl_path_line_to(inWidth-outerRadius+innerRadius, 
outerRadius);
-                       cogl_path_arc(inWidth-outerRadius, outerRadius, 
innerRadius, innerRadius, 360, 270);
-                       cogl_path_line_to(inWidth-outerRadius, 0);
+                       cogl_path_move_to(width-outerRadius, 0);
+                       cogl_path_arc(width-outerRadius, outerRadius, 
outerRadius, outerRadius, 270, 360);
+                       cogl_path_line_to(width-outerRadius+innerRadius, 
outerRadius);
+                       cogl_path_arc(width-outerRadius, outerRadius, 
innerRadius, innerRadius, 360, 270);
+                       cogl_path_line_to(width-outerRadius, 0);
                        cogl_path_fill_preserve();
                        cogl_path_close();
                }
@@ -174,11 +180,11 @@ static void 
_xfdashboard_outline_effect_draw(XfdashboardOutlineEffect *self,
                        if(priv->corners & XFDASHBOARD_CORNERS_BOTTOM_RIGHT) 
offset2=outerRadius;
 
                        cogl_path_new();
-                       cogl_path_move_to(inWidth, offset1);
-                       cogl_path_line_to(inWidth, inHeight-offset2);
-                       cogl_path_line_to(inWidth-outerRadius+innerRadius, 
inHeight-offset2);
-                       cogl_path_line_to(inWidth-outerRadius+innerRadius, 
offset1);
-                       cogl_path_line_to(inWidth, offset1);
+                       cogl_path_move_to(width, offset1);
+                       cogl_path_line_to(width, height-offset2);
+                       cogl_path_line_to(width-outerRadius+innerRadius, 
height-offset2);
+                       cogl_path_line_to(width-outerRadius+innerRadius, 
offset1);
+                       cogl_path_line_to(width, offset1);
                        cogl_path_fill_preserve();
                        cogl_path_close();
                }
@@ -189,11 +195,11 @@ static void 
_xfdashboard_outline_effect_draw(XfdashboardOutlineEffect *self,
                        priv->borders & XFDASHBOARD_BORDERS_BOTTOM)
                {
                        cogl_path_new();
-                       cogl_path_move_to(inWidth, inHeight-outerRadius);
-                       cogl_path_arc(inWidth-outerRadius, 
inHeight-outerRadius, outerRadius, outerRadius, 0, 90);
-                       cogl_path_line_to(inWidth-outerRadius, 
inHeight-outerRadius+innerRadius);
-                       cogl_path_arc(inWidth-outerRadius, 
inHeight-outerRadius, innerRadius, innerRadius, 90, 0);
-                       cogl_path_line_to(inWidth, inHeight-outerRadius);
+                       cogl_path_move_to(width, height-outerRadius);
+                       cogl_path_arc(width-outerRadius, height-outerRadius, 
outerRadius, outerRadius, 0, 90);
+                       cogl_path_line_to(width-outerRadius, 
height-outerRadius+innerRadius);
+                       cogl_path_arc(width-outerRadius, height-outerRadius, 
innerRadius, innerRadius, 90, 0);
+                       cogl_path_line_to(width, height-outerRadius);
                        cogl_path_fill_preserve();
                        cogl_path_close();
                }
@@ -208,11 +214,11 @@ static void 
_xfdashboard_outline_effect_draw(XfdashboardOutlineEffect *self,
                        if(priv->corners & XFDASHBOARD_CORNERS_BOTTOM_RIGHT) 
offset2=outerRadius;
 
                        cogl_path_new();
-                       cogl_path_move_to(offset1, inHeight);
-                       cogl_path_line_to(inWidth-offset2, inHeight);
-                       cogl_path_line_to(inWidth-offset2, 
inHeight-outerRadius+innerRadius);
-                       cogl_path_line_to(offset1, 
inHeight-outerRadius+innerRadius);
-                       cogl_path_line_to(offset1, inHeight);
+                       cogl_path_move_to(offset1, height);
+                       cogl_path_line_to(width-offset2, height);
+                       cogl_path_line_to(width-offset2, 
height-outerRadius+innerRadius);
+                       cogl_path_line_to(offset1, 
height-outerRadius+innerRadius);
+                       cogl_path_line_to(offset1, height);
                        cogl_path_fill_preserve();
                        cogl_path_close();
                }
@@ -223,11 +229,11 @@ static void 
_xfdashboard_outline_effect_draw(XfdashboardOutlineEffect *self,
                        priv->borders & XFDASHBOARD_BORDERS_LEFT)
                {
                        cogl_path_new();
-                       cogl_path_move_to(outerRadius, inHeight);
-                       cogl_path_arc(outerRadius, inHeight-outerRadius, 
outerRadius, outerRadius, 90, 180);
-                       cogl_path_line_to(outerRadius-innerRadius, 
inHeight-outerRadius);
-                       cogl_path_arc(outerRadius, inHeight-outerRadius, 
innerRadius, innerRadius, 180, 90);
-                       cogl_path_line_to(outerRadius, inHeight);
+                       cogl_path_move_to(outerRadius, height);
+                       cogl_path_arc(outerRadius, height-outerRadius, 
outerRadius, outerRadius, 90, 180);
+                       cogl_path_line_to(outerRadius-innerRadius, 
height-outerRadius);
+                       cogl_path_arc(outerRadius, height-outerRadius, 
innerRadius, innerRadius, 180, 90);
+                       cogl_path_line_to(outerRadius, height);
                        cogl_path_fill_preserve();
                        cogl_path_close();
                }
@@ -243,8 +249,8 @@ static void 
_xfdashboard_outline_effect_draw(XfdashboardOutlineEffect *self,
 
                        cogl_path_new();
                        cogl_path_move_to(0, offset1);
-                       cogl_path_line_to(0, inHeight-offset2);
-                       cogl_path_line_to(outerRadius-innerRadius, 
inHeight-offset2);
+                       cogl_path_line_to(0, height-offset2);
+                       cogl_path_line_to(outerRadius-innerRadius, 
height-offset2);
                        cogl_path_line_to(outerRadius-innerRadius, offset1);
                        cogl_path_line_to(0, offset1);
                        cogl_path_fill_preserve();
@@ -258,8 +264,8 @@ static void 
_xfdashboard_outline_effect_draw(XfdashboardOutlineEffect *self,
                        {
                                cogl_path_new();
                                cogl_path_move_to(0, 0);
-                               cogl_path_line_to(inWidth, 0);
-                               cogl_path_line_to(inWidth, lineWidth);
+                               cogl_path_line_to(width, 0);
+                               cogl_path_line_to(width, lineWidth);
                                cogl_path_line_to(0, lineWidth);
                                cogl_path_line_to(0, 0);
                                cogl_path_fill_preserve();
@@ -270,11 +276,11 @@ static void 
_xfdashboard_outline_effect_draw(XfdashboardOutlineEffect *self,
                        if(priv->borders & XFDASHBOARD_BORDERS_RIGHT)
                        {
                                cogl_path_new();
-                               cogl_path_move_to(inWidth, 0);
-                               cogl_path_line_to(inWidth, inHeight);
-                               cogl_path_line_to(inWidth-lineWidth, inHeight);
-                               cogl_path_line_to(inWidth-lineWidth, 0);
-                               cogl_path_line_to(inWidth, 0);
+                               cogl_path_move_to(width, 0);
+                               cogl_path_line_to(width, height);
+                               cogl_path_line_to(width-lineWidth, height);
+                               cogl_path_line_to(width-lineWidth, 0);
+                               cogl_path_line_to(width, 0);
                                cogl_path_fill_preserve();
                                cogl_path_close();
                        }
@@ -283,11 +289,11 @@ static void 
_xfdashboard_outline_effect_draw(XfdashboardOutlineEffect *self,
                        if(priv->borders & XFDASHBOARD_BORDERS_BOTTOM)
                        {
                                cogl_path_new();
-                               cogl_path_move_to(0, inHeight);
-                               cogl_path_line_to(inWidth, inHeight);
-                               cogl_path_line_to(inWidth, inHeight-lineWidth);
-                               cogl_path_line_to(0, inHeight-lineWidth);
-                               cogl_path_line_to(0, inHeight);
+                               cogl_path_move_to(0, height);
+                               cogl_path_line_to(width, height);
+                               cogl_path_line_to(width, height-lineWidth);
+                               cogl_path_line_to(0, height-lineWidth);
+                               cogl_path_line_to(0, height);
                                cogl_path_fill_preserve();
                                cogl_path_close();
                        }
@@ -297,38 +303,15 @@ static void 
_xfdashboard_outline_effect_draw(XfdashboardOutlineEffect *self,
                        {
                                cogl_path_new();
                                cogl_path_move_to(0, 0);
-                               cogl_path_line_to(0, inHeight);
-                               cogl_path_line_to(lineWidth, inHeight);
+                               cogl_path_line_to(0, height);
+                               cogl_path_line_to(lineWidth, height);
                                cogl_path_line_to(lineWidth, 0);
                                cogl_path_line_to(0, 0);
                                cogl_path_fill_preserve();
                                cogl_path_close();
                        }
                }
-}
 
-/* Draw effect after actor was drawn */
-static void _xfdashboard_outline_effect_paint(ClutterEffect *inEffect, 
ClutterEffectPaintFlags inFlags)
-{
-       XfdashboardOutlineEffect                        *self;
-       XfdashboardOutlineEffectClass           *klass;
-       ClutterActor                                            *target;
-       gfloat                                                          width, 
height;
-
-       g_return_if_fail(XFDASHBOARD_IS_OUTLINE_EFFECT(inEffect));
-
-       self=XFDASHBOARD_OUTLINE_EFFECT(inEffect);
-
-       /* Chain to the next item in the paint sequence */
-       target=clutter_actor_meta_get_actor(CLUTTER_ACTOR_META(self));
-       clutter_actor_continue_paint(target);
-
-       /* Get size of outline to draw */
-       clutter_actor_get_size(target, &width, &height);
-
-       /* Call virtual function to draw outline */
-       klass=XFDASHBOARD_OUTLINE_EFFECT_GET_CLASS(self);
-       if(klass->draw) klass->draw(self, inFlags, width, height);
 }
 
 /* IMPLEMENTATION: GObject */
@@ -432,14 +415,12 @@ static void 
xfdashboard_outline_effect_class_init(XfdashboardOutlineEffectClass
        GObjectClass                                    
*gobjectClass=G_OBJECT_CLASS(klass);
 
        /* Override functions */
-       klass->draw=_xfdashboard_outline_effect_draw;
-
-       effectClass->paint=_xfdashboard_outline_effect_paint;
-
        gobjectClass->dispose=_xfdashboard_outline_effect_dispose;
        gobjectClass->set_property=_xfdashboard_outline_effect_set_property;
        gobjectClass->get_property=_xfdashboard_outline_effect_get_property;
 
+       effectClass->paint=_xfdashboard_outline_effect_paint;
+
        /* Set up private structure */
        g_type_class_add_private(klass, 
sizeof(XfdashboardOutlineEffectPrivate));
 
diff --git a/libxfdashboard/outline-effect.h b/libxfdashboard/outline-effect.h
index 510528f..1fab09f 100644
--- a/libxfdashboard/outline-effect.h
+++ b/libxfdashboard/outline-effect.h
@@ -60,10 +60,6 @@ struct _XfdashboardOutlineEffectClass
        /*< private >*/
        /* Parent class */
        ClutterEffectClass                                      parent_class;
-
-       /*< public >*/
-       /* Virtual functions */
-       void (*draw)(XfdashboardOutlineEffect *self, ClutterEffectPaintFlags 
inFlags, gfloat inWidth, gfloat inHeight);
 };
 
 /* Public API */

-- 
To stop receiving notification emails like this one, please contact
the administrator of this repository.
_______________________________________________
Xfce4-commits mailing list
[email protected]
https://mail.xfce.org/mailman/listinfo/xfce4-commits

Reply via email to