* …).
*
*/
-#ifndef I3_CON_H
-#define I3_CON_H
+#pragma once
/**
* Create a new container (and attach it to the given parent, if not NULL).
*/
Con *con_new_skeleton(Con *parent, i3Window *window);
-
/* A wrapper for con_new_skeleton, to retain the old con_new behaviour
*
*/
*/
bool con_is_leaf(Con *con);
+/**
+ * Returns true when this con is a leaf node with a managed X11 window (e.g.,
+ * excluding dock containers)
+ */
+bool con_has_managed_window(Con *con);
+
/*
* Returns true if a container should be considered split.
*
* Returns the first fullscreen node below this node.
*
*/
-Con *con_get_fullscreen_con(Con *con, int fullscreen_mode);
+Con *con_get_fullscreen_con(Con *con, fullscreen_mode_t fullscreen_mode);
/**
* Returns true if the container is internal, such as __i3_scratch
*/
void con_toggle_fullscreen(Con *con, int fullscreen_mode);
+/**
+ * Enables fullscreen mode for the given container, if necessary.
+ *
+ */
+void con_enable_fullscreen(Con *con, fullscreen_mode_t fullscreen_mode);
+
+/**
+ * Disables fullscreen mode for the given container, if necessary.
+ *
+ */
+void con_disable_fullscreen(Con *con);
+
/**
* Moves the given container to the currently focused container on the given
* workspace.
* container).
*
*/
-int con_orientation(Con *con);
+orientation_t con_orientation(Con *con);
/**
* Returns the container which will be focused next when the given container
*/
char *con_get_tree_representation(Con *con);
-#endif
+/**
+ * force parent split containers to be redrawn
+ *
+ */
+void con_force_split_parents_redraw(Con *con);