diff options
author | rathnor <rathnor> | 2004-06-20 04:49:33 (GMT) |
---|---|---|
committer | rathnor <rathnor> | 2004-06-20 04:49:33 (GMT) |
commit | 9b7775751decd095f091d122c1ce057c6a04b64d (patch) | |
tree | d3b93265dced9c0142dc58bb9be45665cf27d132 /src/Window.cc | |
parent | 4589ecdbbc719cc49f10cef4a9460d89b6a8fba7 (diff) | |
download | fluxbox-9b7775751decd095f091d122c1ce057c6a04b64d.zip fluxbox-9b7775751decd095f091d122c1ce057c6a04b64d.tar.bz2 |
support _NET_WM_WINDOW_TYPE_DESKTOP (e.g. nautilus desktop windows)
Allow FluxboxWindows to be untabable.
Diffstat (limited to 'src/Window.cc')
-rw-r--r-- | src/Window.cc | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/src/Window.cc b/src/Window.cc index 553c863..b36ade7 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.290 2004/06/19 15:04:27 rathnor Exp $ | 25 | // $Id: Window.cc,v 1.291 2004/06/20 04:49:32 rathnor Exp $ |
26 | 26 | ||
27 | #include "Window.hh" | 27 | #include "Window.hh" |
28 | 28 | ||
@@ -432,7 +432,7 @@ void FluxboxWindow::init() { | |||
432 | decorations.sticky = decorations.shade = decorations.tab = true; | 432 | decorations.sticky = decorations.shade = decorations.tab = true; |
433 | 433 | ||
434 | 434 | ||
435 | functions.resize = functions.move = functions.iconify = functions.maximize = true; | 435 | functions.resize = functions.move = functions.iconify = functions.maximize = functions.tabable = true; |
436 | decorations.close = false; | 436 | decorations.close = false; |
437 | 437 | ||
438 | if (m_client->getBlackboxHint() != 0) | 438 | if (m_client->getBlackboxHint() != 0) |
@@ -1049,7 +1049,9 @@ void FluxboxWindow::updateMWMHintsFromClient(WinClient &client) { | |||
1049 | decorations.maximize = true; | 1049 | decorations.maximize = true; |
1050 | } | 1050 | } |
1051 | } | 1051 | } |
1052 | 1052 | ||
1053 | // functions.tabable is ours, not special one | ||
1054 | // note that it means this window is "tabbable" | ||
1053 | if (hint->flags & MwmHintsFunctions) { | 1055 | if (hint->flags & MwmHintsFunctions) { |
1054 | if (hint->functions & MwmFuncAll) { | 1056 | if (hint->functions & MwmFuncAll) { |
1055 | functions.resize = functions.move = functions.iconify = | 1057 | functions.resize = functions.move = functions.iconify = |
@@ -2532,7 +2534,8 @@ void FluxboxWindow::motionNotifyEvent(XMotionEvent &me) { | |||
2532 | 2534 | ||
2533 | screen().showGeometry(gx, gy); | 2535 | screen().showGeometry(gx, gy); |
2534 | } | 2536 | } |
2535 | } else if ((me.state & Button2Mask) && inside_titlebar && (client != 0 || m_attaching_tab != 0)) { | 2537 | } else if (functions.tabable && |
2538 | (me.state & Button2Mask) && inside_titlebar && (client != 0 || m_attaching_tab != 0)) { | ||
2536 | // | 2539 | // |
2537 | // drag'n'drop code for tabs | 2540 | // drag'n'drop code for tabs |
2538 | // | 2541 | // |
@@ -3084,7 +3087,7 @@ void FluxboxWindow::attachTo(int x, int y, bool interrupted) { | |||
3084 | } | 3087 | } |
3085 | } | 3088 | } |
3086 | if (attach_to_win != this && | 3089 | if (attach_to_win != this && |
3087 | attach_to_win != 0) { | 3090 | attach_to_win != 0 && attach_to_win->isTabable()) { |
3088 | 3091 | ||
3089 | attach_to_win->attachClient(*m_attaching_tab); | 3092 | attach_to_win->attachClient(*m_attaching_tab); |
3090 | 3093 | ||