kranewm

An ICCCM & EWMH compliant X11 reparenting, dynamic window manager, written in C++
git clone git://git.deurzen.net/kranewm
Log | Files | Refs | LICENSE

hints.hh (982B)


      1 #ifndef __WINSYS_HINTS_H_GUARD__
      2 #define __WINSYS_HINTS_H_GUARD__
      3 
      4 #include "geometry.hh"
      5 #include "window.hh"
      6 
      7 #include <optional>
      8 
      9 namespace winsys
     10 {
     11 
     12     struct SizeHints final
     13     {
     14         bool by_user;
     15         std::optional<Pos> pos;
     16         std::optional<int> min_width;
     17         std::optional<int> min_height;
     18         std::optional<int> max_width;
     19         std::optional<int> max_height;
     20         std::optional<int> base_width;
     21         std::optional<int> base_height;
     22         std::optional<int> inc_width;
     23         std::optional<int> inc_height;
     24         std::optional<double> min_ratio;
     25         std::optional<double> max_ratio;
     26         std::optional<Ratio> min_ratio_vulgar;
     27         std::optional<Ratio> max_ratio_vulgar;
     28 
     29         void apply(Dim&);
     30     };
     31 
     32     struct Hints final
     33     {
     34         bool urgent;
     35         std::optional<bool> input;
     36         std::optional<IcccmWindowState> initial_state;
     37         std::optional<Window> group;
     38     };
     39 
     40 }
     41 
     42 #endif//__WINSYS_HINTS_H_GUARD__