- # this is an important value now; it is checked for in save_terminal_title.
- local term_title_found="unknown"
- # save the former terminal title if we're running in X with xterm.
- which xprop &>/dev/null
- if [ $? -eq 0 ]; then
- # gnome-terminal doesn't set WINDOWID currently, but we can work around this if xdotool
- # is installed.
- if [[ -z "$WINDOWID" && ! -z "$(which xdotool)" ]]; then
- term_title_found="$(xprop -id $(xdotool getactivewindow) | perl -nle 'print $1 if /^WM_NAME.+= \"(.*)\"$/')"
- # check if we're actually using xterm *and* that we have a window ID.
- elif [[ "$TERM" =~ .*"xterm".* && ! -z "$WINDOWID" ]]; then
- term_title_found="$(xprop -id $WINDOWID | perl -nle 'print $1 if /^WM_NAME.+= \"(.*)\"$/')"
- fi
+ # whack our output variable, just in case.
+ unset LAST_TITLE
+ # get our stack top.
+ peek_title_stack
+ # trim the popped item out of the stack.
+ if [ ! -z "$TERMINAL_TITLE_STACK" ]; then
+ TERMINAL_TITLE_STACK="$(echo $TERMINAL_TITLE_STACK | sed -n -e 's/\(.*\),[^,]*$/\1/p')"