Enlightenment CVS committal

Author  : handyande
Project : misc
Module  : engage

Dir     : misc/engage/src/module


Modified Files:
        e_mod_main.c e_mod_main.h 


Log Message:
yikes, patch from Ben Rose back in march to focus on click, added a config 
option for this too
===================================================================
RCS file: /cvsroot/enlightenment/misc/engage/src/module/e_mod_main.c,v
retrieving revision 1.94
retrieving revision 1.95
diff -u -3 -r1.94 -r1.95
--- e_mod_main.c        12 Dec 2005 23:36:17 -0000      1.94
+++ e_mod_main.c        13 Dec 2005 00:16:47 -0000      1.95
@@ -42,6 +42,8 @@
 static int     _engage_cb_event_border_uniconify(void *data, int type, void 
*event);
 static int     _engage_cb_border_add(Engage_Bar *eb, E_Border *bd);
 
+static void    _engage_cb_menu_clickfocus(void *data, E_Menu *m, E_Menu_Item 
*mi);
+
 static Engage_Bar *_engage_bar_new(Engage_Bar *eb, E_Container *con);
 static void    _engage_bar_free(Engage_Bar *eb);
 static void    _engage_bar_menu_gen(Engage_Bar *eb);
@@ -229,6 +231,7 @@
 #define D conf_edd
    E_CONFIG_VAL(D, T, appdir, STR);
    E_CONFIG_LIST(D, T, bars, conf_bar_edd);
+   E_CONFIG_VAL(D, T, click_focus, UCHAR);
    /*
    E_CONFIG_VAL(D, T, handle, DOUBLE);
    E_CONFIG_VAL(D, T, autohide, UCHAR);
@@ -239,6 +242,7 @@
      {
        e->conf = E_NEW(Config, 1);
        e->conf->appdir = evas_stringshare_add("engage");
+       e->conf->click_focus = 1;
        /*
        e->conf->handle = 0.5;
        e->conf->autohide = 0;
@@ -1144,8 +1148,10 @@
    mn = e_menu_new();
 
    mi = e_menu_item_new(mn);
-   e_menu_item_label_set(mi, "(Unused)");
-
+   e_menu_item_label_set(mi, "Focus borders on click");
+   e_menu_item_check_set(mi, 1);
+   if (e->conf->click_focus) e_menu_item_toggle_set(mi, 1);
+   e_menu_item_callback_set(mi, _engage_cb_menu_clickfocus, e);
 /*
    mi = e_menu_item_new(mn);
    e_menu_item_label_set(mi, "Auto hide");
@@ -1271,6 +1277,18 @@
    return 1;
 }
 
+static void
+_engage_cb_menu_clickfocus(void *data, E_Menu *m, E_Menu_Item *mi)
+{
+   Engage        *e;
+   unsigned char  enabled;
+
+   e = data;
+   enabled = e_menu_item_toggle_get(mi);
+   e->conf->click_focus = enabled;
+   e_config_save_queue();
+}
+
 static int
 _engage_cb_event_border_add(void *data, int type, void *event)
 {
@@ -2031,6 +2049,8 @@
          e_border_uniconify(ai->border);
        e_border_raise(ai->border);
        e_desk_show(ai->border->desk);
+       if (ai->ic->eb->engage->conf->click_focus)
+         e_border_focus_set(ai->border, 1, 1);
      }
    if (ev->button == 3)
      {
@@ -2186,6 +2206,8 @@
       e_border_uniconify(ai->border);
     e_border_raise(ai->border);
     e_desk_show(ai->border->desk);
+    if (ic->eb->engage->conf->click_focus)
+      e_border_focus_set(ai->border, 1, 1);
 
     _engage_bar_motion_handle(ic->eb, ev->canvas.x, ev->canvas.y);
 }
===================================================================
RCS file: /cvsroot/enlightenment/misc/engage/src/module/e_mod_main.h,v
retrieving revision 1.26
retrieving revision 1.27
diff -u -3 -r1.26 -r1.27
--- e_mod_main.h        12 Dec 2005 14:38:33 -0000      1.26
+++ e_mod_main.h        13 Dec 2005 00:16:47 -0000      1.27
@@ -16,6 +16,7 @@
 {
    const char   *appdir;
    Evas_List    *bars;
+   unsigned char click_focus;
    /*
    double        handle;
    char          autohide;




-------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc. Do you grep through log files
for problems?  Stop!  Download the new AJAX search engine that makes
searching your log files as easy as surfing the  web.  DOWNLOAD SPLUNK!
http://ads.osdn.com/?ad_id=7637&alloc_id=16865&op=click
_______________________________________________
enlightenment-cvs mailing list
enlightenment-cvs@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs

Reply via email to