Hey,

Just a reminder.

This doesn't follow our commit guidelines. It actually doesn't follow 
any commit guidelines because Git expects a one short line summary and 
then an empty line.

Also, when you have multiple changes in a patch (to the extent you feel 
like you need to add numbers to the summary lines), please split them to 
separate patches.

Thanks,
Tom.


On 30/11/15 19:16, Sung-Jin Park wrote:
> discomfitor pushed a commit to branch master.
>
> http://git.enlightenment.org/core/enlightenment.git/commit/?id=6826608961a903dd7b117535bd16e8f83cfb26a0
>
> commit 6826608961a903dd7b117535bd16e8f83cfb26a0
> Author: Sung-Jin Park <input.hac...@gmail.com>
> Date:   Mon Nov 30 14:05:10 2015 -0500
>
>      (1) e_config.c/e_comp_wl.c: add code for making repeat values 
> configurable
>      (2) e.src(s): add keyboard.repeat_delay, keyboard.repeat_rate into e.src 
> files
>
>      Summary:
>      As of now, the default values of repeat delay/rate are being set in 
> e_comp_wl.c.
>      Those values need to be configurable and will be used in 
> e_comp_wl_init().
>      The limit of each of the values is defined from -1 to 1000. (maximum 1s).
>      If one of the two is negative, it means default repeat delay/rate are 
> going to be used.
>      (e.g. delay:400, rate:25)
>
>      Test Plan:
>      N/A
>
>      Signed-off-by: Sung-Jin Park <input.hac...@gmail.com>
>
>      Reviewers: raster, stefan_schmidt, gwanglim, devilhorns, zmike
>
>      Subscribers: Jeon, ohduna, cedric
>
>      Differential Revision: https://phab.enlightenment.org/D3364
> ---
>   config/default/e.src      |  2 ++
>   config/mobile/e.src       |  2 ++
>   config/standard/e.src     |  2 ++
>   config/tiling/e.src       |  2 ++
>   src/bin/e_comp_wl.h       |  2 ++
>   src/bin/e_comp_wl_input.c | 13 +++++++++++--
>   src/bin/e_config.c        | 14 ++++++++++++++
>   src/bin/e_config.h        | 10 ++++++++--
>   8 files changed, 43 insertions(+), 4 deletions(-)
>
> diff --git a/config/default/e.src b/config/default/e.src
> index db89920..b7cb835 100644
> --- a/config/default/e.src
> +++ b/config/default/e.src
> @@ -215,6 +215,8 @@ group "E_Config" struct {
>     value "update.later" uchar: 0;
>     value "xkb.only_label" int: 0;
>     value "xkb.default_model" string: "default";
> +  value "keyboard.repeat_delay" int: 400;
> +  value "keyboard.repeat_rate" int: 25;
>     value "exe_always_single_instance" uchar: 0;
>     value "use_desktop_window_profile" int: 0;
>     value "powersave.none" double: 0.25;
> diff --git a/config/mobile/e.src b/config/mobile/e.src
> index f4e6070..1431dde 100644
> --- a/config/mobile/e.src
> +++ b/config/mobile/e.src
> @@ -865,6 +865,8 @@ group "E_Config" struct {
>       }
>       value "xkb.only_label" int: 0;
>       value "xkb.default_model" string: "default";
> +    value "keyboard.repeat_delay" int: 400;
> +    value "keyboard.repeat_rate" int: 25;
>       value "exe_always_single_instance" uchar: 1;
>       value "use_desktop_window_profile" int: 0;
>   }
> diff --git a/config/standard/e.src b/config/standard/e.src
> index 585d3f0..b41057c 100644
> --- a/config/standard/e.src
> +++ b/config/standard/e.src
> @@ -1106,6 +1106,8 @@ group "E_Config" struct {
>       }
>       value "xkb.only_label" int: 0;
>       value "xkb.default_model" string: "default";
> +    value "keyboard.repeat_delay" int: 400;
> +    value "keyboard.repeat_rate" int: 25;
>       value "exe_always_single_instance" uchar: 0;
>       value "use_desktop_window_profile" int: 0;
>   }
> diff --git a/config/tiling/e.src b/config/tiling/e.src
> index 8bde334..afeac1f 100644
> --- a/config/tiling/e.src
> +++ b/config/tiling/e.src
> @@ -1128,6 +1128,8 @@ group "E_Config" struct {
>       }
>       value "xkb.only_label" int: 0;
>       value "xkb.default_model" string: "default";
> +    value "keyboard.repeat_delay" int: 400;
> +    value "keyboard.repeat_rate" int: 25;
>       value "exe_always_single_instance" uchar: 0;
>       value "use_desktop_window_profile" int: 0;
>   }
> diff --git a/src/bin/e_comp_wl.h b/src/bin/e_comp_wl.h
> index 7142f4d..dc268dc 100644
> --- a/src/bin/e_comp_wl.h
> +++ b/src/bin/e_comp_wl.h
> @@ -155,6 +155,8 @@ struct _E_Comp_Wl_Data
>           struct wl_array keys;
>           struct wl_resource *focus;
>           int mod_changed;
> +        int repeat_delay;
> +        int repeat_rate;
>        } kbd;
>
>      struct
> diff --git a/src/bin/e_comp_wl_input.c b/src/bin/e_comp_wl_input.c
> index 2793448..d27d72a 100644
> --- a/src/bin/e_comp_wl_input.c
> +++ b/src/bin/e_comp_wl_input.c
> @@ -181,9 +181,9 @@ _e_comp_wl_input_cb_keyboard_get(struct wl_client 
> *client, struct wl_resource *r
>                                     e_comp->wl_comp_data,
>                                     _e_comp_wl_input_cb_keyboard_unbind);
>
> -   /* FIXME: These values should be configurable */
> +   /* send current repeat_info */
>      if (wl_resource_get_version(res) >= 
> WL_KEYBOARD_REPEAT_INFO_SINCE_VERSION)
> -     wl_keyboard_send_repeat_info(res, 25, 400);
> +     wl_keyboard_send_repeat_info(res, e_comp_wl->kbd.repeat_rate, 
> e_comp_wl->kbd.repeat_delay);
>
>      /* send current keymap */
>      wl_keyboard_send_keymap(res, WL_KEYBOARD_KEYMAP_FORMAT_XKB_V1,
> @@ -419,6 +419,15 @@ e_comp_wl_input_init(void)
>
>      e_comp_wl->xkb.fd = -1;
>
> +   /* get default keyboard repeat rate/delay from configuration */
> +   e_comp_wl->kbd.repeat_delay = e_config->keyboard.repeat_delay;
> +   e_comp_wl->kbd.repeat_rate = e_config->keyboard.repeat_rate;
> +
> +   /* check for valid repeat_delay and repeat_rate value */
> +   /* if invalid, set the default value of repeat delay and rate value */
> +   if (e_comp_wl->kbd.repeat_delay < 0) e_comp_wl->kbd.repeat_delay = 400;
> +   if (e_comp_wl->kbd.repeat_rate < 0) e_comp_wl->kbd.repeat_rate = 25;
> +
>      /* create the global resource for input seat */
>      e_comp_wl->seat.global =
>        wl_global_create(e_comp_wl->wl.disp, &wl_seat_interface, 4,
> diff --git a/src/bin/e_config.c b/src/bin/e_config.c
> index b8043b3..80501aa 100644
> --- a/src/bin/e_config.c
> +++ b/src/bin/e_config.c
> @@ -733,6 +733,9 @@ _e_config_edd_init(Eina_Bool old)
>      E_CONFIG_VAL(D, T, xkb.dont_touch_my_damn_keyboard, UCHAR);
>      E_CONFIG_VAL(D, T, xkb.default_model, STR);
>
> +   E_CONFIG_VAL(D, T, keyboard.repeat_delay, INT);
> +   E_CONFIG_VAL(D, T, keyboard.repeat_rate, INT);
> +
>      if (old)
>        {
>           E_CONFIG_SUB(D, T, xkb.current_layout, _e_config_xkb_option_edd);
> @@ -1326,6 +1329,14 @@ e_config_load(void)
>                     free(ecc);
>                  }
>             }
> +        CONFIG_VERSION_CHECK(19)
> +          {
> +             CONFIG_VERSION_UPDATE_INFO(19);
> +
> +             /* set (400, 25) as the default values of repeat delay, rate */
> +             e_config->keyboard.repeat_delay = 400;
> +             e_config->keyboard.repeat_rate = 25;
> +          }
>        }
>      if (!e_config->remember_internal_fm_windows)
>        e_config->remember_internal_fm_windows = 
> !!(e_config->remember_internal_windows & E_REMEMBER_INTERNAL_FM_WINS);
> @@ -1504,6 +1515,9 @@ e_config_load(void)
>      E_CONFIG_LIMIT(e_config->backlight.dim, 0.05, 1.0);
>      E_CONFIG_LIMIT(e_config->backlight.idle_dim, 0, 1);
>
> +   E_CONFIG_LIMIT(e_config->keyboard.repeat_delay, -1, 1000); // 1 second
> +   E_CONFIG_LIMIT(e_config->keyboard.repeat_rate, -1, 1000); // 1 second
> +
>      if (!e_config->icon_theme)
>        e_config->icon_theme = eina_stringshare_add("hicolor");  // FDO default
>
> diff --git a/src/bin/e_config.h b/src/bin/e_config.h
> index 7fe67c4..2874ac7 100644
> --- a/src/bin/e_config.h
> +++ b/src/bin/e_config.h
> @@ -47,7 +47,7 @@ typedef enum
>   /* increment this whenever a new set of config values are added but the 
> users
>    * config doesn't need to be wiped - simply new values need to be put in
>    */
> -#define E_CONFIG_FILE_GENERATION 18
> +#define E_CONFIG_FILE_GENERATION 19
>   #define E_CONFIG_FILE_VERSION    ((E_CONFIG_FILE_EPOCH * 1000000) + 
> E_CONFIG_FILE_GENERATION)
>
>   #define E_CONFIG_BINDINGS_VERSION 0 // DO NOT INCREMENT UNLESS YOU WANT TO 
> WIPE ALL BINDINGS!!!!!
> @@ -428,7 +428,13 @@ struct _E_Config
>         const char *selected_layout; // whatever teh current layout that the 
> user has selected is
>         const char *desklock_layout;
>      } xkb;
> -
> +
> +   struct
> +   {
> +      int repeat_delay;//delay in milliseconds since key down until 
> repeating starts
> +      int repeat_rate;//the rate of repeating keys in characters per second
> +   } keyboard;
> +
>      Eina_List  *menu_applications;
>      unsigned char exe_always_single_instance; // GUI
>      int           use_desktop_window_profile; // GUI
>


------------------------------------------------------------------------------
Go from Idea to Many App Stores Faster with Intel(R) XDK
Give your users amazing mobile app experiences with Intel(R) XDK.
Use one codebase in this all-in-one HTML5 development environment.
Design, debug & build mobile apps & 2D/3D high-impact games for multiple OSs.
http://pubads.g.doubleclick.net/gampad/clk?id=254741911&iu=/4140
_______________________________________________
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

Reply via email to