summaryrefslogtreecommitdiff
path: root/src/tests/shaped_input.c
blob: 417c73be9b41b8b62f269f19cfa974902f19ee8c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
#include <Ecore_X.h>

static Ecore_X_Window a;
static unsigned int i, j;
static Ecore_X_Rectangle rects[10000];

static Eina_Bool
_shape(void *d EINA_UNUSED)
{
   unsigned int num = (i * 100) + j;
   fprintf(stderr, "%u: %d,%d %dx%d\n", i, j, 1, 1);
   rects[num].x = i;
   rects[num].y = j;
   rects[num].width = 1;
   rects[num].height = 1;
   ecore_x_window_shape_input_rectangles_set(a, (Ecore_X_Rectangle*)rects, 10000);
   j++;
   if (j == 100)
     {
        i++;
        j = 0;
     }
   if (i == 100)
     {
        i = 0;
        memset(&rects, 0, sizeof(rects));
        ecore_x_window_shape_input_rectangles_set(a, (Ecore_X_Rectangle*)rects, 10000);
     }
   return EINA_TRUE;
}

int
main(void)
{
   ecore_x_init(NULL);

   a = ecore_x_window_input_new(0, 0, 0, 100, 100);
   ecore_x_window_show(a);

   ecore_timer_loop_add(0.01, _shape, NULL);


   ecore_x_icccm_name_class_set(a, "shaped_input", "test");
   ecore_main_loop_begin();
   return 0;
}