aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authormarkt <markt>2007-02-10 23:12:54 (GMT)
committermarkt <markt>2007-02-10 23:12:54 (GMT)
commit62b233264d3808eff3138d51855ac9963e9c48a0 (patch)
treec9b993a042c14354f38b693e4b2b6c95aff0d897
parent48bd3f49bc629bfa9ba0441ca4514cddaf742d98 (diff)
downloadfluxbox-62b233264d3808eff3138d51855ac9963e9c48a0.zip
fluxbox-62b233264d3808eff3138d51855ac9963e9c48a0.tar.bz2
windows weren't getting set resizable when MaxSize and MinSize hints changed
-rw-r--r--ChangeLog3
-rw-r--r--src/Window.cc12
2 files changed, 8 insertions, 7 deletions
diff --git a/ChangeLog b/ChangeLog
index 6f31e5f..85cafb9 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,6 +1,9 @@
1 (Format: Year/Month/Day) 1 (Format: Year/Month/Day)
2Changes for 1.0rc3: 2Changes for 1.0rc3:
3*07/02/10: 3*07/02/10:
4 * MaxSize and MinSize hints weren't getting updated properly -- bug #1560803
5 (Mark + thanks Jim Ramsay)
6 Window.cc
4 * Fixed a bug with `session.ignoreBorder: true' (Mark) 7 * Fixed a bug with `session.ignoreBorder: true' (Mark)
5 Window.cc 8 Window.cc
6 * Fixed a bug with resizing windows for clients when only the width is 9 * Fixed a bug with resizing windows for clients when only the width is
diff --git a/src/Window.cc b/src/Window.cc
index c83acd7..1393c99 100644
--- a/src/Window.cc
+++ b/src/Window.cc
@@ -2485,12 +2485,10 @@ void FluxboxWindow::propertyNotifyEvent(WinClient &client, Atom atom) {
2485 bool changed = false; 2485 bool changed = false;
2486 client.updateWMNormalHints(); 2486 client.updateWMNormalHints();
2487 2487
2488 if ((client.normal_hint_flags & PMinSize) && 2488 if (client.min_width != old_min_width ||
2489 (client.normal_hint_flags & PMaxSize) && 2489 client.max_width != old_max_width ||
2490 (client.min_width != old_min_width || 2490 client.min_height != old_min_height ||
2491 client.max_width != old_max_width || 2491 client.max_height != old_max_height) {
2492 client.min_height != old_min_height ||
2493 client.max_height != old_max_height)) {
2494 if (client.max_width != 0 && client.max_width <= client.min_width && 2492 if (client.max_width != 0 && client.max_width <= client.min_width &&
2495 client.max_height != 0 && client.max_height <= client.min_height) { 2493 client.max_height != 0 && client.max_height <= client.min_height) {
2496 if (decorations.maximize || 2494 if (decorations.maximize ||
@@ -2504,7 +2502,7 @@ void FluxboxWindow::propertyNotifyEvent(WinClient &client, Atom atom) {
2504 functions.maximize=false; 2502 functions.maximize=false;
2505 } else { 2503 } else {
2506 // TODO: is broken while handled by FbW, needs to be in WinClient 2504 // TODO: is broken while handled by FbW, needs to be in WinClient
2507 if (! client.isTransient()) { 2505 if (!client.isTransient() || screen().decorateTransient()) {
2508 if (!decorations.maximize || 2506 if (!decorations.maximize ||
2509 !decorations.handle || 2507 !decorations.handle ||
2510 !functions.maximize) 2508 !functions.maximize)