View difference between Paste ID: 5nSmDYRe and QGW6PcdQ
SHOW: | | - or go back to the newest paste.
1
#!/bin/bash
2
3
X=200
4
Y=200
5
W=100
6
H=30
7
COMMAND="$SHELL"
8
9
if [ -n "$1" ]
10
then
11
    SNAME="$1";
12
13
    if [ -n "$2" ]
14
    then
15
        COMMAND="$2";
16
        
17
        if [ -n "$3" ]
18
        then
19
            X="$3";
20
21
            if [ -n "$4" ]
22
            then
23
                Y="$4";
24
                
25
                if [ -n "$5" ]
26
                then
27
                    W="$5";
28
29
                    if [ -n "$6" ]
30
                    then
31
                        H="$6";
32
                    fi
33
                fi
34
            fi
35
        fi
36
    fi
37
else
38
    SNAME="";
39
fi
40
41
PATNAME="\*-scratch-${SNAME}\*";
42
TERMNAME="*-scratch-${SNAME}*";
43
44
SW=`xdotool search --classname ${PATNAME}`;
45
if [ -z "$SW" ]
46
then
47
    urxvtc -name ${TERMNAME} -g "${W}x${H}+${X}+${Y}" -e "${COMMAND}";
48
    SW=`xdotool search --classname ${PATNAME}`;
49
    xdotool windowunmap "$SW";
50
    xprop -id "$SW" -f _NET_WM_WINDOW_TYPE 32a -set _NET_WM_WINDOW_TYPE _NET_WM_WINDOW_TYPE_DIALOG
51
    xdotool set_window --classname ${TERMNAME} --role '*-scratch-*' #--overrideredirect 0 "$SW"
52
    xdotool windowmap "$SW"
53
    xdotool windowraise "$SW" windowsize --usehints "$SW" "$W" "$H" windowmove "$SW" "$X" "$Y";
54-
_NET_WM_PING, _NET_WM_SYNC_REQUEST'
54+
55-
    xdotool set_window --classname ${TERMNAME} --role '*-scratch-*' --overrideredirect 0 "$SW"
55+
56
    #xprop -id "$SW" -f WM_WINDOW_ROLE 8s -set WM_WINDOW_ROLE '*-scratch-*'
57
    #xprop -id "$SW" -f _NET_WM_STATE 32a -set _NET_WM_STATE _NET_WM_STATE_ABOVE
58
    #xprop -id "$SW" -f _NET_WM_STATE 32a -set _NET_WM_STATE _NET_WM_STATE_SKIP_TASKBAR
59
    #wmctrl -x -r ${TERMNAME} -b add,above,skip_taskbar
60
    #wmctrl -x -r ${TERMNAME} -b remove,maximized_vert,maximized_horz
61
    #wmctrl -x -r ${TERMNAME} -e 0,"$X,$Y,$W,$H";
62
else
63
64
    SWN=`xdotool search --onlyvisible --classname ${PATNAME}`;
65
    if [ -n "$SWN" ]
66
    then
67
        xdotool windowminimize "$SWN";
68
        xdotool windowunmap "$SWN";
69
        xdotool getactivewindow windowraise
70
    else
71
        xdotool windowmap "$SW";
72
        xdotool windowraise "$SW" windowsize --usehints "$SW" "$W" "$H" windowmove "$SW" "$X" "$Y";
73
    fi
74
75
fi