On Thu, 28 Aug 2014 19:44:10 +0300 Giulio Camuffo <giuliocamu...@gmail.com> wrote:
> Add a new "numlock-on" option in the [keyboard] section of weston.ini > which, if set to true, is used to enable the numlock of the keyboards > attached at startup. > --- > man/weston.ini.man | 6 ++++++ > src/compositor.c | 13 +++++++++++++ > 2 files changed, 19 insertions(+) > > diff --git a/man/weston.ini.man b/man/weston.ini.man > index ccd7185..c05a221 100644 > --- a/man/weston.ini.man > +++ b/man/weston.ini.man > @@ -446,6 +446,12 @@ sets the delay in milliseconds since key down until > repeating starts (unsigned > integer) > .RE > .RE > +.TP 7 > +.BI "numlock-on=" "false" > +sets the default state of the numlock on weston startup for the backends > which > +support it. > +.RE > +.RE > .SH "TERMINAL SECTION" > Contains settings for the weston terminal application (weston-terminal). It > allows to customize the font and shell of the command line interface. > diff --git a/src/compositor.c b/src/compositor.c > index 8705950..20ff6b2 100644 > --- a/src/compositor.c > +++ b/src/compositor.c > @@ -4303,10 +4303,12 @@ int main(int argc, char *argv[]) > const char *socket_name = NULL; > int32_t version = 0; > int32_t noconfig = 0; > + int32_t numlock_on; > struct weston_config *config = NULL; > struct weston_config_section *section; > struct wl_client *primary_client; > struct wl_listener primary_client_destroyed; > + struct weston_seat *seat; > > const struct weston_option core_options[] = { > { WESTON_OPTION_STRING, "backend", 'B', &option_backend }, > @@ -4477,6 +4479,17 @@ int main(int argc, char *argv[]) > if (load_modules(ec, option_modules, &argc, argv) < 0) > goto out; > > + section = weston_config_get_section(config, "keyboard", NULL, NULL); > + weston_config_section_get_bool(section, "numlock-on", &numlock_on, 0); > + if (numlock_on) { > + wl_list_for_each(seat, &ec->seat_list, link) { > + if (seat->keyboard) > + weston_keyboard_set_locks(seat->keyboard, > + WESTON_NUM_LOCK, > + WESTON_NUM_LOCK); > + } > + } > + > weston_compositor_wake(ec); > > wl_display_run(display); Cool, both tested by me, and pushed. Thanks, pq _______________________________________________ wayland-devel mailing list wayland-devel@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/wayland-devel