diff --git a/library/ui-styles/src/main/res/values/colors.xml b/library/ui-styles/src/main/res/values/colors.xml
index 9d5f15cbde..b58829bb81 100644
--- a/library/ui-styles/src/main/res/values/colors.xml
+++ b/library/ui-styles/src/main/res/values/colors.xml
@@ -28,6 +28,7 @@
@android:color/black
+ #0BAC7E
#80000000
diff --git a/vector/src/main/assets/open_source_licenses.html b/vector/src/main/assets/open_source_licenses.html
index 490de1f23a..19daf3359b 100755
--- a/vector/src/main/assets/open_source_licenses.html
+++ b/vector/src/main/assets/open_source_licenses.html
@@ -194,6 +194,37 @@ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLI
+
+ -
+ hyuwah/DraggableView
+
+ hyuwah/DraggableView is licensed under the MIT License
+ Copyright (c) 2018 Muhammad Wahyudin
+
+
+
+
+Copyright (c) 2018 Muhammad Wahyudin
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.
+
+
-
com.github.piasy:BigImageViewer
diff --git a/vector/src/main/java/im/vector/app/core/ui/views/CurrentCallsView.kt b/vector/src/main/java/im/vector/app/core/ui/views/CurrentCallsView.kt
index d05b6b86a3..2f7eecc22c 100644
--- a/vector/src/main/java/im/vector/app/core/ui/views/CurrentCallsView.kt
+++ b/vector/src/main/java/im/vector/app/core/ui/views/CurrentCallsView.kt
@@ -69,7 +69,7 @@ class CurrentCallsView @JvmOverloads constructor(
}
}
} else {
- resources.getString(R.string.call_multiple_active, calls.size)
+ resources.getQuantityString(R.plurals.call_active_status, calls.size, calls.size)
}
views.currentCallsInfo.text = resources.getString(R.string.call_tap_to_return, tapToReturnFormat)
}
diff --git a/vector/src/main/java/im/vector/app/features/home/room/detail/RoomDetailAction.kt b/vector/src/main/java/im/vector/app/features/home/room/detail/RoomDetailAction.kt
index a6f3061654..94388dcfeb 100644
--- a/vector/src/main/java/im/vector/app/features/home/room/detail/RoomDetailAction.kt
+++ b/vector/src/main/java/im/vector/app/features/home/room/detail/RoomDetailAction.kt
@@ -97,7 +97,7 @@ sealed class RoomDetailAction : VectorViewModelAction {
data class EnsureNativeWidgetAllowed(val widget: Widget,
val userJustAccepted: Boolean,
val grantedEvents: RoomDetailViewEvents) : RoomDetailAction()
- data class UpdateJoinJitsiCallStatus(val broadcastEvent: BroadcastEvent): RoomDetailAction()
+ data class UpdateJoinJitsiCallStatus(val jitsiEvent: BroadcastEvent): RoomDetailAction()
data class OpenOrCreateDm(val userId: String) : RoomDetailAction()
data class JumpToReadReceipt(val userId: String) : RoomDetailAction()
diff --git a/vector/src/main/java/im/vector/app/features/home/room/detail/RoomDetailFragment.kt b/vector/src/main/java/im/vector/app/features/home/room/detail/RoomDetailFragment.kt
index 566936e4ee..847b06fb45 100644
--- a/vector/src/main/java/im/vector/app/features/home/room/detail/RoomDetailFragment.kt
+++ b/vector/src/main/java/im/vector/app/features/home/room/detail/RoomDetailFragment.kt
@@ -326,7 +326,7 @@ class RoomDetailFragment @Inject constructor(
}
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
- lifecycle.addObserver(JitsiBroadcastEventObserver(vectorBaseActivity, this::onBroadcastEvent))
+ lifecycle.addObserver(JitsiBroadcastEventObserver(vectorBaseActivity, this::onBroadcastJitsiEvent))
super.onViewCreated(view, savedInstanceState)
sharedActionViewModel = activityViewModelProvider.get(MessageSharedActionViewModel::class.java)
knownCallsViewModel = activityViewModelProvider.get(SharedKnownCallsViewModel::class.java)
@@ -459,8 +459,8 @@ class RoomDetailFragment @Inject constructor(
JitsiBroadcastEmitter(vectorBaseActivity).emitConferenceEnded()
}
- private fun onBroadcastEvent(event: BroadcastEvent) {
- roomDetailViewModel.handle(RoomDetailAction.UpdateJoinJitsiCallStatus(event))
+ private fun onBroadcastJitsiEvent(jitsiEvent: BroadcastEvent) {
+ roomDetailViewModel.handle(RoomDetailAction.UpdateJoinJitsiCallStatus(jitsiEvent))
}
private fun onCannotRecord() {
@@ -872,8 +872,7 @@ class RoomDetailFragment @Inject constructor(
joinConfItem.actionView.findViewById(R.id.join_conference_button).also { joinButton ->
joinButton.setOnClickListener { roomDetailViewModel.handle(RoomDetailAction.JoinJitsiCall) }
val colorFrom = ContextCompat.getColor(joinButton.context, R.color.palette_element_green)
- // This is a special color, not defined in the palette
- val colorTo = Color.parseColor("#0BAC7E")
+ val colorTo = ContextCompat.getColor(joinButton.context, R.color.join_conference_animated_color)
// Animate button color to highlight
ValueAnimator.ofObject(ArgbEvaluator(), colorFrom, colorTo).apply {
repeatMode = ValueAnimator.REVERSE
diff --git a/vector/src/main/java/im/vector/app/features/home/room/detail/RoomDetailViewModel.kt b/vector/src/main/java/im/vector/app/features/home/room/detail/RoomDetailViewModel.kt
index fa4f56f28a..bcb8ef0f1f 100644
--- a/vector/src/main/java/im/vector/app/features/home/room/detail/RoomDetailViewModel.kt
+++ b/vector/src/main/java/im/vector/app/features/home/room/detail/RoomDetailViewModel.kt
@@ -368,7 +368,7 @@ class RoomDetailViewModel @AssistedInject constructor(
}
return@withState
}
- when (action.broadcastEvent.type) {
+ when (action.jitsiEvent.type) {
BroadcastEvent.Type.CONFERENCE_JOINED,
BroadcastEvent.Type.CONFERENCE_TERMINATED -> {
setState { copy(jitsiState = jitsiState.copy(hasJoined = activeConferenceHolder.isJoined(jitsiState.confId))) }
diff --git a/vector/src/main/res/values/strings.xml b/vector/src/main/res/values/strings.xml
index 840a5528a0..ded6256ccd 100644
--- a/vector/src/main/res/values/strings.xml
+++ b/vector/src/main/res/values/strings.xml
@@ -3302,12 +3302,10 @@
- 1 active call (%1$s) · %2$d paused calls
- - Active call (%1$s)
- - %1$d active calls
+ - Active call ·
+ - %1$d active calls ·
-
Active call (%1$s) ·
- %1$d active calls ·
%1$s Tap to return
Consult first