version update for systemd
[apps/native/starter.git] / boot-mgr / x11.c
1 /*
2  * Copyright 2012  Samsung Electronics Co., Ltd
3  *
4  * Licensed under the Flora License, Version 1.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  *  http://www.tizenopensource.org/license
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16
17 #include <string.h>
18 #include <stdio.h>
19 #include <stdlib.h>
20
21 #include <X11/Xlib.h>
22 #include <X11/Xatom.h>
23 #include <X11/Xutil.h>
24
25 #define DEFAULT_WINDOW_H 1280
26
27 void prop_string_set(const char *name, const char *value)
28 {
29         Display *d;
30         Atom a_name;
31         Atom a_UTF8;
32         XTextProperty xtp;
33
34         if (name == NULL || value == NULL || value[0] == '\0')
35                 return;
36
37         d = XOpenDisplay(NULL);
38         if (d == NULL)
39                 return;
40
41         a_name = XInternAtom(d, name, False);
42         if (a_name == None)
43                 goto exit;
44
45         a_UTF8 = XInternAtom(d, "UTF8_STRING", False);
46         if (a_UTF8 == None)
47                 goto exit;
48
49         xtp.value = (unsigned char *)value;
50         xtp.format = 8;
51         xtp.encoding = a_UTF8;
52         xtp.nitems = strlen(value);
53
54         XSetTextProperty(d, DefaultRootWindow(d), &xtp, a_name);
55
56  exit:
57         XCloseDisplay(d);
58 }
59
60 void prop_int_set(const char *name, unsigned int val)
61 {
62         Display *d;
63         Atom a_name;
64
65         if (name == NULL)
66                 return;
67
68         d = XOpenDisplay(NULL);
69         if (d == NULL)
70                 return;
71
72         a_name = XInternAtom(d, name, False);
73         if (a_name == None)
74                 goto exit;
75
76         XChangeProperty(d, DefaultRootWindow(d), a_name, XA_CARDINAL, 32,
77                         PropModeReplace, (unsigned char *)&val, 1);
78
79  exit:
80         XCloseDisplay(d);
81 }
82