Files
contrib
debian
docs
i3-config-wizard
i3-dump-log
i3-input
i3-msg
i3-nagbar
i3bar
include
i3
all.h
assignments.h
atoms.xmacro
click.h
cmdparse.h
commands.h
commands_parser.h
con.h
config.h
config_directives.h
config_parser.h
data.h
debug.h
display_version.h
ewmh.h
fake_outputs.h
floating.h
handlers.h
i3.h
ipc.h
key_press.h
libi3.h
load_layout.h
log.h
manage.h
match.h
move.h
output.h
queue.h
randr.h
regex.h
render.h
resize.h
scratchpad.h
sd-daemon.h
shmlog.h
sighandler.h
startup.h
tree.h
util.h
window.h
workspace.h
x.h
xcb.h
xcb_compat.h
xcursor.h
xinerama.h
yajl_utils.h
libi3
man
parser-specs
src
testcases
tests
yajl-fallback
.gitignore
DEPENDS
LICENSE
Makefile
PACKAGE-MAINTAINER
RELEASE-NOTES-4.2
RELEASE-NOTES-4.3
RELEASE-NOTES-4.4
RELEASE-NOTES-4.5
RELEASE-NOTES-4.5.1
common.mk
generate-command-parser.pl
i3-dmenu-desktop
i3-migrate-config-to-v4
i3-sensible-editor
i3-sensible-pager
i3-sensible-terminal
i3.applications.desktop
i3.config
i3.config.keycodes
i3.xsession.desktop
logo.svg
pseudo-doc.doxygen
i3/include/manage.h
Michael Stapelberg d638e3029a don’t use reversed identifiers for include guards (Thanks Markus)
Done with:

    sed -in 's/\(ifndef\|define\) _\([0-9A-Z_]*\)$/\1 I3_\2/' include/**/*.h

fixes 
2012-09-21 15:36:25 +02:00

56 lines
1.5 KiB
C

/*
* vim:ts=4:sw=4:expandtab
*
* i3 - an improved dynamic tiling window manager
* © 2009-2011 Michael Stapelberg and contributors (see also: LICENSE)
*
* manage.c: Initially managing new windows (or existing ones on restart).
*
*/
#ifndef I3_MANAGE_H
#define I3_MANAGE_H
#include "data.h"
/**
* Go through all existing windows (if the window manager is restarted) and
* manage them
*
*/
void manage_existing_windows(xcb_window_t root);
/**
* Restores the geometry of each window by reparenting it to the root window
* at the position of its frame.
*
* This is to be called *only* before exiting/restarting i3 because of evil
* side-effects which are to be expected when continuing to run i3.
*
*/
void restore_geometry(void);
/**
* Do some sanity checks and then reparent the window.
*
*/
void manage_window(xcb_window_t window,
xcb_get_window_attributes_cookie_t cookie,
bool needs_to_be_mapped);
#if 0
/**
* reparent_window() gets called when a new window was opened and becomes a
* child of the root window, or it gets called by us when we manage the
* already existing windows at startup.
*
* Essentially, this is the point where we take over control.
*
*/
void reparent_window(xcb_connection_t *conn, xcb_window_t child,
xcb_visualid_t visual, xcb_window_t root, uint8_t depth,
int16_t x, int16_t y, uint16_t width, uint16_t height,
uint32_t border_width);
#endif
#endif