Re: can sawfish auto-resize windows, when I am dragging them with a mouse?

Mogei Wang <[email protected]>
Newsgroups gmane.comp.window-managers.sawfish
Message-ID <CANehw_=b3c1=40ZfejLRSR-gg_N84QWWGihZcdtv=eKrCD3bww@mail.gmail.com>
Thank you, Robert. Finally, I have the sawfish 1.9.1 installed, mainly
followed your instructions.

However, the "expand-window" does not work properly on my machine.
So, I added the following lines to the ~/.sawfish/rc (attached below).

Thank the list for the warmly help.

Sincerely, M.W.


;; Timers
( defvar-setq edge-flip-delay 250 )
( defvar-setq hot-spot-delay 125 )

;; Activate screen edges
( activate-edges t )

;; mwEnhanced-NoMouse  --- move and resize
;; the panel is put on the left with width 62
;; It is a hard-coding. Maybe there are better ways.

(defun rsk-grid-resize-place-window (grid win)
  "resize the window, and move it to the grid position specified by
the numeric keypad"
  (let* ( (x 0) (y 0) (a (/ (screen-width) 2)) (b (/ (screen-height) 2)) )
   (cond
    ((or (eq grid 1) (eq grid 2) (eq grid 4) (eq grid 7) (eq grid 8))
(setq x 64))
    ((or (eq grid 3) (eq grid 6) (eq grid 9)) (setq x (+ (/
(screen-width) 2) 64) ))
    ((or (eq grid 5)) (setq x (+ (/ (screen-width) 4) 64) )))
   (cond
    ((or (eq grid 4) (eq grid 6) (eq grid 7) (eq grid 8) (eq grid 9))
(setq y 0))
    ((or (eq grid 1) (eq grid 2) (eq grid 3)) (setq y (- (/
(screen-height) 2) 5) ))
    ((or (eq grid 5)) (setq y (/ (screen-height) 4))))
   (cond
    ((or (eq grid 2) (eq grid 8)) (setq a (- (screen-width) 62)))
    ( t (setq a (/ (- (screen-width) 62) 2))))
   (cond
    ((or (eq grid 4) (eq grid 6)) (setq b (- (screen-height) 15) ))
    ( t (setq b (/ (screen-height) 2))))

    ;; the following is necessary because "/" function can result in
fractional numbers
    (setq x (truncate x)) (setq y (truncate y)) (setq a (truncate a))
(setq b (truncate b))
    (move-resize-window-to win x y a b) ;; (display-window win)
    ))


;; HotMove
(defvar-setq bottom-edge-move-function
  (lambda () (let ((win (current-event-window)))
(rsk-grid-resize-place-window 2 win) (release-windows #:center win))))

(defvar-setq left-edge-move-function
  (lambda () (let ((win (current-event-window)))
(rsk-grid-resize-place-window 4 win) (release-windows #:center win))))

(defvar-setq right-edge-move-function
  (lambda () (let ((win (current-event-window)))
(rsk-grid-resize-place-window 6 win) (release-windows #:center win))))

(defvar-setq top-edge-move-function
  (lambda () (let ((win (current-event-window)))
(rsk-grid-resize-place-window 8 win) (release-windows #:center win))))





On Sat, Oct 13, 2012 at 3:42 AM, Robert 'Bobby' Zenz
<[email protected]> wrote:
> Here are the steps I use to compile it under Ubuntu 12.04:
>
> librep
> ------
>
> export CONFIG_SHELL="/bin/bash"
> autoreconf -f
> ./configure
> make
> sudo make install
>
> # This might be totally optional, but stumbled upon it.
> sudo ln /usr/lib/librep.so.9 /usr/lib/librep.so.16
>
>
> rep-gtk
> -------
>
> autoreconf -f
> ./configure
> make
> sudo make install
>
>
> sawfish
> -------
>
> autoreconf -f
> ./configure
> make
> sudo make install
>
>
> Execute in this order and it should work. If there are missing dependencies,
> just install them via apt-get.
>
> On Sat, Oct 13, 2012 at 01:17:33AM +0800, Mogei Wang wrote:
>> Thank you, Chris, thank you for minding me. I am glad to see that, the
>> great sawfish wm is under very active development. I have used 5
>> independent wms: afterstep (long time ago), xmonad, openbox, i3-wm and
>> sawfish (very recently). Undoubtedly, sawfish is the best one.
>>
>> However, such a great window manager as sawfish occupies only a little
>> market [see, e.g., 1]. I feel that, it 's kind of waste of resources.
>> I hope you can agree that, it would be a good thing to do some
>> marketing to attract more users.
>>
>> I took some time to install the last version this afternoon, but
>> failed. I have tried some different ways.
>> (1) Google finds no ppa for my Lubuntu 12.04. The latest ppa I have
>> found is [2], which is for ubuntu 10.10.
>> (2) The 3rd party precompiled packages was not for my 32bit system [3].
>> (3) Convert fedora rpm to deb, and then install it. However, the
>> librep in my system seems too old, as a result, sawfish cannot launch.
>> (4) Compiling from git, but the dependence is rather complex. I am not
>> an experienced user there and cannot make librep installed, although I
>> have managed to resolve the dependence.
>> (5) Compiling from source also failed. It seems this was the best way,
>> which may success if I have tried it before making the dependence
>> improper.
>> Last, I chose to give up, and roll back to the old version.
>>
>> Previously, I have noticed the i3wm maintains its updates in an
>> elegant way [4]. It was said that, rest assured that sur5r will update
>> i3wm automatically. I am not familiar with the packaging techniques.
>> Still, I hope sawfish can learn from it. In my opinion, such
>> maintenance technique is one of the most important aspects of the
>> marketing.
>>
>> [1] http://qa.debian.org/popcon-graph.php?packages=xmonad%2C+i3-wm%2C+afterstep%2C+sawfish%2C+openbox&show_installed=on&want_legend=on&want_ticks=on&from_date=&to_date=&hlght_date=&date_fmt=%25Y-%25m&beenhere=1
>>
>> [2] https://launchpad.net/~mmaruska/+archive/sawfish
>>
>> [3]deb http://apt.nanolx.org/ photonic main
>> deb-src http://apt.nanolx.org/ photonic main
>>
>> [4] http://i3wm.org/docs/repositories.html
>>
>> With best regards,
>> M.W.
>
> --
> Sawfish ML
>

-- 
Sawfish ML
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.