Skip to content

Commit

Permalink
Refactor the code
Browse files Browse the repository at this point in the history
  • Loading branch information
harinath01 committed Jan 1, 2023
1 parent 28182f4 commit aaa4cf6
Show file tree
Hide file tree
Showing 2 changed files with 40 additions and 8 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@ class MeetingScreenFragment : Fragment() , MeetingShareCallback.ShareEvent {
private lateinit var meetingScreenBinding: MeetingScreenBinding
private lateinit var inMeetingService: InMeetingService
private lateinit var primaryVideoViewManager: MobileRTCVideoViewManager
private lateinit var webCamVideoViewManager: MobileRTCVideoViewManager

override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
Expand All @@ -29,6 +30,7 @@ class MeetingScreenFragment : Fragment() , MeetingShareCallback.ShareEvent {
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
super.onViewCreated(view, savedInstanceState)
primaryVideoViewManager = meetingScreenBinding.primaryMeetingView.videoViewManager
webCamVideoViewManager = meetingScreenBinding.webCamView.videoViewManager
renderVideo()
}

Expand All @@ -42,16 +44,31 @@ class MeetingScreenFragment : Fragment() , MeetingShareCallback.ShareEvent {

private fun renderVideo() {
primaryVideoViewManager.removeAllVideoUnits()
webCamVideoViewManager.removeAllVideoUnits()

val defaultVideoViewRenderInfo = MobileRTCVideoUnitRenderInfo(0, 0, 100, 100)
val screenShareUserId = inMeetingService.activeShareUserID()
if (inMeetingService.inMeetingShareController.isOtherSharing && inMeetingService.isHostUser(screenShareUserId)){
primaryVideoViewManager.addShareVideoUnit(screenShareUserId, defaultVideoViewRenderInfo)
renderWebCamVideo()
} else {
meetingScreenBinding.webCamView.visibility = View.GONE
primaryVideoViewManager.addActiveVideoUnit(defaultVideoViewRenderInfo)
}
}

private fun renderWebCamVideo(){
meetingScreenBinding.webCamView.visibility = View.VISIBLE
val defaultVideoViewRenderInfo = MobileRTCVideoUnitRenderInfo(0, 0, 100, 100).apply {
is_border_visible = false
aspect_mode = MobileRTCVideoUnitAspectMode.VIDEO_ASPECT_PAN_AND_SCAN
}
webCamVideoViewManager.addAttendeeVideoUnit(
inMeetingService.activeShareUserID(),
defaultVideoViewRenderInfo
)
}

override fun onResume() {
super.onResume()
meetingScreenBinding.primaryMeetingView.onResume()
Expand Down
31 changes: 23 additions & 8 deletions course/src/main/res/layout/meeting_screen.xml
Original file line number Diff line number Diff line change
Expand Up @@ -12,21 +12,36 @@
android:layout_height="match_parent"
android:focusable="false"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toStartOf="@+id/chatContainer"
app:layout_constraintEnd_toStartOf="@+id/sidebar"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />

<androidx.fragment.app.FragmentContainerView
android:id="@+id/chatContainer"
android:name="in.testpress.course.ui.ChatFragment"
android:layout_width="230dp"
<androidx.appcompat.widget.LinearLayoutCompat
android:id="@+id/sidebar"
android:layout_width="215dp"
android:layout_height="0dp"
android:background="@color/white"
android:orientation="vertical"
android:visibility="visible"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toEndOf="@+id/primaryMeetingView"
app:layout_constraintTop_toTopOf="parent"
tools:layout="@layout/fragment_chat" />
app:layout_constraintTop_toTopOf="parent">

<us.zoom.sdk.MobileRTCVideoView
android:id="@+id/webCamView"
android:layout_width="match_parent"
android:layout_height="130dp"
android:focusable="false"
android:visibility="gone" />

<androidx.fragment.app.FragmentContainerView
android:id="@+id/chatContainer"
android:name="in.testpress.course.ui.ChatFragment"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@color/white"
android:visibility="visible"
tools:layout="@layout/fragment_chat" />
</androidx.appcompat.widget.LinearLayoutCompat>
</androidx.constraintlayout.widget.ConstraintLayout>

0 comments on commit aaa4cf6

Please sign in to comment.