Enlightenment CVS committal

Author  : sebastid
Project : e17
Module  : apps/e

Dir     : e17/apps/e/src/bin


Modified Files:
        e_border.c 


Log Message:
Fake mouse up on the border, not on the container.

===================================================================
RCS file: /cvsroot/enlightenment/e17/apps/e/src/bin/e_border.c,v
retrieving revision 1.152
retrieving revision 1.153
diff -u -3 -r1.152 -r1.153
--- e_border.c  25 Apr 2005 18:02:25 -0000      1.152
+++ e_border.c  25 Apr 2005 18:57:32 -0000      1.153
@@ -3,6 +3,14 @@
  */
 #include "e.h"
 
+typedef struct _E_Border_Fake_Mouse_Up_Info E_Border_Fake_Mouse_Up_Info;
+
+struct _E_Border_Fake_Mouse_Up_Info
+{
+   E_Border *border;
+   int       button;
+};
+
 //#define INOUTDEBUG 1
 
 #define RESIZE_NONE 0
@@ -106,6 +114,8 @@
 static void _e_border_reorder_after(E_Border *bd, E_Border *after);
 static void _e_border_reorder_before(E_Border *bd, E_Border *before);
 
+static void _e_border_fake_mouse_up_cb(void *data);
+
 /* local subsystem globals */
 static Evas_List *handlers = NULL;
 static Evas_List *borders = NULL;
@@ -1950,6 +1960,7 @@
 _e_border_cb_signal_drag(void *data, Evas_Object *obj, const char *emission, 
const char *source)
 {
    E_Border *bd;
+   E_Border_Fake_Mouse_Up_Info *info;
 
    bd = data;
 
@@ -1964,7 +1975,12 @@
          {
             e_drag_start(bd->zone, "enlightenment/border", bd, 
                          a->path, "icon");
-            e_util_container_fake_mouse_up_later(bd->zone->container, 1);
+
+            info = E_NEW(E_Border_Fake_Mouse_Up_Info, 1);
+            info->border = bd;
+            info->button = 1;
+            e_object_ref(E_OBJECT(info->border));
+            ecore_job_add(_e_border_fake_mouse_up_cb, info);
          }
      }
 }
@@ -3992,3 +4008,16 @@
      }
 }
 
+static void
+_e_border_fake_mouse_up_cb(void *data)
+{
+   E_Border_Fake_Mouse_Up_Info *info;
+   
+   info = data;
+   if (info)
+     {
+       evas_event_feed_mouse_up(info->border->bg_evas, info->button, 
EVAS_BUTTON_NONE, NULL);
+       e_object_unref(E_OBJECT(info->border));
+       free(info);
+     }
+}




-------------------------------------------------------
SF email is sponsored by - The IT Product Guide
Read honest & candid reviews on hundreds of IT Products from real users.
Discover which products truly live up to the hype. Start reading now.
http://ads.osdn.com/?ad_id=6595&alloc_id=14396&op=click
_______________________________________________
enlightenment-cvs mailing list
enlightenment-cvs@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs

Reply via email to