Add NEWS bug entry for previous FvwmForm commit.
[fvwm.git] / fvwm / stack.h
blobb82b2732cc3e2d95344eaf3f2f363adf1abecdbe
1 /* -*-c-*- */
3 #ifndef _STACK_H
4 #define _STACK_H
6 #define DEBUG_STACK_RING 1
7 #ifdef DEBUG_STACK_RING
8 void verify_stack_ring_consistency(void);
9 #endif
10 void remove_window_from_stack_ring(FvwmWindow *t);
11 void add_window_to_stack_ring_after(FvwmWindow *t, FvwmWindow *add_after_win);
12 FvwmWindow *get_next_window_in_stack_ring(const FvwmWindow *t);
13 FvwmWindow *get_prev_window_in_stack_ring(const FvwmWindow *t);
14 FvwmWindow *get_transientfor_fvwmwindow(const FvwmWindow *t);
15 Bool position_new_window_in_stack_ring(FvwmWindow *t, Bool do_lower);
16 void RaiseWindow(FvwmWindow *t, Bool is_client_request);
17 void LowerWindow(FvwmWindow *t, Bool is_client_request);
18 Bool HandleUnusualStackmodes(
19 unsigned int stack_mode, FvwmWindow *r, Window rw, FvwmWindow *sib,
20 Window sibw);
21 void BroadcastRestackAllWindows(void);
22 void BroadcastRestackThisWindow(FvwmWindow *t);
24 int compare_window_layers(FvwmWindow *t, FvwmWindow *s);
25 void set_default_layer(FvwmWindow *t, int layer);
26 void set_layer(FvwmWindow *t, int layer);
27 int get_layer(FvwmWindow *t);
28 void new_layer(FvwmWindow *t, int layer);
30 void init_stack_and_layers(void);
31 Bool is_on_top_of_layer(FvwmWindow *t);
32 Bool is_on_top_of_layer_and_above_unmanaged(FvwmWindow *t);
34 /* This function recursively finds the transients of the window t and sets
35 * their is_in_transient_subtree flag. If a layer is given, only windows in
36 * this layer are checked. If the layer is < 0, all windows are considered. */
37 #define MARK_RAISE 0
38 #define MARK_LOWER 1
39 #define MARK_RESTACK 2
40 #define MARK_ALL 3
41 #define MARK_ALL_LAYERS -1
42 void mark_transient_subtree(
43 FvwmWindow *t, int layer, int mark_mode, Bool do_ignore_icons,
44 Bool use_window_group_hint);
47 #endif /* _STACK_H */