Re: [IMPORTANT] EdgeActions ready (+ setup guide)



> EdgeActions is now considered stable and ready for testing (and merge into
> master, once verified by other people than just me).
>
> Q: What is EdgeActions (EA)?
> A: The union of EdgeFlip, HotSpots and ViewportDrag (ex InfiniteDesktop)
>
> Q: How to test?
> A: git branch test # create new branch "test" from master
>     git checkout test # switch to it
>     git merge edge-actions # ... you need to resolve the conflicts (sorry)
>     go installing and testing
>
> Q: How to set it up?
> A: Everything except the hot-spots actions can be setup via SawfishConfig.
>
> Also all 4 edges are now separated, that means you decide which edges have
> an
> action and which action they perform! (yay for »yet-another-configuration-
> option« ™)
>
> Actions for when hitting the edge with the pointer and when hitting while
> moving a window are now SPLIT. So you can have separated behavior or the
> same
> for both cases, just as you like.
>
> The 4 corner are preserved to HotSpots. By default the corners are 50 px in
> both x and y direction along the edge from each corner, it's adjustable.
>
> Besides ViewportDrag now also works while moving a window.
>
> (We do now have much more flexibility with noticably less and easier-to-read
> code. You'll be thrilled once you got used to it.)
>
> Next follows my example configuration:
>
> ;; fancy customized edge-actions
> ( require 'sawfish.wm.edge.actions )
>
> ( defvar-setq edge-actions-enabled t )
> ( defvar-setq edge-actions-delay 250 )
>
> ( edges-activate )
>
> ;; NOTE the lambda!
> ;; NOTE the syntax-change in jump-or-exec!
> ( defvar-setq top-left-corner-program
>   ( lambda () ( jump-or-exec "Iceweasel" "iceweasel" #:match-class t ) ) )
>
> ( defvar-setq top-right-corner-program
>   ( lambda () ( pager-unhide ) ) )
>
> ( defvar-setq  bottom-right-corner-program
>   ( lambda () ( system "amarok &" ) ) )
>
> ( defvar-setq bottom-left-corner-program
>   ( lambda () ( jump-or-exec "VirtualBox" "VirtualBox" #:match-class t ) ) )
>
> ( defvar-setq top-edge-program
>   ( lambda () ( jump-or-exec "Konsole" "konsole" #:match-class t ) ) )
>
> ( defvar-setq bottom-edge-program
>   ( lambda () ( delete-window ( input-focus ) ) ) )
>
> ;; actions when pointer hits edge
> ( defvar-setq left-edge-func 'flip-viewport )
> ( defvar-setq right-edge-func 'flip-viewport )
> ( defvar-setq bottom-edge-func 'none )
> ( defvar-setq top-edge-func 'hot-spot )
>
> ;; actions while moving window hits edge
> ( defvar-setq left-edge-move-func 'flip-workspace )
> ( defvar-setq right-edge-move-func 'flip-workspace )
> ( defvar-setq bottom-edge-move-func 'hot-spot )
> ( defvar-setq top-edge-move-func 'none )
>
> That's it.
>
> Happy testing,
> Chris

Chris, this sounds really cool!
Thanks for your hard work.

Cheers,
Daniel


-- 
Psss, psss, put it down! - http://www.cafepress.com/putitdown


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]