summaryrefslogtreecommitdiff
path: root/app/cwm/client.c
diff options
context:
space:
mode:
Diffstat (limited to 'app/cwm/client.c')
-rw-r--r--app/cwm/client.c20
1 files changed, 19 insertions, 1 deletions
diff --git a/app/cwm/client.c b/app/cwm/client.c
index ff2df5c11..d52eab966 100644
--- a/app/cwm/client.c
+++ b/app/cwm/client.c
@@ -15,7 +15,7 @@
* ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
* OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*
- * $Id: client.c,v 1.80 2011/03/22 10:56:08 okan Exp $
+ * $Id: client.c,v 1.81 2011/05/07 17:15:37 okan Exp $
*/
#include <sys/param.h>
@@ -265,12 +265,24 @@ client_current(void)
}
void
+client_freeze(struct client_ctx *cc)
+{
+ if (cc->flags & CLIENT_FREEZE)
+ cc->flags &= ~CLIENT_FREEZE;
+ else
+ cc->flags |= CLIENT_FREEZE;
+}
+
+void
client_maximize(struct client_ctx *cc)
{
struct screen_ctx *sc = cc->sc;
int xmax = sc->xmax, ymax = sc->ymax;
int x_org = 0, y_org = 0;
+ if (cc->flags & CLIENT_FREEZE)
+ return;
+
if (cc->flags & CLIENT_MAXIMIZED) {
cc->geom = cc->savegeom;
} else {
@@ -310,6 +322,9 @@ client_vertmaximize(struct client_ctx *cc)
struct screen_ctx *sc = cc->sc;
int y_org = 0, ymax = sc->ymax;
+ if (cc->flags & CLIENT_FREEZE)
+ return;
+
if (cc->flags & CLIENT_VMAXIMIZED) {
cc->geom = cc->savegeom;
} else {
@@ -341,6 +356,9 @@ client_horizmaximize(struct client_ctx *cc)
struct screen_ctx *sc = cc->sc;
int x_org = 0, xmax = sc->xmax;
+ if (cc->flags & CLIENT_FREEZE)
+ return;
+
if (cc->flags & CLIENT_HMAXIMIZED) {
cc->geom = cc->savegeom;
} else {