diff options
author | fluxgen <fluxgen> | 2002-09-14 12:31:18 (GMT) |
---|---|---|
committer | fluxgen <fluxgen> | 2002-09-14 12:31:18 (GMT) |
commit | ae1200ddbfef409b506799584c0fe8f945300dc1 (patch) | |
tree | ae7469d4a82afb29f3be31ff3f04f1e4d3165270 | |
parent | 5512cac1b62e233a6edc9a7bd87d32deaeda9612 (diff) | |
download | fluxbox-ae1200ddbfef409b506799584c0fe8f945300dc1.zip fluxbox-ae1200ddbfef409b506799584c0fe8f945300dc1.tar.bz2 |
fixed WM_NORMAL_HINTS
-rw-r--r-- | src/Window.cc | 26 |
1 files changed, 17 insertions, 9 deletions
diff --git a/src/Window.cc b/src/Window.cc index 019ccb4..d60c907 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.86 2002/09/12 14:55:11 rathnor Exp $ | 25 | // $Id: Window.cc,v 1.87 2002/09/14 12:31:18 fluxgen Exp $ |
26 | 26 | ||
27 | #include "Window.hh" | 27 | #include "Window.hh" |
28 | 28 | ||
@@ -1488,7 +1488,7 @@ void FluxboxWindow::configure(int dx, int dy, | |||
1488 | event.xconfigure.above = frame.window; | 1488 | event.xconfigure.above = frame.window; |
1489 | event.xconfigure.override_redirect = false; | 1489 | event.xconfigure.override_redirect = false; |
1490 | 1490 | ||
1491 | XSendEvent(display, client.window, True, NoEventMask, &event); | 1491 | XSendEvent(display, client.window, False, StructureNotifyMask, &event); |
1492 | 1492 | ||
1493 | screen->updateNetizenConfigNotify(&event); | 1493 | screen->updateNetizenConfigNotify(&event); |
1494 | } | 1494 | } |
@@ -2677,16 +2677,24 @@ void FluxboxWindow::propertyNotifyEvent(Atom atom) { | |||
2677 | getWMNormalHints(); | 2677 | getWMNormalHints(); |
2678 | 2678 | ||
2679 | if ((client.normal_hint_flags & PMinSize) && | 2679 | if ((client.normal_hint_flags & PMinSize) && |
2680 | (client.normal_hint_flags & PMaxSize)) { | 2680 | (client.normal_hint_flags & PMaxSize)) { |
2681 | |||
2681 | if (client.max_width <= client.min_width && | 2682 | if (client.max_width <= client.min_width && |
2682 | client.max_height <= client.min_height) { | 2683 | client.max_height <= client.min_height) { |
2683 | decorations.maximize = decorations.handle = | 2684 | decorations.maximize = false; |
2684 | functions.resize = functions.maximize = false; | ||
2685 | } else { | ||
2686 | decorations.handle = false; | 2685 | decorations.handle = false; |
2687 | decorations.maximize = functions.resize = functions.maximize = true; | 2686 | functions.resize=false; |
2687 | functions.maximize=false; | ||
2688 | } else { | ||
2689 | if (! isTransient()) { | ||
2690 | decorations.maximize = true; | ||
2691 | decorations.handle = true; | ||
2692 | functions.maximize = true; | ||
2693 | } | ||
2694 | functions.resize = true; | ||
2688 | } | 2695 | } |
2689 | } | 2696 | |
2697 | } | ||
2690 | 2698 | ||
2691 | int x = frame.x, y = frame.y; | 2699 | int x = frame.x, y = frame.y; |
2692 | unsigned int w = frame.width, h = frame.height; | 2700 | unsigned int w = frame.width, h = frame.height; |