diff --git a/app/src/main/java/com/gaurav/avnc/viewmodel/VncViewModel.kt b/app/src/main/java/com/gaurav/avnc/viewmodel/VncViewModel.kt
index 7d2c41e..0f3a140 100644
--- a/app/src/main/java/com/gaurav/avnc/viewmodel/VncViewModel.kt
+++ b/app/src/main/java/com/gaurav/avnc/viewmodel/VncViewModel.kt
@@ -158,6 +158,7 @@ class VncViewModel(app: Application) : BaseViewModel(app), VncClient.Observer {
private fun launchConnection() {
viewModelScope.launch(Dispatchers.IO) {
+ client.viewOnlyMode = profile.viewOnly
try {
@@ -305,7 +306,7 @@ class VncViewModel(app: Application) : BaseViewModel(app), VncClient.Observer {
val reason = client.getLastErrorStr()
if (reason.isNotBlank())
disconnectReason.postValue("( $reason )")
- else if(profile.address.isBlank())
+ else if (profile.address.isBlank())
disconnectReason.postValue("( Invalid address )")
}
}
diff --git a/app/src/main/java/com/gaurav/avnc/vnc/VncClient.kt b/app/src/main/java/com/gaurav/avnc/vnc/VncClient.kt
index 72859d6..2ee12b1 100644
--- a/app/src/main/java/com/gaurav/avnc/vnc/VncClient.kt
+++ b/app/src/main/java/com/gaurav/avnc/vnc/VncClient.kt
@@ -99,6 +99,10 @@ class VncClient(private val observer: Observer) {
*/
var isEncrypted = false; private set
+ /**
+ * In 'View-only' mode input to remote server is disabled
+ */
+ var viewOnlyMode = false
/**
* Initializes VNC connection.
@@ -217,7 +221,7 @@ class VncClient(private val observer: Observer) {
* events to remote server.
*/
private inline fun executeSend(block: () -> Unit) {
- if (state == State.Connected)
+ if (state == State.Connected && !viewOnlyMode)
block()
}
diff --git a/app/src/main/res/drawable/ic_visibility.xml b/app/src/main/res/drawable/ic_visibility.xml
new file mode 100644
index 0000000..6bca848
--- /dev/null
+++ b/app/src/main/res/drawable/ic_visibility.xml
@@ -0,0 +1,9 @@
+
+
+
diff --git a/app/src/main/res/layout/server_profile.xml b/app/src/main/res/layout/server_profile.xml
index 87efff0..c0523eb 100644
--- a/app/src/main/res/layout/server_profile.xml
+++ b/app/src/main/res/layout/server_profile.xml
@@ -44,6 +44,7 @@
tools:text="192.168.1.1 | 5901" />
+
+
\ No newline at end of file