#!/bin/sh

compat_launch () {
    cat <<'EOF' >&2
WARNING: Passing an extension UUID as a command-line argument to
gnome-shell-extension-prefs is deprecated.

In GNOME Shell extensions, use ExtensionUtils.openPrefs()
(sample code:
https://github.com/Tudmotu/gnome-shell-extension-clipboard-indicator/pull/203)

In other modules, call the OpenExtensionPrefs D-Bus method instead.

EOF
    exec gdbus call \
        --session \
        --dest=org.gnome.Shell.Extensions \
        -o /org/gnome/Shell/Extensions \
        -m org.gnome.Shell.Extensions.OpenExtensionPrefs \
        "'$1'" "''" "@a{sv} {}" \
        >/dev/null
}

if [ $# = 1 ] && [ "x${1#-}" = "x$1" ]; then
    compat_launch "$1"
fi

/usr/bin/gjs /usr/share/gnome-shell/org.gnome.Extensions "$@"
