i3
|
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <xcb/xcb.h>
#include <xcb/xinerama.h>
#include "queue.h"
#include "data.h"
#include "util.h"
#include "xinerama.h"
#include "workspace.h"
#include "log.h"
#include "randr.h"
Go to the source code of this file.
Functions | |
static Output * | get_screen_at (int x, int y) |
static void | query_screens (xcb_connection_t *conn) |
void | initialize_xinerama (xcb_connection_t *conn) |
We have just established a connection to the X server and need the initial Xinerama information to setup workspaces for each screen. | |
Variables | |
static int | num_screens |
static Output* get_screen_at | ( | int | x, |
int | y | ||
) | [static] |
Definition at line 36 of file xinerama.c.
References outputs, xoutput::rect, TAILQ_FOREACH, Rect::x, and Rect::y.
Referenced by query_screens().
void initialize_xinerama | ( | xcb_connection_t * | conn | ) |
We have just established a connection to the X server and need the initial Xinerama information to setup workspaces for each screen.
Definition at line 104 of file xinerama.c.
References disable_randr(), DLOG, FREE, get_first_workspace_for_output(), initialize_output(), outputs, query_screens(), and TAILQ_FOREACH.
Referenced by main().
static void query_screens | ( | xcb_connection_t * | conn | ) | [static] |
Definition at line 50 of file xinerama.c.
References xoutput::active, DLOG, ELOG, get_screen_at(), height, Rect::height, min(), xoutput::name, num_screens, outputs, xoutput::rect, scalloc(), TAILQ_INSERT_HEAD, TAILQ_INSERT_TAIL, width, Rect::width, Rect::x, and Rect::y.
Referenced by initialize_xinerama().
int num_screens [static] |
Definition at line 30 of file xinerama.c.