src/xinerama.c File Reference

#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"
Include dependency graph for xinerama.c:

Go to the source code of this file.

Functions

static Outputget_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

Function Documentation

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().

Here is the call graph for this function:

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(), Rect::height, min(), xoutput::name, num_screens, outputs, xoutput::rect, scalloc(), TAILQ_INSERT_HEAD, TAILQ_INSERT_TAIL, Rect::width, Rect::x, and Rect::y.

Referenced by initialize_xinerama().

Here is the call graph for this function:


Variable Documentation

int num_screens [static]

Definition at line 30 of file xinerama.c.


Generated on 2 Jul 2010 for i3 by  doxygen 1.6.1