File tree 2 files changed +16
-4
lines changed 2 files changed +16
-4
lines changed Original file line number Diff line number Diff line change 3
3
ACTION=auto
4
4
FILENAME=${HOME} /.pushpop
5
5
6
- while getopts c :i:s:w:h:x:y:d: ? FLAG; do
6
+ while getopts a :i:e:f: FLAG; do
7
7
ARGS=1;
8
8
case $FLAG in
9
9
i)
@@ -15,13 +15,17 @@ while getopts c:i:s:w:h:x:y:d:? FLAG; do
15
15
f)
16
16
FILENAME=$OPTARG
17
17
;;
18
+ e)
19
+ EXPIRES=$OPTARG
20
+ ;;
18
21
esac
19
22
done
20
23
21
24
if [ ! -e $FILENAME ]; then
22
25
touch $FILENAME
23
26
fi
24
27
28
+ NOW=$( date +" %s" )
25
29
26
30
if [ " ${WINDOW} x" == " x" ]; then
27
31
WINDOW=$( xdotool getactivewindow)
@@ -62,7 +66,7 @@ if [ "$ACTION" == "push" ]; then
62
66
63
67
SIZEDATA=$( get_position $FILENAME $WINDOW )
64
68
65
- NEWSIZEDATA=$( echo $WINDOW $WINDOWPOS )
69
+ NEWSIZEDATA=$( echo $WINDOW $WINDOWPOS $NOW )
66
70
67
71
if [ " ${SIZEDATA} " != " ${NEWSIZEDATA} " ]; then
68
72
echo $NEWSIZEDATA >> $FILENAME
72
76
if [ " $ACTION " == " pop" ]; then
73
77
TMPFILE=$( mktemp)
74
78
SIZEDATA=$( get_position $FILENAME $WINDOW )
75
- echo $SIZEDATA
79
+ if [ -n " $EXPIRES " ]; then
80
+ TIME=$( echo $SIZEDATA | awk ' {print $4}' )
81
+ AGE=$( expr $NOW - $TIME )
82
+ if [ " $AGE " -lt " $EXPIRES " ]; then
83
+ echo $SIZEDATA
84
+ fi
85
+ else
86
+ echo $SIZEDATA
87
+ fi
76
88
grep -v " $SIZEDATA " $FILENAME > $TMPFILE
77
89
if [ $? -le 1 ]; then
78
90
mv -f $TMPFILE $FILENAME ;
Original file line number Diff line number Diff line change @@ -5,7 +5,7 @@ DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
5
5
PUSHPOP=${DIR} /pushpop
6
6
WINDOWGRID=${DIR} /window_grid
7
7
8
- RES=$( $PUSHPOP )
8
+ RES=$( $PUSHPOP -e 43200 )
9
9
10
10
if [ " ${RES} x" == " x" ]; then
11
11
$WINDOWGRID -d 16 -x 1 -y 1 -w 14 -h 14
You can’t perform that action at this time.
0 commit comments