diff options
author | fluxgen <fluxgen> | 2004-01-18 19:14:08 (GMT) |
---|---|---|
committer | fluxgen <fluxgen> | 2004-01-18 19:14:08 (GMT) |
commit | eb078ab8cf97634bff08979c43d9a238fca2b501 (patch) | |
tree | 192481847e4f3ebc0ab803bfc4522636e0122227 /src/Window.cc | |
parent | dba6249a1c66a8ef78266d9bbbf83c5ae8048813 (diff) | |
download | fluxbox-eb078ab8cf97634bff08979c43d9a238fca2b501.zip fluxbox-eb078ab8cf97634bff08979c43d9a238fca2b501.tar.bz2 |
support for _NET_WM_STATE_HIDDEN and _NET_WM_STATE_SKIP_TASKBAR
Diffstat (limited to 'src/Window.cc')
-rw-r--r-- | src/Window.cc | 30 |
1 files changed, 16 insertions, 14 deletions
diff --git a/src/Window.cc b/src/Window.cc index 8a3bb31..9575e2a 100644 --- a/src/Window.cc +++ b/src/Window.cc | |||
@@ -22,7 +22,7 @@ | |||
22 | // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER | 22 | // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER |
23 | // DEALINGS IN THE SOFTWARE. | 23 | // DEALINGS IN THE SOFTWARE. |
24 | 24 | ||
25 | // $Id: Window.cc,v 1.262 2004/01/17 00:49:20 fluxgen Exp $ | 25 | // $Id: Window.cc,v 1.263 2004/01/18 19:14:08 fluxgen Exp $ |
26 | 26 | ||
27 | #include "Window.hh" | 27 | #include "Window.hh" |
28 | 28 | ||
@@ -1684,6 +1684,12 @@ void FluxboxWindow::moveToLayer(int layernum) { | |||
1684 | } | 1684 | } |
1685 | } | 1685 | } |
1686 | 1686 | ||
1687 | void FluxboxWindow::setHidden(bool value) { | ||
1688 | if(value) | ||
1689 | m_blackbox_attrib.flags |= ATTRIB_HIDDEN; | ||
1690 | else | ||
1691 | m_blackbox_attrib.flags ^= ATTRIB_HIDDEN; | ||
1692 | } | ||
1687 | 1693 | ||
1688 | // window has actually RECEIVED focus (got a FocusIn event) | 1694 | // window has actually RECEIVED focus (got a FocusIn event) |
1689 | // so now we make it a focused frame etc | 1695 | // so now we make it a focused frame etc |
@@ -2911,19 +2917,15 @@ void FluxboxWindow::doSnapping(int &orig_left, int &orig_top) { | |||
2911 | ///////////////////////////////////// | 2917 | ///////////////////////////////////// |
2912 | // begin by checking the screen (or Xinerama head) edges | 2918 | // begin by checking the screen (or Xinerama head) edges |
2913 | 2919 | ||
2914 | if (screen().hasXinerama()) { | 2920 | // head "0" == whole screen width + height, which we skip since the |
2915 | // head "0" == whole screen width + height, which we skip since the | 2921 | // sum of all the heads covers those edges |
2916 | // sum of all the heads covers those edges | 2922 | for (int h = 1; h <= screen().numHeads(); h++) { |
2917 | for (int h = 1; h <= screen().numHeads(); h++) { | 2923 | snapToWindow(dx, dy, left, right, top, bottom, |
2918 | snapToWindow(dx, dy, left, right, top, bottom, | 2924 | screen().maxLeft(h), |
2919 | screen().maxLeft(h), | 2925 | screen().maxRight(h), |
2920 | screen().maxRight(h), | 2926 | screen().maxTop(h), |
2921 | screen().maxTop(h), | 2927 | screen().maxBottom(h)); |
2922 | screen().maxBottom(h)); | 2928 | } |
2923 | } | ||
2924 | } else | ||
2925 | snapToWindow(dx, dy, left, right, top, bottom, 0, screen().width(), 0, screen().height()); | ||
2926 | |||
2927 | ///////////////////////////////////// | 2929 | ///////////////////////////////////// |
2928 | // now check window edges | 2930 | // now check window edges |
2929 | 2931 | ||