Update SDK build tools to 24.0.1
[termux-packages] / packages / termux-api / termux-dialog
index 717a9c7..2a24446 100755 (executable)
@@ -1,28 +1,45 @@
-#!/system/bin/sh
-
+#!/bin/sh
 set -e -u
 
-SCRIPTNAME=$0
+SCRIPTNAME=termux-dialog
 show_usage () {
-       echo "usage: $SCRIPTNAME [OPTIONS]"
-       echo "       Show a text entry dialog."
-       echo "       -i, --input-hint       The input hint to show when the textarea is empty"
+    echo "Usage: $SCRIPTNAME [-i hint] [-m] [-p] [-t title]"
+    echo "Show a text entry dialog."
+    echo ""
+    echo "  -i hint   the input hint to show when the input is empty"
+    echo "  -m        use a textarea with multiple lines instead of a single"
+    echo "  -p        enter the input as a password"
+    echo "  -t title  the title to show for the input prompt"
+    echo ""
+    exit 0
 }
 
 PARAMS=""
-O=`busybox getopt -q -l help -l input-hint: -- hi: "$@"`
-if [ $? != 0 ] ; then show_usage; exit 1 ; fi
-eval set -- "$O"
-while true; do
-case "$1" in
-       -h|--help) show_usage; exit 0;;
-       -i|--input-hint) PARAMS="$PARAMS --es input_hint '$2'"; shift 2;;
-       --)     shift; break;;
-       *)      echo Error; exit 1;;
-esac
+
+ARG_I=""
+OPT_I=""
+ARG_M=""
+ARG_P=""
+ARG_T=""
+OPT_T=""
+
+while getopts :hi:mpt: option
+do
+       case "$option" in
+               h) show_usage;;
+               i) ARG_I="--es input_hint";  OPT_I="$OPTARG";;
+               m) ARG_M="--ez multiple_lines true";;
+               p) ARG_P="--es input_type password";;
+               t) ARG_T="--es input_title"; OPT_T="$OPTARG";;
+               ?) echo "$SCRIPTNAME: illegal option -$OPTARG"; exit 1;
+       esac
 done
+shift $(($OPTIND-1))
+
+if [ $# != 0 ]; then echo "$SCRIPTNAME: too many arguments"; exit 1; fi
 
-# Too many arguments:
-if [ $# != 0 ]; then show_usage; exit 1; fi
+set -- $ARG_M $ARG_P
+if [ -n "$ARG_I" ]; then set -- "$@" $ARG_I "$OPT_I"; fi
+if [ -n "$ARG_T" ]; then set -- "$@" $ARG_T "$OPT_T"; fi
 
-eval termux-api DialogReceiver $PARAMS
+@TERMUX_API@ Dialog "$@"