xdg-shell: Turn "activated" into a state

This drops two events, and makes new window decorations race-free with
an attach in-flight.
This commit is contained in:
Jasper St. Pierre
2014-05-06 08:44:29 -04:00
committed by Kristian Høgsberg
parent de6809912e
commit 973d7879e3
5 changed files with 15 additions and 66 deletions
-12
View File
@@ -303,16 +303,6 @@ handle_surface_configure(void *data, struct xdg_surface *surface,
xdg_surface_ack_configure(surface, serial);
}
static void
handle_surface_activated(void *data, struct xdg_surface *xdg_surface)
{
}
static void
handle_surface_deactivated(void *data, struct xdg_surface *xdg_surface)
{
}
static void
handle_surface_delete(void *data, struct xdg_surface *xdg_surface)
{
@@ -321,8 +311,6 @@ handle_surface_delete(void *data, struct xdg_surface *xdg_surface)
static const struct xdg_surface_listener xdg_surface_listener = {
handle_surface_configure,
handle_surface_activated,
handle_surface_deactivated,
handle_surface_delete,
};
-12
View File
@@ -123,16 +123,6 @@ handle_configure(void *data, struct xdg_surface *surface,
xdg_surface_ack_configure(surface, serial);
}
static void
handle_activated(void *data, struct xdg_surface *xdg_surface)
{
}
static void
handle_deactivated(void *data, struct xdg_surface *xdg_surface)
{
}
static void
handle_delete(void *data, struct xdg_surface *xdg_surface)
{
@@ -141,8 +131,6 @@ handle_delete(void *data, struct xdg_surface *xdg_surface)
static const struct xdg_surface_listener xdg_surface_listener = {
handle_configure,
handle_activated,
handle_deactivated,
handle_delete,
};
+4 -16
View File
@@ -3868,6 +3868,7 @@ handle_surface_configure(void *data, struct xdg_surface *xdg_surface,
window->maximized = 0;
window->fullscreen = 0;
window->resizing = 0;
window->focused = 0;
wl_array_for_each(p, states) {
uint32_t state = *p;
@@ -3881,6 +3882,9 @@ handle_surface_configure(void *data, struct xdg_surface *xdg_surface,
case XDG_SURFACE_STATE_RESIZING:
window->resizing = 1;
break;
case XDG_SURFACE_STATE_ACTIVATED:
window->focused = 1;
break;
default:
/* Unknown state */
break;
@@ -3893,20 +3897,6 @@ handle_surface_configure(void *data, struct xdg_surface *xdg_surface,
window->state_changed_handler(window, window->user_data);
}
static void
handle_surface_activated(void *data, struct xdg_surface *xdg_surface)
{
struct window *window = data;
window->focused = 1;
}
static void
handle_surface_deactivated(void *data, struct xdg_surface *xdg_surface)
{
struct window *window = data;
window->focused = 0;
}
static void
handle_surface_delete(void *data, struct xdg_surface *xdg_surface)
{
@@ -3916,8 +3906,6 @@ handle_surface_delete(void *data, struct xdg_surface *xdg_surface)
static const struct xdg_surface_listener xdg_surface_listener = {
handle_surface_configure,
handle_surface_activated,
handle_surface_deactivated,
handle_surface_delete,
};