ohmu
·
2026-07-25
1/* See LICENSE file for copyright and license details. */
2
3#include <err.h>
4#include <stdio.h>
5#include <stdlib.h>
6#include <string.h>
7#include <xcb/xcb.h>
8
9#include "arg.h"
10#include "util.h"
11
12static xcb_connection_t *conn;
13
14static void usage(char *);
15static void set_title(xcb_connection_t *, xcb_window_t, char *);
16
17static void
18usage(char *name)
19{
20 fprintf(stderr, "usage: %s <name> <wid>\n", name);
21 exit(1);
22}
23
24void
25set_title(xcb_connection_t *con, xcb_window_t w, char *name)
26{
27 xcb_change_property(con, XCB_PROP_MODE_REPLACE, w, XCB_ATOM_WM_NAME,
28 XCB_ATOM_STRING, 8, strlen(name), name);
29 xcb_flush(con);
30}
31
32int
33main(int argc, char **argv)
34{
35 if (argc != 3)
36 usage(argv[0]);
37
38 init_xcb(&conn);
39
40 set_title(conn, strtoul(argv[2], NULL, 16), argv[1]);
41
42 kill_xcb(&conn);
43
44 return 0;
45}