[EGIT] [enlightenment] 01/01: Ibar: Focus standalone client on click
This is an automated email from the git hooks/post-receive script. git pushed a commit to reference refs/pull/119/head in repository enlightenment. View the commit online. commit c828e2d8ccac52d95b7041ce83e32e56f9756938 Author: Swagtoy AuthorDate: Fri Jul 4 15:52:38 2025 -0400 Ibar: Focus standalone client on click --- src/modules/ibar/e_mod_main.c | 31 --- 1 file changed, 20 insertions(+), 11 deletions(-) diff --git a/src/modules/ibar/e_mod_main.c b/src/modules/ibar/e_mod_main.c index 2acaa0e85..1958314a8 100644 --- a/src/modules/ibar/e_mod_main.c +++ b/src/modules/ibar/e_mod_main.c @@ -557,7 +557,6 @@ _ibar_fill(IBar *b) const Eina_Hash *execs = e_exec_instances_get(); Eina_Iterator *it; const Eina_List *l, *ll; -const Eina_Inlist *il; E_Exec_Instance *exe; E_Client *ec; @@ -1768,7 +1767,11 @@ _ibar_cb_icon_wheel(void *data, Evas *e EINA_UNUSED, Evas_Object *obj EINA_UNUSE E_Client *cur, *sel = NULL; Eina_List *l, *exe_current = NULL; - if (!ic->exes) return; + if (!ic->exes && ic->single_client) + { + e_client_activate(ic->single_client, EINA_TRUE); + return; + } cur = e_client_focused_get(); cur = e_client_stack_bottom_get(cur); @@ -1849,7 +1852,13 @@ _ibar_instance_watch(void *data, E_Exec_Instance *inst, E_Exec_Watch_Type type) static void _ibar_icon_go(IBar_Icon *ic, Eina_Bool keep_going) { - if (ic->not_in_order) + // Can't launch nonexistant client, just focus it + if (ic->single_client) + { + e_client_uniconify(ic->single_client); + e_client_activate(ic->single_client, 1); + } + else if (ic->not_in_order) { Eina_List *l, *ll; E_Exec_Instance *exe; @@ -1873,7 +1882,7 @@ _ibar_icon_go(IBar_Icon *ic, Eina_Bool keep_going) e_client_activate(eclast, 1); return; } - if (ic->app->type == EFREET_DESKTOP_TYPE_APPLICATION) + if (ic->app && ic->app->type == EFREET_DESKTOP_TYPE_APPLICATION) { if (ic->ibar->inst->ci->dont_track_launch) e_exec(ic->ibar->inst->gcc->gadcon->zone, @@ -1893,7 +1902,7 @@ _ibar_icon_go(IBar_Icon *ic, Eina_Bool keep_going) } } } - else if (ic->app->type == EFREET_DESKTOP_TYPE_LINK) + else if (ic->app && ic->app->type == EFREET_DESKTOP_TYPE_LINK) { if (!strncasecmp(ic->app->url, "file:", 5)) { @@ -2725,12 +2734,12 @@ _ibar_cb_client_prop(void *d EINA_UNUSED, int t EINA_UNUSED, E_Event_Client_Prop if (!eina_list_data_find(ic->exes, ec->exe_inst)) ic->exes = eina_list_append(ic->exes, ec->exe_inst); } -else if (!b->inst->ci->dont_add_nonorder) - { - _ibar_sep_create(b); - _ibar_icon_notinorder_new(b, ec->exe_inst, NULL); - _ibar_resize_handle(b); - } + else if (!b->inst->ci->dont_add_nonorder) + { + _ibar_sep_create(b); + _ibar_icon_notinorder_new(b, ec->exe_inst, NULL); + _ibar_resize_handle(b); + } } else { -- To stop receiving notification emails like this one, please contact the administrator of this repository.
[EGIT] [enlightenment] 01/01: Ibar: Focus standalone client on click
This is an automated email from the git hooks/post-receive script. git pushed a commit to branch ibar-show-tasks in repository enlightenment. View the commit online. commit c828e2d8ccac52d95b7041ce83e32e56f9756938 Author: Swagtoy AuthorDate: Fri Jul 4 15:52:38 2025 -0400 Ibar: Focus standalone client on click --- src/modules/ibar/e_mod_main.c | 31 --- 1 file changed, 20 insertions(+), 11 deletions(-) diff --git a/src/modules/ibar/e_mod_main.c b/src/modules/ibar/e_mod_main.c index 2acaa0e85..1958314a8 100644 --- a/src/modules/ibar/e_mod_main.c +++ b/src/modules/ibar/e_mod_main.c @@ -557,7 +557,6 @@ _ibar_fill(IBar *b) const Eina_Hash *execs = e_exec_instances_get(); Eina_Iterator *it; const Eina_List *l, *ll; -const Eina_Inlist *il; E_Exec_Instance *exe; E_Client *ec; @@ -1768,7 +1767,11 @@ _ibar_cb_icon_wheel(void *data, Evas *e EINA_UNUSED, Evas_Object *obj EINA_UNUSE E_Client *cur, *sel = NULL; Eina_List *l, *exe_current = NULL; - if (!ic->exes) return; + if (!ic->exes && ic->single_client) + { + e_client_activate(ic->single_client, EINA_TRUE); + return; + } cur = e_client_focused_get(); cur = e_client_stack_bottom_get(cur); @@ -1849,7 +1852,13 @@ _ibar_instance_watch(void *data, E_Exec_Instance *inst, E_Exec_Watch_Type type) static void _ibar_icon_go(IBar_Icon *ic, Eina_Bool keep_going) { - if (ic->not_in_order) + // Can't launch nonexistant client, just focus it + if (ic->single_client) + { + e_client_uniconify(ic->single_client); + e_client_activate(ic->single_client, 1); + } + else if (ic->not_in_order) { Eina_List *l, *ll; E_Exec_Instance *exe; @@ -1873,7 +1882,7 @@ _ibar_icon_go(IBar_Icon *ic, Eina_Bool keep_going) e_client_activate(eclast, 1); return; } - if (ic->app->type == EFREET_DESKTOP_TYPE_APPLICATION) + if (ic->app && ic->app->type == EFREET_DESKTOP_TYPE_APPLICATION) { if (ic->ibar->inst->ci->dont_track_launch) e_exec(ic->ibar->inst->gcc->gadcon->zone, @@ -1893,7 +1902,7 @@ _ibar_icon_go(IBar_Icon *ic, Eina_Bool keep_going) } } } - else if (ic->app->type == EFREET_DESKTOP_TYPE_LINK) + else if (ic->app && ic->app->type == EFREET_DESKTOP_TYPE_LINK) { if (!strncasecmp(ic->app->url, "file:", 5)) { @@ -2725,12 +2734,12 @@ _ibar_cb_client_prop(void *d EINA_UNUSED, int t EINA_UNUSED, E_Event_Client_Prop if (!eina_list_data_find(ic->exes, ec->exe_inst)) ic->exes = eina_list_append(ic->exes, ec->exe_inst); } -else if (!b->inst->ci->dont_add_nonorder) - { - _ibar_sep_create(b); - _ibar_icon_notinorder_new(b, ec->exe_inst, NULL); - _ibar_resize_handle(b); - } + else if (!b->inst->ci->dont_add_nonorder) + { + _ibar_sep_create(b); + _ibar_icon_notinorder_new(b, ec->exe_inst, NULL); + _ibar_resize_handle(b); + } } else { -- To stop receiving notification emails like this one, please contact the administrator of this repository.
[EGIT] [enlightenment] 01/01: Ibar: Show tasks for clients without FDO instances
This is an automated email from the git hooks/post-receive script. git pushed a commit to reference refs/pull/119/head in repository enlightenment. View the commit online. commit 344adeb7cb86ff5084792469eafa1588b9e9c6fc Author: Swagtoy AuthorDate: Fri Jul 4 14:31:41 2025 -0400 Ibar: Show tasks for clients without FDO instances For a long while, I used to think ibar not showing clients with .desktop files was a bug (in fact, i used to think that some clients simple didn't like showing up). Turns out that is intended. This will now show those when dont_add_nonorder is false. More Notably, all of Enlightenment's builtin clients will now show (like config, popups, etc.) and stuff like Steam games. --- src/modules/ibar/e_mod_main.c | 205 ++ 1 file changed, 150 insertions(+), 55 deletions(-) diff --git a/src/modules/ibar/e_mod_main.c b/src/modules/ibar/e_mod_main.c index 38581484a..339adb279 100644 --- a/src/modules/ibar/e_mod_main.c +++ b/src/modules/ibar/e_mod_main.c @@ -70,6 +70,7 @@ struct _IBar_Icon Evas_Object *o_holder, *o_icon; Evas_Object *o_holder2, *o_icon2; Eina_List *client_objs; + E_Client*single_client; Efreet_Desktop *app; Ecore_Timer *reset_timer; Ecore_Timer *timer; @@ -105,8 +106,8 @@ static void _ibar_resize_handle(IBar *b); static void _ibar_instance_drop_zone_recalc(Instance *inst); static Config_Item *_ibar_config_item_get(const char *id); static IBar_Icon *_ibar_icon_at_coord(IBar *b, Evas_Coord x, Evas_Coord y); -static IBar_Icon *_ibar_icon_new(IBar *b, Efreet_Desktop *desktop, Eina_Bool notinorder); -static IBar_Icon *_ibar_icon_notinorder_new(IBar *b, E_Exec_Instance *exe); +static IBar_Icon *_ibar_icon_new(IBar *b, E_Client *ec, Efreet_Desktop *desktop, Eina_Bool notinorder); +static IBar_Icon *_ibar_icon_notinorder_new(IBar *b, E_Exec_Instance *exe, E_Client *ec); static void _ibar_icon_free(IBar_Icon *ic); static void _ibar_icon_fill(IBar_Icon *ic); static void _ibar_icon_empty(IBar_Icon *ic); @@ -542,7 +543,7 @@ _ibar_fill(IBar *b) EINA_LIST_FOREACH(b->io->eo->desktops, l, desktop) { const Eina_List *ll; - ic = _ibar_icon_new(b, desktop, 0); + ic = _ibar_icon_new(b, NULL, desktop, 0); ll = e_exec_desktop_instances_find(desktop); if (ll) { @@ -556,18 +557,19 @@ _ibar_fill(IBar *b) const Eina_Hash *execs = e_exec_instances_get(); Eina_Iterator *it; const Eina_List *l, *ll; +const Eina_Inlist *il; E_Exec_Instance *exe; +E_Client *ec; it = eina_hash_iterator_data_new(execs); EINA_ITERATOR_FOREACH(it, l) { EINA_LIST_FOREACH(l, ll, exe) { - E_Client *ec; Eina_List *lll; Eina_Bool skip = EINA_TRUE; - if (!exe->desktop) continue; + //if (!exe->desktop) continue; EINA_LIST_FOREACH(exe->clients, lll, ec) if (!ec->netwm.state.skip_taskbar) { @@ -575,18 +577,30 @@ _ibar_fill(IBar *b) break; } if (skip) continue; - ic = eina_hash_find(b->icon_hash, _desktop_name_get(exe->desktop)); - if (ic) + if (exe->desktop) { - if (!eina_list_data_find(ic->exes, exe)) - ic->exes = eina_list_append(ic->exes, exe); - continue; + ic = eina_hash_find(b->icon_hash, _desktop_name_get(exe->desktop)); + if (ic) + { +if (!eina_list_data_find(ic->exes, exe)) + ic->exes = eina_list_append(ic->exes, exe); +continue; + } } _ibar_sep_create(b); - _ibar_icon_notinorder_new(b, exe); + _ibar_icon_notinorder_new(b, exe, NULL); } } eina_iterator_free(it); +EINA_LIST_FOREACH(e_comp->clients, l, ec) + { + if ((!e_client_util_ignored_get(ec)) && (!e_object_is_del(E_OBJECT(ec))) && + (!e_client_util_is_popup(ec))) + { + _ibar_sep_create(b); + _ibar_icon_notinorder_new(b, NULL, ec); + } + } } _ibar_empty_handle(b); @@ -732,17 +746,17 @@ _ibar_config_update(Config_Item *ci) { case 0: edje_object_part_text_set(ic->o_holder2, "e.text.label", -ic->app->name); +
[EGIT] [enlightenment] 01/07: xkbswitch: Support for X11 keyboard repeat (rate/delay)
This is an automated email from the git hooks/post-receive script. git pushed a commit to branch master in repository enlightenment. View the commit online. commit a4a1b5f62a63dab59bf556c94e63332902a744fc Author: Swagtoy AuthorDate: Thu Jun 26 03:08:44 2025 -0400 xkbswitch: Support for X11 keyboard repeat (rate/delay) I am surprised this feature is not supported yet. Will allow me to delete my xresources file. Wayland may actually work since I'm using a struct that is used by the wayland compositor, though I have not tested it. (though, I am not certain it will work when apply is pressed, only on E restart) --- src/bin/e_xkb.c | 16 + src/bin/e_xkb.h | 2 ++ src/modules/xkbswitch/e_mod_config.c | 70 ++-- 3 files changed, 86 insertions(+), 2 deletions(-) diff --git a/src/bin/e_xkb.c b/src/bin/e_xkb.c index d54fee190..7addbf82f 100644 --- a/src/bin/e_xkb.c +++ b/src/bin/e_xkb.c @@ -252,6 +252,7 @@ _e_x_xkb_reconfig(void) } } } + e_xkb_repeat_set(e_config->keyboard.repeat_delay, e_config->keyboard.repeat_rate); #ifndef HAVE_WAYLAND_ONLY skip_new_keyboard ++; #endif @@ -525,6 +526,21 @@ e_xkb_flag_file_get(char *buf, size_t bufsize, const char *name) e_prefix_data_get()); } +E_API void +e_xkb_repeat_set(int delay, int rate) +{ +#ifndef HAVE_WAYLAND_ONLY + Ecore_X_Display *display = ecore_x_display_get(); + if (!display) + return; + Ecore_X_Keyboard_Repeat repeat = { + .delay = delay, + .rate = rate, + }; + ecore_x_keyboard_repeat_set(display, &repeat); +#endif +} + E_API Eina_Bool e_config_xkb_layout_eq(const E_Config_XKB_Layout *a, const E_Config_XKB_Layout *b) { diff --git a/src/bin/e_xkb.h b/src/bin/e_xkb.h index 49f153fb4..cc0fa1a55 100644 --- a/src/bin/e_xkb.h +++ b/src/bin/e_xkb.h @@ -10,7 +10,9 @@ E_API void e_xkb_update(int); E_API void e_xkb_layout_next(void); E_API void e_xkb_layout_prev(void); E_API E_Config_XKB_Layout *e_xkb_layout_get(void); +E_API void e_xkb_repeat_set(int delay, int rate); E_API void e_xkb_layout_set(const E_Config_XKB_Layout *cl); +E_API void e_xkb_keyboard_repeat_get(); E_API const char *e_xkb_layout_name_reduce(const char *name); E_API void e_xkb_e_icon_flag_setup(Evas_Object *eicon, const char *name); E_API void e_xkb_flag_file_get(char *buf, size_t bufsize, const char *name); diff --git a/src/modules/xkbswitch/e_mod_config.c b/src/modules/xkbswitch/e_mod_config.c index e40516512..4e8b5aa75 100644 --- a/src/modules/xkbswitch/e_mod_config.c +++ b/src/modules/xkbswitch/e_mod_config.c @@ -1,3 +1,4 @@ +#include "Evas.h" #include "e.h" #include "e_mod_main.h" #include "e_mod_parse.h" @@ -14,6 +15,8 @@ struct _E_Config_Dialog_Data Evas_Object *btn_layout; Evas_Object *led_list; + Evas_Object *key_rate_slider; + Evas_Object *key_delay_slider; Evas_Object *switch_list; Evas_Object *ctrl_list; Evas_Object *lv3_list; @@ -59,6 +62,8 @@ struct _E_Config_Dialog_Data int only_label; int dont_touch_my_damn_keyboard; + int key_rate; + int key_delay; E_Dialog *dlg_add_new; E_Config_Dialog *cfd; @@ -76,6 +81,8 @@ static int _check_changed(E_Config_Dialog_Data *cfdata); static void _dont_touch_my_damn_keyboard_changed(void *data, Evas_Object *obj, void *event); static void _only_label_changed(void *data, Evas_Object *obj, void *event); +static void _key_rate_changed(void *data, Evas_Object *obj, void *event); +static void _key_delay_changed(void *data, Evas_Object *obj, void *event); static void _layout_clicked(void *data, Evas_Object *obj, void *event); static void _cb_add(void *data, Evas_Object *obj, void *event); @@ -164,6 +171,7 @@ _fill_data(E_XKB_Option *op, const char *name, int size, Eina_List *check, Eina_ } } } + return EINA_FALSE; } @@ -197,6 +205,8 @@ _create_data(E_Config_Dialog *cfd) cfdata->_only_label_ = e_config->xkb.only_label; cfdata->dont_touch_my_damn_keyboard = e_config->xkb.dont_touch_my_damn_keyboard; + cfdata->key_rate = e_config->keyboard.repeat_rate; + cfdata->key_delay = e_config->keyboard.repeat_delay; #undef FILL_DATA #define FILL_DATA(name, list_name) \ @@ -293,7 +303,9 @@ _check_changed(E_Config_Dialog_Data *cfdata) eina_list_count(cfdata->cfg_layouts)) || (e_config->xkb.default_model != cfdata->default_model) || (e_config->xkb.only_label != cfdata->only_label) || - (e_config->xkb.dont_touch_my_damn_keyboard != cfdata->dont_touch_my_damn_keyboard)) + (e_config->xkb.dont_touch_my_damn_keyboard != cfdata->dont_touch_my_damn_keyboard) || + (e_config->keyboard.repeat_delay != cfdata->key_delay) || + (e_config->keyboard.repeat_rate != cfdata->key_rate)) return 1; l2 = cfdata->cfg_layouts; @@ -435,6 +
[EGIT] [enlightenment] 05/07: Fix \tindention
This is an automated email from the git hooks/post-receive script. git pushed a commit to branch master in repository enlightenment. View the commit online. commit 9c8c66b59d88575f332417f023165299b7501327 Author: Swagtoy AuthorDate: Wed Jul 2 14:35:57 2025 -0400 Fix \tindention --- src/modules/xkbswitch/e_mod_config.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/modules/xkbswitch/e_mod_config.c b/src/modules/xkbswitch/e_mod_config.c index 10927ed20..a67891b77 100644 --- a/src/modules/xkbswitch/e_mod_config.c +++ b/src/modules/xkbswitch/e_mod_config.c @@ -626,7 +626,7 @@ _config_basic_create(E_Config_Dialog *cfd, Evas *evas, E_Config_Dialog_Data *cfd { Evas_Object *mainn, *configs, *buttons, *only_label, *dont_touch_my_damn_keyboard, *key_rate, - *key_delay; + *key_delay; Evas_Object *listh, *frame; Evas_Object *o; -- To stop receiving notification emails like this one, please contact the administrator of this repository.
[EGIT] [enlightenment] 03/07: E_Xkb: Polarity with EFL
This is an automated email from the git hooks/post-receive script. git pushed a commit to branch master in repository enlightenment. View the commit online. commit fd944665fe4dea68c690a2ed6980ac5f03b079de Author: Swagtoy AuthorDate: Fri Jun 27 13:27:49 2025 -0400 E_Xkb: Polarity with EFL --- src/bin/e_xkb.c | 5 + 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/src/bin/e_xkb.c b/src/bin/e_xkb.c index 7addbf82f..e38117dc1 100644 --- a/src/bin/e_xkb.c +++ b/src/bin/e_xkb.c @@ -530,14 +530,11 @@ E_API void e_xkb_repeat_set(int delay, int rate) { #ifndef HAVE_WAYLAND_ONLY - Ecore_X_Display *display = ecore_x_display_get(); - if (!display) - return; Ecore_X_Keyboard_Repeat repeat = { .delay = delay, .rate = rate, }; - ecore_x_keyboard_repeat_set(display, &repeat); + ecore_x_keyboard_repeat_set(&repeat); #endif } -- To stop receiving notification emails like this one, please contact the administrator of this repository.
[EGIT] [enlightenment] 07/07: xkbswitch: Fix math
This is an automated email from the git hooks/post-receive script. git pushed a commit to branch master in repository enlightenment. View the commit online. commit a976499286031022911af1d2bd9ad874767e6d73 Author: Swagtoy AuthorDate: Fri Jul 4 14:51:22 2025 -0400 xkbswitch: Fix math --- src/modules/xkbswitch/e_mod_config.c | 5 - 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/modules/xkbswitch/e_mod_config.c b/src/modules/xkbswitch/e_mod_config.c index 881d79691..a0efe1513 100644 --- a/src/modules/xkbswitch/e_mod_config.c +++ b/src/modules/xkbswitch/e_mod_config.c @@ -206,7 +206,10 @@ _create_data(E_Config_Dialog *cfd) cfdata->_only_label_ = e_config->xkb.only_label; cfdata->dont_touch_my_damn_keyboard = e_config->xkb.dont_touch_my_damn_keyboard; - cfdata->key_rate = -1000.0f / -e_config->keyboard.repeat_rate; + if (e_config->keyboard.repeat_rate != 0) + cfdata->key_rate = 1000.0f / e_config->keyboard.repeat_rate; + else + cfdata->key_rate = 1000.0f / 20.0f; cfdata->key_delay = e_config->keyboard.repeat_delay / 1000.0f; #undef FILL_DATA -- To stop receiving notification emails like this one, please contact the administrator of this repository.
[EGIT] [enlightenment] 04/07: Xkbswitch: Suppress unused var
This is an automated email from the git hooks/post-receive script. git pushed a commit to branch master in repository enlightenment. View the commit online. commit 2b5e49bf037c90c64513e59c1a7e5ce23d56d130 Author: Swagtoy AuthorDate: Fri Jun 27 13:39:04 2025 -0400 Xkbswitch: Suppress unused var --- src/modules/xkbswitch/e_mod_config.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/modules/xkbswitch/e_mod_config.c b/src/modules/xkbswitch/e_mod_config.c index 4e8b5aa75..10927ed20 100644 --- a/src/modules/xkbswitch/e_mod_config.c +++ b/src/modules/xkbswitch/e_mod_config.c @@ -1311,7 +1311,7 @@ _only_label_changed(void *data, Evas_Object *obj, void *event EINA_UNUSED) } static void -_key_rate_changed(void *data, Evas_Object *obj, void *event) +_key_rate_changed(void *data, Evas_Object *obj, void *event EINA_UNUSED) { E_Config_Dialog_Data *cfdata; double val = elm_slider_value_get(obj); @@ -1322,7 +1322,7 @@ _key_rate_changed(void *data, Evas_Object *obj, void *event) } static void -_key_delay_changed(void *data, Evas_Object *obj, void *event) +_key_delay_changed(void *data, Evas_Object *obj, void *event EINA_UNUSED) { E_Config_Dialog_Data *cfdata; double val = elm_slider_value_get(obj); -- To stop receiving notification emails like this one, please contact the administrator of this repository.
[EGIT] [enlightenment] 06/07: xkbswitch: Show units and align functionality with xset better
This is an automated email from the git hooks/post-receive script. git pushed a commit to branch master in repository enlightenment. View the commit online. commit 1c884de6fa122e6ad8fa58327db421d4a7fdeb94 Author: Swagtoy AuthorDate: Fri Jul 4 00:02:12 2025 -0400 xkbswitch: Show units and align functionality with xset better --- src/modules/xkbswitch/e_mod_config.c | 32 ++-- 1 file changed, 18 insertions(+), 14 deletions(-) diff --git a/src/modules/xkbswitch/e_mod_config.c b/src/modules/xkbswitch/e_mod_config.c index a67891b77..881d79691 100644 --- a/src/modules/xkbswitch/e_mod_config.c +++ b/src/modules/xkbswitch/e_mod_config.c @@ -1,3 +1,4 @@ +#include "Elementary.h" #include "Evas.h" #include "e.h" #include "e_mod_main.h" @@ -62,8 +63,8 @@ struct _E_Config_Dialog_Data int only_label; int dont_touch_my_damn_keyboard; - int key_rate; - int key_delay; + floatkey_rate; + floatkey_delay; E_Dialog *dlg_add_new; E_Config_Dialog *cfd; @@ -205,8 +206,8 @@ _create_data(E_Config_Dialog *cfd) cfdata->_only_label_ = e_config->xkb.only_label; cfdata->dont_touch_my_damn_keyboard = e_config->xkb.dont_touch_my_damn_keyboard; - cfdata->key_rate = e_config->keyboard.repeat_rate; - cfdata->key_delay = e_config->keyboard.repeat_delay; + cfdata->key_rate = -1000.0f / -e_config->keyboard.repeat_rate; + cfdata->key_delay = e_config->keyboard.repeat_delay / 1000.0f; #undef FILL_DATA #define FILL_DATA(name, list_name) \ @@ -304,8 +305,8 @@ _check_changed(E_Config_Dialog_Data *cfdata) (e_config->xkb.default_model != cfdata->default_model) || (e_config->xkb.only_label != cfdata->only_label) || (e_config->xkb.dont_touch_my_damn_keyboard != cfdata->dont_touch_my_damn_keyboard) || - (e_config->keyboard.repeat_delay != cfdata->key_delay) || - (e_config->keyboard.repeat_rate != cfdata->key_rate)) + (e_config->keyboard.repeat_delay != (int)cfdata->key_delay) || + (e_config->keyboard.repeat_rate != (int)cfdata->key_rate)) return 1; l2 = cfdata->cfg_layouts; @@ -447,8 +448,8 @@ _basic_apply(E_Config_Dialog *cfd EINA_UNUSED, E_Config_Dialog_Data *cfdata) /* Save options */ e_config->xkb._only_label_ = cfdata->only_label; e_config->xkb.dont_touch_my_damn_keyboard = cfdata->dont_touch_my_damn_keyboard; - e_config->keyboard.repeat_delay = cfdata->key_delay; - e_config->keyboard.repeat_rate = cfdata->key_rate; + e_config->keyboard.repeat_delay = cfdata->key_delay * 1000; + e_config->keyboard.repeat_rate = 1000 / cfdata->key_rate; EINA_LIST_FREE(e_config->xkb.used_options, oc) { @@ -662,9 +663,10 @@ _config_basic_create(E_Config_Dialog *cfd, Evas *evas, E_Config_Dialog_Data *cfd elm_separator_horizontal_set(o, EINA_TRUE); key_rate = elm_slider_add(mainn); - elm_slider_min_max_set(key_rate, 30, 1000); - elm_slider_value_set(mainn, cfdata->key_rate); - elm_object_text_set(key_rate, _("Key rate")); + elm_slider_min_max_set(key_rate, 1, 333); + elm_slider_value_set(key_rate, 1000.0f / cfdata->key_rate); + elm_slider_indicator_format_set(key_rate, "%.0f keys/second"); + elm_object_text_set(key_rate, _("Repeat rate")); evas_object_smart_callback_add(key_rate, "changed", _key_rate_changed, cfdata); evas_object_size_hint_fill_set(key_rate, EVAS_HINT_FILL, 0.5); @@ -674,9 +676,11 @@ _config_basic_create(E_Config_Dialog *cfd, Evas *evas, E_Config_Dialog_Data *cfd cfdata->key_rate_slider = key_rate; key_delay = elm_slider_add(mainn); - elm_slider_min_max_set(key_delay, 30, 3000); - elm_slider_value_set(mainn, cfdata->key_delay); - elm_object_text_set(key_delay, _("Key delay")); + elm_slider_min_max_set(key_delay, 0.1, 3); + elm_slider_step_set(key_delay, 0.05); + elm_slider_value_set(key_delay, cfdata->key_delay); + elm_object_text_set(key_delay, _("Repeat delay")); + elm_slider_indicator_format_set(key_delay, "%.2f seconds"); evas_object_smart_callback_add(key_delay, "changed", _key_delay_changed, cfdata); evas_object_size_hint_fill_set(key_delay, EVAS_HINT_FILL, 0.5); -- To stop receiving notification emails like this one, please contact the administrator of this repository.
[EGIT] [enlightenment] 02/07: Kbd: Remove unused func prototype
This is an automated email from the git hooks/post-receive script. git pushed a commit to branch master in repository enlightenment. View the commit online. commit 1ce4596e5802fcb92c1cc45c737eba99bdc25654 Author: Swagtoy AuthorDate: Thu Jun 26 03:14:00 2025 -0400 Kbd: Remove unused func prototype --- src/bin/e_xkb.h | 1 - 1 file changed, 1 deletion(-) diff --git a/src/bin/e_xkb.h b/src/bin/e_xkb.h index cc0fa1a55..66844760e 100644 --- a/src/bin/e_xkb.h +++ b/src/bin/e_xkb.h @@ -12,7 +12,6 @@ E_API void e_xkb_layout_prev(void); E_API E_Config_XKB_Layout *e_xkb_layout_get(void); E_API void e_xkb_repeat_set(int delay, int rate); E_API void e_xkb_layout_set(const E_Config_XKB_Layout *cl); -E_API void e_xkb_keyboard_repeat_get(); E_API const char *e_xkb_layout_name_reduce(const char *name); E_API void e_xkb_e_icon_flag_setup(Evas_Object *eicon, const char *name); E_API void e_xkb_flag_file_get(char *buf, size_t bufsize, const char *name); -- To stop receiving notification emails like this one, please contact the administrator of this repository.
[EGIT] [enlightenment] 01/01: xkbswitch: Fix math
This is an automated email from the git hooks/post-receive script. git pushed a commit to branch x11-keeb-repeat-delay in repository enlightenment. View the commit online. commit ccbc8ac2eaecb9cd57887331d1d84a10045c9e85 Author: Swagtoy AuthorDate: Fri Jul 4 14:51:22 2025 -0400 xkbswitch: Fix math --- src/modules/xkbswitch/e_mod_config.c | 5 - 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/modules/xkbswitch/e_mod_config.c b/src/modules/xkbswitch/e_mod_config.c index 881d79691..a0efe1513 100644 --- a/src/modules/xkbswitch/e_mod_config.c +++ b/src/modules/xkbswitch/e_mod_config.c @@ -206,7 +206,10 @@ _create_data(E_Config_Dialog *cfd) cfdata->_only_label_ = e_config->xkb.only_label; cfdata->dont_touch_my_damn_keyboard = e_config->xkb.dont_touch_my_damn_keyboard; - cfdata->key_rate = -1000.0f / -e_config->keyboard.repeat_rate; + if (e_config->keyboard.repeat_rate != 0) + cfdata->key_rate = 1000.0f / e_config->keyboard.repeat_rate; + else + cfdata->key_rate = 1000.0f / 20.0f; cfdata->key_delay = e_config->keyboard.repeat_delay / 1000.0f; #undef FILL_DATA -- To stop receiving notification emails like this one, please contact the administrator of this repository.
[EGIT] [enlightenment] 01/01: xkbswitch: Fix math
This is an automated email from the git hooks/post-receive script. git pushed a commit to reference refs/pull/118/head in repository enlightenment. View the commit online. commit ccbc8ac2eaecb9cd57887331d1d84a10045c9e85 Author: Swagtoy AuthorDate: Fri Jul 4 14:51:22 2025 -0400 xkbswitch: Fix math --- src/modules/xkbswitch/e_mod_config.c | 5 - 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/modules/xkbswitch/e_mod_config.c b/src/modules/xkbswitch/e_mod_config.c index 881d79691..a0efe1513 100644 --- a/src/modules/xkbswitch/e_mod_config.c +++ b/src/modules/xkbswitch/e_mod_config.c @@ -206,7 +206,10 @@ _create_data(E_Config_Dialog *cfd) cfdata->_only_label_ = e_config->xkb.only_label; cfdata->dont_touch_my_damn_keyboard = e_config->xkb.dont_touch_my_damn_keyboard; - cfdata->key_rate = -1000.0f / -e_config->keyboard.repeat_rate; + if (e_config->keyboard.repeat_rate != 0) + cfdata->key_rate = 1000.0f / e_config->keyboard.repeat_rate; + else + cfdata->key_rate = 1000.0f / 20.0f; cfdata->key_delay = e_config->keyboard.repeat_delay / 1000.0f; #undef FILL_DATA -- To stop receiving notification emails like this one, please contact the administrator of this repository.
[EGIT] [enlightenment] 01/01: Ibar: Don't show clients twice
This is an automated email from the git hooks/post-receive script. git pushed a commit to branch ibar-show-tasks in repository enlightenment. View the commit online. commit 36412beccb8664249a7dfa09ab57c356005aa173 Author: Swagtoy AuthorDate: Fri Jul 4 15:39:56 2025 -0400 Ibar: Don't show clients twice --- src/modules/ibar/e_mod_main.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/modules/ibar/e_mod_main.c b/src/modules/ibar/e_mod_main.c index 339adb279..2acaa0e85 100644 --- a/src/modules/ibar/e_mod_main.c +++ b/src/modules/ibar/e_mod_main.c @@ -594,6 +594,7 @@ _ibar_fill(IBar *b) eina_iterator_free(it); EINA_LIST_FOREACH(e_comp->clients, l, ec) { + if (ec->exe_inst) continue; if ((!e_client_util_ignored_get(ec)) && (!e_object_is_del(E_OBJECT(ec))) && (!e_client_util_is_popup(ec))) { @@ -2776,7 +2777,7 @@ _ibar_cb_client_del(void *d EINA_UNUSED, int t EINA_UNUSED, E_Event_Client *ev) } continue; } - + ic = eina_hash_find(b->icon_hash, _desktop_name_get(ev->ec->desktop)); if (ic) { -- To stop receiving notification emails like this one, please contact the administrator of this repository.
[EGIT] [enlightenment] 01/01: Ibar: Don't show clients twice
This is an automated email from the git hooks/post-receive script. git pushed a commit to reference refs/pull/119/head in repository enlightenment. View the commit online. commit 36412beccb8664249a7dfa09ab57c356005aa173 Author: Swagtoy AuthorDate: Fri Jul 4 15:39:56 2025 -0400 Ibar: Don't show clients twice --- src/modules/ibar/e_mod_main.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/modules/ibar/e_mod_main.c b/src/modules/ibar/e_mod_main.c index 339adb279..2acaa0e85 100644 --- a/src/modules/ibar/e_mod_main.c +++ b/src/modules/ibar/e_mod_main.c @@ -594,6 +594,7 @@ _ibar_fill(IBar *b) eina_iterator_free(it); EINA_LIST_FOREACH(e_comp->clients, l, ec) { + if (ec->exe_inst) continue; if ((!e_client_util_ignored_get(ec)) && (!e_object_is_del(E_OBJECT(ec))) && (!e_client_util_is_popup(ec))) { @@ -2776,7 +2777,7 @@ _ibar_cb_client_del(void *d EINA_UNUSED, int t EINA_UNUSED, E_Event_Client *ev) } continue; } - + ic = eina_hash_find(b->icon_hash, _desktop_name_get(ev->ec->desktop)); if (ic) { -- To stop receiving notification emails like this one, please contact the administrator of this repository.
[EGIT] [enlightenment] 01/01: Ibar: Show tasks for clients without FDO instances
This is an automated email from the git hooks/post-receive script. git pushed a commit to branch ibar-show-tasks in repository enlightenment. View the commit online. commit 344adeb7cb86ff5084792469eafa1588b9e9c6fc Author: Swagtoy AuthorDate: Fri Jul 4 14:31:41 2025 -0400 Ibar: Show tasks for clients without FDO instances For a long while, I used to think ibar not showing clients with .desktop files was a bug (in fact, i used to think that some clients simple didn't like showing up). Turns out that is intended. This will now show those when dont_add_nonorder is false. More Notably, all of Enlightenment's builtin clients will now show (like config, popups, etc.) and stuff like Steam games. --- src/modules/ibar/e_mod_main.c | 205 ++ 1 file changed, 150 insertions(+), 55 deletions(-) diff --git a/src/modules/ibar/e_mod_main.c b/src/modules/ibar/e_mod_main.c index 38581484a..339adb279 100644 --- a/src/modules/ibar/e_mod_main.c +++ b/src/modules/ibar/e_mod_main.c @@ -70,6 +70,7 @@ struct _IBar_Icon Evas_Object *o_holder, *o_icon; Evas_Object *o_holder2, *o_icon2; Eina_List *client_objs; + E_Client*single_client; Efreet_Desktop *app; Ecore_Timer *reset_timer; Ecore_Timer *timer; @@ -105,8 +106,8 @@ static void _ibar_resize_handle(IBar *b); static void _ibar_instance_drop_zone_recalc(Instance *inst); static Config_Item *_ibar_config_item_get(const char *id); static IBar_Icon *_ibar_icon_at_coord(IBar *b, Evas_Coord x, Evas_Coord y); -static IBar_Icon *_ibar_icon_new(IBar *b, Efreet_Desktop *desktop, Eina_Bool notinorder); -static IBar_Icon *_ibar_icon_notinorder_new(IBar *b, E_Exec_Instance *exe); +static IBar_Icon *_ibar_icon_new(IBar *b, E_Client *ec, Efreet_Desktop *desktop, Eina_Bool notinorder); +static IBar_Icon *_ibar_icon_notinorder_new(IBar *b, E_Exec_Instance *exe, E_Client *ec); static void _ibar_icon_free(IBar_Icon *ic); static void _ibar_icon_fill(IBar_Icon *ic); static void _ibar_icon_empty(IBar_Icon *ic); @@ -542,7 +543,7 @@ _ibar_fill(IBar *b) EINA_LIST_FOREACH(b->io->eo->desktops, l, desktop) { const Eina_List *ll; - ic = _ibar_icon_new(b, desktop, 0); + ic = _ibar_icon_new(b, NULL, desktop, 0); ll = e_exec_desktop_instances_find(desktop); if (ll) { @@ -556,18 +557,19 @@ _ibar_fill(IBar *b) const Eina_Hash *execs = e_exec_instances_get(); Eina_Iterator *it; const Eina_List *l, *ll; +const Eina_Inlist *il; E_Exec_Instance *exe; +E_Client *ec; it = eina_hash_iterator_data_new(execs); EINA_ITERATOR_FOREACH(it, l) { EINA_LIST_FOREACH(l, ll, exe) { - E_Client *ec; Eina_List *lll; Eina_Bool skip = EINA_TRUE; - if (!exe->desktop) continue; + //if (!exe->desktop) continue; EINA_LIST_FOREACH(exe->clients, lll, ec) if (!ec->netwm.state.skip_taskbar) { @@ -575,18 +577,30 @@ _ibar_fill(IBar *b) break; } if (skip) continue; - ic = eina_hash_find(b->icon_hash, _desktop_name_get(exe->desktop)); - if (ic) + if (exe->desktop) { - if (!eina_list_data_find(ic->exes, exe)) - ic->exes = eina_list_append(ic->exes, exe); - continue; + ic = eina_hash_find(b->icon_hash, _desktop_name_get(exe->desktop)); + if (ic) + { +if (!eina_list_data_find(ic->exes, exe)) + ic->exes = eina_list_append(ic->exes, exe); +continue; + } } _ibar_sep_create(b); - _ibar_icon_notinorder_new(b, exe); + _ibar_icon_notinorder_new(b, exe, NULL); } } eina_iterator_free(it); +EINA_LIST_FOREACH(e_comp->clients, l, ec) + { + if ((!e_client_util_ignored_get(ec)) && (!e_object_is_del(E_OBJECT(ec))) && + (!e_client_util_is_popup(ec))) + { + _ibar_sep_create(b); + _ibar_icon_notinorder_new(b, NULL, ec); + } + } } _ibar_empty_handle(b); @@ -732,17 +746,17 @@ _ibar_config_update(Config_Item *ci) { case 0: edje_object_part_text_set(ic->o_holder2, "e.text.label", -ic->app->name); +