X-Git-Url: https://git.decadent.org.uk/gitweb/?a=blobdiff_plain;f=mod_tiling%2Ftiling.h;fp=mod_tiling%2Ftiling.h;h=31abe91527ef53d634ed6972eb08f3acb8eee918;hb=de22e45179cb3bafa490294d31d47f361047a30a;hp=7d9346973ced3460bc20cc23e851e1a15cfd2d65;hpb=803afbc1cd633f6c025bcd9537e9b7e9aedadd0d;p=ion3.git diff --git a/mod_tiling/tiling.h b/mod_tiling/tiling.h index 7d93469..31abe91 100644 --- a/mod_tiling/tiling.h +++ b/mod_tiling/tiling.h @@ -20,6 +20,7 @@ #include #include #include +#include #include "split.h" @@ -31,6 +32,7 @@ DECLCLASS(WTiling){ PtrList *managed_list; WRegionSimpleCreateFn *create_frame_fn; Window dummywin; + bool batchop; }; @@ -41,6 +43,8 @@ extern WTiling *create_tiling(WWindow *parent, const WFitParams *fp, extern WTiling *create_tiling_simple(WWindow *parent, const WFitParams *fp); extern void tiling_deinit(WTiling *ws); +extern bool tiling_do_attach_initial(WTiling *tiling, WRegion *reg); + extern ExtlTab tiling_resize_tree(WTiling *ws, WSplit *node, ExtlTab g); extern WRegion *tiling_current(WTiling *ws); @@ -51,7 +55,7 @@ extern WRegion *tiling_region_at(WTiling *ws, int x, int y); extern WFrame *tiling_split_top(WTiling *ws, const char *dirstr); extern WFrame *tiling_split_at(WTiling *ws, WFrame *frame, const char *dirstr, bool attach_current); -extern bool tiling_unsplit_at(WTiling *ws, WFrame *frame); +extern void tiling_unsplit_at(WTiling *ws, WRegion *reg); extern WSplitSplit *tiling_set_floating(WTiling *ws, WSplitSplit *split, int sp); @@ -85,12 +89,11 @@ extern void tiling_managed_rqgeom(WTiling *ws, WRegion *reg, WRectangle *geomret); extern void tiling_managed_remove(WTiling *ws, WRegion *reg); extern void tiling_managed_activated(WTiling *ws, WRegion *reg); -extern bool tiling_rescue_clientwins(WTiling *ws, WPHolder *ph); +extern bool tiling_rescue_clientwins(WTiling *ws, WRescueInfo *ph); extern WPHolder *tiling_get_rescue_pholder_for(WTiling *ws, WRegion *mgd); extern void tiling_do_set_focus(WTiling *ws, bool warp); extern bool tiling_managed_prepare_focus(WTiling *ws, WRegion *reg, int flags, WPrepareFocusResult *res); -extern bool tiling_managed_may_destroy(WTiling *ws, WRegion *reg); extern void tiling_manage_stdisp(WTiling *ws, WRegion *stdisp, const WMPlexSTDispInfo *di); extern void tiling_unmanage_stdisp(WTiling *ws, bool permanent, bool nofocus); @@ -123,5 +126,10 @@ typedef PtrListIterTmp WTilingIterTmp; #define FOR_ALL_MANAGED_BY_TILING_UNSAFE(VAR, WS) \ FOR_ALL_ON_PTRLIST_UNSAFE(WRegion*, VAR, (WS)->managed_list) +/* Misc. */ + +#define TILING_STDISP_OF(WS) \ + ((WS)->stdispnode!=NULL ? (WS)->stdispnode->regnode.reg : NULL) + #endif /* ION_MOD_TILING_TILING_H */