On Mon, Sep 24, 2012 at 02:51:14PM +0200, Jan Arne Petersen wrote:
> From: Jan Arne Petersen <[email protected]>
> 
> Also add a surface argument to the enter event.

Looks good, thanks.

Kristian

> ---
>  clients/editor.c   | 16 ++++++++++------
>  protocol/text.xml  |  9 +++++----
>  src/text-backend.c |  4 ++--
>  3 files changed, 17 insertions(+), 12 deletions(-)
> 
> diff --git a/clients/editor.c b/clients/editor.c
> index af1623f..4003e19 100644
> --- a/clients/editor.c
> +++ b/clients/editor.c
> @@ -346,19 +346,23 @@ text_model_locale(void *data,
>  }
>  
>  static void
> -text_model_activated(void *data,
> -                  struct text_model *text_model)
> +text_model_enter(void *data,
> +              struct text_model *text_model,
> +              struct wl_surface *surface)
>  {
>       struct text_entry *entry = data;
>  
> +     if (surface != window_get_wl_surface(entry->window))
> +             return;
> +
>       entry->active = 1;
>  
>       widget_schedule_redraw(entry->widget);
>  }
>  
>  static void
> -text_model_deactivated(void *data,
> -                    struct text_model *text_model)
> +text_model_leave(void *data,
> +              struct text_model *text_model)
>  {
>       struct text_entry *entry = data;
>  
> @@ -376,8 +380,8 @@ static const struct text_model_listener 
> text_model_listener = {
>       text_model_selection_replacement,
>       text_model_direction,
>       text_model_locale,
> -     text_model_activated,
> -     text_model_deactivated
> +     text_model_enter,
> +     text_model_leave
>  };
>  
>  static struct text_entry*
> diff --git a/protocol/text.xml b/protocol/text.xml
> index 857fd83..5bf1b23 100644
> --- a/protocol/text.xml
> +++ b/protocol/text.xml
> @@ -127,14 +127,15 @@
>      <event name="selection_replacement"/>
>      <event name="direction"/>
>      <event name="locale"/>
> -    <event name="activated">
> -      <description summary="activated event">
> +    <event name="enter">
> +      <description summary="enter event">
>          Notify the model when it is activated. Typically in response to an
>          activate request.
>        </description>
> +      <arg name="surface" type="object" interface="wl_surface"/>
>      </event>
> -    <event name="deactivated">
> -      <description summary="deactivated event">
> +    <event name="leave">
> +      <description summary="leave event">
>          Notify the model when it is deactivated. Either in response to a
>          deactivate request or when the assigned surface lost focus or was
>          destroyed.
> diff --git a/src/text-backend.c b/src/text-backend.c
> index 4190fe7..c480e4e 100644
> --- a/src/text-backend.c
> +++ b/src/text-backend.c
> @@ -90,7 +90,7 @@ deactivate_text_model(struct text_model *text_model,
>               input_method->model = NULL;
>               input_method->context = NULL;
>               wl_signal_emit(&ec->hide_input_panel_signal, ec);
> -             text_model_send_deactivated(&text_model->resource);
> +             text_model_send_leave(&text_model->resource);
>       }
>  }
>  
> @@ -157,7 +157,7 @@ text_model_activate(struct wl_client *client,
>  
>       wl_signal_emit(&ec->show_input_panel_signal, ec);
>  
> -     text_model_send_activated(&text_model->resource);
> +     text_model_send_enter(&text_model->resource, 
> &text_model->surface->resource);
>  }
>  
>  static void
> -- 
> 1.7.11.4
> 
> _______________________________________________
> wayland-devel mailing list
> [email protected]
> http://lists.freedesktop.org/mailman/listinfo/wayland-devel
_______________________________________________
wayland-devel mailing list
[email protected]
http://lists.freedesktop.org/mailman/listinfo/wayland-devel

Reply via email to