Hi, On Sat, 18 Dec 2010 15:19:04 +0900 (JST) wrote Teika Kazura <teika lavabit com>: >On Fri, 17 Dec 2010 21:22:16 +0100, Christopher Roy Bratusek wrote: >> Well from the point of "known bug" no one could ever release anything ;) >It doesn't hold for a regression, does it? (Yeah, Sawfish does have many >bugs. ;) > >> Personally I feel fine releasing it as RC > >Then you can use this: >This RC has a following bug which will be fixed in the 1.8.0 release. >* When you toggle stickiness of a window, *all* windows in the same > group become (un)sticky, too. For example, all emacs windows belong > to the same group. You can fix it with the following patch: >------------------------------------------------------------------------ >--- tabgroup.jl~ 2010-11-24 22:00:18.958618837 +0900 >+++ tabgroup.jl 2010-11-24 22:01:10.974628637 +0900 >@@ -279,10 +279,7 @@ > (lambda (w) (eq w win)) > (tab-group-window-list (tab-find-window win)))) ) > >- (define (tab-group-sticky w) >- (if (and nil (window-get w 'sticky)) >- (make-group-sticky w) >- (make-group-unsticky w))) >+ (define (tab-group-sticky w)) > > (unless batch-mode > (add-hook 'window-state-change-hook >--- tabgroup.jl~ 2010-11-24 22:00:18.958618837 +0900 >+++ tabgroup.jl 2010-11-24 22:01:10.974628637 +0900 >@@ -279,10 +279,7 @@ > (lambda (w) (eq w win)) > (tab-group-window-list (tab-find-window win)))) ) > >- (define (tab-group-sticky w) >- (if (and nil (window-get w 'sticky)) >- (make-group-sticky w) >- (make-group-unsticky w))) >+ (define (tab-group-sticky w)) > > (unless batch-mode > (add-hook 'window-state-change-hook >------------------------------------------------------------------------ > >Regards, >Teika (Teika kazura) > Teika can you try the appended patch? Thanks -- Regards, Fuchur GPG Fingerprint: CA3B 8204 5B3E 6D48 6D53 C116 E5BC 70D5 B8D7 B2B0
diff -urNad sawfish-git-9999.org/lisp/sawfish/wm/tabs/tabgroup.jl sawfish-git-9999/lisp/sawfish/wm/tabs/tabgroup.jl --- sawfish-git-9999.org/lisp/sawfish/wm/tabs/tabgroup.jl 2010-12-18 08:31:57.000000000 +0100 +++ sawfish-git-9999/lisp/sawfish/wm/tabs/tabgroup.jl 2010-12-18 08:34:17.000000000 +0100 @@ -190,6 +190,14 @@ (mapcar (lambda (w) (uniconify-window w) (rebuild-frame w)) wins)) + ((eq prop 'sticky) + (mapcar (lambda (w) + (make-window-sticky w) + (rebuild-frame w)) wins)) + ((eq prop 'unsticky) + (mapcar (lambda (w) + (make-window-unsticky w) + (rebuild-frame w)) wins)) ((eq prop 'shade) (mapcar (lambda (w) (shade-window w) @@ -279,17 +287,16 @@ (lambda (w) (eq w win)) (tab-group-window-list (tab-find-window win)))) ) - (define (tab-group-sticky w) - (if (window-get w 'sticky) - (make-group-sticky w) - (make-group-unsticky w))) + (define (tab-group-sticky win) + (if (window-get win 'sticky) + (tab-refresh-group win 'sticky) + (tab-refresh-group win 'unsticky))) (unless batch-mode (add-hook 'window-state-change-hook (lambda (win args) - (when (= '(sticky) args) - (tab-group-sticky win) - (tab-refresh-group win 'frame)))) + (if (= '(sticky) args) + (tab-group-sticky win)))) (add-hook 'window-state-change-hook (lambda (win args) (if (= '(fixed-position) args)
Attachment:
signature.asc
Description: PGP signature