[EGIT] [core/efl] master 01/01: ecore-x: fix Mode_switch key mapping
discomfitor pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=1b0690dd9a9e58365601ba6aeda4988998647b1c commit 1b0690dd9a9e58365601ba6aeda4988998647b1c Author: Hannes Janetzek <hannes.janet...@gmail.com> Date: Thu Dec 15 05:18:39 2016 +0100 ecore-x: fix Mode_switch key mapping - remove redundant XKeysymToString when sym == sym2 @fix --- src/lib/ecore_x/ecore_x_events.c | 13 +++-- 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/src/lib/ecore_x/ecore_x_events.c b/src/lib/ecore_x/ecore_x_events.c index 0049fca..b19d60a 100644 --- a/src/lib/ecore_x/ecore_x_events.c +++ b/src/lib/ecore_x/ecore_x_events.c @@ -344,7 +344,7 @@ _ecore_key_press(int event, char *compose = NULL; char *tmp = NULL; char *keyname; - char *key; + char *key = NULL; char keyname_buffer[256]; char compose_buffer[256]; KeySym sym, sym2 = 0; @@ -372,6 +372,12 @@ _ecore_key_press(int event, sizeof(compose_buffer), , ); + + if (sym != sym2) + key = XKeysymToString(sym2); + if (!key) + key = keyname; + if (val > 0) { compose_buffer[val] = 0; @@ -381,13 +387,8 @@ _ecore_key_press(int event, ERR("Ecore_X cannot convert input key string '%s' to UTF-8. " "Is Eina built with iconv support?", compose_buffer); tmp = compose; -sym = sym2; } - key = XKeysymToString(sym); - if (!key) - key = keyname; - key_len = strlen(key); keyname_len = strlen(keyname); compose_len = (compose) ? strlen(compose) : 0; --
[EGIT] [core/enlightenment] enlightenment-0.20 14/20: just a small patch to make sure evry_hide does not get called synchronously from an Evry_Action
discomfitor pushed a commit to branch enlightenment-0.20. http://git.enlightenment.org/core/enlightenment.git/commit/?id=ce6da215fd2451d7e0c15cd5f467237a63811f8f commit ce6da215fd2451d7e0c15cd5f467237a63811f8f Author: Hannes Janetzek <hannes.janet...@gmail.com> Date: Tue May 31 11:41:33 2016 -0400 just a small patch to make sure evry_hide does not get called synchronously from an Evry_Action --- src/modules/everything/evry.c | 22 +++--- 1 file changed, 19 insertions(+), 3 deletions(-) diff --git a/src/modules/everything/evry.c b/src/modules/everything/evry.c index ff7b000..9dab641 100644 --- a/src/modules/everything/evry.c +++ b/src/modules/everything/evry.c @@ -71,6 +71,7 @@ static Eina_Bool _evry_cb_selection_notify(void *data, int type, void *even static Eina_Bool _evry_cb_mouse(void *data, int type, void *event); static Eina_Bool _evry_delay_hide_timer(void *data); +static Eina_Bool _evry_focus_out_timer(void *data); static Eina_List *windows = NULL; @@ -151,17 +152,32 @@ _evry_cb_item_changed(EINA_UNUSED void *data, EINA_UNUSED int type, void *event) return ECORE_CALLBACK_PASS_ON; } -static void -_evry_focus_out(void *data, Evas *e EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void *event_info EINA_UNUSED) +static Eina_Bool +_evry_focus_out_timer(void *data) { Evry_Window *win = data; E_Client *ec; - if (!win->grab) return; + win->delay_hide_action = NULL; ec = e_win_client_get(win->ewin); if (ec && (!e_object_is_del(E_OBJECT(ec evry_hide(win, 0); + + return ECORE_CALLBACK_CANCEL; +} + +static void +_evry_focus_out(void *data, Evas *e EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void *event_info EINA_UNUSED) +{ + Evry_Window *win = data; + + if (!win->grab) return; + + if (win->delay_hide_action) + ecore_timer_del(win->delay_hide_action); + + win->delay_hide_action = ecore_timer_add(0.0, _evry_focus_out_timer, win); } Evry_Window * --
[EGIT] [core/enlightenment] master 01/01: just a small patch to make sure evry_hide does not get called synchronously from an Evry_Action
discomfitor pushed a commit to branch master. http://git.enlightenment.org/core/enlightenment.git/commit/?id=b3561d764123bd842e55c7c362b7c82c84bb5139 commit b3561d764123bd842e55c7c362b7c82c84bb5139 Author: Hannes Janetzek <hannes.janet...@gmail.com> Date: Tue May 31 11:41:33 2016 -0400 just a small patch to make sure evry_hide does not get called synchronously from an Evry_Action --- src/modules/everything/evry.c | 22 +++--- 1 file changed, 19 insertions(+), 3 deletions(-) diff --git a/src/modules/everything/evry.c b/src/modules/everything/evry.c index ff7b000..9dab641 100644 --- a/src/modules/everything/evry.c +++ b/src/modules/everything/evry.c @@ -71,6 +71,7 @@ static Eina_Bool _evry_cb_selection_notify(void *data, int type, void *even static Eina_Bool _evry_cb_mouse(void *data, int type, void *event); static Eina_Bool _evry_delay_hide_timer(void *data); +static Eina_Bool _evry_focus_out_timer(void *data); static Eina_List *windows = NULL; @@ -151,17 +152,32 @@ _evry_cb_item_changed(EINA_UNUSED void *data, EINA_UNUSED int type, void *event) return ECORE_CALLBACK_PASS_ON; } -static void -_evry_focus_out(void *data, Evas *e EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void *event_info EINA_UNUSED) +static Eina_Bool +_evry_focus_out_timer(void *data) { Evry_Window *win = data; E_Client *ec; - if (!win->grab) return; + win->delay_hide_action = NULL; ec = e_win_client_get(win->ewin); if (ec && (!e_object_is_del(E_OBJECT(ec evry_hide(win, 0); + + return ECORE_CALLBACK_CANCEL; +} + +static void +_evry_focus_out(void *data, Evas *e EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void *event_info EINA_UNUSED) +{ + Evry_Window *win = data; + + if (!win->grab) return; + + if (win->delay_hide_action) + ecore_timer_del(win->delay_hide_action); + + win->delay_hide_action = ecore_timer_add(0.0, _evry_focus_out_timer, win); } Evry_Window * --
Re: [E-devel] itask-ng issues
Hello, please post issues with itask-ng at http://code.google.com/p/itask-module/issues/list Am Wed, 09 Jul 2008 20:03:13 +0200 schrieb Nikolas Arend [EMAIL PROTECTED]: Hi, I have two issues with itask-ng which I'd like to mention, and I hope it's ok to post them to this list. The first thing I'm experiencing is a white bar over the entire bottom of the screen where the instance of itask-ng is located as a taskbar (I'm not running a composite manager). It appears only when e is started or restarted and there are no applications to show in the taskbar. Once the first app is running, the white bar disappears and the the icon is shown normally in the taskbar. However, the bar does not reappear when I close all applications, only when e is restarted subsequently. When I enable composite and run e.g. bling, all is as it's supposed to be, only that composite is neither very fast nor very stable here (ATI graphics card/driver), so I cannot really use it. The behavior described above is there for some time now and unfortunately I cannot link it to a specific date or revision. this should be fixed with the current svn version The second issue looks like an itask-ng problem too, but I'm not entirely sure, maybe something changed in e or the libs. It concerns the icons for minimized applications in the taskbar which normally kind of fade out to show that the app is minimized. Since a few revisions they simply disappear, leaving a blank space. The icon reappears on mouse-over, i.e. when the icon/bar is zoomed, so it seems to affect only the normal, non-enlarged icon. hmm, no idea. does it also happen when using a composite manager? Since I prefer itask-ng over the other taskbar/launcher solutions it'd be nice to get those issues fixed, so please let me know if you need any more information. Thanks and best regards, Nick. Regards, Hannes 'jeffdameth' Janetzek - Sponsored by: SourceForge.net Community Choice Awards: VOTE NOW! Studies have shown that voting for your favorite open source project, along with a healthy diet, reduces your potential for chronic lameness and boredom. Vote Now at http://www.sourceforge.net/community/cca08 ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] meanings
Massimo Maiurana wrote: there are two things added recently to e17 which I do not understand the meaning, can you please enlighten me as I have to translate them for italian? - keyaction popup height in pager configuration i've added this one and marked in the code that one should find a more suitable name for it. i'm not a native english speaker, so maybe someone else finds good short name for it. the option describes the height of the pager popup which is triggered by a keypress. (see pager section in the keybindings configuration) regards, Hannes - enable thumbscroll in the new interation module what are these two option supposed to do? - This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2008. http://clk.atdmt.com/MRT/go/vse012070mrt/direct/01/ ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] E CVS: forecasts jeffdameth
Am Sun, 06 Jan 2008 18:09:10 -0500 schrieb Christopher Michael [EMAIL PROTECTED]: Enlightenment CVS wrote: Enlightenment CVS committal Author : jeffdameth Project : e_modules Module : forecasts Dir : e_modules/forecasts Modified Files: e_mod_main.c Log Message: forcast fix: - initialize inst-popup with NULL - only update popup when necessary --Snip-- Did you check with the author of the module about these changes? CVS access is not a license to go willy-nilly on other people's code. dh Sorry, no I didnt. I mentioned the patch on irc and mekius said I could commit this patch if it fixes a segv. but maybe he just meant the initialize part. I will ask in future _always_ the author. regards, Hannes - This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2005. http://clk.atdmt.com/MRT/go/vse012070mrt/direct/01/ ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel - This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2005. http://clk.atdmt.com/MRT/go/vse012070mrt/direct/01/ ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] [patch] keybindings for pager module - update
Hi all, here is a link to a more recent version of my patch, in the case that someone wants to test it. http://itask-module.googlecode.com/svn/trunk/patches/pager_keyactions6.patch regards, Hannes Am Thu, 20 Dec 2007 00:34:26 +0100 schrieb Hannes Janetzek [EMAIL PROTECTED]: Hi, this patch adds the following keybindings to the pager: 1. show pager popup while the pager is visible one can click on desks to switch to them and can drag windows around 2. show the pager and cycle through desks up,down,back and forth. when releasing the hold keys(modifiers) one switches to the selected desk + some bugfixes and cleanups e.g. if(pager = inst-pager) and others I dont remeber atm. I hope someone finds the time to review it. I'm open to suggestions and feature requests ;) Regards, Hannes 'jeffdameth' Janetzek - This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2005. http://clk.atdmt.com/MRT/go/vse012070mrt/direct/01/ ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
[E-devel] [patch] keybindings for pager module
Hi, this patch adds the following keybindings to the pager: 1. show pager popup while the pager is visible one can click on desks to switch to them and can drag windows around 2. show the pager and cycle through desks up,down,back and forth. when releasing the hold keys(modifiers) one switches to the selected desk + some bugfixes and cleanups e.g. if(pager = inst-pager) and others I dont remeber atm. I hope someone finds the time to review it. I'm open to suggestions and feature requests ;) Regards, Hannes 'jeffdameth' Janetzek Index: e_mod_main.c === RCS file: /var/cvs/e/e17/apps/e/src/modules/pager/e_mod_main.c,v retrieving revision 1.221 diff -u -r1.221 e_mod_main.c --- e_mod_main.c 14 Dec 2007 22:30:44 - 1.221 +++ e_mod_main.c 19 Dec 2007 23:30:20 - @@ -41,7 +41,7 @@ struct _Pager { Instance *inst; - unsigned char is_popup : 1; + Pager_Popup *popup; Evas_Object *o_table; E_Zone *zone; int xnum, ynum; @@ -157,16 +157,43 @@ static void _pager_window_move(Pager_Win *pw); static Pager_Win *_pager_window_find(Pager *p, E_Border *border); static Pager_Win *_pager_desk_window_find(Pager_Desk *pd, E_Border *border); -static Pager_Popup *_pager_popup_new(E_Zone *zone, int urgent); +static Pager_Popup *_pager_popup_new(E_Zone *zone); static void _pager_popup_free(Pager_Popup *pp); static Pager_Popup *_pager_popup_find(E_Zone *zone); static E_Config_Dialog *_pager_config_dialog(E_Container *con, const char *params); +/* functions for pager popup on key actions */ +static int _pager_popup_show(); +static void _pager_popup_hide(); +static void _cb_action_pager_popup_show(E_Object *obj, const char *params, Ecore_X_Event_Key_Down *ev); +static void _cb_action_pager_popup_switch(E_Object *obj, const char *params, Ecore_X_Event_Key_Down *ev); +static int _pager_popup_cb_mouse_down(void *data, int type, void *event); +static int _pager_popup_cb_mouse_up(void *data, int type, void *event); +static int _pager_popup_cb_mouse_move(void *data, int type, void *event); +static void _pager_popup_desk_switch(int x, int y); +static void _pager_popup_modifiers_set(int mod); +static int _pager_popup_cb_key_down(void *data, int type, void *event); +static int _pager_popup_cb_key_up(void *data, int type, void *event); +static void _pager_popup_cb_action_show(E_Object *obj, const char *params, Ecore_X_Event_Key_Down *ev); +static void _pager_popup_cb_action_switch(E_Object *obj, const char *params, Ecore_X_Event_Key_Down *ev); + +/* variables for pager popup on key actions */ +static E_Action *act_popup_show = NULL; +static E_Action *act_popup_switch = NULL; +static Ecore_X_Window input_window = 0; +static Evas_List *handlers = NULL; +static Pager_Popup *act_popup = NULL; /* active popup */ +static int hold_count = 0; +static int hold_mod = 0; +static E_Desk *current_desk = NULL; + static E_Config_DD *conf_edd = NULL; -static Evas_List *pager_popups = NULL; + +static Evas_List *pagers = NULL; Config *pager_config = NULL; + static E_Gadcon_Client * _gc_init(E_Gadcon *gc, const char *name, const char *id, const char *style) { @@ -260,10 +287,13 @@ Pager *p; p = E_NEW(Pager, 1); + p-inst = NULL; + p-popup = NULL; p-o_table = e_table_add(evas); e_table_homogenous_set(p-o_table, 1); p-zone = zone; _pager_fill(p); + pagers = evas_list_append(pagers, p); return p; } @@ -272,6 +302,7 @@ { _pager_empty(p); evas_object_del(p-o_table); + pagers = evas_list_remove(pagers, p); free(p); } @@ -303,8 +334,6 @@ static void _pager_empty(Pager *p) { - // if (p-popup) _pager_popup_free(p-popup); - while (p-desks) { _pager_desk_free(p-desks-data); @@ -343,6 +372,7 @@ evas_object_event_callback_add(o, EVAS_CALLBACK_MOUSE_UP, _pager_desk_cb_mouse_up, pd); evas_object_event_callback_add(o, EVAS_CALLBACK_MOUSE_MOVE, _pager_desk_cb_mouse_move, pd); evas_object_event_callback_add(o, EVAS_CALLBACK_MOUSE_WHEEL, _pager_desk_cb_mouse_wheel, pd); + evas_object_show(o); o = e_layout_add(evas_object_evas_get(p-o_table)); @@ -648,7 +678,7 @@ } static Pager_Popup * -_pager_popup_new(E_Zone *zone, int urgent) +_pager_popup_new(E_Zone *zone) { Pager_Popup *pp; Evas_Coord w, h; @@ -668,9 +698,10 @@ e_popup_layer_set(pp-popup, 255); pp-pager = _pager_new(pp-popup-evas, zone); + pp-pager-popup = pp; - pp-pager-is_popup = 1; - + pp-urgent = 0; + e_zone_desk_count_get(zone, x, y); height = pager_config-popup_pager_height * y; width = ((zone-w * x)/(zone-h * y)) * height; @@ -694,28 +725,16 @@ evas_object_move(pp-o_bg, 0, 0); evas_object_resize(pp-o_bg, w, h); e_popup_edje_bg_object_set(pp-popup, pp-o_bg); - //e_popup_ignore_events_set(pp-popup, 1); + e_popup_ignore_events_set(pp-popup, 1); e_popup_move_resize(pp-popup, ((zone-w - w) / 2), ((zone-h - h) / 2), w, h);
[E-devel] [patch] pager popup cleanup + pager-popup-size option
hi, this patch fixes the problem that the pager popup always has the same size as the pager in the shelf. it also solves the problem when having two pagers in one zone. i.e. it shows only _one_ popup no matter how many pager instances are running in a zone. it is now also possible to have a pager popup without having a shelf instance. To make this comfortable the pager is now also configurable via extensions-pager. I saw a FIXME in the code concerning that there should be a configuration per zone. I think this approach with putting a config link in extensions can also work with this. i.e. extensions - pager (Zone n) comments and suggestion are welcome. i think i'll work a bit more on the pager module: adding key actions to show the popup, cycle through desktops without immediatly switching to them and maybe one to permute desktops. I made a whitespace-cleanup and changed the indentaion to e`s standard (in a few places spaces are replaced by tabs now) sorry if this makes the patch harder to read. regards, Hannes 'jeffdameth' Janetzek Index: e_mod_main.c === RCS file: /var/cvs/e/e17/apps/e/src/modules/pager/e_mod_main.c,v retrieving revision 1.220 diff -u -r1.220 e_mod_main.c --- e_mod_main.c 10 Nov 2007 18:54:45 - 1.220 +++ e_mod_main.c 14 Dec 2007 21:47:52 - @@ -1,6 +1,7 @@ /* * vim:ts=8:sw=3:sts=8:noexpandtab:cino=5n-3f0^-2{2 */ + #include e.h #include e_mod_main.h @@ -19,7 +20,7 @@ GADCON_CLIENT_CLASS_VERSION, pager, { -_gc_init, _gc_shutdown, _gc_orient, _gc_label, _gc_icon, _gc_id_new, NULL + _gc_init, _gc_shutdown, _gc_orient, _gc_label, _gc_icon, _gc_id_new, NULL }, E_GADCON_CLIENT_STYLE_INSET }; @@ -53,7 +54,6 @@ E_Zone *zone; int xnum, ynum; Evas_List*desks; - Pager_Popup *popup; unsigned char dragging : 1; unsigned char just_dragged : 1; Evas_Coorddnd_x, dnd_y; @@ -69,6 +69,7 @@ Evas_Object *o_layout; int xpos, ypos; int current : 1; + int urgent; struct { Pager *from_pager; unsigned char in_pager : 1; @@ -101,7 +102,7 @@ struct _Pager_Popup { E_Popup *popup; - Pager*pager, *src_pager; + Pager*pager; Evas_Object *o_bg; Ecore_Timer *timer; unsigned char urgent : 1; @@ -164,10 +165,13 @@ static void _pager_window_move(Pager_Win *pw); static Pager_Win *_pager_window_find(Pager *p, E_Border *border); static Pager_Win *_pager_desk_window_find(Pager_Desk *pd, E_Border *border); -static Pager_Popup *_pager_popup_new(Pager *p, int urgent); +static Pager_Popup *_pager_popup_new(E_Zone *zone, int urgent); static void _pager_popup_free(Pager_Popup *pp); +static Pager_Popup *_pager_popup_find(E_Zone *zone); +static E_Config_Dialog *_pager_config_dialog(E_Container *con, const char *params); static E_Config_DD *conf_edd = NULL; +static Evas_List *pager_popups = NULL; Config *pager_config = NULL; @@ -180,16 +184,16 @@ Instance *inst; Evas_Coord x, y, w, h; const char *drop[] = { enlightenment/pager_win, enlightenment/border, enlightenment/vdesktop}; - + inst = E_NEW(Instance, 1); - + p = _pager_new(gc-evas, gc-zone); p-inst = inst; inst-pager = p; o = p-o_table; gcc = e_gadcon_client_new(gc, name, id, style, o); gcc-data = inst; - + inst-gcc = gcc; inst-o_pager = o; @@ -209,11 +213,11 @@ return gcc; } -static void +static void _gc_shutdown(E_Gadcon_Client *gcc) { Instance *inst; - + inst = gcc-data; pager_config-instances = evas_list_remove(pager_config-instances, inst); e_drop_handler_del(inst-drop_handler); @@ -225,14 +229,14 @@ _gc_orient(E_Gadcon_Client *gcc) { Instance *inst; - + inst = gcc-data; - e_gadcon_client_aspect_set(gcc, - inst-pager-xnum * inst-pager-zone-w, + e_gadcon_client_aspect_set(gcc, + inst-pager-xnum * inst-pager-zone-w, inst-pager-ynum * inst-pager-zone-h); e_gadcon_client_min_size_set(gcc, 16, 16); } - + static char * _gc_label(void) { @@ -244,7 +248,7 @@ { Evas_Object *o; char buf[4096]; - + o = edje_object_add(evas); snprintf(buf, sizeof(buf), %s/e-module-pager.edj, e_module_dir_get(pager_config-module)); @@ -267,7 +271,7 @@ _pager_new(Evas *evas, E_Zone *zone) { Pager *p; - + p = E_NEW(Pager, 1); p-o_table = e_table_add(evas); e_table_homogenous_set(p-o_table, 1); @@ -288,7 +292,7 @@ _pager_fill(Pager *p) { int x, y; - + e_zone_desk_count_get(p-zone, (p-xnum), (p-ynum)); for (x = 0; x p-xnum; x++) { @@ -312,7 +316,7 @@ static void _pager_empty(Pager *p) { - if (p-popup) _pager_popup_free(p-popup); + // if (p-popup) _pager_popup_free(p-popup); while (p-desks) { @@ -335,6 +339,8 @@ pd-xpos = xpos; pd-ypos = ypos; + pd-urgent = 0;
[E-devel] no need for unfullscreen windows on deskchange + patch
hi, the problem is that to fullscreen and to unfullscreen of fullscreen-windows makes deskswitching a lot slower (and looks ugly too). I use many programs in fullscreen mode so this really annoyed me for while. is there a special reason why e_border_hide does also unfullscreen windows? since it looks mainly like a workaroung with this want_fullscreen-flag used in e_desk. regards, Hannes JanetzekIndex: e_desk.c === RCS file: /var/cvs/e/e17/apps/e/src/bin/e_desk.c,v retrieving revision 1.70 diff -u -r1.70 e_desk.c --- e_desk.c 15 Nov 2007 20:16:25 - 1.70 +++ e_desk.c 8 Dec 2007 18:04:45 - @@ -244,17 +244,11 @@ if ((bd-desk == desk) || (bd-sticky)) { e_border_show(bd); - if (bd-want_fullscreen) - { - e_border_fullscreen(bd, e_config-fullscreen_policy); - bd-want_fullscreen = 0; - } } else if (bd-moving) e_border_desk_set(bd, desk); else { - if (bd-fullscreen) bd-want_fullscreen = 1; e_border_hide(bd, 2); } } @@ -599,11 +593,6 @@ bd-fx.start.y += bd-zone-container-h - (bd-zone-y + bd-zone-h); e_border_fx_offset(bd, bd-fx.start.x, bd-fx.start.y); e_border_show(bd); - if (bd-want_fullscreen) - { - e_border_fullscreen(bd, e_config-fullscreen_policy); - bd-want_fullscreen = 0; - } } } } @@ -737,11 +726,6 @@ else bd-fx.start.y += bd-zone-container-h - (bd-zone-y + bd-zone-h); e_border_fx_offset(bd, 0, 0); - if (bd-want_fullscreen) - { - e_border_fullscreen(bd, e_config-fullscreen_policy); - bd-want_fullscreen = 0; - } } } } @@ -766,7 +750,6 @@ else if ((bd-desk == desk) (!bd-sticky)) { e_border_fx_offset(bd, 0, 0); - if (bd-fullscreen) bd-want_fullscreen = 1; e_border_hide(bd, 2); } } Index: e_border.h === RCS file: /var/cvs/e/e17/apps/e/src/bin/e_border.h,v retrieving revision 1.167 diff -u -r1.167 e_border.h --- e_border.h 26 Nov 2007 21:33:23 - 1.167 +++ e_border.h 8 Dec 2007 18:04:45 - @@ -352,7 +352,6 @@ unsigned intneed_shape_export : 1; unsigned intfullscreen : 1; unsigned intneed_fullscreen : 1; - unsigned intwant_fullscreen : 1; unsigned intalready_unparented : 1; unsigned intneed_reparent : 1; unsigned intbutton_grabbed : 1; Index: e_border.c === RCS file: /var/cvs/e/e17/apps/e/src/bin/e_border.c,v retrieving revision 1.613 diff -u -r1.613 e_border.c --- e_border.c 2 Dec 2007 20:03:29 - 1.613 +++ e_border.c 8 Dec 2007 18:04:55 - @@ -718,8 +718,6 @@ ecore_x_window_shadow_tree_flush(); if (bd-moving) _e_border_move_end(bd); - if (bd-fullscreen) - e_border_unfullscreen(bd); if (bd-resize_mode != RESIZE_NONE) { _e_border_pointer_resize_end(bd); - SF.Net email is sponsored by: Check out the new SourceForge.net Marketplace. It's the best place to buy or sell services for just about anything Open Source. http://sourceforge.net/services/buy/index.php___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
[E-devel] patch for a better wallpaper dialog layout
hi, if this patch is ok iwould go on and fix some of the other dialog layouts. a screenshot is here: http://www.informatik.uni-bremen.de/~jeff/conf2.jpg Regards, Hannes jeffdameth JanetzekIndex: e_int_config_wallpaper.c === RCS file: /var/cvs/e/e17/apps/e/src/modules/conf_wallpaper/e_int_config_wallpaper.c,v retrieving revision 1.1 diff -u -r1.1 e_int_config_wallpaper.c --- e_int_config_wallpaper.c 4 Jul 2007 15:09:24 - 1.1 +++ e_int_config_wallpaper.c 14 Jul 2007 18:07:58 - @@ -57,7 +57,7 @@ e_int_config_wallpaper_desk(E_Container *con, const char *params) { int con_num, zone_num, desk_x, desk_y; - + if (!params) return NULL; con_num = zone_num = desk_x = desk_y = -1; if (sscanf(params, %i %i %i %i, con_num, zone_num, desk_x, desk_y) != 4) @@ -75,7 +75,7 @@ if (e_config_dialog_find(E, _config_wallpaper_dialog)) return NULL; v = E_NEW(E_Config_Dialog_View, 1); cw = E_NEW(E_Config_Wallpaper, 1); - + v-create_cfdata = _create_data; v-free_cfdata = _free_data; v-basic.apply_cfdata = _basic_apply_data; @@ -109,7 +109,7 @@ E_Config_Dialog_Data *cfdata; char path[4096]; const char *homedir; - + cfdata = dia-cfdata; homedir = e_user_homedir_get(); cfdata-fmdir = 1; @@ -132,7 +132,7 @@ e_int_config_wallpaper_import_done(E_Config_Dialog *dia) { E_Config_Dialog_Data *cfdata; - + cfdata = dia-cfdata; cfdata-win_import = NULL; } @@ -141,7 +141,7 @@ e_int_config_wallpaper_gradient_done(E_Config_Dialog *dia) { E_Config_Dialog_Data *cfdata; - + cfdata = dia-cfdata; cfdata-dia_gradient = NULL; } @@ -150,7 +150,7 @@ _cb_button_up(void *data1, void *data2) { E_Config_Dialog_Data *cfdata; - + cfdata = data1; if (cfdata-o_fm) e_fm2_parent_go(cfdata-o_fm); @@ -162,7 +162,7 @@ _cb_files_changed(void *data, Evas_Object *obj, void *event_info) { E_Config_Dialog_Data *cfdata; - + cfdata = data; if (!cfdata-o_fm) return; if (!e_fm2_has_parent_get(cfdata-o_fm)) @@ -187,7 +187,7 @@ E_Fm2_Icon_Info *ici; const char *realpath; char buf[4096]; - + cfdata = data; if (!cfdata-o_fm) return; selected = e_fm2_selected_list_get(cfdata-o_fm); @@ -225,7 +225,7 @@ E_Config_Dialog_Data *cfdata; const char *p, *homedir; char buf[4096]; - + cfdata = data; if (!cfdata-bg) return; if (!cfdata-o_fm) return; @@ -247,18 +247,18 @@ else p = cfdata-bg; } - + e_fm2_select_set(cfdata-o_fm, p, 1); e_fm2_file_show(cfdata-o_fm, p); } static void -_cb_files_files_deleted(void *data, Evas_Object *obj, void *event_info) +_cb_files_files_deleted(void *data, Evas_Object *obj, void *event_info) { E_Config_Dialog_Data *cfdata; Evas_List *sel, *all, *n; E_Fm2_Icon_Info *ici, *ic; - + cfdata = data; if (!cfdata-bg) return; if (!cfdata-o_fm) return; @@ -269,23 +269,23 @@ if (!sel) return; ici = sel-data; - + all = evas_list_find_list(all, ici); n = evas_list_next(all); - if (!n) + if (!n) { n = evas_list_prev(all); if (!n) return; } - + ic = n-data; if (!ic) return; - + e_fm2_select_set(cfdata-o_fm, ic-file, 1); e_fm2_file_show(cfdata-o_fm, ic-file); - + evas_list_free(n); - + evas_object_smart_callback_call(cfdata-o_fm, selection_change, cfdata); } @@ -294,7 +294,7 @@ { E_Config_Dialog_Data *cfdata; const char *f; - + cfdata = data; if (cfdata-use_theme_bg) { @@ -320,7 +320,7 @@ E_Config_Dialog_Data *cfdata; char path[4096]; const char *homedir; - + cfdata = data; if (cfdata-fmdir == 1) { @@ -338,11 +338,11 @@ _cb_import(void *data1, void *data2) { E_Config_Dialog_Data *cfdata; - + cfdata = data1; if (cfdata-win_import) e_win_raise(cfdata-win_import); - else + else cfdata-win_import = e_int_config_wallpaper_import(cfdata-cfd); } @@ -350,11 +350,11 @@ _cb_gradient(void *data1, void *data2) { E_Config_Dialog_Data *cfdata; - + cfdata = data1; if (cfdata-dia_gradient) e_win_raise(cfdata-dia_gradient-win); - else + else cfdata-dia_gradient = e_int_config_wallpaper_gradient(cfdata-cfd); } @@ -364,7 +364,7 @@ char path[4096]; E_Config_Wallpaper *cw; const E_Config_Desktop_Background *cfbg; - + cw = cfdata-cfd-data; if (cw-specific_config) @@ -400,10 +400,10 @@ cfdata-bg = strdup(cfbg-file); } } - - if ((!cfdata-bg) e_config-desktop_default_background) + + if ((!cfdata-bg) e_config-desktop_default_background) cfdata-bg = strdup(e_config-desktop_default_background); - + if (cfdata-bg) { const char *f; @@ -434,9 +434,9 @@ static void _free_data(E_Config_Dialog *cfd, E_Config_Dialog_Data *cfdata) { - if (cfdata-win_import) + if
Re: [E-devel] patch: no more ghost windows - was 'The default value of 'allow_above_fullscreen''
it seems that a border event for border property change doesn't get freed(though the reason i didn't found). this simple patch fixes all my problems with ghost windows. For me it is enough to not send the event if border-already_unparented(in e_border_eval). Though this patch causes to not evaluate the border is it's already unparented. I think this makes sense and i didn't find any problems with this so far. Can you confirm that this works for you too? -- Hannes jeffdameth JanetzekIndex: e_border.c === RCS file: /var/cvs/e/e17/apps/e/src/bin/e_border.c,v retrieving revision 1.594 diff -u -r1.594 e_border.c --- e_border.c 10 Jun 2007 04:39:51 - 1.594 +++ e_border.c 12 Jun 2007 14:08:41 - @@ -4878,6 +4878,8 @@ int change_urgent = 0; int rem_change = 0; int send_event = 1; + + if(bd-already_unparented) return; /* fetch any info queued to be fetched */ if (bd-client.icccm.fetch.client_leader) - This SF.net email is sponsored by DB2 Express Download DB2 Express C - the FREE version of DB2 express and take control of your XML. No limits. Just data. Click to get it now. http://sourceforge.net/powerbar/db2/___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] The default value of 'allow_above_fullscreen'
Am Mon, 11 Jun 2007 22:51:34 +0300 schrieb Виктор Кожухаров [EMAIL PROTECTED]: Wouldn't it be better if the default value of 'allow_above_fullscreen' is 0, so that fullscreen windows can stay above the shelves? Since the users are pretty much used to fullscreen windows staying above everything else, I think it's better to not confuse them, and make them write pointless emails to the lists. You are right. I wrote that patch and since i only use invisible shelves i missed to see this problem. sry -- Hannes Janetzek - This SF.net email is sponsored by DB2 Express Download DB2 Express C - the FREE version of DB2 express and take control of your XML. No limits. Just data. Click to get it now. http://sourceforge.net/powerbar/db2/ ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] ghost windows - was 'The default value of 'allow_above_fullscreen''
Am Mon, 11 Jun 2007 22:51:34 +0300 schrieb Виктор Кожухаров [EMAIL PROTECTED]: And for some OT. I've noticed that for a few days now, ghost windows have been appearing left and right. Every second dialog box tends to be left behind as a ghost. Apps that are hidden to a tray also tend to get ghosted quite a lot. This is strange. i thought this was only caused by the itask_ng module. though i now checked it and saw that all refs become unrefed(in my module). Still only when the module is enabled gedit and exactly one of the synaptic dialogs stay as ghost windows after closing. One thing they both have in common is that e dispatches a border-change-event after the remove-event. can you confirm this for the apps that you have problems with? -- Hannes Janetzek - This SF.net email is sponsored by DB2 Express Download DB2 Express C - the FREE version of DB2 express and take control of your XML. No limits. Just data. Click to get it now. http://sourceforge.net/powerbar/db2/ ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] ghost windows - was 'The default value of 'allow_above_fullscreen''
Am Tue, 12 Jun 2007 00:45:55 +0300 schrieb Виктор Кожухаров [EMAIL PROTECTED]: В пн, 2007-06-11 в 23:34 +0200, Hannes Janetzek написа: Am Mon, 11 Jun 2007 22:51:34 +0300 schrieb Виктор Кожухаров [EMAIL PROTECTED]: And for some OT. I've noticed that for a few days now, ghost windows have been appearing left and right. Every second dialog box tends to be left behind as a ghost. Apps that are hidden to a tray also tend to get ghosted quite a lot. This is strange. i thought this was only caused by the itask_ng module. though i now checked it and saw that all refs become unrefed(in my module). Still only when the module is enabled gedit and exactly one of the synaptic dialogs stay as ghost windows after closing. One thing they both have in common is that e dispatches a border-change-event after the remove-event. can you confirm this for the apps that you have problems with? unfortunately, no. after the latest commits today. most of the ghosting problems seems to have gotten fixed (as opposed to yesterday for instance). Though I still get an occasionaly ghost, it doesn't happen as ofter as needed for proper debugging. AHHH! This is weird. I found now that i get ghost windows only when itask AND the pager module is enabled, so it does not when only one is active. Do you have tried to disable modules that act on borders? - This SF.net email is sponsored by DB2 Express Download DB2 Express C - the FREE version of DB2 express and take control of your XML. No limits. Just data. Click to get it now. http://sourceforge.net/powerbar/db2/ ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
[E-devel] language module fix - dont unload all modules on restart
The langugage module causes that all modules will become unloaded on restart. it seems that this is directly caused by the call to e_config_save() in e_mod_keybindings. this is not needed anyway as the keybinding is still stored without this. -- Hannes 'jeffdameth' Janetzek? language.patch Index: e_mod_keybindings.c === RCS file: /var/cvs/e/e_modules/language/src/module/e_mod_keybindings.c,v retrieving revision 1.13 diff -u -r1.13 e_mod_keybindings.c --- e_mod_keybindings.c 11 Oct 2006 12:17:22 - 1.13 +++ e_mod_keybindings.c 7 Jun 2007 01:10:27 - @@ -65,7 +65,7 @@ e_action_predef_name_del(LANG_ACTION_GROUP, LANG_ACTION_NEXT_LANGUAGE); e_action_predef_name_del(LANG_ACTION_GROUP, LANG_ACTION_PREV_LANGUAGE); - e_config_save(); + //e_config_save(); return 1; } @@ -98,7 +98,7 @@ _lang_unregister_module_keybinding((language_config-switch_prev_lang_key), 1); e_managers_keys_grab(); - e_config_save(); + //e_config_save(); return 1; } - This SF.net email is sponsored by DB2 Express Download DB2 Express C - the FREE version of DB2 express and take control of your XML. No limits. Just data. Click to get it now. http://sourceforge.net/powerbar/db2/___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] The module list is not correctly remembered upon restart
Am Wed, 30 May 2007 00:01:18 +0300 schrieb Виктор Кожухаров [EMAIL PROTECTED]: Can anyone else reproduce this? It seems that for some time (I'd say about a month), the list of modules is not saved correctly in e.cfg when restarting with the ctrl+alt+end combo (or related menu item). I didn't have time to dig too deeply into this, but what I've found is that e.cfg already contains a smaller number of modules when it is read after the restart. And the modules that dissapear (are not enabled) are either all, or at least a lot of them (but there doesn't seem to be any consistency). When exiting enlightenment, the module list is saved correctly. Also, when restarting right after enlightenment has started, the list is also saved correctly. Same problem here. I also have deleted e's config, but there wasnt the cause either. -- jeffdameth Perhaps someone who has some spare free time can look into this :) - This SF.net email is sponsored by DB2 Express Download DB2 Express C - the FREE version of DB2 express and take control of your XML. No limits. Just data. Click to get it now. http://sourceforge.net/powerbar/db2/ ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
[E-devel] efm patch - select application to open directories
Hi, this patch let the user select which application is used to open a directory (in the open with... dialog). Later it might be useful to set one filemanager as default, e.g. if one wants to open directories on the desktop with entropy, or others. i'm not shure if the line ic-info.mime = evas_stringshare_add(x-directory/normal); is correct, since i dont know how stringshare works. intended would be that only one instance of this string exists(shared between all directory files). Regards, Hannes jeffdameth Janetzek Index: e_fm.c === RCS file: /var/cvs/e/e17/apps/e/src/bin/e_fm.c,v retrieving revision 1.171 diff -u -r1.171 e_fm.c --- e_fm.c 21 May 2007 14:12:48 - 1.171 +++ e_fm.c 26 May 2007 15:32:11 - @@ -2776,6 +2776,10 @@ /* FIXME: end go away chunk */ } + if(S_ISDIR(ic-info.statinfo.st_mode)) + { + ic-info.mime = evas_stringshare_add(x-directory/normal); + } if (!ic-info.mime) { mime = e_fm_mime_filename_get(ic-info.file); Index: e_fwin.c === RCS file: /var/cvs/e/e17/apps/e/src/bin/e_fwin.c,v retrieving revision 1.46 diff -u -r1.46 e_fwin.c --- e_fwin.c 21 May 2007 14:12:48 - 1.46 +++ e_fwin.c 26 May 2007 15:32:13 - @@ -725,8 +725,7 @@ _e_fwin_file_is_exec(E_Fm2_Icon_Info *ici) { /* special file or dir - can't exec anyway */ - if ((S_ISDIR(ici-statinfo.st_mode)) || - (S_ISCHR(ici-statinfo.st_mode)) || + if ((S_ISCHR(ici-statinfo.st_mode)) || (S_ISBLK(ici-statinfo.st_mode)) || (S_ISFIFO(ici-statinfo.st_mode)) || (S_ISSOCK(ici-statinfo.st_mode))) @@ -935,22 +934,16 @@ { if (ici-link) { - if (!S_ISDIR(ici-statinfo.st_mode)) - { - f = e_fm_mime_filename_get(ici-link); - mimes = evas_hash_del(mimes, f, (void *)1); - mimes = evas_hash_direct_add(mimes, f, (void *)1); - } + f = e_fm_mime_filename_get(ici-link); + mimes = evas_hash_del(mimes, f, (void *)1); + mimes = evas_hash_direct_add(mimes, f, (void *)1); } else { - snprintf(buf, sizeof(buf), %s/%s, -e_fm2_real_path_get(fwin-fm_obj), ici-file); - if (!S_ISDIR(ici-statinfo.st_mode)) - { - mimes = evas_hash_del(mimes, ici-mime, (void *)1); - mimes = evas_hash_direct_add(mimes, ici-mime, (void *)1); - } + snprintf(buf, sizeof(buf), %s/%s, + e_fm2_real_path_get(fwin-fm_obj), ici-file); + mimes = evas_hash_del(mimes, ici-mime, (void *)1); + mimes = evas_hash_direct_add(mimes, ici-mime, (void *)1); } } } - This SF.net email is sponsored by DB2 Express Download DB2 Express C - the FREE version of DB2 express and take control of your XML. No limits. Just data. Click to get it now. http://sourceforge.net/powerbar/db2/___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
[E-devel] fullscreen option patch - allow windows to above a fullscreen window
Hi, this patch adds the option to have windows above fullscreen windows. This is for example nice to reach the hidden shelves when working with fullscreen. For me this behavior could even be the default (without option) since it is quite irritating to use alt-tab but then the selected window doesnt appear. Regards, Hannes Index: e_config.c === RCS file: /var/cvs/e/e17/apps/e/src/bin/e_config.c,v retrieving revision 1.242 diff -u -r1.242 e_config.c --- e_config.c 12 May 2007 22:40:03 - 1.242 +++ e_config.c 20 May 2007 22:19:52 - @@ -428,6 +428,7 @@ E_CONFIG_VAL(D, T, maximize_policy, INT); /**/ E_CONFIG_VAL(D, T, allow_manip, INT); /**/ E_CONFIG_VAL(D, T, border_fix_on_shelf_toggle, INT); /**/ + E_CONFIG_VAL(D, T, allow_above_fullscreen, INT); /**/ E_CONFIG_VAL(D, T, kill_if_close_not_possible, INT); /**/ E_CONFIG_VAL(D, T, kill_process, INT); /**/ E_CONFIG_VAL(D, T, kill_timer_wait, DOUBLE); /**/ @@ -1399,7 +1400,11 @@ e_config-menu_favorites_show = 1; e_config-menu_apps_show = 1; IFCFGEND; - + + IFCFG(0x0119); + e_config-allow_above_fullscreen = 1; + IFCFGEND; + e_config-config_version = E_CONFIG_FILE_VERSION; #if 0 /* example of new config */ @@ -1462,6 +1467,7 @@ E_CONFIG_LIMIT(e_config-maximize_policy, E_MAXIMIZE_FULLSCREEN, E_MAXIMIZE_DIRECTION); E_CONFIG_LIMIT(e_config-allow_manip, 0, 1); E_CONFIG_LIMIT(e_config-border_fix_on_shelf_toggle, 0, 1); + E_CONFIG_LIMIT(e_config-allow_above_fullscreen, 0, 1); E_CONFIG_LIMIT(e_config-kill_if_close_not_possible, 0, 1); E_CONFIG_LIMIT(e_config-kill_process, 0, 1); E_CONFIG_LIMIT(e_config-kill_timer_wait, 0.0, 120.0); Index: e_config.h === RCS file: /var/cvs/e/e17/apps/e/src/bin/e_config.h,v retrieving revision 1.155 diff -u -r1.155 e_config.h --- e_config.h 12 May 2007 22:40:03 - 1.155 +++ e_config.h 20 May 2007 22:19:52 - @@ -169,6 +169,7 @@ int maximize_policy; // GUI int allow_manip; // GUI int border_fix_on_shelf_toggle; // GUI + int allow_above_fullscreen; // GUI int kill_if_close_not_possible; int kill_process; double kill_timer_wait; Index: e_int_config_window_manipulation.c === RCS file: /var/cvs/e/e17/apps/e/src/bin/e_int_config_window_manipulation.c,v retrieving revision 1.18 diff -u -r1.18 e_int_config_window_manipulation.c --- e_int_config_window_manipulation.c 11 Apr 2007 15:37:04 - 1.18 +++ e_int_config_window_manipulation.c 20 May 2007 22:19:54 - @@ -28,6 +28,7 @@ int border_fix_on_shelf_toggle; int border_raise_on_mouse_action; int border_raise_on_focus; + int allow_above_fullscreen; }; /* a nice easy setup function that does the dirty work */ @@ -75,6 +76,7 @@ cfdata-border_fix_on_shelf_toggle = e_config-border_fix_on_shelf_toggle; cfdata-border_raise_on_mouse_action = e_config-border_raise_on_mouse_action; cfdata-border_raise_on_focus = e_config-border_raise_on_focus; + cfdata-allow_above_fullscreen = e_config-allow_above_fullscreen; } static void * @@ -125,6 +127,7 @@ e_config-border_fix_on_shelf_toggle = cfdata-border_fix_on_shelf_toggle; e_config-border_raise_on_mouse_action = cfdata-border_raise_on_mouse_action; e_config-border_raise_on_focus = cfdata-border_raise_on_focus; + e_config-allow_above_fullscreen = cfdata-allow_above_fullscreen; e_config_save_queue(); return 1; /* Apply was OK */ } @@ -186,6 +189,8 @@ e_widget_framelist_object_append(of, ob); ob = e_widget_check_add(evas, _(Raise when clicking to focus), (cfdata-border_raise_on_focus)); e_widget_framelist_object_append(of, ob); + ob = e_widget_check_add(evas, _(Allow windows to be above fullscreen window), (cfdata-allow_above_fullscreen)); + e_widget_framelist_object_append(of, ob); e_widget_table_object_append(ot, of, 1, 0, 1, 1, 1, 1, 1, 1); of = e_widget_framelist_add(evas, _(Resistance), 0); Index: e_border.c === RCS file: /var/cvs/e/e17/apps/e/src/bin/e_border.c,v retrieving revision 1.590 diff -u -r1.590 e_border.c --- e_border.c 7 May 2007 18:01:42 - 1.590 +++ e_border.c 20 May 2007 22:20:03 - @@ -1990,8 +1990,9 @@ bd-client_inset.b = 0; /* e_zone_fullscreen_set(bd-zone, 1); */ +if(!e_config-allow_above_fullscreen) + e_border_layer_set(bd, 200); - e_border_layer_set(bd, 200); if ((evas_list_count(bd-zone-container-zones) 1) || (policy == E_FULLSCREEN_RESIZE)) { e_border_move_resize(bd, bd-zone-x, bd-zone-y, bd-zone-w, bd-zone-h); - This SF.net email is sponsored by DB2 Express Download DB2 Express C - the FREE version of DB2
Re: [E-devel] itask engaged - simple app launcher added
Am Tue, 24 Apr 2007 16:20:46 +1000 schrieb Daniel Kasak [EMAIL PROTECTED]: Looks good :) Actually I'd like to see the engage-like scaling in an app *launcher* as well as a task manager, but anyway ... it's good. It is now possible to select whether the bar should be a taskmanager or an app launcher. I like it more to have them both separated, i.e not in one bar. But later i might add the possibility to have them in one bar. For those who want to stay up to date with development. there is a google group mailinglist where commits to itask go to: e17-taskbar-module-commit-list Regards, Hannes - This SF.net email is sponsored by DB2 Express Download DB2 Express C - the FREE version of DB2 express and take control of your XML. No limits. Just data. Click to get it now. http://sourceforge.net/powerbar/db2/ ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] itask engaged - simple app launcher added
Am Sat, 28 Apr 2007 23:27:21 +1000 schrieb Daniel Kasak [EMAIL PROTECTED]: Hannes Janetzek wrote: Am Tue, 24 Apr 2007 16:20:46 +1000 schrieb Daniel Kasak [EMAIL PROTECTED]: Looks good :) Actually I'd like to see the engage-like scaling in an app *launcher* as well as a task manager, but anyway ... it's good. It is now possible to select whether the bar should be a taskmanager or an app launcher. I like it more to have them both separated, i.e not in one bar. But later i might add the possibility to have them in one bar. For those who want to stay up to date with development. there is a google group mailinglist where commits to itask go to: e17-taskbar-module-commit-list Cool :) Thanks for adding this. I've just synced with the subversion repository and rebuilt ... unfortunately I'm getting segfaults when I try to activate the launcher mode. Also, the ALT-Click to activate the configuration menu only works when the shelf is 'above everything'. Sorry to be the bringer of crash reports and stuff. I do like the module :) no no, thanks for telling me. I'm sometimes to lazy to delete the config-files, so some bugs don't show up and i think it just works. This should be fixed now. I want to make the config dialog more comfortable, but for now the launcher config dialog (to select the apps) is only shown when the other config dialog is not open. -- Hannes Dan - This SF.net email is sponsored by DB2 Express Download DB2 Express C - the FREE version of DB2 express and take control of your XML. No limits. Just data. Click to get it now. http://sourceforge.net/powerbar/db2/ ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel - This SF.net email is sponsored by DB2 Express Download DB2 Express C - the FREE version of DB2 express and take control of your XML. No limits. Just data. Click to get it now. http://sourceforge.net/powerbar/db2/ ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] itask engaged - simple app launcher added
Am Sat, 28 Apr 2007 15:58:48 +0100 schrieb João Vale [EMAIL PROTECTED]: I noticed a bug in the Launcher Configuration dialogue, however. When you add an application to a source, it only keeps the newly added ones. Any applications previously in the IBar Applications list are discarded. This is a feature, really :) the .order files for itask_ng are stored in .e/e/modules/itask/apps/source_name/.order btw, if you want to change the order in that the icons appear you have to edit this file atm -- Hannes Keep up the good work! Great module. :) //Vale I want to make the config dialog more comfortable, but for now the launcher config dialog (to select the apps) is only shown when the other config dialog is not open. -- Hannes Dan - This SF.net email is sponsored by DB2 Express Download DB2 Express C - the FREE version of DB2 express and take control of your XML. No limits. Just data. Click to get it now. http://sourceforge.net/powerbar/db2/ ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel - This SF.net email is sponsored by DB2 Express Download DB2 Express C - the FREE version of DB2 express and take control of your XML. No limits. Just data. Click to get it now. http://sourceforge.net/powerbar/db2/ ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel - This SF.net email is sponsored by DB2 Express Download DB2 Express C - the FREE version of DB2 express and take control of your XML. No limits. Just data. Click to get it now. http://sourceforge.net/powerbar/db2/ ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel - This SF.net email is sponsored by DB2 Express Download DB2 Express C - the FREE version of DB2 express and take control of your XML. No limits. Just data. Click to get it now. http://sourceforge.net/powerbar/db2/ ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] itask engaged - simple app launcher added
I noticed a bug in the Launcher Configuration dialogue, however. When you add an application to a source, it only keeps the newly added ones. Any applications previously in the IBar Applications list are discarded. ah ok, i see now what you've probably meant. you have to restart the module(or e) if you change the source. I'll have at this. Keep up the good work! Great module. :) //Vale - This SF.net email is sponsored by DB2 Express Download DB2 Express C - the FREE version of DB2 express and take control of your XML. No limits. Just data. Click to get it now. http://sourceforge.net/powerbar/db2/ ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] itask engaged - pre alpha release
Am Tue, 24 Apr 2007 08:39:06 +0200 schrieb Igor \FeR\ Scabini [EMAIL PROTECTED]: Daniel Kasak ha scritto: Hannes Janetzek wrote: Hi, itask_ng starts to get usable. So if someone wants to try it's available from svn: http://itask-module.googlecode.com/svn/trunk/ itask-module/itask_ng a video is here (it looks better in reality, this was recorded with 4fps) http://video.google.de/videoplay?docid=-1525947350649682737 there's a README that explains how to set up the shelf correctly. Looks good :) Actually I'd like to see the engage-like scaling in an app *launcher* as well as a task manager, but anyway ... it's good. I assume the goal is to drop the 116-pixel requirement for making it look nice? hey, it's pre alpha (in the usual meaning of the term). So it should become configurable once it´s more polished. An app-laucher is also on the unwritten TODO list I still have a problem that I can replicate very well: sometimes when I left-click on an icon in itask module the shelv menu open and the app too, so this *feature* is only annoing me, not stopping using this module. The README file did spark some questions though: you need to have composite manager running like for example xcompmgr, bling, egloo or bang I'll be good and not ask when bang is coming :) But what is egloo? I googled for it and found absolutely nothing. Not announced yet? Dan You can find egloo here: http://mtreny.free.fr/egloo/ I don't know anything about the author and development plan, from the video it loooks good. - This SF.net email is sponsored by DB2 Express Download DB2 Express C - the FREE version of DB2 express and take control of your XML. No limits. Just data. Click to get it now. http://sourceforge.net/powerbar/db2/ ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] itask engaged - pre alpha release
Am Tue, 24 Apr 2007 08:39:06 +0200 schrieb Igor \FeR\ Scabini [EMAIL PROTECTED]: Daniel Kasak ha scritto: I still have a problem that I can replicate very well: sometimes when I left-click on an icon in itask module the shelv menu open and the app too, so this *feature* is only annoing me, not stopping using this module. Do you use itask or itask_ng ? I don't know if this is configurable, but on left-click the shelf menu should not show up. The README file did spark some questions though: you need to have composite manager running like for example xcompmgr, bling, egloo or bang I'll be good and not ask when bang is coming :) But what is egloo? I googled for it and found absolutely nothing. Not announced yet? Dan You can find egloo here: http://mtreny.free.fr/egloo/ I don't know anything about the author and development plan, from the video it loooks good. - This SF.net email is sponsored by DB2 Express Download DB2 Express C - the FREE version of DB2 express and take control of your XML. No limits. Just data. Click to get it now. http://sourceforge.net/powerbar/db2/ ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
[E-devel] shelf autohide patch
a small update to my last patch to show the shelf again if one disables autohide while the shelf is hidden. Please tell me if something is not ok with this and I'll try to fix it. -- Hannes Janetzek Index: e_shelf.c === RCS file: /var/cvs/e/e17/apps/e/src/bin/e_shelf.c,v retrieving revision 1.56 diff -u -r1.56 e_shelf.c --- e_shelf.c 11 Apr 2007 15:37:04 - 1.56 +++ e_shelf.c 22 Apr 2007 14:06:40 - @@ -19,7 +19,6 @@ static void _e_shelf_cb_mouse_down(void *data, Evas *evas, Evas_Object *obj, void *event_info); static void _e_shelf_cb_mouse_up(void *data, Evas *evas, Evas_Object *obj, void *event_info); static void _e_shelf_cb_mouse_in(void *data, Evas *evas, Evas_Object *obj, void *event_info); -static void _e_shelf_cb_mouse_out(void *data, Evas *evas, Evas_Object *obj, void *event_info); static int _e_shelf_cb_id_sort(void *data1, void *data2); static int _e_shelf_cb_hide_timer(void *data); static int _e_shelf_cb_hide_animator(void *data); @@ -142,8 +141,7 @@ evas_object_event_callback_add(es-o_event, EVAS_CALLBACK_MOUSE_DOWN, _e_shelf_cb_mouse_down, es); evas_object_event_callback_add(es-o_event, EVAS_CALLBACK_MOUSE_UP, _e_shelf_cb_mouse_up, es); evas_object_event_callback_add(es-o_event, EVAS_CALLBACK_MOUSE_IN, _e_shelf_cb_mouse_in, es); - evas_object_event_callback_add(es-o_event, EVAS_CALLBACK_MOUSE_OUT, _e_shelf_cb_mouse_out, es); - + es-o_base = edje_object_add(es-evas); es-name = evas_stringshare_add(name); snprintf(buf, sizeof(buf), e/shelf/%s/base, es-style); @@ -271,36 +269,47 @@ EAPI void e_shelf_toggle(E_Shelf *es, int show) { - E_OBJECT_CHECK(es); - E_OBJECT_TYPE_CHECK(es, E_SHELF_TYPE); - if (show) - { - if (es-hide_timer) - { - ecore_timer_del(es-hide_timer); - es-hide_timer = NULL; - } - if (es-hidden !es-instant_timer) - { - es-hidden = 0; - edje_object_signal_emit(es-o_base, e,state,visible, e); - if (es-instant_delay = 0.0) - { - if (!es-instant_timer) - _e_shelf_cb_instant_hide_timer(es); - } - else - { - if(!es-hide_animator) - es-hide_animator = ecore_animator_add(_e_shelf_cb_hide_animator, es); - } - } - } - else if (!show es-cfg-autohide !es-hidden) - { - if(!es-hide_timer) - es-hide_timer = ecore_timer_add(es-cfg-hide_timeout, _e_shelf_cb_hide_timer, es); - } + E_OBJECT_CHECK(es); + E_OBJECT_TYPE_CHECK(es, E_SHELF_TYPE); + + if(!es-cfg-autohide !es-hidden) return; + + if (show) +{ + + if(!es-hide_timer) es-hide_timer = ecore_timer_add(0.1, _e_shelf_cb_hide_timer, es); + + if (es-hidden !es-instant_timer) + { + es-hidden = 0; + edje_object_signal_emit(es-o_base, e,state,visible, e); + if (es-instant_delay = 0.0) + { + if (!es-instant_timer) + _e_shelf_cb_instant_hide_timer(es); + } + else + { + if(!es-hide_animator) + es-hide_animator = ecore_animator_add(_e_shelf_cb_hide_animator, es); + } + } +} + else if (!show es-cfg-autohide !es-hidden) +{ + es-hidden = 1; + edje_object_signal_emit(es-o_base, e,state,hidden, e); + if (es-instant_delay = 0.0) + { + if (!es-instant_timer) + es-instant_timer = ecore_timer_add(es-instant_delay, _e_shelf_cb_instant_hide_timer, es); + } + else + { + if (!es-hide_animator) + es-hide_animator = ecore_animator_add(_e_shelf_cb_hide_animator, es); + } +} } EAPI void @@ -1149,25 +1158,6 @@ e_shelf_toggle(es, 1); } -static void -_e_shelf_cb_mouse_out(void *data, Evas *evas, Evas_Object *obj, void *event_info) -{ - Evas_Event_Mouse_Out *ev; - E_Shelf *es; - - es = data; - ev = event_info; - if (es-cfg-autohide) - { - Evas_Coord x, y, w, h; - - evas_object_geometry_get(es-o_base, x, y, w, h); - if (!E_INSIDE(ev-canvas.x, ev-canvas.y, x, y, w, h)) - e_shelf_toggle(es, 0); - } - edje_object_signal_emit(es-o_base, e,state,unfocused, e); -} - static int _e_shelf_cb_id_sort(void *data1, void *data2) { @@ -1178,28 +1168,36 @@ return (es1-id) (es2-id); } -static int +static int _e_shelf_cb_hide_timer(void *data) { - E_Shelf *es; + Evas_Coord x, y, w, h, px, py; - es = data; + E_Shelf *es = data; - es-hidden = 1; - edje_object_signal_emit(es-o_base, e,state,hidden, e); - if (es-instant_delay = 0.0) - { - if (!es-instant_timer) - es-instant_timer = ecore_timer_add(es-instant_delay, _e_shelf_cb_instant_hide_timer, es); - } - else - { - if (!es-hide_animator) - es-hide_animator = ecore_animator_add(_e_shelf_cb_hide_animator, es); - } - es-hide_timer = NULL; - - return 0; + evas_object_geometry_get(es-o_base, x, y, w, h); + evas_pointer_canvas_xy_get(es-evas, px, py); + + if (E_INSIDE(px, py, x, y, w, h)) +{ + es-last_in = ecore_time_get(); + return 1; +} + else +{ + if(es-last_in + es-cfg-hide_timeout
[E-devel] itask engaged - pre alpha release
Hi, itask_ng starts to get usable. So if someone wants to try it's available from svn: http://itask-module.googlecode.com/svn/trunk/ itask-module/itask_ng a video is here (it looks better in reality, this was recorded with 4fps) http://video.google.de/videoplay?docid=-1525947350649682737 there's a README that explains how to set up the shelf correctly. -- Hannes Janetzek - This SF.net email is sponsored by DB2 Express Download DB2 Express C - the FREE version of DB2 express and take control of your XML. No limits. Just data. Click to get it now. http://sourceforge.net/powerbar/db2/ ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] Ideas for a new 'desklet'-module api
Am Wed, 18 Apr 2007 19:42:22 -0400 schrieb Michael Jennings [EMAIL PROTECTED]: On Wednesday, 18 April 2007, at 21:29:05 (+0200), Hannes Janetzek wrote: I would say engage, devian, calendar and all this desklet-stuff falls in this category for example. Devian and calendar are both dead. The module form of engage is also outdated. These were just examples for the kind of modules that doesnt fit well in the shelf. My point is that there are modules which have common requirements which could be provided by e to make developing these modules easier and to make their configuration/instantiation consistent. Regards, Hannes Michael - This SF.net email is sponsored by DB2 Express Download DB2 Express C - the FREE version of DB2 express and take control of your XML. No limits. Just data. Click to get it now. http://sourceforge.net/powerbar/db2/ ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
[E-devel] shelf autohide - patch to make sure that the shelf hides on mouseout
Hi, this patch changes the shelfs autohide feature to use polling to detect when then mouse is out of the shelf. There is still one problem left: If a module pops up a menu or if one drags something out of the shelf the shelf doesn't hide. My Idea for this would be to add the functions e_gadcon_client_autohide_freeze and -thaw so that the module can call these before and after a menu is activated. See the comment in the patch where the shelf would test the freeze-state to act according to the state. Regards, Hannes Index: e_shelf.c === RCS file: /var/cvs/e/e17/apps/e/src/bin/e_shelf.c,v retrieving revision 1.56 diff -u -r1.56 e_shelf.c --- e_shelf.c 11 Apr 2007 15:37:04 - 1.56 +++ e_shelf.c 19 Apr 2007 16:40:06 - @@ -19,13 +19,13 @@ static void _e_shelf_cb_mouse_down(void *data, Evas *evas, Evas_Object *obj, void *event_info); static void _e_shelf_cb_mouse_up(void *data, Evas *evas, Evas_Object *obj, void *event_info); static void _e_shelf_cb_mouse_in(void *data, Evas *evas, Evas_Object *obj, void *event_info); -static void _e_shelf_cb_mouse_out(void *data, Evas *evas, Evas_Object *obj, void *event_info); static int _e_shelf_cb_id_sort(void *data1, void *data2); static int _e_shelf_cb_hide_timer(void *data); static int _e_shelf_cb_hide_animator(void *data); static int _e_shelf_cb_instant_hide_timer(void *data); static void _e_shelf_menu_del_hook(void *data); static void _e_shelf_menu_pre_cb(void *data, E_Menu *m); +static int _e_shelf_hide_timer(void *data); static Evas_List *shelves = NULL; @@ -142,8 +142,7 @@ evas_object_event_callback_add(es-o_event, EVAS_CALLBACK_MOUSE_DOWN, _e_shelf_cb_mouse_down, es); evas_object_event_callback_add(es-o_event, EVAS_CALLBACK_MOUSE_UP, _e_shelf_cb_mouse_up, es); evas_object_event_callback_add(es-o_event, EVAS_CALLBACK_MOUSE_IN, _e_shelf_cb_mouse_in, es); - evas_object_event_callback_add(es-o_event, EVAS_CALLBACK_MOUSE_OUT, _e_shelf_cb_mouse_out, es); - + es-o_base = edje_object_add(es-evas); es-name = evas_stringshare_add(name); snprintf(buf, sizeof(buf), e/shelf/%s/base, es-style); @@ -271,36 +270,47 @@ EAPI void e_shelf_toggle(E_Shelf *es, int show) { - E_OBJECT_CHECK(es); - E_OBJECT_TYPE_CHECK(es, E_SHELF_TYPE); - if (show) - { - if (es-hide_timer) - { - ecore_timer_del(es-hide_timer); - es-hide_timer = NULL; - } - if (es-hidden !es-instant_timer) - { - es-hidden = 0; - edje_object_signal_emit(es-o_base, e,state,visible, e); - if (es-instant_delay = 0.0) - { - if (!es-instant_timer) - _e_shelf_cb_instant_hide_timer(es); - } - else - { - if(!es-hide_animator) - es-hide_animator = ecore_animator_add(_e_shelf_cb_hide_animator, es); - } - } - } - else if (!show es-cfg-autohide !es-hidden) - { - if(!es-hide_timer) - es-hide_timer = ecore_timer_add(es-cfg-hide_timeout, _e_shelf_cb_hide_timer, es); - } + E_OBJECT_CHECK(es); + E_OBJECT_TYPE_CHECK(es, E_SHELF_TYPE); + + if(!es-cfg-autohide) return; + + if (show) +{ + + if(!es-hide_timer) es-hide_timer = ecore_timer_add(0.1, _e_shelf_hide_timer, es); + + if (es-hidden !es-instant_timer) + { + es-hidden = 0; + edje_object_signal_emit(es-o_base, e,state,visible, e); + if (es-instant_delay = 0.0) + { + if (!es-instant_timer) + _e_shelf_cb_instant_hide_timer(es); + } + else + { + if(!es-hide_animator) + es-hide_animator = ecore_animator_add(_e_shelf_cb_hide_animator, es); + } + } +} + else if (!show es-cfg-autohide !es-hidden) +{ + es-hidden = 1; + edje_object_signal_emit(es-o_base, e,state,hidden, e); + if (es-instant_delay = 0.0) + { + if (!es-instant_timer) + es-instant_timer = ecore_timer_add(es-instant_delay, _e_shelf_cb_instant_hide_timer, es); + } + else + { + if (!es-hide_animator) + es-hide_animator = ecore_animator_add(_e_shelf_cb_hide_animator, es); + } +} } EAPI void @@ -1149,25 +1159,6 @@ e_shelf_toggle(es, 1); } -static void -_e_shelf_cb_mouse_out(void *data, Evas *evas, Evas_Object *obj, void *event_info) -{ - Evas_Event_Mouse_Out *ev; - E_Shelf *es; - - es = data; - ev = event_info; - if (es-cfg-autohide) - { - Evas_Coord x, y, w, h; - - evas_object_geometry_get(es-o_base, x, y, w, h); - if (!E_INSIDE(ev-canvas.x, ev-canvas.y, x, y, w, h)) - e_shelf_toggle(es, 0); - } - edje_object_signal_emit(es-o_base, e,state,unfocused, e); -} - static int _e_shelf_cb_id_sort(void *data1, void *data2) { @@ -1178,28 +1169,39 @@ return (es1-id) (es2-id); } -static int -_e_shelf_cb_hide_timer(void *data) +static int +_e_shelf_hide_timer(void *data) { - E_Shelf *es; + Evas_Coord x, y, w, h, px, py; - es = data; + E_Shelf *es = data; - es-hidden = 1; - edje_object_signal_emit(es-o_base, e,state,hidden, e); - if
Re: [E-devel] Ideas for a new 'desklet'-module api
Am Thu, 19 Apr 2007 15:46:16 GMT schrieb [EMAIL PROTECTED] [EMAIL PROTECTED]: Hannes wrote: ... ... In short: there are a bunch of other modules that need to control how and where they appear on the desk; modules which might have multiple instance configurations to store. I would say engage, devian, calendar and all this desklet-stuff falls in this category for example. So what interfaces could be needed by such a module and how should the user configure these modules? Out of curiosity I looked up desklet and found references to 'gdesklets' and 'SuperKaramba', which it seems are very popular projects for gnome and kde respectively. But there also came up something called 'adesklets', which is a similar independent project that uses imlib2 for its gfx. To me, an edje based version of adesklets comes to mind as natural possibility.. ie. building on whatever groundwork has already been covered by the adesklets project/people. :) ... ... Are there any objections to add something like this to e? I mean, it could simplify the work to create a desklet-like module a lot. If there is a better way to achieve what i want, please let me know! I wonder if it's a good idea to continue putting more and more things into e17. Wouldn't it be better to try and work with the adesklet people (assuming they'd be interested) and maybe add edje based capabilities? Maybe use edbus for better integration/communication with e17..? Or even provide a 'kparts' like mechanism for these desklets so they could be 'loaded' by e17 if desired, but have them run independently by themselves in general... etc. Following Simon's and Brian's suggestions and ideas, I'd say that these 'desklets' would also be perfect candidates for mixed e-guitoolkit + custom-edje gadgets. Indeed a desktop independent etk/ewl based desklet framework would be nice to have =) Just an idea: Perhaps one could make a standalone module loader for e's modules, since a bunch of these could work without e. So people using another wm are able to use and develop e-modules. Hehe I still prefer a tighter integration with e, since some things are hard to achieve otherwise. For example listing to e's events. sending all events via dbus is much more work than what I would propose. Drawing to the desktop is also hard until evoak is in place or everyone uses xcomposite. Back to the point why it could be useful to add a new features to e. I think one can divide the ways a gadcon-client is displayed in these four categories: floating or edge and container or single module. (Drawing on the desktop or on a popup should be possible for each of these types) Atm only the container on an edge is supported by e(the shelf). For the other kinds one would have to write a lots of module-code for configuration and placement which _should_ be equal between modules. So the pros as far as i can see are: 1. less duplicated code 2. consistent configuration / instantiation 3. it's easier to write modules, so probably more people write modules 4. If one can't find a hypothetic module that doesn't fit in these categories then e is complete in one more sense :) Regards, Hannes jose. - This SF.net email is sponsored by DB2 Express Download DB2 Express C - the FREE version of DB2 express and take control of your XML. No limits. Just data. Click to get it now. http://sourceforge.net/powerbar/db2/ ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel - This SF.net email is sponsored by DB2 Express Download DB2 Express C - the FREE version of DB2 express and take control of your XML. No limits. Just data. Click to get it now. http://sourceforge.net/powerbar/db2/ ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
[E-devel] Ideas for a new 'desklet'-module api
Hi, I started to make a new taskbar-module based on engage. For now it uses gadcon, but this has several disadvantages. The problem is that the shelf is intended to hold more than one gadcon-client and therefore the clients should be changed on changes to the shelf. In my case the module should control the size, hiding and style of the shelf and futhermore it doesn't make sense to have more than one client in its shelf. In short: there are a bunch of other modules that need to control how and where they appear on the desk; modules which might have multiple instance configurations to store. I would say engage, devian, calendar and all this desklet-stuff falls in this category for example. So what interfaces could be needed by such a module and how should the user configure these modules? Ok, one could implement all the window- and instance-handling-configuration for each module, but i think this will cause a very incosistent configuration of such modules in the end. So I would do it like this, as one example: 'Module Settings' - 'Engage' - Configure - 'add Instance' From the user perspective I think it would make more sense if one adds a module like this just like shelfs. So the add Button from the shelf settings would show a select-window to add a shelf or an engage bar, etc. 'Shelf Settings' - add - 'Engage' On the interface side. Just some ideas i had so far for this new kind of shelf. Module provides information to the 'shelf': - a name (to show in the select window) - which orientations are possible (float, edge,..) - if size is set by the module Module can cause the 'shelf' - to resize - to show/hide 'Shelf' provides funtionality - move window / setting the edge - hiding - 'abstracts' if the module instance draws on the desk or a popup (as is does now already) I know there is the gadcon between the client and the shelf. Though for this kind of shelf gadcon could be much simplified, since it has only to handle with one module. Are there any objections to add something like this to e? I mean, it could simplify the work to create a desklet-like module a lot. If there is a better way to achieve what i want, please let me know! Best Regards, Hannes 'jeffdameth' Janetzek - This SF.net email is sponsored by DB2 Express Download DB2 Express C - the FREE version of DB2 express and take control of your XML. No limits. Just data. Click to get it now. http://sourceforge.net/powerbar/db2/ ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] shelf authohide patch
Am Fri, 06 Apr 2007 13:22:21 +0300 schrieb Виктор Кожухаров [EMAIL PROTECTED]: В чт, 2007-04-05 в 21:09 +0200, Hannes Janetzek написа: Hi, I made a patch so that hiding of the shelf is done by the shelf and not by the theme. I think this will make it easier to have a consistent and configurable shelf-hiding behaviour. I added one theme-data item to the shelf group: hidden_state_size which sets the height or width for the shelf when it is in hidden state. The only problem with this patch that i can see is, that it should work regardless of whether the theme has a hidden_state_size set. Currently, if a theme does not have that, things will mess up, bad. And it might be useful to increase the default hidden_state_size from 2 to 6, so as to minimize the chance of rolling over to another virtual desktop. Other than that, the patch is dandy, and if no one objects, I'll commit it. Thanks. I think the changes you have made are reasonable but one thing. The shelf also disappears if i move the mouse out (the hide_timer starts) and then move the mouse back in(while it is hiding or the hide_timer is on). The attached patch should fix this. Regards, Hannes - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT business topics through brief surveys-and earn cash http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel Index: e_shelf.c === RCS file: /var/cvs/e/e17/apps/e/src/bin/e_shelf.c,v retrieving revision 1.54 diff -u -r1.54 e_shelf.c --- e_shelf.c 8 Apr 2007 09:32:48 - 1.54 +++ e_shelf.c 8 Apr 2007 19:02:49 - @@ -291,7 +291,8 @@ } else if (!show es-cfg-autohide !es-hidden) { - if(!es-hide_timer) + es-hidden = 1; + if(!es-hide_timer) es-hide_timer = ecore_timer_add(1.0, _e_shelf_cb_hide_timer, es); } } @@ -1098,24 +1099,26 @@ es = data; - es-hidden = 1; - edje_object_signal_emit(es-o_base, e,state,hidden, e); - if (es-instant_delay = 0.0) + if(es-hidden) { - if (!es-instant_timer) - es-instant_timer = ecore_timer_add(es-instant_delay, _e_shelf_cb_instant_hide_timer, es); + + edje_object_signal_emit(es-o_base, e,state,hidden, e); + if (es-instant_delay = 0.0) + { + if (!es-instant_timer) + es-instant_timer = ecore_timer_add(es-instant_delay, _e_shelf_cb_instant_hide_timer, es); + } + else + { + if(!es-hide_animator) + es-hide_animator = ecore_animator_add(_e_shelf_cb_hide_animator, es); + } + if (es-hide_timer) + { + ecore_timer_del(es-hide_timer); + es-hide_timer = NULL; + } } - else - { - if(!es-hide_animator) - es-hide_animator = ecore_animator_add(_e_shelf_cb_hide_animator, es); - } - if (es-hide_timer) - { - ecore_timer_del(es-hide_timer); - es-hide_timer = NULL; - } - return 1; } - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT business topics through brief surveys-and earn cash http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] shelf authohide patch
This patch is better. Perhaps the names es-hidden and e_shelf-hiding are a bit misleading since hidden includes the state while the shelf is hiding, and es-hiding means if the shelf should still hide when the hide_timer callback fires. Sorry, I think the patch is easier to understand :) Am Sun, 8 Apr 2007 21:25:30 +0200 schrieb Hannes Janetzek [EMAIL PROTECTED]: Am Fri, 06 Apr 2007 13:22:21 +0300 schrieb Виктор Кожухаров [EMAIL PROTECTED]: В чт, 2007-04-05 в 21:09 +0200, Hannes Janetzek написа: Hi, I made a patch so that hiding of the shelf is done by the shelf and not by the theme. I think this will make it easier to have a consistent and configurable shelf-hiding behaviour. I added one theme-data item to the shelf group: hidden_state_size which sets the height or width for the shelf when it is in hidden state. The only problem with this patch that i can see is, that it should work regardless of whether the theme has a hidden_state_size set. Currently, if a theme does not have that, things will mess up, bad. And it might be useful to increase the default hidden_state_size from 2 to 6, so as to minimize the chance of rolling over to another virtual desktop. Other than that, the patch is dandy, and if no one objects, I'll commit it. Thanks. I think the changes you have made are reasonable but one thing. The shelf also disappears if i move the mouse out (the hide_timer starts) and then move the mouse back in(while it is hiding or the hide_timer is on). The attached patch should fix this. Regards, Hannes - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT business topics through brief surveys-and earn cash http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel Index: e_shelf.c === RCS file: /var/cvs/e/e17/apps/e/src/bin/e_shelf.c,v retrieving revision 1.54 diff -u -r1.54 e_shelf.c --- e_shelf.c 8 Apr 2007 09:32:48 - 1.54 +++ e_shelf.c 8 Apr 2007 19:40:58 - @@ -272,6 +272,7 @@ if (show es-hidden !es-instant_timer) { es-hidden = 0; +es-hiding = 0; edje_object_signal_emit(es-o_base, e,state,visible, e); if (es-instant_delay = 0.0) { @@ -291,7 +292,8 @@ } else if (!show es-cfg-autohide !es-hidden) { - if(!es-hide_timer) + es-hiding = 1; + if(!es-hide_timer) es-hide_timer = ecore_timer_add(1.0, _e_shelf_cb_hide_timer, es); } } @@ -1098,24 +1100,26 @@ es = data; - es-hidden = 1; - edje_object_signal_emit(es-o_base, e,state,hidden, e); - if (es-instant_delay = 0.0) + if(es-hiding) { - if (!es-instant_timer) - es-instant_timer = ecore_timer_add(es-instant_delay, _e_shelf_cb_instant_hide_timer, es); + es-hidden = 1; + edje_object_signal_emit(es-o_base, e,state,hidden, e); + if (es-instant_delay = 0.0) + { + if (!es-instant_timer) + es-instant_timer = ecore_timer_add(es-instant_delay, _e_shelf_cb_instant_hide_timer, es); + } + else + { + if(!es-hide_animator) + es-hide_animator = ecore_animator_add(_e_shelf_cb_hide_animator, es); + } + if (es-hide_timer) + { + ecore_timer_del(es-hide_timer); + es-hide_timer = NULL; + } } - else - { - if(!es-hide_animator) - es-hide_animator = ecore_animator_add(_e_shelf_cb_hide_animator, es); - } - if (es-hide_timer) - { - ecore_timer_del(es-hide_timer); - es-hide_timer = NULL; - } - return 1; } Index: e_shelf.h === RCS file: /var/cvs/e/e17/apps/e/src/bin/e_shelf.h,v retrieving revision 1.20 diff -u -r1.20 e_shelf.h --- e_shelf.h 8 Apr 2007 09:32:48 - 1.20 +++ e_shelf.h 8 Apr 2007 19:40:58 - @@ -30,6 +30,7 @@ unsigned charfit_along : 1; unsigned charfit_size : 1; unsigned charhidden: 1; + unsigned charhiding: 1; int size; E_Config_Dialog *config_dialog; E_Menu *menu; - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT business topics through brief surveys-and earn cash http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists
Re: [E-devel] shelf authohide patch
Ok, one last small fix. Am Sun, 8 Apr 2007 21:58:41 +0200 schrieb Hannes Janetzek [EMAIL PROTECTED]: This patch is better. Perhaps the names es-hidden and e_shelf-hiding are a bit misleading since hidden includes the state while the shelf is hiding, and es-hiding means if the shelf should still hide when the hide_timer callback fires. Sorry, I think the patch is easier to understand :) Am Sun, 8 Apr 2007 21:25:30 +0200 schrieb Hannes Janetzek [EMAIL PROTECTED]: Am Fri, 06 Apr 2007 13:22:21 +0300 schrieb Виктор Кожухаров [EMAIL PROTECTED]: В чт, 2007-04-05 в 21:09 +0200, Hannes Janetzek написа: Hi, I made a patch so that hiding of the shelf is done by the shelf and not by the theme. I think this will make it easier to have a consistent and configurable shelf-hiding behaviour. I added one theme-data item to the shelf group: hidden_state_size which sets the height or width for the shelf when it is in hidden state. The only problem with this patch that i can see is, that it should work regardless of whether the theme has a hidden_state_size set. Currently, if a theme does not have that, things will mess up, bad. And it might be useful to increase the default hidden_state_size from 2 to 6, so as to minimize the chance of rolling over to another virtual desktop. Other than that, the patch is dandy, and if no one objects, I'll commit it. Thanks. I think the changes you have made are reasonable but one thing. The shelf also disappears if i move the mouse out (the hide_timer starts) and then move the mouse back in(while it is hiding or the hide_timer is on). The attached patch should fix this. Regards, Hannes - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT business topics through brief surveys-and earn cash http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel Index: e_shelf.c === RCS file: /var/cvs/e/e17/apps/e/src/bin/e_shelf.c,v retrieving revision 1.54 diff -u -r1.54 e_shelf.c --- e_shelf.c 8 Apr 2007 09:32:48 - 1.54 +++ e_shelf.c 8 Apr 2007 20:05:32 - @@ -271,7 +271,7 @@ E_OBJECT_TYPE_CHECK(es, E_SHELF_TYPE); if (show es-hidden !es-instant_timer) { - es-hidden = 0; +es-hidden = 0; edje_object_signal_emit(es-o_base, e,state,visible, e); if (es-instant_delay = 0.0) { @@ -291,7 +291,7 @@ } else if (!show es-cfg-autohide !es-hidden) { - if(!es-hide_timer) + if(!es-hide_timer) es-hide_timer = ecore_timer_add(1.0, _e_shelf_cb_hide_timer, es); } } @@ -1059,6 +1059,7 @@ es = data; ev = event_info; edje_object_signal_emit(es-o_base, e,state,focused, e); + es-hiding = 0; e_shelf_toggle(es, 1); } @@ -1076,7 +1077,10 @@ evas_object_geometry_get(es-o_base, x, y, w, h); if (!E_INSIDE(ev-canvas.x, ev-canvas.y, x, y, w, h)) - e_shelf_toggle(es, 0); + { + es-hiding = 1; + e_shelf_toggle(es, 0); + } } edje_object_signal_emit(es-o_base, e,state,unfocused, e); } @@ -1098,24 +1102,26 @@ es = data; - es-hidden = 1; - edje_object_signal_emit(es-o_base, e,state,hidden, e); - if (es-instant_delay = 0.0) + if(es-hiding) { - if (!es-instant_timer) - es-instant_timer = ecore_timer_add(es-instant_delay, _e_shelf_cb_instant_hide_timer, es); + es-hidden = 1; + edje_object_signal_emit(es-o_base, e,state,hidden, e); + if (es-instant_delay = 0.0) + { + if (!es-instant_timer) + es-instant_timer = ecore_timer_add(es-instant_delay, _e_shelf_cb_instant_hide_timer, es); + } + else + { + if(!es-hide_animator) + es-hide_animator = ecore_animator_add(_e_shelf_cb_hide_animator, es); + } + if (es-hide_timer) + { + ecore_timer_del(es-hide_timer); + es-hide_timer = NULL; + } } - else - { - if(!es-hide_animator) - es-hide_animator = ecore_animator_add(_e_shelf_cb_hide_animator, es); - } - if (es-hide_timer) - { - ecore_timer_del(es-hide_timer); - es-hide_timer = NULL; - } - return 1; } Index: e_shelf.h === RCS file: /var/cvs/e/e17/apps/e/src/bin/e_shelf.h,v retrieving revision 1.20 diff -u -r1.20 e_shelf.h --- e_shelf.h 8 Apr 2007 09:32:48 - 1.20 +++ e_shelf.h 8 Apr 2007 20:05:32 - @@ -30,6 +30,7 @@ unsigned charfit_along : 1; unsigned charfit_size : 1; unsigned charhidden: 1
[E-devel] shelf authohide patch
Hi, I made a patch so that hiding of the shelf is done by the shelf and not by the theme. I think this will make it easier to have a consistent and configurable shelf-hiding behaviour. I added one theme-data item to the shelf group: hidden_state_size which sets the height or width for the shelf when it is in hidden state. Regards, Hannes Index: default_shelf.edc === RCS file: /var/cvs/e/e17/apps/e/data/themes/default_shelf.edc,v retrieving revision 1.16 diff -u -r1.16 default_shelf.edc --- default_shelf.edc 4 Apr 2007 12:51:51 - 1.16 +++ default_shelf.edc 5 Apr 2007 18:40:31 - @@ -11,105 +11,16 @@ name: e/shelf/default/base; data { // this tells e the border is shaped - item: shaped 1; + //item: shaped 1; +item: hidden_state_size 6; } parts { - part { - name: item_clip_bottom; - type: RECT; - mouse_events: 0; - description { - state:default 0.0; - color: 255 255 255 0; - } - description { - state:hidden 0.0; - inherit: default 0.0; - rel1 { - relative: 0.0 1.0; - offset: 0 -2; - } - rel2 { - relative: 1.0 2.0; - offset: -1 -3; - } - } - } - part { - name: item_clip_top; - type: RECT; - mouse_events: 0; - description { - state:default 0.0; - color: 255 255 255 0; - } - description { - state:hidden 0.0; - inherit: default 0.0; - rel1 { - relative: 0.0 -1.0; - offset: 0 2; - } - rel2 { - relative: 1.0 0.0; - offset: -1 1; - } - } - } - part { - name: item_clip_left; - type: RECT; - mouse_events: 0; - description { - state:default 0.0; - color: 255 255 255 0; - } - description { - state:hidden 0.0; - inherit: default 0.0; - rel1 { - relative: -1.0 0.0; - offset: 2 0; - } - rel2 { - relative: 0.0 1.0; - offset: 1 -1; - } - } - } - part { - name: item_clip_right; - type: RECT; - mouse_events: 0; - description { - state:default 0.0; - color: 255 255 255 0; - } - description { - state:hidden 0.0; - inherit: default 0.0; - rel1 { - relative: 1.0 0.0; - offset: -2 0; - } - rel2 { - relative: 2.0 1.0; - offset: -3 -1; - } - } - } + part { name: base; mouse_events: 0; -// clip_to: item_clip; description { state:default 0.0; - rel1 { - to: item_clip_top; - } - rel2 { - to: item_clip_top; - } image { normal: e17_shelf_bg_h.png; border: 19 19 9 9; @@ -126,12 +37,6 @@ description { state:top_left 0.0; inherit: default 0.0; - rel1 { - to: item_clip_top; - } - rel2 { - to: item_clip_top; - } fill { origin { offset: -16 -6; @@ -144,12 +49,6 @@ description { state:top_right 0.0; inherit: default 0.0; - rel1 { - to: item_clip_top; - } - rel2 { - to: item_clip_top; - } fill { origin { offset: 0 -6; @@ -162,12 +61,6 @@ description { state:bottom 0.0; inherit: default 0.0; - rel1 { - to: item_clip_bottom; - } - rel2 { - to: item_clip_bottom; - } fill { origin { offset: 0 0; @@ -180,12 +73,6 @@ description { state:bottom_left 0.0; inherit: default 0.0; - rel1 { - to: item_clip_bottom; - } - rel2 { - to: item_clip_bottom; - } fill { origin { offset: -16 0; @@ -198,12 +85,6 @@ description { state:bottom_right 0.0; inherit: default 0.0; - rel1 { - to: item_clip_bottom; - } - rel2 { - to: item_clip_bottom; - } fill { origin { offset: 0 0; @@ -216,12 +97,6 @@ description { state:left 0.0; inherit: default 0.0; - rel1 { - to: item_clip_left; - } - rel2 { - to: item_clip_left; - } image { normal: e17_shelf_bg_v.png; border: 9 9 19 19; @@ -238,12 +113,6 @@ description { state:left_top 0.0; inherit: default 0.0; - rel1 { - to: item_clip_left; - } - rel2 { - to: item_clip_left; - } image { normal: e17_shelf_bg_v.png; border: 9 9 19 19; @@ -260,12 +129,6 @@ description { state:left_bottom 0.0; inherit: default 0.0; - rel1 { - to: item_clip_left; - } - rel2 { - to: item_clip_left; - } image { normal: e17_shelf_bg_v.png; border: 9 9 19 19; @@ -282,12 +145,6 @@ description { state:right 0.0;
[E-devel] small patch to correct winlist mouse warp
Hi, i reused parts of e_winlist for a module and encouterd the problem that the warp-timer wont stop due to roundings to int. This patch fixes that. Regards, HannesIndex: e_winlist.c === RCS file: /var/cvs/e/e17/apps/e/src/bin/e_winlist.c,v retrieving revision 1.50 diff -u -r1.50 e_winlist.c --- e_winlist.c 2 Mar 2007 17:00:20 - 1.50 +++ e_winlist.c 13 Mar 2007 00:28:39 - @@ -54,10 +54,10 @@ static Evas_List *handlers = NULL; static Ecore_X_Window input_window = 0; static int warp_to = 0; -static int warp_to_x = 0; -static int warp_to_y = 0; -static int warp_x = 0; -static int warp_y = 0; +static double warp_to_x = 0; +static double warp_to_y = 0; +static double warp_x = 0; +static double warp_y = 0; static int scroll_to = 0; static double scroll_align_to = 0.0; static double scroll_align = 0.0; @@ -914,7 +914,7 @@ { if (warp_to) { - int x, y; + double x, y; double spd; spd = e_config-winlist_warp_speed; - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT business topics through brief surveys-and earn cash http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] state of ecore_dbus
Am Mon, 26 Feb 2007 13:33:11 -0600 schrieb Brian Mattern [EMAIL PROTECTED]: On Mon, Feb 26, 2007 at 08:10:48PM +0100, Sebastian Dransfeld wrote: Hannes Janetzek wrote: Hi, I have started to make a module for e17 to control NetwokManager. I would like to use ecore_dbus for that, but it seems ecore_dbus_message_new_method_return doesn't work correctly. (I need this function since NetworkManager gathers user preferences from the client.) so when the return message is sent a ECORE_DBUS_EVENT_SERVER_DEL is produced on the sending side and a dbus timeout is recieved on the other (method calling side). Am i doing soemthing wrong or is this the expected behavior atm? If so, do you have any hints what needs to be done to fix this? Can you show some sample code? And check whether the dbus samples work. Sebastian The ecore_dbus_receive_test sample (in test/orig/ecore) doesn't actually send a reply. (Which would definitely cause the other end to eventually time out if it was expecting one). So, the method_return code probably has never been tested. Ecore_DBus is pretty young, and still missing some functionality. If you want to use it, you'll probably want to get familiar with its code so you can fix any bugs you run across and implement any missing functionality you need. ok. i invested already a few hours staring at the code of ecore_dbus but couldn't find where the problem is exactly. As far as i can interpret dbus-monitor's output the reply message is not even sent, but dbus(the daemon) knows that we sent something, since otherwise the timeout is not recieved. As an alternative approach, I started a simple wrapper around dbus that hooks it into e's main loop. It provides a few convenience functions for setting up method receivers, etc, but requires using the lowlevel libdbus api for many things. thanks, i'll have a look at this one. using low-level dbus makes porting simple (ie. just copy n paste). I probably won't have any time in the next couple months to work on this, so I've put up a tarball at: http://rephorm.com/files/code/e_dbus-0.0.1.tar.gz It includes part of the hal dbus api wrapped up into a lib and a demo ewl app using that. I would love to see someone take this and ecore_dbus and do some benchmarks. In my opinion, unless we can get some significant speed/memory gain from ecore_dbus as opposed to libdbus, I don't see the point of having an independant implementation of the spec. memory and performance wise there is probably not much to gain, but I have to say that the api of ecore_dbus is really handy. I would like to use it for stuff i write from scratch. but anyway, it would probably be possible to have the same api with your wrapper. Regards, Hannes rephorm - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT business topics through brief surveys-and earn cash http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT business topics through brief surveys-and earn cash http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
[E-devel] state of ecore_dbus
Hi, I have started to make a module for e17 to control NetwokManager. I would like to use ecore_dbus for that, but it seems ecore_dbus_message_new_method_return doesn't work correctly. (I need this function since NetworkManager gathers user preferences from the client.) so when the return message is sent a ECORE_DBUS_EVENT_SERVER_DEL is produced on the sending side and a dbus timeout is recieved on the other (method calling side). Am i doing soemthing wrong or is this the expected behavior atm? If so, do you have any hints what needs to be done to fix this? Regards, Hannes - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT business topics through brief surveys-and earn cash http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] add shelf to the main menu
Am Sun, 15 Oct 2006 19:23:25 -0400 schrieb Christopher Michael [EMAIL PROTECTED]: I created 2 different versions for this: http://devilhorns.us/images/shelf_menu.png Version 1 has the shelves listed as a sub-menu. Clicking on an individual shelf will take you to the config dialog for that shelf. Clicking Add a shelf will add a new shelf, and clicking Delete a shelf will take you to the shelf list dialog, where you can select which one to delete. Version 2 is just a quick link to the Shelf Configuration list, where you can add/delete/configure shelves. Which do we want to go with? i would go with the second one, as i don´t like to many too many items in the main menu, especially when they are seldom used, for aesthetical and practical reasons. just a quick idea, what about having it like this? config - shelves - configure shelves (the old dialog) shelf 1 shelf 2 (for fast selection, if one wants to change only one shelf) i think lost windows could also be removed as one gets these windows also with 'cleanup windows', ok that is probaly not so obvious.. hm, and 'about this theme' could went to the theme selector =) Regards, Hannes Cheers, devilhorns - Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnkkid=120709bid=263057dat=121642 ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel - Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnkkid=120709bid=263057dat=121642 ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] add shelf to the main menu
Am Sun, 15 Oct 2006 19:48:48 -0400 schrieb Christopher Michael [EMAIL PROTECTED]: Hannes Janetzek wrote: i would go with the second one, as i don´t like to many too many items in the main menu, especially when they are seldom used, for aesthetical and practical reasons. But how do you determine seldom used ? Me for instance, I never use the Desktops menu item (for switching)...does that mean it's seldom used and should be removed? Not necessarily because others may use it. yep, you´re right i can´t remember that i´ve chosen desktops from the main menu, nut i don´t know a different category to put it in. one good point to put the shelves item into config is that it is for configuring shelves. just a quick idea, what about having it like this? config - shelves - configure shelves (the old dialog) shelf 1 shelf 2 (for fast selection, if one wants to change only one shelf) IMHO, nested too deep and a pita to get to. Would be just as easy to launch config panel and goto shelves. hm, it´s the same nesting level as to choose an application from a category. i don´t think that this is too hard to get to there for most people. Hannes devilhorns - Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnkkid=120709bid=263057dat=121642 ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel - Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnkkid=120709bid=263057dat=121642 ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
[E-devel] patch to reach virtual desktop settings by right click on the pager
patch attached -- HannesIndex: e_mod_main.c === RCS file: /var/cvs/e/e17/apps/e/src/modules/pager/e_mod_main.c,v retrieving revision 1.190 diff -u -r1.190 e_mod_main.c --- e_mod_main.c 24 Sep 2006 13:37:37 - 1.190 +++ e_mod_main.c 10 Oct 2006 00:44:14 - @@ -97,6 +97,7 @@ static void _button_cb_mouse_down(void *data, Evas *e, Evas_Object *obj, void *event_info); static void _menu_cb_post(void *data, E_Menu *m); static void _pager_inst_cb_menu_configure(void *data, E_Menu *m, E_Menu_Item *mi); +static void _pager_inst_cb_menu_virtual_desktops_dialog(void *data, E_Menu *m, E_Menu_Item *mi); static void _pager_instance_drop_zone_recalc(Instance *inst); static int _pager_cb_event_border_resize(void *data, int type, void *event); static int _pager_cb_event_border_move(void *data, int type, void *event); @@ -624,6 +625,11 @@ e_util_menu_item_edje_icon_set(mi, enlightenment/configuration); e_menu_item_callback_set(mi, _pager_inst_cb_menu_configure, NULL); + mi = e_menu_item_new(mn); + e_menu_item_label_set(mi, _(Virtual Desktops)); + e_util_menu_item_edje_icon_set(mi, enlightenment/desktops); + e_menu_item_callback_set(mi, _pager_inst_cb_menu_virtual_desktops_dialog, inst); + e_gadcon_client_util_menu_items_append(inst-gcc, mn, 0); e_gadcon_canvas_zone_geometry_get(inst-gcc-gadcon, @@ -656,6 +662,13 @@ _config_pager_module(NULL); } +static void _pager_inst_cb_menu_virtual_desktops_dialog(void *data, E_Menu *m, E_Menu_Item *mi) +{ + Instance *inst; + inst = data; + e_int_config_desks(inst-gcc-gadcon-zone-container); +} + static void _pager_instance_drop_zone_recalc(Instance *inst) { - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT business topics through brief surveys -- and earn cash http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] Suspend functionality for Entrance
Am Thu, 24 Aug 2006 18:43:58 +0300 schrieb Eugen Minciu [EMAIL PROTECTED]: Hi, I'd like to add functionality for a 'suspend to disk' feature in Entrance, on Linux boxes. Right now, I'd like to allow this using uswsusp, which is the easiest to set up (it does require a very new Linux kernel version though). Of course, it should also be easy to setup for swsusp2. Suspend to RAM could also be used with uswsusp, though I'm not sure about swsusp2. Also, I'm not aware of 'suspend to whatever' status in FreeBSD or any other supported operating systems at the moment. Hm, I don´t think entrance would be the best place for this funtionality, since suspend is normaly used to resume to all open applications in their current state. But a module would be really nice :) I thought about doing such a module. With config for what should happen on acpi events like lid-open/close, etc, etc.. If you start making a module, I could do the suspend2 stuff, since it is the only method that works for me. Regards, Hannes So as I see it right now, I should code the following. 1) Check to see wether the OS supports suspend to ram or suspend to disk. 2) Add two callbacks for each of the operations. 3) Display two buttons for this functionality. In fact it could even be 3 buttons as uswsusp can suspend to both at the same time. Or maybe we shouldn't even bother with extra buttons maybe the user should see a menu, or maybe he should be allowed to select a 'default mode of operation', where, if he chooses so, the power off button would suspend to hard-drive, or to RAM. I'm waiting on your opinion regarding this entire thing. Also, I can't do any graphical stuff (clueless) so if I you guys decide you want me to do this, I can't be of any help with the graphics. Cheers, Eugen. - Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnkkid=120709bid=263057dat=121642 ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel - Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnkkid=120709bid=263057dat=121642 ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] e_menu patch for smarter placement
Am Sun, 13 Aug 2006 22:11:49 + schrieb Hannes Janetzek [EMAIL PROTECTED]: Hello, I made a patch for e_menu that minimizes the need for vertical scrolling. The submenu starts either above or below the actual Item, not only below. It works as follows: if the menu is larger than the screen then place the menu so that more is shown. e.g. if it starts in the lower half of the screen more is shown when the menu is above. If the menu is smaller than the screen but it goes offscreen then it is also tested if the menu should go above. The submenu starts of course direct next to the actual item. The terms above and below could be misleading. If this should be made an option I can change the patch, though i could hardly understand why someone would like it less comfortable :) ok, I see there could also be an aesthetical reason against this placement method. Though it would be good if it could be set by the application. For example the start module when it is at the bottom one has to scroll for almost all items in favourite applications which is pretty uncomfortable. So what about a function like: e_menu_submenu_placement_set(E_Menu *mn, int placement); which could enable the functionality. Default placement would stay the same. With 0 for default, 1 for two direction placement. -- Hannes - Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnkkid=120709bid=263057dat=121642 ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
[E-devel] e_menu patch for smarter placement
Hello, I made a patch for e_menu that minimizes the need for vertical scrolling. The submenu starts either above or below the actual Item, not only below. It works as follows: if the menu is larger than the screen then place the menu so that more is shown. e.g. if its start in the lower half of the screen more is shown when the menu is above. If the menu is smaller than the screen but it goes offscreen then it is also tested if the menu should go above. The submenu starts of course direct next to the actual item. The terms above and below could be misleading. If this should be made an option I can change the patch, though i could hardly understand why someone would like it less comfortable :) Hannes Index: e_menu.c === RCS file: /var/cvs/e/e17/apps/e/src/bin/e_menu.c,v retrieving revision 1.58 diff -u -r1.58 e_menu.c --- e_menu.c 9 Aug 2006 15:24:34 - 1.58 +++ e_menu.c 13 Aug 2006 21:14:34 - @@ -1823,7 +1823,29 @@ if (!m-parent_item) return; m-cur.x = m-parent_item-menu-cur.x + m-parent_item-menu-cur.w; - m-cur.y = m-parent_item-menu-cur.y + m-parent_item-y - m-container_y; + + int parent_item_bottom = m-parent_item-menu-cur.y + m-parent_item-y; + if(m-cur.h m-zone-h) + { + /* menu is larger than screen */ + if(parent_item_bottom (m-zone-h / 2)) + /* more is shown if menu goes up */ + m-cur.y = (parent_item_bottom - (m-container_h + 1)); + else + /* more is shown if menu goes down */ + m-cur.y = parent_item_bottom - m-container_y; + } + else + { + /* menu is smaller than screen */ + if(((parent_item_bottom + m-cur.h - m-container_y) m-zone-h) + (parent_item_bottom (m-zone-h / 2))) + /* menu is partially out of screen and more is shown if menu goes up */ + m-cur.y = (parent_item_bottom - (m-container_h + 1)); + else + m-cur.y = parent_item_bottom - m-container_y; + } + /* FIXME: this will suck for big menus */ for (l = _e_active_menus; l; l = l-next) { - Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnkkid=120709bid=263057dat=121642___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] a solution for modules getting too large?
Am Fri, 11 Aug 2006 23:11:35 + schrieb Aleksej Struk [EMAIL PROTECTED]: Actually there is no need to make something now, because I'm almost finished fixing current gadcon clients positiong algo. So, it will solve the problem of correct gadcon clients position in the gadcon. Also, it will deal with the size of the gadcon client. Therefore, the gadcon clien still will have just to ask for position and size. The rest - correct size/position will be done by gadcon itself. sndev Great :) if you are working on e_gadcon.c at the moment. there was typo _e_gadcon_movereisze_handle when i looked at it. Hannes On Fri, Aug 11, 2006 at 08:39:47PM +, Hannes Janetzek wrote: Hello, how is it possible to get the size to which a gadcon client can maximal grow without overlapping with others and also that it doesnt get larger as the zone? I thought of implementing a function like e_gadcon_client_max_size_get(E_Gadcon_Client *gcc, int *size ); that should go trough the list of clients of its gadcon and determine their actual size minus the max size that the gadcon can actually get. This would also require a new callback in shelf to determine the size that it can maximal provide. Is this wanted or are there other plans to get rid of the problem with modules getting too large? e.g see taskbar. I will start making this, if it is ok and has a chance to get accepted. Regards, Hannes - Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnkkid=120709bid=263057dat=121642 ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel - Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnkkid=120709bid=263057dat=121642 ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
[E-devel] e_border patch against property change events when moving windows
Hello, I saw that there are property events send if windows were moved, but for this there is already the border move event. As far as I see it, no app uses the property change event to listen for window moves, and if so it probably shouldn´t. Here is a 3 liner patch to omit this behavior. Hannes Index: e_border.c === RCS file: /var/cvs/e/e17/apps/e/src/bin/e_border.c,v retrieving revision 1.521 diff -u -r1.521 e_border.c --- e_border.c 7 Aug 2006 20:25:34 - 1.521 +++ e_border.c 11 Aug 2006 13:07:10 - @@ -4663,10 +4663,12 @@ static void _e_border_eval(E_Border *bd) -{ +{ E_Event_Border_Property *event; int change_urgent = 0; int rem_change = 0; + int send_event = 1; + /* fetch any info queued to be fetched */ if (bd-client.icccm.fetch.client_leader) @@ -5834,6 +5836,7 @@ e_container_shape_move(bd-shape, bd-x, bd-y); bd-changes.pos = 0; rem_change = 1; + send_event = 0; } else if (bd-changes.size) { @@ -6223,11 +6226,13 @@ if ((bd-remember) (rem_change)) e_remember_update(bd-remember, bd); - - event = calloc(1, sizeof(E_Event_Border_Property)); - event-border = bd; - e_object_ref(E_OBJECT(bd)); - ecore_event_add(E_EVENT_BORDER_PROPERTY, event, _e_border_event_border_property_free, NULL); + if(send_event) + { + event = calloc(1, sizeof(E_Event_Border_Property)); + event-border = bd; + e_object_ref(E_OBJECT(bd)); + ecore_event_add(E_EVENT_BORDER_PROPERTY, event, _e_border_event_border_property_free, NULL); + } } static void - Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnkkid=120709bid=263057dat=121642___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
[E-devel] a solution for modules getting too large?
Hello, how is it possible to get the size to which a gadcon client can maximal grow without overlapping with others and also that it doesnt get larger as the zone? I thought of implementing a function like e_gadcon_client_max_size_get(E_Gadcon_Client *gcc, int *size ); that should go trough the list of clients of its gadcon and determine their actual size minus the max size that the gadcon can actually get. This would also require a new callback in shelf to determine the size that it can maximal provide. Is this wanted or are there other plans to get rid of the problem with modules getting too large? e.g see taskbar. I will start making this, if it is ok and has a chance to get accepted. Regards, Hannes - Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnkkid=120709bid=263057dat=121642 ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] E CVS: engage handyande
Am Thu, 10 Aug 2006 13:27:28 +1000 schrieb David Seikel [EMAIL PROTECTED]: window.c: In function `window_input_shape_rectangle_set': window.c:49: error: `ShapeInput' undeclared (first use in this function) window.c:49: error: (Each undeclared identifier is reported only once window.c:49: error: for each function it appears in.) At least on my SuSE 9.3 Pro. Sorry, I forgot that not everyone is on the bleeding edge. patch attached. Index: window.c === RCS file: /var/cvs/e/misc/engage/src/window.c,v retrieving revision 1.32 diff -u -r1.32 window.c --- window.c 9 Aug 2006 21:38:13 - 1.32 +++ window.c 10 Aug 2006 12:17:22 - @@ -40,6 +40,7 @@ static void window_input_shape_rectangle_set(Ecore_X_Window win, int x, int y, int w, int h) { +#ifdef ShapeInput XRectangle rect; rect.x = x; @@ -47,6 +48,7 @@ rect.width = w; rect.height = h; XShapeCombineRectangles(ecore_x_display_get(), win, ShapeInput, 0, 0, rect, 1, ShapeSet, Unsorted); +#endif } @@ -100,12 +102,14 @@ { if (_ee != ee) return; - + +#ifdef ShapeInput if(options.use_composite) { Ecore_X_Window win = ecore_evas_software_x11_window_get(_ee); window_input_shape_rectangle_set(win,0,0,options.width,options.height); } +#endif if (mouse_focus_timer) ecore_timer_del(mouse_focus_timer); @@ -119,12 +123,14 @@ { if (_ee != ee) return; - + +#ifdef ShapeInput if(options.use_composite) // it should be enough to do this at zoom out, but so it looks less cluttered { Ecore_X_Window win = ecore_evas_software_x11_window_get(_ee); window_input_shape_rectangle_set(win,0,options.height-options.size,options.width,options.size); } +#endif if (mouse_focus_timer) ecore_timer_del(mouse_focus_timer); @@ -236,13 +242,16 @@ ecore_evas_title_set(ee, Engage); ecore_evas_name_class_set(ee, engage, engage); - + + if(options.use_composite) { +#ifdef ShapeInput ecore_evas_alpha_set(ee, 1); Ecore_X_Window win = ecore_evas_software_x11_window_get(ee); ecore_x_window_override_set(win,1); window_input_shape_rectangle_set(win,0,options.height-options.size,options.width,options.size); +#endif } else ecore_evas_borderless_set(ee, 1); @@ -445,11 +454,13 @@ } else if (dock.state == zoomed || dock.state == zooming) { od_dock_zoom_out(); +#ifdef ShapeInput if(options.use_composite) { Ecore_X_Window win = ecore_evas_software_x11_window_get(ee); window_input_shape_rectangle_set(win, 0, options.height-options.size, options.width, options.size); } +#endif } } - Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnkkid=120709bid=263057dat=121642___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
[E-devel] bug with border icon edit dialog
Hi, I found a bug, that if one closes the icon edit dialog, while the icon chooser is open and then close the filer chooser it segfaults e. Another thing is that if one applys changes to an icon by the border edit dialog, then the icon gets removed from the eap. Regards, Hannes - Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnkkid=120709bid=263057dat=121642 ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] bug with border icon edit dialog
Am Tue, 8 Aug 2006 03:25:30 + schrieb Hannes Janetzek [EMAIL PROTECTED]: Hi, I found a bug, that if one closes the icon edit dialog, while the icon chooser is open and then close the filer chooser it segfaults e. Another thing is that if one applys changes to an icon by the border edit dialog, then the icon gets removed from the eap. hm, I mean if one applys changes to an eap, but doesn´t select an icon, the old icon gets removed. Regards, Hannes - Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnkkid=120709bid=263057dat=121642 ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel - Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnkkid=120709bid=263057dat=121642 ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
[E-devel] new taskbar module
Hi, I made a taskbar module based on ibox. The functionality is convenient: icons have a menu for the most common task like closing max/minimize, set sticky, etc. Dragging icons out of the bar brings the apps from other desktops to the current desktop. Further details can be found in the README. http://www.informatik.uni-bremen.de/~jeff/itask.tar.gz this patch needs to be applied to e17before http://www.informatik.uni-bremen.de/~jeff/border-title-change.patch Regards, Hannes - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT business topics through brief surveys -- and earn cash http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] new taskbar module
Am Fri, 04 Aug 2006 23:59:30 +0200 schrieb Sebastian Dransfeld [EMAIL PROTECTED]: Hannes Janetzek wrote: Hi, I made a taskbar module based on ibox. The functionality is convenient: icons have a menu for the most common task like closing max/minimize, set sticky, etc. Dragging icons out of the bar brings the apps from other desktops to the current desktop. Further details can be found in the README. http://www.informatik.uni-bremen.de/~jeff/itask.tar.gz this patch needs to be applied to e17before http://www.informatik.uni-bremen.de/~jeff/border-title-change.patch Have you implemented the Allowed actions stuff from netwm too? Would be nice :) hm, I don´t exactly know what you mean with Allowed actions. The menu is basically a stripped down version of the border menu with all its restrictions for different window types, like no maximize option for windows that can´t be maximized. I didn´t include the different maximize options, since I´ve never used them. For me the menu should only have the most often used funtions, but everyone is free to include the functions he or she needs. This should be made as config options. It would be great to have some feedback what others think is needed for a taskbar. common give it a try :) btw is it planned to include a help dialogs in e17? For now I put the help in the about dialog, which is certainly not the best place. Hannes Sebastian - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT business topics through brief surveys -- and earn cash http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT business topics through brief surveys -- and earn cash http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] new taskbar module
Am Fri, 4 Aug 2006 17:57:43 -0700 schrieb Blake Barnett [EMAIL PROTECTED]: On Aug 4, 2006, at 5:58 PM, Hannes Janetzek wrote: snip It would be great to have some feedback what others think is needed for a taskbar. common give it a try :) snip Here's a couple of my ideas on the subject. (again) http://marc.theaimsgroup.com/?l=enlightenment- develm=113513395432378w=2 hm, could you write a detailed use case for this? I can´t imagine how this should work or look like. - User opens an image editing/viewing application. - Taskbar changes to a new mode and displays things like: - A small slideshow or bar of recently edited/viewed images eaps should store mime-types of the applications for this to work. I would appreciate to have this. -A group of tools that the user put in place that they like to have handy when editing images. One could use the menu of the favourite category to which the task icon belongs :) Hannes -Blake - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT business topics through brief surveys -- and earn cash http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
[E-devel] e_border patch for having title change events
Hi, I´m currently working on a taskbar which of course needs to be informaed when border titles change. I hope this patch is ok, it works just like the icon change event. Regards, Hannes ? border-title-change.patch Index: e_border.c === RCS file: /var/cvs/e/e17/apps/e/src/bin/e_border.c,v retrieving revision 1.519 diff -u -r1.519 e_border.c --- e_border.c 29 Jul 2006 15:09:53 - 1.519 +++ e_border.c 3 Aug 2006 14:45:18 - @@ -67,6 +67,8 @@ static void _e_border_event_border_desk_set_free(void *data, void *ev); static void _e_border_event_border_stack_free(void *data, void *ev); static void _e_border_event_border_icon_change_free(void *data, void *ev); +static void _e_border_title_change(E_Border *border, char* title); +static void _e_border_event_border_title_change_free(void *data, void *ev); static void _e_border_event_border_focus_in_free(void *data, void *ev); static void _e_border_event_border_focus_out_free(void *data, void *ev); static void _e_border_event_border_resize_free(void *data, void *ev); @@ -129,6 +131,7 @@ EAPI int E_EVENT_BORDER_UNSTICK = 0; EAPI int E_EVENT_BORDER_STACK = 0; EAPI int E_EVENT_BORDER_ICON_CHANGE = 0; +EAPI int E_EVENT_BORDER_TITLE_CHANGE = 0; EAPI int E_EVENT_BORDER_FOCUS_IN = 0; EAPI int E_EVENT_BORDER_FOCUS_OUT = 0; @@ -181,6 +184,7 @@ E_EVENT_BORDER_UNSTICK = ecore_event_type_new(); E_EVENT_BORDER_STACK = ecore_event_type_new(); E_EVENT_BORDER_ICON_CHANGE = ecore_event_type_new(); + E_EVENT_BORDER_TITLE_CHANGE = ecore_event_type_new(); E_EVENT_BORDER_FOCUS_IN = ecore_event_type_new(); E_EVENT_BORDER_FOCUS_OUT = ecore_event_type_new(); @@ -4686,8 +4690,7 @@ bd-client.icccm.fetch.title = 0; if (bd-bg_object) { - edje_object_part_text_set(bd-bg_object, title_text, - bd-client.icccm.title); + _e_border_title_change(bd, bd-client.icccm.title); } } if (bd-client.netwm.fetch.name) @@ -4698,8 +4701,7 @@ bd-client.netwm.fetch.name = 0; if (bd-bg_object) { - edje_object_part_text_set(bd-bg_object, title_text, - bd-client.netwm.name); + _e_border_title_change(bd, bd-client.netwm.name); } } if (bd-client.icccm.fetch.name_class) @@ -5364,11 +5366,10 @@ } if (bd-client.netwm.name) - edje_object_part_text_set(o, title_text, - bd-client.netwm.name); + _e_border_title_change(bd, bd-client.netwm.name); else if (bd-client.icccm.title) - edje_object_part_text_set(o, title_text, - bd-client.icccm.title); + _e_border_title_change(bd, bd-client.icccm.title); + evas_object_resize(o, 1000, 1000); edje_object_calc_force(o); edje_object_part_geometry_get(o, client, cx, cy, cw, ch); @@ -6542,6 +6547,31 @@ free(e); } + +static void _e_border_title_change(E_Border *bd, char* title) +{ + + edje_object_part_text_set(bd-bg_object, title_text, + title); + E_Event_Border_Title_Change *ev; + ev = calloc(1, sizeof(E_Event_Border_Title_Change)); + ev-border = bd; + e_object_ref(E_OBJECT(bd)); + //e_object_breadcrumb_add(E_OBJECT(bd), border_title_change_event); //hm, for which hungry duck might this be ? + ecore_event_add(E_EVENT_BORDER_TITLE_CHANGE, ev, + _e_border_event_border_title_change_free, NULL); +} + +static void +_e_border_event_border_title_change_free(void *data, void *ev) +{ + E_Event_Border_Title_Change *e; + + e = ev; + e_object_unref(E_OBJECT(e-border)); + free(e); +} + static void _e_border_event_border_focus_in_free(void *data, void *ev) { Index: e_border.h === RCS file: /var/cvs/e/e17/apps/e/src/bin/e_border.h,v retrieving revision 1.146 diff -u -r1.146 e_border.h --- e_border.h 17 Jul 2006 19:04:01 - 1.146 +++ e_border.h 3 Aug 2006 14:45:19 - @@ -87,6 +87,7 @@ typedef struct _E_Event_Border_Desk_Set E_Event_Border_Desk_Set; typedef struct _E_Event_Border_Stack E_Event_Border_Stack; typedef struct _E_Event_Border_Icon_Change E_Event_Border_Icon_Change; +typedef struct _E_Event_Border_Title_Change E_Event_Border_Title_Change; typedef struct _E_Event_Border_Focus_In E_Event_Border_Focus_In; typedef struct _E_Event_Border_Focus_Out E_Event_Border_Focus_Out; @@ -525,6 +526,11 @@ E_Border *border; }; +struct _E_Event_Border_Title_Change +{ + E_Border *border; +}; + struct _E_Event_Border_Focus_In { E_Border *border; @@ -626,6 +632,7 @@ extern EAPI int E_EVENT_BORDER_DESK_SET; extern EAPI int E_EVENT_BORDER_STACK; extern EAPI int E_EVENT_BORDER_ICON_CHANGE; +extern EAPI int E_EVENT_BORDER_TITLE_CHANGE; extern EAPI int E_EVENT_BORDER_FOCUS_IN; extern EAPI int E_EVENT_BORDER_FOCUS_OUT; - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the
Re: [E-devel] engage is ready for composite
Ok, new patch minus one dumb mistake. I Should have first look at the the theme data... usage is now: engage -T false -m 0 -t none -B caff -C 1 ? engage-composite-redraw_timer-2.patch ? engage-composite-redraw_timer.patch ? engage-composite.patch Index: config.c === RCS file: /var/cvs/e/misc/engage/src/config.c,v retrieving revision 1.58 diff -u -r1.58 config.c --- config.c 25 Feb 2006 18:29:04 - 1.58 +++ config.c 31 Jul 2006 00:31:56 - @@ -136,7 +136,12 @@ ignore-running, Ignore running apps); ecore_config_boolean_create(engage.options.ignore_iconified, 0, 'I', ignore-iconified, Ignore iconified windows); - + + + ecore_config_boolean_create(engage.options.use_composite, 0, 'C', + use-composite,Use with composite manager for nice transparency effects); + + ecore_config_load(); ret = ecore_config_args_parse(); @@ -179,7 +184,8 @@ options.tray = ecore_config_boolean_get(engage.options.tray); options.ignore_run = ecore_config_boolean_get(engage.options.ignore_running); options.ignore_min = ecore_config_boolean_get(engage.options.ignore_iconified); - + + options.use_composite = ecore_config_boolean_get(engage.options.use_composite); return ret; } Index: dock.c === RCS file: /var/cvs/e/misc/engage/src/dock.c,v retrieving revision 1.20 diff -u -r1.20 dock.c --- dock.c 25 Oct 2005 00:54:54 - 1.20 +++ dock.c 31 Jul 2006 00:31:56 - @@ -118,11 +118,25 @@ need_redraw = true; } +double lasttime = 0; + void od_dock_redraw(Ecore_Evas * ee) { - Evas_List *item = dock.icons; + +double time = ecore_time_get(); + + if(time - lasttime 0.04) + { + // need_redraw = false; // + return; + } + +lasttime = time; + + + Evas_List *item = dock.icons; while (item) { OD_Icon*icon = (OD_Icon *) item-data; Index: engage.h === RCS file: /var/cvs/e/misc/engage/src/engage.h,v retrieving revision 1.30 diff -u -r1.30 engage.h --- engage.h 25 Oct 2005 00:54:54 - 1.30 +++ engage.h 31 Jul 2006 00:32:00 - @@ -104,6 +104,7 @@ unsignedbg_fore, bg_back; // color - ARGB double icon_appear_duration; int tray, ignore_run, ignore_min; + int use_composite; }; struct _OD_Window { Index: window.c === RCS file: /var/cvs/e/misc/engage/src/window.c,v retrieving revision 1.31 diff -u -r1.31 window.c --- window.c 13 Jun 2005 18:55:14 - 1.31 +++ window.c 31 Jul 2006 00:32:02 - @@ -6,6 +6,8 @@ #include X11/Xlib.h #include X11/Xatom.h #include X11/Xutil.h +#include X11/extensions/shape.h + #ifdef XINERAMA #include X11/extensions/Xinerama.h #endif @@ -32,6 +34,22 @@ static void handle_menu_draw(void *data, Evas * e, Evas_Object * obj, void *event); static void od_window_set_hidden(int hidden); +static void window_input_shape_rectangle_set(Ecore_X_Window win, int x, int y, int w, int h); + + +static void +window_input_shape_rectangle_set(Ecore_X_Window win, int x, int y, int w, int h) +{ + XRectangle rect; + + rect.x = x; + rect.y = y; + rect.width = w; + rect.height = h; + XShapeCombineRectangles(ecore_x_display_get(), win, ShapeInput, 0, 0, rect, 1, ShapeSet, Unsorted); +} + + int od_window_hide_timer_cb(void *data) { @@ -82,6 +100,13 @@ { if (_ee != ee) return; + + if(options.use_composite) + { +Ecore_X_Window win = ecore_evas_software_x11_window_get(_ee); +window_input_shape_rectangle_set(win,0,0,options.width,options.height); + } + if (mouse_focus_timer) ecore_timer_del(mouse_focus_timer); mouse_focus_timer = NULL; @@ -94,6 +119,13 @@ { if (_ee != ee) return; + + if(options.use_composite) // it should be enough to do this at zoom out, but so it looks less cluttered + { +Ecore_X_Window win = ecore_evas_software_x11_window_get(_ee); +window_input_shape_rectangle_set(win,0,options.height-options.size,options.width,options.size); + } + if (mouse_focus_timer) ecore_timer_del(mouse_focus_timer); mouse_focus_timer = ecore_timer_add(0.5, od_window_hide_timer_cb, NULL); @@ -188,7 +220,7 @@ if (!(strcmp(options.engine, gl))) ee = ecore_evas_gl_x11_new(NULL, 0, (int) ((res_x - options.width) / 2.0 + x), - (int) (res_y - options.height + y), + (int) (res_y - options.height + y), options.width, options.height); else { if (strcmp(options.engine, software)) { @@ -198,18 +230,33 @@ } ee =
Re: [E-devel] does alpha_set work together with shaped_set?
Am Sat, 29 Jul 2006 20:31:10 +0900 schrieb Carsten Haitzler (The Rasterman) [EMAIL PROTECTED]: On Sat, 29 Jul 2006 10:38:01 + Hannes Janetzek [EMAIL PROTECTED] babbled: Hi, I´m trying to make engage work in a composite environment. Everything works fine so far. The Problem is when I use set_alpha and then set_shaped, the whole window still recieves input events. Does shape_set not work if the window was set up to use alpha channel? If so, have somebody an idea how to work around this? correct - shaped and alpha are mutually exclusive. you woudl need to manually generate a shape mask and set the input event mask (new addition to shape extn) to what u want... ie - what u want isnt supported in ecore/evas. hm, I did it manually but the window still gets focus when the pointer is on the not masked area... I think I have to dig deeper into this. Have you seen any documentation on the ShapeInput option? As far as I understand it it should work just like ShapeBounding - XShapeCombineMask for ShapeBounding gives only mouse events to the window in the masked area AND make the not masked area fully transparent. XShapeCombineMask for ShapeInput should do only the former, right? Or could it be possible that the wm has to know about ShapeInput to set focus correctly ? btw. Is it wanted that in _ecore_evas_x_render() ecore_x_window_shape_events_select() gets such a complex second argument if the only thing that it constantly should say is turn on / turn off ? Also to me it looks like it says turn on twice. Regards, Hannes I tried to move and resize the window to make it smaller when its not in zoomed state, but the results aren´t pleasing.. Regards, Hannes - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT business topics through brief surveys -- and earn cash http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT business topics through brief surveys -- and earn cash http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] engage is ready for composite
Am Sun, 30 Jul 2006 22:55:37 +0900 schrieb Carsten Haitzler (The Rasterman) [EMAIL PROTECTED]: On Sun, 30 Jul 2006 14:29:29 + Hannes Janetzek [EMAIL PROTECTED] babbled: Am Sat, 29 Jul 2006 20:31:10 +0900 schrieb Carsten Haitzler (The Rasterman) [EMAIL PROTECTED]: On Sat, 29 Jul 2006 10:38:01 + Hannes Janetzek [EMAIL PROTECTED] babbled: Hi, I´m trying to make engage work in a composite environment. Everything works fine so far. The Problem is when I use set_alpha and then set_shaped, the whole window still recieves input events. Does shape_set not work if the window was set up to use alpha channel? If so, have somebody an idea how to work around this? correct - shaped and alpha are mutually exclusive. you woudl need to manually generate a shape mask and set the input event mask (new addition to shape extn) to what u want... ie - what u want isnt supported in ecore/evas. hm, I did it manually but the window still gets focus when the pointer is on the not masked area... I think I have to dig deeper into this. ooh because it's a managed window and the wm (e) will not understand anythng about event shapes - it only handles traditional shapes. so you need to set the shape to the largest region in which you will draw pixels (otherwise they might get chopped off/clipped away). e doesn't know about event shapes so it wont do it for you :( ok, for this case it isn´t really needed. Shape changes on every zoom step is in any case to much overhead. Now i just change the InputShape at mouse in / out. With an override window it works well. So I finished my composite option for engage. it is not perfect, but if one of the developers would have a look at it I will send it as patch. Regards, Hannes - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT business topics through brief surveys -- and earn cash http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] engage is ready for composite
Ok, new patch minus one dumb mistake. I Should have first look at the the theme data... usage is now: engage -T false -m 0 -t none -B caff -C 1 ? engage-composite-redraw_timer-2.patch ? engage-composite-redraw_timer.patch ? engage-composite.patch Index: config.c === RCS file: /var/cvs/e/misc/engage/src/config.c,v retrieving revision 1.58 diff -u -r1.58 config.c --- config.c 25 Feb 2006 18:29:04 - 1.58 +++ config.c 31 Jul 2006 00:31:56 - @@ -136,7 +136,12 @@ ignore-running, Ignore running apps); ecore_config_boolean_create(engage.options.ignore_iconified, 0, 'I', ignore-iconified, Ignore iconified windows); - + + + ecore_config_boolean_create(engage.options.use_composite, 0, 'C', + use-composite,Use with composite manager for nice transparency effects); + + ecore_config_load(); ret = ecore_config_args_parse(); @@ -179,7 +184,8 @@ options.tray = ecore_config_boolean_get(engage.options.tray); options.ignore_run = ecore_config_boolean_get(engage.options.ignore_running); options.ignore_min = ecore_config_boolean_get(engage.options.ignore_iconified); - + + options.use_composite = ecore_config_boolean_get(engage.options.use_composite); return ret; } Index: dock.c === RCS file: /var/cvs/e/misc/engage/src/dock.c,v retrieving revision 1.20 diff -u -r1.20 dock.c --- dock.c 25 Oct 2005 00:54:54 - 1.20 +++ dock.c 31 Jul 2006 00:31:56 - @@ -118,11 +118,25 @@ need_redraw = true; } +double lasttime = 0; + void od_dock_redraw(Ecore_Evas * ee) { - Evas_List *item = dock.icons; + +double time = ecore_time_get(); + + if(time - lasttime 0.04) + { + // need_redraw = false; // + return; + } + +lasttime = time; + + + Evas_List *item = dock.icons; while (item) { OD_Icon*icon = (OD_Icon *) item-data; Index: engage.h === RCS file: /var/cvs/e/misc/engage/src/engage.h,v retrieving revision 1.30 diff -u -r1.30 engage.h --- engage.h 25 Oct 2005 00:54:54 - 1.30 +++ engage.h 31 Jul 2006 00:32:00 - @@ -104,6 +104,7 @@ unsignedbg_fore, bg_back; // color - ARGB double icon_appear_duration; int tray, ignore_run, ignore_min; + int use_composite; }; struct _OD_Window { Index: window.c === RCS file: /var/cvs/e/misc/engage/src/window.c,v retrieving revision 1.31 diff -u -r1.31 window.c --- window.c 13 Jun 2005 18:55:14 - 1.31 +++ window.c 31 Jul 2006 00:32:02 - @@ -6,6 +6,8 @@ #include X11/Xlib.h #include X11/Xatom.h #include X11/Xutil.h +#include X11/extensions/shape.h + #ifdef XINERAMA #include X11/extensions/Xinerama.h #endif @@ -32,6 +34,22 @@ static void handle_menu_draw(void *data, Evas * e, Evas_Object * obj, void *event); static void od_window_set_hidden(int hidden); +static void window_input_shape_rectangle_set(Ecore_X_Window win, int x, int y, int w, int h); + + +static void +window_input_shape_rectangle_set(Ecore_X_Window win, int x, int y, int w, int h) +{ + XRectangle rect; + + rect.x = x; + rect.y = y; + rect.width = w; + rect.height = h; + XShapeCombineRectangles(ecore_x_display_get(), win, ShapeInput, 0, 0, rect, 1, ShapeSet, Unsorted); +} + + int od_window_hide_timer_cb(void *data) { @@ -82,6 +100,13 @@ { if (_ee != ee) return; + + if(options.use_composite) + { +Ecore_X_Window win = ecore_evas_software_x11_window_get(_ee); +window_input_shape_rectangle_set(win,0,0,options.width,options.height); + } + if (mouse_focus_timer) ecore_timer_del(mouse_focus_timer); mouse_focus_timer = NULL; @@ -94,6 +119,13 @@ { if (_ee != ee) return; + + if(options.use_composite) // it should be enough to do this at zoom out, but so it looks less cluttered + { +Ecore_X_Window win = ecore_evas_software_x11_window_get(_ee); +window_input_shape_rectangle_set(win,0,options.height-options.size,options.width,options.size); + } + if (mouse_focus_timer) ecore_timer_del(mouse_focus_timer); mouse_focus_timer = ecore_timer_add(0.5, od_window_hide_timer_cb, NULL); @@ -188,7 +220,7 @@ if (!(strcmp(options.engine, gl))) ee = ecore_evas_gl_x11_new(NULL, 0, (int) ((res_x - options.width) / 2.0 + x), - (int) (res_y - options.height + y), + (int) (res_y - options.height + y), options.width, options.height); else { if (strcmp(options.engine, software)) { @@ -198,18 +230,33 @@ } ee =
Re: [E-devel] ecore borderless_set in conflict with alpha_set ?
Am Fri, 28 Jul 2006 22:22:31 +0200 schrieb Simon TRENY [EMAIL PROTECTED]: On Fri, 28 Jul 2006 00:11:01 +, Hannes Janetzek [EMAIL PROTECTED] wrote : ee = ecore_evas_software_x11_new(NULL, 0, 0, 0, 200, 200); ecore_evas_borderless_set(ee,1); ecore_evas_alpha_set(ee, 1); ecore_evas_show(ee); If you invert the calling order of ecore_evas_borderless_set() and ecore_evas_alpha_set() (so ecore_evas_alpha_set() is called before ecore_evas_borderless_set()), it works. It's probably a bug of Ecore_Evas. Maybe ecore_evas_alpha_set() resets for some reasons the borderless property of the window. So for now, just call ecore_evas_alpha_set() before ecore_evas_borderless_set(), it should work. Thanks that works. It seems not to be a bug. Sebastid told me that windows get recreated by the call to alpha_set and so they loose propertys setted before. Regards, Hannes Regards, Simon TRENY MoOm - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT business topics through brief surveys -- and earn cash http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT business topics through brief surveys -- and earn cash http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
[E-devel] does alpha_set work together with shaped_set?
Hi, I´m trying to make engage work in a composite environment. Everything works fine so far. The Problem is when I use set_alpha and then set_shaped, the whole window still recieves input events. Does shape_set not work if the window was set up to use alpha channel? If so, have somebody an idea how to work around this? I tried to move and resize the window to make it smaller when its not in zoomed state, but the results aren´t pleasing.. Regards, Hannes - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT business topics through brief surveys -- and earn cash http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
[E-devel] ecore borderless_set in conflict with alpha_set ?
Hello, I found some strange behavior with this ecore calls. If I dont use alpha_set borderless_set works as expected. With alpha_set the border gets drawn. This is the code which I have tested. ee = ecore_evas_software_x11_new(NULL, 0, 0, 0, 200, 200); ecore_evas_borderless_set(ee,1); ecore_evas_alpha_set(ee, 1); ecore_evas_show(ee); Any Ideas what´s wrong? Regards, Hannes - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT business topics through brief surveys -- and earn cash http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] ecore borderless_set in conflict with alpha_set ?
Am Fri, 28 Jul 2006 07:47:07 +0200 schrieb Sebastian Dransfeld [EMAIL PROTECTED]: Hannes Janetzek wrote: Hello, I found some strange behavior with this ecore calls. If I dont use alpha_set borderless_set works as expected. With alpha_set the border gets drawn. This is the code which I have tested. ee = ecore_evas_software_x11_new(NULL, 0, 0, 0, 200, 200); ecore_evas_borderless_set(ee,1); ecore_evas_alpha_set(ee, 1); ecore_evas_show(ee); alpha_set recreates the window, try change the order of the functions. Sebastian Ah, ok thanks. This works. Regards, Hannes - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT business topics through brief surveys -- and earn cash http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
[E-devel] ecore borderless_set in conflict with alpha_set ?
Hello, I found some strange behavior with this ecore calls. If I dont use alpha_set borderless_set works as expected. With alpha_set the border gets drawn. This is the code which I have tested. ee = ecore_evas_software_x11_new(NULL, 0, 0, 0, 200, 200); ecore_evas_borderless_set(ee,1); ecore_evas_alpha_set(ee, 1); ecore_evas_show(ee); Regards, Hannes - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT business topics through brief surveys -- and earn cash http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] converting modules to 'new' API
Am Tue, 27 Jun 2006 12:23:47 -0400 schrieb Mike Russo [EMAIL PROTECTED]: Are there any tips on how to convert 3rd party modules to the 'new' API which eliminates config_menu and icon_file? I understand I'm supposed to create a module.eap, but what about the config_menu? I'd really like to get eloquence working again, although I know a gadman-gadcon conversion is still looming anyway, and I can't seem to contact the author. :( Hi, I hacked eloquence up a bit. I got it working for my needs, just tested with xmms2. The theme selection and some other thins don´t work. If this helps further, I could send it to you -- jeff Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnkkid=120709bid=263057dat=121642 ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel