1 <?xml version="1.0" encoding="utf-8"?> 2 3 <!-- 4 ~ Copyright (C) 2016 The Android Open Source Project 5 ~ 6 ~ Licensed under the Apache License, Version 2.0 (the "License"); 7 ~ you may not use this file except in compliance with the License. 8 ~ You may obtain a copy of the License at 9 ~ 10 ~ http://www.apache.org/licenses/LICENSE-2.0 11 ~ 12 ~ Unless required by applicable law or agreed to in writing, software 13 ~ distributed under the License is distributed on an "AS IS" BASIS, 14 ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 ~ See the License for the specific language governing permissions and 16 ~ limitations under the License 17 --> 18 19 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 20 android:layout_width="match_parent" 21 android:layout_height="match_parent"> 22 <LinearLayout 23 android:layout_width="match_parent" 24 android:layout_height="match_parent" 25 android:orientation="vertical"> 26 27 <!-- Primary "call card" block, for the foreground call. --> 28 <LinearLayout 29 android:id="@+id/primary_call_info_container" 30 android:layout_width="match_parent" 31 android:layout_height="0dp" 32 android:layout_weight="1" 33 android:orientation="vertical" 34 android:elevation="@dimen/primary_call_elevation" 35 android:background="@color/incall_call_banner_background_color" 36 android:paddingTop="@dimen/call_banner_primary_call_container_top_padding" 37 android:clipChildren="false" 38 android:clipToPadding="false" 39 android:gravity="bottom"> 40 41 <include layout="@layout/primary_call_info" 42 android:layout_width="match_parent" 43 android:layout_height="0dp" 44 android:layout_weight="1" 45 android:minHeight="@dimen/call_banner_height" 46 android:animateLayoutChanges="true" 47 android:gravity="center" /> 48 49 <fragment android:name="com.android.incallui.CallButtonFragment" 50 android:id="@+id/callButtonFragment" 51 android:layout_width="match_parent" 52 android:layout_height="wrap_content" /> 53 54 </LinearLayout> 55 56 <RelativeLayout 57 android:layout_width="match_parent" 58 android:layout_height="0dp" 59 android:layout_weight="2"> 60 61 <FrameLayout 62 android:layout_height="match_parent" 63 android:layout_width="match_parent" 64 android:id="@+id/call_card_content"> 65 66 <!-- Contact photo for primary call info --> 67 <ImageView android:id="@+id/photoLarge" 68 android:layout_width="match_parent" 69 android:layout_height="match_parent" 70 android:scaleType="centerCrop" 71 android:importantForAccessibility="no" 72 android:background="@color/incall_photo_background_color" 73 android:src="@drawable/img_no_image_automirrored" /> 74 75 <!-- Call context --> 76 <LinearLayout 77 android:id="@+id/contact_context" 78 android:layout_height="match_parent" 79 android:layout_width="match_parent" 80 android:orientation="vertical" 81 android:background="@color/incall_background_color" 82 android:visibility="gone"> 83 <TextView android:id="@+id/contactContextTitle" 84 android:textSize="@dimen/contact_context_title_text_size" 85 android:textColor="@color/contact_context_title_text_color" 86 android:fontFamily="sans-serif-medium" 87 android:layout_width="wrap_content" 88 android:layout_height="wrap_content" 89 android:layout_gravity="center_horizontal" 90 android:layout_marginBottom="@dimen/contact_context_title_margin_bottom"/> 91 <ListView android:id="@+id/contactContextInfo" 92 android:layout_width="match_parent" 93 android:layout_height="match_parent" 94 android:divider="@null" 95 android:dividerHeight="@dimen/contact_context_list_item_padding"/> 96 </LinearLayout> 97 </FrameLayout> 98 99 <fragment android:name="com.android.incallui.VideoCallFragment" 100 android:id="@+id/videoCallFragment" 101 android:layout_alignParentTop="true" 102 android:layout_gravity="top|center_horizontal" 103 android:layout_width="match_parent" 104 android:layout_height="match_parent" /> 105 106 <!-- Progress spinner, useful for indicating pending operations such as upgrade to video. --> 107 <FrameLayout 108 android:id="@+id/progressSpinner" 109 android:background="#63000000" 110 android:layout_width="fill_parent" 111 android:layout_height="fill_parent" 112 android:layout_centerHorizontal="true" 113 android:layout_centerVertical="true" 114 android:visibility="gone"> 115 116 <ProgressBar 117 android:id="@+id/progress_bar" 118 style="@android:style/Widget.Material.ProgressBar" 119 android:layout_gravity="center" 120 android:layout_width="48dp" 121 android:layout_height="48dp" 122 android:indeterminate="true" /> 123 124 </FrameLayout> 125 126 127 <include layout="@layout/manage_conference_call_button" 128 android:layout_width="match_parent" 129 android:layout_height="wrap_content" /> 130 131 <!-- Placeholder for various fragments that are added dynamically underneath the caller info. --> 132 <FrameLayout 133 android:id="@+id/answer_and_dialpad_container" 134 android:layout_gravity="bottom|center_horizontal" 135 android:layout_alignParentBottom="true" 136 android:layout_width="match_parent" 137 android:layout_height="match_parent" 138 android:elevation="@dimen/dialpad_elevation" /> 139 140 <FrameLayout 141 android:id="@+id/floating_end_call_action_button_container" 142 android:layout_width="@dimen/end_call_floating_action_button_diameter" 143 android:layout_height="@dimen/end_call_floating_action_button_diameter" 144 android:background="@drawable/fab_red" 145 android:layout_alignParentBottom="true" 146 android:layout_centerHorizontal="true" 147 android:layout_marginBottom="@dimen/end_call_button_margin_bottom"> 148 149 <ImageButton android:id="@+id/floating_end_call_action_button" 150 android:layout_width="match_parent" 151 android:layout_height="match_parent" 152 android:background="@drawable/end_call_background" 153 android:src="@drawable/fab_ic_end_call" 154 android:scaleType="center" 155 android:contentDescription="@string/onscreenEndCallText" /> 156 157 </FrameLayout> 158 159 <TextView android:id="@+id/connectionServiceMessage" 160 android:layout_width="match_parent" 161 android:layout_height="wrap_content" 162 android:textAppearance="?android:attr/textAppearanceMedium" 163 android:visibility="gone" 164 android:padding="@dimen/call_banner_side_padding" 165 android:background="@android:color/white" /> 166 167 </RelativeLayout> 168 169 </LinearLayout> 170 <!-- Secondary "Call info" block, for the background ("on hold") call. --> 171 <include layout="@layout/secondary_call_info" /> 172 </RelativeLayout>