#!/usr/bin/env sh
# Startdate: 2020-02-11

echo " $* " | grep -qE -e "\<fluxbox\>" && _XDG_REQUESTED_DESKTOP=fluxbox

get_icon_size() {
   # for given $1, find the largest icon size that fits.
   good_sizes="16 22 24 32 64 128"
   _size="${1:-16}"
   for i in ${good_sizes} ; do test ${i} -le ${_size} && _bestsize="${i}" || : ; done
   echo "${_bestsize}"
}

case "${_XDG_REQUESTED_DESKTOP}" in
   fluxbox)
      stylefile="$( awk -F':' '/styleFile/{print $2}' ~/.fluxbox/init | tr -d '\t \r\n' )/theme.cfg"
      size="$( awk -F':' '/^\s*menu.itemHeight/{print $2;quit}' "${stylefile}" )"
      bestsize="$( get_icon_size "${size}" )"
      /usr/bin/xdgmenumaker --size "${bestsize}" -f fluxbox -i > "${HOME}/.fluxbox/xdg-menu"
      ;;
   *)
      echo "Gotta say unh. Feature \"$*\" not yet implemented." 1>&2
      exit 1
      ;;
esac
