[hackers] [wmii] Uncollapse clients when setting them fullscreen.

From: Kris Maglione <jg_AT_suckless.org>
Date: Mon Jan 21 00:31:17 2008

changeset: 2244:738d2c808f75
tag: tip
user: Kris Maglione <jg_AT_suckless.org>
date: Sun Jan 20 18:29:04 2008 -0500
summary: Uncollapse clients when setting them fullscreen.

diff -r 4ebe92ddd2d0 -r 738d2c808f75 TODO
--- a/TODO Sun Jan 20 18:00:21 2008 -0500
+++ b/TODO Sun Jan 20 18:29:04 2008 -0500
@@ -1,29 +1,13 @@ BUGS
 BUGS
-* 'Fullscreen' menu option broken for menus in non-focused titlebars (stackmode).
 * collapsed clients outside stacked mode don't always uncollapse when they receive focus
 * resizing within a column affects clients it shouldn't (seems to average client size?)
 * geometry goes wacky with lots of clients in one column
-* floating clients have a tendency to move after being retagged
-* creating new columns via mouse drag doesn't work anymore
-*
 * various qiv brokenness
-* firefox full screen only works sometimes (and coming back from fs is broken)
 * dosbox won't grab the mouse
 
-3.6
-[bugfix only]
+4.0
+* Regex-based tag strings
+* Resizable managed area
+* Grow and shrink ctl commands
+* New dmenu, with real cursor.
 
-4.0
-* Working grab boxes
-* Grow(and shrink?) ctl commands
-* Switch to mk for building
-* Use libbio, libfmt, libregex9
-* New dmenu(with real cursor and using Bio)? (use 9menu instead?)
-* Depend on p9p and replace script mess with a single set using p9p commands
-
-4.1
-* Resizable managed area
-* bring back col creation with the mouse
-* (Multi line) Tag bars
-* Regex-based tag strings
-* Get rid of colmodes? (they suck, but sort of work and we need max mode anyway)
diff -r 4ebe92ddd2d0 -r 738d2c808f75 cmd/wmii/frame.c
--- a/cmd/wmii/frame.c Sun Jan 20 18:00:21 2008 -0500
+++ b/cmd/wmii/frame.c Sun Jan 20 18:29:04 2008 -0500
@@ -225,6 +225,7 @@ Handlers framehandler = {
         .motion = motion_event,
 };
 
+/* These must die!!! */
 Rectangle
 frame_rect2client(Frame *f, Rectangle r) {
         if(f == nil || f->area == nil || f->area->floating) {
@@ -278,6 +279,8 @@ frame_resize(Frame *f, Rectangle r) {
         stickycorner = get_sticky(f->r, r);
 
         f->crect = frame_hints(f, r, stickycorner);
+ if(c->fullscreen)
+ f->crect = screen->r;
 
         if(Dx(r) <= 0 || Dy(r) <= 0)
                 fprint(2, "Badness: Frame rect: %R\n", r);
@@ -305,7 +308,7 @@ frame_resize(Frame *f, Rectangle r) {
         }
 
         if(f->collapsed) {
- f->r.max.y= f->r.min.y + labelh(def.font);
+ f->r.max.y = f->r.min.y + labelh(def.font);
                 f->crect = f->r;
         }
 
diff -r 4ebe92ddd2d0 -r 738d2c808f75 cmd/wmii/view.c
--- a/cmd/wmii/view.c Sun Jan 20 18:00:21 2008 -0500
+++ b/cmd/wmii/view.c Sun Jan 20 18:29:04 2008 -0500
@@ -139,6 +139,7 @@ view_focus(WMScreen *s, View *v) {
         for(a=v->area; a; a=a->next)
                 for(f=a->frame; f; f=f->anext)
                         if(f->client->fullscreen) {
+ f->collapsed = false;
                                 fscrn = true;
                                 if(!f->area->floating) {
                                         f->oldr = f->revert;
Received on Mon Jan 21 2008 - 00:31:17 UTC

This archive was generated by hypermail 2.2.0 : Sun Jul 13 2008 - 15:59:02 UTC