commit 44c47d5
Michael Forney
·
2013-12-04 04:55:56 +0000 UTC
parent 516f9e7
Move pointer region calculation to swc.c:setup_compositor()
2 files changed,
+17,
-16
+0,
-16
1@@ -305,8 +305,6 @@ bool swc_compositor_initialize(struct swc_compositor * compositor,
2 struct wl_event_loop * event_loop)
3 {
4 struct wl_list * outputs;
5- struct swc_output * output;
6- pixman_region32_t pointer_region;
7 uint32_t keysym;
8
9 compositor->display = display;
10@@ -352,20 +350,6 @@ bool swc_compositor_initialize(struct swc_compositor * compositor,
11 goto error2;
12 }
13
14- /* Calculate pointer region */
15- pixman_region32_init(&pointer_region);
16-
17- wl_list_for_each(output, &compositor->outputs, link)
18- {
19- pixman_region32_union_rect(&pointer_region, &pointer_region,
20- output->geometry.x, output->geometry.y,
21- output->geometry.width,
22- output->geometry.height);
23- }
24-
25- swc_pointer_set_region(swc.seat->pointer, &pointer_region);
26- pixman_region32_fini(&pointer_region);
27-
28 pixman_region32_init(&compositor->damage);
29 pixman_region32_init(&compositor->opaque);
30 wl_list_init(&compositor->surfaces);
+17,
-0
1@@ -49,12 +49,29 @@ struct swc swc = {
2
3 static void setup_compositor()
4 {
5+ pixman_region32_t pointer_region;
6+ struct swc_output * output;
7+
8 swc.seat->keyboard->handler = swc.bindings->keyboard_handler;
9 swc.seat->pointer->handler = &compositor.pointer_handler;
10 wl_signal_add(&swc.seat->pointer->focus.event_signal,
11 swc_window_enter_listener);
12 wl_signal_add(&swc.seat->pointer->event_signal,
13 &compositor.pointer_listener);
14+
15+ /* Calculate pointer region */
16+ pixman_region32_init(&pointer_region);
17+
18+ wl_list_for_each(output, &compositor.outputs, link)
19+ {
20+ pixman_region32_union_rect(&pointer_region, &pointer_region,
21+ output->geometry.x, output->geometry.y,
22+ output->geometry.width,
23+ output->geometry.height);
24+ }
25+
26+ swc_pointer_set_region(swc.seat->pointer, &pointer_region);
27+ pixman_region32_fini(&pointer_region);
28 }
29
30 EXPORT