[gnome-builder] tree: make the popover arrow overlap the row



commit c87ed7c42c1ac896d86600c23a0187dab5b5fbb9
Author: Christian Hergert <christian hergert me>
Date:   Sat Apr 11 02:11:40 2015 -0700

    tree: make the popover arrow overlap the row
    
    Probably better to have this in a theme long term, but hey, it looks good.

 src/tree/gb-tree-node.c |   20 ++++++++++++++++++++
 1 files changed, 20 insertions(+), 0 deletions(-)
---
diff --git a/src/tree/gb-tree-node.c b/src/tree/gb-tree-node.c
index 0dedc13..e19f356 100644
--- a/src/tree/gb-tree-node.c
+++ b/src/tree/gb-tree-node.c
@@ -706,6 +706,26 @@ gb_tree_node_show_popover_timeout_cb (gpointer data)
   if ((rect.x + rect.width) > (alloc.x + alloc.width))
     rect.width = (alloc.x + alloc.width) - rect.x;
 
+  /*
+   * FIXME: Wouldn't this be better placed in a theme?
+   */
+  switch (gtk_popover_get_position (popreq->popover))
+    {
+    case GTK_POS_BOTTOM:
+    case GTK_POS_TOP:
+      rect.y += 3;
+      rect.height -= 6;
+      break;
+    case GTK_POS_RIGHT:
+    case GTK_POS_LEFT:
+      rect.x += 3;
+      rect.width -= 6;
+      break;
+
+    default:
+      break;
+    }
+
   gtk_popover_set_relative_to (popreq->popover, GTK_WIDGET (tree));
   gtk_popover_set_pointing_to (popreq->popover, &rect);
   gtk_widget_show (GTK_WIDGET (popreq->popover));


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]