Fixed a bug that crashed wmii when clicking the bar and added resize/move modes to float mode

This commit is contained in:
salva 2006-02-11 21:36:25 +00:00
parent 30728dd3aa
commit 6c1ce74e9a
2 changed files with 127 additions and 53 deletions

View File

@ -84,6 +84,11 @@ handle_buttonpress(XEvent *e)
else
mouse_resize(c, align);
}
if(c && c->area) {
snprintf(buf, sizeof(buf), "CB %d %d\n", client_to_index(c) + 1, ev->button);
do_pend_fcall(buf);
}
}
else if((c = win_to_client(ev->window))) {
ev->state &= valid_mask;
@ -106,11 +111,13 @@ handle_buttonpress(XEvent *e)
}
else if(ev->button == Button1)
focus_client(c);
if(c && c->area) {
snprintf(buf, sizeof(buf), "CB %d %d\n", client_to_index(c) + 1, ev->button);
do_pend_fcall(buf);
}
}
if(c && c->area) {
snprintf(buf, sizeof(buf), "CB %d %d\n", client_to_index(c) + 1, ev->button);
do_pend_fcall(buf);
}
}
static void

165
rc/wmiirc
View File

@ -45,11 +45,18 @@ for(page in `{wmiir read / | grep '^d' | awk '{print $10}' | grep -v new}) {
# KEYS CONFIGURATION
for(i in \
Escape \
$MODKEY-h \
$MODKEY-j \
$MODKEY-k \
$MODKEY-l \
$MODKEY-Control-q,y \
$MODKEY-Control-w,y \
$MODKEY-Control-c \
$MODKEY-Control-p \
$MODKEY-Control-a \
$MODKEY-Control-r \
$MODKEY-Control-m \
$MODKEY-t \
$MODKEY-d \
$MODKEY-a \
@ -65,11 +72,13 @@ for(i in \
$MODKEY-j \
$MODKEY-k \
$MODKEY-Shift-h \
$MODKEY-Shift-j \
$MODKEY-Shift-k \
$MODKEY-Shift-l \
$MODKEY-Shift-p)
xwrite /ctl 'grab '^$i
for(i in 1 2 3 4 5 6 7 8 9)
for(i in `{seq 1 9})
xwrite /ctl 'grab '^$MODKEY^'-Shift-'^$i
@ -104,6 +113,8 @@ xsetroot -solid '#1a1c10'
status &
# EVENT LOOP
kmode='normal'
barh=16 #`{wmiir read /bar/geometry|awk '{print $4}'}
wmiir read /event | \
while(event=`{read}) {
if(~ $event(1) PN)
@ -130,53 +141,109 @@ while(event=`{read}) {
}
}
if(~ $event(1) K) { # key press
switch($event(2)) {
case $MODKEY-Control-c
xwrite /sel/sel/sel/ctl kill
case $MODKEY-Control-w,y
wmiirc &
case $MODKEY-Control-q,y
xwrite /ctl quit
case $MODKEY-Control-p
extern `{cat /tmp/ns.$USER.$DISPLAY/p.menu | wmiimenu} &
case $MODKEY-Control-a
`{items CONFPREFIX/wmii-3:$HOME/.wmii-3 | wmiimenu} &
case $MODKEY-t
extern xterm -rv &
case $MODKEY-d
xwrite /sel/sel/sel/ctl detach
case $MODKEY-a
xwrite /ctl attach
case $MODKEY-Shift-a
xwrite /ctl detached
case $MODKEY-n
wmiir read /sel/new >/dev/null >[2=1]
case $MODKEY-m
xwrite /sel/sel/sel/ctl max
case $MODKEY-Return
xwrite /sel/sel/ctl 'swap east'
case $MODKEY-Shift-Return
xwrite /sel/sel/ctl 'swap west'
case $MODKEY-Control-y
wmiir read /new >/dev/null >[2=1]
case $MODKEY-h
xwrite /sel/ctl 'select next'
case $MODKEY-l
xwrite /sel/ctl 'select prev'
case $MODKEY-Tab
xwrite /sel/sel/ctl 'select next'
case $MODKEY-j
xwrite /sel/sel/ctl 'select next'
case $MODKEY-k
xwrite /sel/sel/ctl 'select prev'
case $MODKEY-Shift-h
xwrite /ctl 'select prev'
case $MODKEY-Shift-l
xwrite /ctl 'select next'
case $MODKEY-Shift-p
xwrite /ctl pager
case $MODKEY-Shift-[1-9]
xwrite /ctl 'select '^`{echo $k|sed 's/.*-//g'}
}
if (~ $kmode 'normal')
switch($event(2)) {
case $MODKEY-Control-c
xwrite /sel/sel/sel/ctl kill
case $MODKEY-Control-w,y
wmiirc &
case $MODKEY-Control-q,y
xwrite /ctl quit
case $MODKEY-Control-p
extern `{cat /tmp/ns.$USER.$DISPLAY/p.menu | wmiimenu} &
case $MODKEY-Control-a
`{items /usr/local/etc/wmii-3:$HOME/.wmii-3 | wmiimenu} &
case $MODKEY-Control-r
kmode='resize'
case $MODKEY-Control-m
kmode='move'
case $MODKEY-t
extern xterm -rv &
case $MODKEY-d
xwrite /sel/sel/sel/ctl detach
case $MODKEY-a
xwrite /ctl attach
case $MODKEY-Shift-a
xwrite /ctl detached
case $MODKEY-n
wmiir read /sel/new >/dev/null >[2=1]
case $MODKEY-m
xwrite /sel/sel/sel/ctl max
case $MODKEY-Return
xwrite /sel/sel/ctl 'swap east'
case $MODKEY-Shift-Return
xwrite /sel/sel/ctl 'swap west'
case $MODKEY-Control-y
wmiir read /new >/dev/null >[2=1]
case $MODKEY-h
xwrite /sel/ctl 'select next'
case $MODKEY-l
xwrite /sel/ctl 'select prev'
case $MODKEY-Tab
xwrite /sel/sel/ctl 'select next'
case $MODKEY-j
xwrite /sel/sel/ctl 'select next'
case $MODKEY-k
xwrite /sel/sel/ctl 'select prev'
case $MODKEY-Shift-h
xwrite /ctl 'select prev'
case $MODKEY-Shift-l
xwrite /ctl 'select next'
case $MODKEY-Shift-p
xwrite /ctl pager
case $MODKEY-Shift-[1-9]
xwrite /ctl 'select '^`{echo $event(2)|sed 's/.*-//g'}
}
if (~ $kmode 'move')
switch($event(2)) {
case Escape
kmode='normal'
case $MODKEY-Control-r
kmode='resize'
case $MODKEY-k
xwrite /sel/sel/sel/geometry '-0 -30 -0 -0'
case $MODKEY-j
xwrite /sel/sel/sel/geometry '+0 +30 +0 +0'
case $MODKEY-h
xwrite /sel/sel/sel/geometry '-40 -0 -0 -0'
case $MODKEY-l
xwrite /sel/sel/sel/geometry '+40 +0 +0 +0'
case $MODKEY-Shift-k
xwrite /sel/sel/sel/geometry '-0 north -0 -0'
case $MODKEY-Shift-j
xwrite /sel/sel/sel/geometry '+0 south-'^$barh^' +0 +0'
case $MODKEY-Shift-h
xwrite /sel/sel/sel/geometry 'west -0 -0 -0'
case $MODKEY-Shift-l
xwrite /sel/sel/sel/geometry 'east +0 +0 +0'
}
if (~ $kmode 'resize')
switch($event(2)) {
case Escape
kmode='normal'
case $MODKEY-Control-m
kmode='move'
case $MODKEY-k
xwrite /sel/sel/sel/geometry '+0 +0 +0 -30'
case $MODKEY-j
xwrite /sel/sel//sel/geometry '+0 +0 +0 +30'
case $MODKEY-h
xwrite /sel/sel/sel/geometry '+0 +0 -40 +0'
case $MODKEY-l $EASTKEY
xwrite /sel/sel/sel/geometry '+0 +0 +40 +0'
case $MODKEY-Shift-k
xwrite /sel/sel/sel/geometry '-0 north -0 +0'
case $MODKEY-Shift-j
xwrite /sel/sel/sel/geometry '-0 0 -0 south-'^$barh
case $MODKEY-Shift-h
xwrite /sel/sel/sel/geometry '0 -0 west -0'
case $MODKEY-Shift-l
xwrite /sel/sel/sel/geometry '0 -0 east -0'
}
}
}