diff --git a/packages/addons/service/dispmanx_vnc/icon/icon.png b/packages/addons/service/dispmanx_vnc/icon/icon.png
index 1d64bb4783..8838fdf0cf 100644
Binary files a/packages/addons/service/dispmanx_vnc/icon/icon.png and b/packages/addons/service/dispmanx_vnc/icon/icon.png differ
diff --git a/packages/addons/service/dispmanx_vnc/package.mk b/packages/addons/service/dispmanx_vnc/package.mk
index 38c5effadb..d5b2281930 100644
--- a/packages/addons/service/dispmanx_vnc/package.mk
+++ b/packages/addons/service/dispmanx_vnc/package.mk
@@ -17,27 +17,24 @@
################################################################################
PKG_NAME="dispmanx_vnc"
-PKG_ADDON_NAME="Raspberry Pi VNC"
PKG_VERSION="78e6673"
PKG_REV="100"
PKG_ARCH="arm"
+PKG_ADDON_PROJECTS="RPi RPi2"
PKG_LICENSE="OSS"
PKG_SITE="https://github.com/patrikolausson/dispmanx_vnc"
PKG_URL="https://github.com/patrikolausson/dispmanx_vnc/archive/$PKG_VERSION.tar.gz"
PKG_DEPENDS_TARGET="toolchain libvncserver bcm2835-bootloader libconfig"
PKG_PRIORITY="optional"
PKG_SECTION="service/system"
-PKG_SHORTDESC="VNC Server for Raspberry PI using dispmanx"
-PKG_LONGDESC="VNC Server for Raspberry PI using dispmanx"
-
-PKG_IS_ADDON="yes"
-PKG_ADDON_TYPE="xbmc.service"
-PKG_ADDON_PROVIDES=""
-PKG_ADDON_PROJECTS="RPi RPi2"
-PKG_ADDON_REPOVERSION="8.0"
-
+PKG_SHORTDESC="VNC Server for Raspberry Pi"
+PKG_LONGDESC="VNC Server for Raspberry Pi using dispmanx"
PKG_AUTORECONF="no"
+PKG_IS_ADDON="yes"
+PKG_ADDON_NAME="Raspberry Pi VNC"
+PKG_ADDON_TYPE="xbmc.service"
+PKG_ADDON_REPOVERSION="8.0"
PKG_MAINTAINER="Anton Voyl (awiouy at gmail dot com)"
pre_make_target() {
@@ -51,7 +48,4 @@ makeinstall_target() {
addon() {
mkdir -p $ADDON_BUILD/$PKG_ADDON_ID/bin
cp -p $PKG_BUILD/dispmanx_vncserver $ADDON_BUILD/$PKG_ADDON_ID/bin
-
- mkdir -p $ADDON_BUILD/$PKG_ADDON_ID/config
- cp $PKG_DIR/source/config/dispmanx_vncserver.conf $ADDON_BUILD/$PKG_ADDON_ID/config/
}
diff --git a/packages/addons/service/dispmanx_vnc/source/bin/dispmanx_vncserver-service b/packages/addons/service/dispmanx_vnc/source/bin/dispmanx_vncserver-service
index aed9147e3d..4b0d232a34 100755
--- a/packages/addons/service/dispmanx_vnc/source/bin/dispmanx_vncserver-service
+++ b/packages/addons/service/dispmanx_vnc/source/bin/dispmanx_vncserver-service
@@ -19,9 +19,37 @@
. /etc/profile
oe_setup_addon service.system.dispmanx_vnc
-if [ ! -f "$ADDON_HOME/dispmanx_vncserver.conf" ]; then
- cp $ADDON_DIR/config/dispmanx_vncserver.conf $ADDON_HOME/
+if [ -f "$ADDON_HOME/dispmanx_vncserver.conf" ]; then
+ rm "$ADDON_HOME/dispmanx_vncserver.conf"
fi
-/bin/sleep 10
-dispmanx_vncserver --config-file="$ADDON_HOME/dispmanx_vncserver.conf"
+options="-p $vnc_port -s $vnc_screen -t $vnc_framerate"
+if [ "$vnc_relative" == "true" ]
+then
+ options="$options -r"
+else
+ options="$options -a"
+fi
+if [ "$vnc_unsafe" == "true" ]
+then
+ options="$options -u"
+fi
+if [ "$vnc_fullscreen" == "true" ]
+then
+ options="$options -f"
+fi
+if [ "$vnc_multithreaded" == "true" ]
+then
+ options="$options -m"
+fi
+if [ ! -z "$vnc_password" ]
+then
+ options="$options -P $vnc_password"
+fi
+if [ "$vnc_downscale" == "true" ]
+then
+ options="$options -d"
+fi
+
+#/bin/sleep 10
+dispmanx_vncserver $options
diff --git a/packages/addons/service/dispmanx_vnc/source/config/dispmanx_vncserver.conf b/packages/addons/service/dispmanx_vnc/source/config/dispmanx_vncserver.conf
deleted file mode 100644
index 8d7d5b9cbf..0000000000
--- a/packages/addons/service/dispmanx_vnc/source/config/dispmanx_vncserver.conf
+++ /dev/null
@@ -1,9 +0,0 @@
-relative = false;
-port = 5900;
-screen = 0;
-unsafe = false;
-fullscreen = true;
-multi-threaded = false;
-password = "";
-frame-rate = 15;
-downscale = false;
diff --git a/packages/addons/service/dispmanx_vnc/source/default.py b/packages/addons/service/dispmanx_vnc/source/default.py
index 1a91d91ede..0a5065ba27 100644
--- a/packages/addons/service/dispmanx_vnc/source/default.py
+++ b/packages/addons/service/dispmanx_vnc/source/default.py
@@ -15,3 +15,22 @@
# You should have received a copy of the GNU General Public License
# along with LibreELEC. If not, see .
################################################################################
+
+import subprocess
+import xbmc
+import xbmcaddon
+
+
+class Monitor(xbmc.Monitor):
+
+ def __init__(self, *args, **kwargs):
+ xbmc.Monitor.__init__(self)
+ self.id = xbmcaddon.Addon().getAddonInfo('id')
+
+ def onSettingsChanged(self):
+ subprocess.call(['systemctl', 'restart', self.id])
+
+
+if __name__ == "__main__":
+ Monitor().waitForAbort()
+
diff --git a/packages/addons/service/dispmanx_vnc/source/resources/language/English/strings.po b/packages/addons/service/dispmanx_vnc/source/resources/language/English/strings.po
new file mode 100644
index 0000000000..328e1a184f
--- /dev/null
+++ b/packages/addons/service/dispmanx_vnc/source/resources/language/English/strings.po
@@ -0,0 +1,46 @@
+# Kodi Media Center language file
+# Addon Name: dispmanx_vnc
+# Addon id: service.system.dispmanx_vnc
+# Addon Provider: awiouy at gmail dot com
+msgid ""
+msgstr ""
+
+msgctxt "#30000"
+msgid "Configuration"
+msgstr ""
+
+msgctxt "#30001"
+msgid "relative"
+msgstr ""
+
+msgctxt "#30002"
+msgid "port"
+msgstr ""
+
+msgctxt "#30003"
+msgid "screen"
+msgstr ""
+
+msgctxt "#30004"
+msgid "unsafe"
+msgstr ""
+
+msgctxt "#30005"
+msgid "fullscreen"
+msgstr ""
+
+msgctxt "#30006"
+msgid "multi-threaded"
+msgstr ""
+
+msgctxt "#30007"
+msgid "password"
+msgstr ""
+
+msgctxt "#30008"
+msgid "frame-rate"
+msgstr ""
+
+msgctxt "#30009"
+msgid "downscale"
+msgstr ""
diff --git a/packages/addons/service/dispmanx_vnc/source/resources/settings.xml b/packages/addons/service/dispmanx_vnc/source/resources/settings.xml
new file mode 100644
index 0000000000..9953e7bc72
--- /dev/null
+++ b/packages/addons/service/dispmanx_vnc/source/resources/settings.xml
@@ -0,0 +1,14 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/packages/addons/service/dispmanx_vnc/source/settings-default.xml b/packages/addons/service/dispmanx_vnc/source/settings-default.xml
new file mode 100644
index 0000000000..cb68e2b763
--- /dev/null
+++ b/packages/addons/service/dispmanx_vnc/source/settings-default.xml
@@ -0,0 +1,11 @@
+
+
+
+
+
+
+
+
+
+
+