diff options
Diffstat (limited to 'app/fvwm/extras/FvwmCommand/focus-Netscape.pl')
-rw-r--r-- | app/fvwm/extras/FvwmCommand/focus-Netscape.pl | 89 |
1 files changed, 0 insertions, 89 deletions
diff --git a/app/fvwm/extras/FvwmCommand/focus-Netscape.pl b/app/fvwm/extras/FvwmCommand/focus-Netscape.pl deleted file mode 100644 index b31ab3d22..000000000 --- a/app/fvwm/extras/FvwmCommand/focus-Netscape.pl +++ /dev/null @@ -1,89 +0,0 @@ -#!/usr/bin/perl -# FvwmCommand script -# Written by Toshi Isogai -# -# 1. auto focus Netscape dialog when opened -# 2. move download/upload window to right edge of the screen - -# screen width -if( `xwininfo -root` =~ /Width: (\d+)/ ) { - $SW = $1; -}else{ - # some resonable number if xwininfo doesn't work - $SW = 1024; -} - -# start a dedicated server -$fifo = "$ENV{'HOME'}/.FCMfocus"; -system( "FvwmCommand 'FvwmCommandS $fifo'"); -#for slow machine -select(undef,undef,undef,1); - -# we need this to run this script in background job -$SIG{'TTIN'} = "IGNORE"; - -# start monitoring (-m option ) all fvwm transaction (-i3 option ) -open( FCM, "FvwmCommand -f $fifo -m -i3 |" ) || die "FCM $fifo"; - -# send command through the new fifo which is "$fifo" + "C" -open( FCC, ">${fifo}C" ) || die "FCC $fifo" ; - -# appearantly, it has be unbuffered -select( FCC ); $| = 1; -select( STDOUT ); $| = 1; - - -LOOP1: while( <FCM> ) { - if( /^(0x[\da-f]+) add/ ) { - $id = $1; - - while( <FCM> ) { - - # keep window frame - if( /^$id frame\s+x -?\d+, y (-?\d+), width (\d+)/ ) { - $y = $1; - $width = $2; - - # search for class line - }elsif( /^$id class/ ) { - - if( !/\sNetscape/ ) { - # not Netscape - last; - } - - # the next line should be resource line - $_ = <FCM>; - - # resource line tells what the window is - if( /^$id resource/ ) { - - # search for Netscape popups - if( /\s+\w+popup/ ) { - - # fvwm doesn't like commands from modules too fast - select(undef,undef,undef, 0.4 ); - - # focus it - print FCC "windowid $id focus\n"; - - } - # search for Netscape download or upload window - elsif( /\s+(Down|Up)load/ ) { - select(undef,undef,undef, 0.4 ); - - # move to the right edge, keep the whole window in screen - $x = $SW - $width; - print FCC "windowid $id move ${x}p ${y}p\n"; - } - last; - } - } - } - } -} -print "end\n"; - - - - |