1<?xml version="1.0" encoding="utf-8"?>
2<!-- Copyright (C) 2018 The Android Open Source Project
3
4     Licensed under the Apache License, Version 2.0 (the "License");
5     you may not use this file except in compliance with the License.
6     You may obtain a copy of the License at
7
8          http://www.apache.org/licenses/LICENSE-2.0
9
10     Unless required by applicable law or agreed to in writing, software
11     distributed under the License is distributed on an "AS IS" BASIS,
12     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13     See the License for the specific language governing permissions and
14     limitations under the License.
15-->
16<RelativeLayout
17  xmlns:android="http://schemas.android.com/apk/res/android"
18  xmlns:app="http://schemas.android.com/apk/res-auto"
19  xmlns:tools="http://schemas.android.com/tools"
20  android:id="@+id/videocall_video_controls_container"
21  android:fitsSystemWindows="true"
22  android:layout_width="match_parent"
23  android:layout_height="match_parent"
24  android:orientation="vertical">
25
26  <include
27    android:id="@+id/incall_contact_grid"
28    layout="@layout/video_contact_grid"
29    android:layout_width="match_parent"
30    android:layout_height="wrap_content"
31    android:layout_marginTop="16dp"
32    android:layout_marginStart="24dp"
33    android:layout_marginEnd="24dp"/>
34
35  <!-- This placeholder matches the position of the preview UI and is used to
36     anchor video buttons. This is needed in greenscreen mode when the
37     preview is fullscreen but we want the controls to be positioned as
38     normal.  -->
39  <Space
40    android:id="@+id/videocall_video_preview_placeholder"
41    android:layout_width="@dimen/videocall_preview_width"
42    android:layout_height="@dimen/videocall_preview_height"
43    android:layout_marginBottom="@dimen/videocall_preview_margin_bottom"
44    android:layout_marginStart="@dimen/videocall_preview_margin_start"
45    android:layout_alignParentBottom="true"
46    android:layout_alignParentStart="true"
47    android:visibility="invisible"/>
48
49  <LinearLayout
50    android:id="@+id/videocall_video_controls"
51    android:layout_width="wrap_content"
52    android:layout_height="wrap_content"
53    android:layout_above="@+id/videocall_video_preview_placeholder"
54    android:layout_alignEnd="@+id/videocall_video_preview_placeholder"
55    android:layout_alignStart="@+id/videocall_video_preview_placeholder"
56    android:gravity="center_horizontal"
57    android:orientation="vertical"
58    android:visibility="invisible"
59    tools:visibility="visible">
60    <com.android.incallui.video.impl.CheckableImageButton
61      android:id="@+id/videocall_speaker_button"
62      style="@style/Incall.Button.VideoCall"
63      android:layout_marginBottom="@dimen/videocall_button_spacing"
64      android:checked="true"
65      android:src="@drawable/quantum_ic_volume_up_vd_theme_24"
66      app:contentDescriptionChecked="@string/incall_content_description_speaker"
67      app:contentDescriptionUnchecked="@string/incall_content_description_earpiece"
68      />
69    <com.android.incallui.video.impl.CheckableImageButton
70      android:id="@+id/videocall_mute_button"
71      style="@style/Incall.Button.VideoCall"
72      android:layout_marginBottom="@dimen/videocall_button_spacing"
73      android:src="@drawable/quantum_ic_mic_off_vd_theme_24"
74      app:contentDescriptionChecked="@string/incall_content_description_muted"
75      app:contentDescriptionUnchecked="@string/incall_content_description_unmuted"
76      />
77    <com.android.incallui.video.impl.CheckableImageButton
78      android:id="@+id/videocall_mute_video"
79      style="@style/Incall.Button.VideoCall"
80      android:layout_marginBottom="@dimen/videocall_button_spacing"
81      android:src="@drawable/quantum_ic_videocam_off_vd_theme_24"
82      app:contentDescriptionChecked="@string/incall_content_description_video_off"
83      app:contentDescriptionUnchecked="@string/incall_content_description_video_on"
84      />
85    <include
86      layout="@layout/switch_camera_button"
87      android:layout_width="@dimen/videocall_button_size"
88      android:layout_height="@dimen/videocall_button_size"
89      android:layout_marginBottom="@dimen/videocall_button_spacing"/>
90  </LinearLayout>
91
92  <FrameLayout
93    android:id="@+id/videocall_switch_controls"
94    android:layout_width="wrap_content"
95    android:layout_height="wrap_content"
96    android:layout_marginBottom="36dp"
97    android:layout_marginEnd="24dp"
98    android:layout_alignParentBottom="true"
99    android:layout_alignParentEnd="true">
100    <ImageButton
101      android:id="@+id/videocall_switch_on_hold"
102      style="@style/Incall.Button.VideoCall"
103      android:contentDescription="@string/incall_content_description_swap_calls"
104      android:src="@drawable/quantum_ic_swap_calls_vd_theme_24"
105      android:visibility="gone"
106      tools:visibility="visible"
107      />
108  </FrameLayout>
109
110  <ImageButton
111    android:id="@+id/videocall_end_call"
112    style="@style/Incall.Button.End"
113    android:layout_marginBottom="36dp"
114    android:layout_alignParentBottom="true"
115    android:layout_centerHorizontal="true"
116    android:contentDescription="@string/incall_content_description_end_call"
117    android:visibility="visible"/>
118
119</RelativeLayout>
120