RCS: Support for Enrich Call
- Added "Make Rich Call" option to regular and smart searches.
- Dynamically fetch RCS capability of MDN and show Enrich call option
to initiate Enrich call.
- Show Enrich call log item in call log details.
- Added "Make Rich Call" action to call log item.
- RCS specific customization in InCallUI screen
showing RCS content in a new layout on top of InCallUI
- Handling of all actions on top of RCS contents
- Images and dimentions of new RCS layout
Change-Id: I03de0a71fac54ee152523ac14032be8ad40b0eef
CRs-Fixed: 1076039
diff --git a/InCallUI/res/anim/pulse.xml b/InCallUI/res/anim/pulse.xml
new file mode 100644
index 0000000..b4415b3
--- /dev/null
+++ b/InCallUI/res/anim/pulse.xml
@@ -0,0 +1,45 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+ Copyright (c) 2016, The Linux Foundation. All rights reserved.
+
+ Redistribution and use in source and binary forms, with or without
+ modification, are permitted provided that the following conditions are
+ met:
+ * Redistributions of source code must retain the above copyright
+ notice, this list of conditions and the following disclaimer.
+ * Redistributions in binary form must reproduce the above
+ copyright notice, this list of conditions and the following
+ disclaimer in the documentation and/or other materials provided
+ with the distribution.
+ * Neither the name of The Linux Foundation nor the names of its
+ contributors may be used to endorse or promote products derived
+ from this software without specific prior written permission.
+
+ THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED
+ WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT
+ ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS
+ BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+ CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+ SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
+ BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+ WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
+ OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
+ IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ -->
+
+<set xmlns:android="http://schemas.android.com/apk/res/android"
+ android:fillAfter="true"
+ android:fillEnabled="true">
+
+ <scale xmlns:android="http://schemas.android.com/apk/res/android"
+ android:duration="1000"
+ android:fromXScale="0.8"
+ android:fromYScale="0.8"
+ android:pivotX="50%"
+ android:pivotY="50%"
+ android:repeatCount="-1"
+ android:repeatMode="reverse"
+ android:toXScale="1"
+ android:toYScale="1" />
+</set>
diff --git a/InCallUI/res/anim/scale_in.xml b/InCallUI/res/anim/scale_in.xml
new file mode 100644
index 0000000..04c8948
--- /dev/null
+++ b/InCallUI/res/anim/scale_in.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+ Copyright (c) 2016, The Linux Foundation. All rights reserved.
+
+ Redistribution and use in source and binary forms, with or without
+ modification, are permitted provided that the following conditions are
+ met:
+ * Redistributions of source code must retain the above copyright
+ notice, this list of conditions and the following disclaimer.
+ * Redistributions in binary form must reproduce the above
+ copyright notice, this list of conditions and the following
+ disclaimer in the documentation and/or other materials provided
+ with the distribution.
+ * Neither the name of The Linux Foundation nor the names of its
+ contributors may be used to endorse or promote products derived
+ from this software without specific prior written permission.
+
+ THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED
+ WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT
+ ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS
+ BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+ CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+ SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
+ BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+ WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
+ OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
+ IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ -->
+<set xmlns:android="http://schemas.android.com/apk/res/android"
+ android:fillEnabled="true"
+ android:fillAfter="true">
+ <scale
+
+ android:interpolator="@android:anim/accelerate_decelerate_interpolator"
+ android:fromXScale="1.0"
+ android:toXScale="0.0"
+ android:fromYScale="1.0"
+ android:toYScale="0.0"
+ android:fillAfter="false"
+ />
+
+</set>
\ No newline at end of file
diff --git a/InCallUI/res/anim/scale_in_material.xml b/InCallUI/res/anim/scale_in_material.xml
new file mode 100644
index 0000000..7f2cf2a
--- /dev/null
+++ b/InCallUI/res/anim/scale_in_material.xml
@@ -0,0 +1,56 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+ Copyright (c) 2016, The Linux Foundation. All rights reserved.
+
+ Redistribution and use in source and binary forms, with or without
+ modification, are permitted provided that the following conditions are
+ met:
+ * Redistributions of source code must retain the above copyright
+ notice, this list of conditions and the following disclaimer.
+ * Redistributions in binary form must reproduce the above
+ copyright notice, this list of conditions and the following
+ disclaimer in the documentation and/or other materials provided
+ with the distribution.
+ * Neither the name of The Linux Foundation nor the names of its
+ contributors may be used to endorse or promote products derived
+ from this software without specific prior written permission.
+
+ THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED
+ WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT
+ ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS
+ BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+ CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+ SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
+ BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+ WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
+ OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
+ IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ -->
+<set xmlns:android="http://schemas.android.com/apk/res/android"
+ android:fillEnabled="true"
+ android:fillAfter="true">
+ <scale
+
+ android:interpolator="@android:anim/accelerate_decelerate_interpolator"
+ android:duration="325"
+ android:fromXScale="1.0"
+ android:toXScale="1.0"
+ android:fromYScale="1.0"
+ android:toYScale="0.0"
+ android:fillAfter="false"
+ />
+
+ <scale
+
+ android:interpolator="@android:anim/accelerate_decelerate_interpolator"
+ android:startOffset="75"
+ android:duration="300"
+ android:fromXScale="1.0"
+ android:toXScale="0.0"
+ android:fromYScale="1.0"
+ android:toYScale="1.0"
+ android:fillAfter="false"
+ />
+
+</set>
diff --git a/InCallUI/res/anim/scale_out.xml b/InCallUI/res/anim/scale_out.xml
new file mode 100644
index 0000000..191f275
--- /dev/null
+++ b/InCallUI/res/anim/scale_out.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+ Copyright (c) 2016, The Linux Foundation. All rights reserved.
+
+ Redistribution and use in source and binary forms, with or without
+ modification, are permitted provided that the following conditions are
+ met:
+ * Redistributions of source code must retain the above copyright
+ notice, this list of conditions and the following disclaimer.
+ * Redistributions in binary form must reproduce the above
+ copyright notice, this list of conditions and the following
+ disclaimer in the documentation and/or other materials provided
+ with the distribution.
+ * Neither the name of The Linux Foundation nor the names of its
+ contributors may be used to endorse or promote products derived
+ from this software without specific prior written permission.
+
+ THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED
+ WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT
+ ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS
+ BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+ CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+ SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
+ BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+ WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
+ OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
+ IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ -->
+<set xmlns:android="http://schemas.android.com/apk/res/android"
+ android:fillEnabled="true"
+ android:fillAfter="true">
+ <scale
+
+ android:interpolator="@android:anim/accelerate_decelerate_interpolator"
+ android:fromXScale="0.0"
+ android:toXScale="1.0"
+ android:fromYScale="0.0"
+ android:toYScale="1.0"
+ android:fillAfter="false"
+ />
+
+</set>
\ No newline at end of file
diff --git a/InCallUI/res/anim/scale_out_material.xml b/InCallUI/res/anim/scale_out_material.xml
new file mode 100644
index 0000000..ac8959c
--- /dev/null
+++ b/InCallUI/res/anim/scale_out_material.xml
@@ -0,0 +1,55 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+ Copyright (c) 2016, The Linux Foundation. All rights reserved.
+
+ Redistribution and use in source and binary forms, with or without
+ modification, are permitted provided that the following conditions are
+ met:
+ * Redistributions of source code must retain the above copyright
+ notice, this list of conditions and the following disclaimer.
+ * Redistributions in binary form must reproduce the above
+ copyright notice, this list of conditions and the following
+ disclaimer in the documentation and/or other materials provided
+ with the distribution.
+ * Neither the name of The Linux Foundation nor the names of its
+ contributors may be used to endorse or promote products derived
+ from this software without specific prior written permission.
+
+ THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED
+ WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT
+ ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS
+ BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+ CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+ SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
+ BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+ WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
+ OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
+ IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ -->
+<set xmlns:android="http://schemas.android.com/apk/res/android"
+ android:fillEnabled="true"
+ android:fillAfter="true">
+ <scale
+
+ android:interpolator="@android:anim/accelerate_decelerate_interpolator"
+ android:fromXScale="0.0"
+ android:duration="275"
+ android:toXScale="1.0"
+ android:fromYScale="1.0"
+ android:toYScale="1.0"
+ android:fillAfter="false"
+ />
+
+ <scale
+ android:interpolator="@android:anim/accelerate_decelerate_interpolator"
+ android:startOffset="25"
+ android:duration="350"
+ android:fromXScale="1.0"
+ android:toXScale="1.0"
+ android:fromYScale="0.0"
+ android:toYScale="1.0"
+ android:fillAfter="false"
+ />
+
+</set>
diff --git a/InCallUI/res/drawable-xxhdpi/enrich_details_bg.xml b/InCallUI/res/drawable-xxhdpi/enrich_details_bg.xml
new file mode 100644
index 0000000..38cdf18
--- /dev/null
+++ b/InCallUI/res/drawable-xxhdpi/enrich_details_bg.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ Copyright (c) 2016, The Linux Foundation. All rights reserved.
+
+ Redistribution and use in source and binary forms, with or without
+ modification, are permitted provided that the following conditions are
+ met:
+ * Redistributions of source code must retain the above copyright
+ notice, this list of conditions and the following disclaimer.
+ * Redistributions in binary form must reproduce the above
+ copyright notice, this list of conditions and the following
+ disclaimer in the documentation and/or other materials provided
+ with the distribution.
+ * Neither the name of The Linux Foundation nor the names of its
+ contributors may be used to endorse or promote products derived
+ from this software without specific prior written permission.
+
+ THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED
+ WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT
+ ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS
+ BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+ CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+ SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
+ BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+ WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
+ OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
+ IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ -->
+<shape xmlns:android="http://schemas.android.com/apk/res/android"
+ android:shape="rectangle">
+ <corners
+ android:bottomLeftRadius="@dimen/card_corner_radius"
+ android:bottomRightRadius="@dimen/card_corner_radius"/>
+ <solid android:color="@color/enrichDetailsBackground"/>
+</shape>
\ No newline at end of file
diff --git a/InCallUI/res/drawable-xxhdpi/ic_rcs_collpase.png b/InCallUI/res/drawable-xxhdpi/ic_rcs_collpase.png
new file mode 100644
index 0000000..6d70ec1
--- /dev/null
+++ b/InCallUI/res/drawable-xxhdpi/ic_rcs_collpase.png
Binary files differ
diff --git a/InCallUI/res/drawable-xxhdpi/ic_rcs_expand.png b/InCallUI/res/drawable-xxhdpi/ic_rcs_expand.png
new file mode 100644
index 0000000..1fac46d
--- /dev/null
+++ b/InCallUI/res/drawable-xxhdpi/ic_rcs_expand.png
Binary files differ
diff --git a/InCallUI/res/drawable-xxxhdpi/ic_enrich_call_white_24dp.png b/InCallUI/res/drawable-xxxhdpi/ic_enrich_call_white_24dp.png
new file mode 100644
index 0000000..936dd6c
--- /dev/null
+++ b/InCallUI/res/drawable-xxxhdpi/ic_enrich_call_white_24dp.png
Binary files differ
diff --git a/InCallUI/res/drawable/normal_call_bg.xml b/InCallUI/res/drawable/normal_call_bg.xml
new file mode 100644
index 0000000..7c4bca9
--- /dev/null
+++ b/InCallUI/res/drawable/normal_call_bg.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ Copyright (c) 2016, The Linux Foundation. All rights reserved.
+
+ Redistribution and use in source and binary forms, with or without
+ modification, are permitted provided that the following conditions are
+ met:
+ * Redistributions of source code must retain the above copyright
+ notice, this list of conditions and the following disclaimer.
+ * Redistributions in binary form must reproduce the above
+ copyright notice, this list of conditions and the following
+ disclaimer in the documentation and/or other materials provided
+ with the distribution.
+ * Neither the name of The Linux Foundation nor the names of its
+ contributors may be used to endorse or promote products derived
+ from this software without specific prior written permission.
+
+ THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED
+ WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT
+ ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS
+ BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+ CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+ SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
+ BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+ WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
+ OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
+ IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ -->
+<shape xmlns:android="http://schemas.android.com/apk/res/android"
+ android:shape="rectangle">
+ <corners
+ android:topRightRadius="@dimen/card_corner_radius"
+ android:topLeftRadius="@dimen/card_corner_radius" />
+ <solid android:color="@color/normalCallBackground"/>
+</shape>
diff --git a/InCallUI/res/drawable/ring.xml b/InCallUI/res/drawable/ring.xml
new file mode 100644
index 0000000..201b128
--- /dev/null
+++ b/InCallUI/res/drawable/ring.xml
@@ -0,0 +1,41 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+ Copyright (c) 2016, The Linux Foundation. All rights reserved.
+
+ Redistribution and use in source and binary forms, with or without
+ modification, are permitted provided that the following conditions are
+ met:
+ * Redistributions of source code must retain the above copyright
+ notice, this list of conditions and the following disclaimer.
+ * Redistributions in binary form must reproduce the above
+ copyright notice, this list of conditions and the following
+ disclaimer in the documentation and/or other materials provided
+ with the distribution.
+ * Neither the name of The Linux Foundation nor the names of its
+ contributors may be used to endorse or promote products derived
+ from this software without specific prior written permission.
+
+ THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED
+ WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT
+ ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS
+ BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+ CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+ SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
+ BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+ WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
+ OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
+ IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ -->
+<shape
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ android:shape="oval">
+
+ <stroke
+ android:width="1dp"
+ android:color="@android:color/white"/>
+
+ <size
+ android:width="52dp"
+ android:height="52dp"/>
+</shape>
diff --git a/InCallUI/res/drawable/urgent_call_bg.xml b/InCallUI/res/drawable/urgent_call_bg.xml
new file mode 100644
index 0000000..69b10da
--- /dev/null
+++ b/InCallUI/res/drawable/urgent_call_bg.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ Copyright (c) 2016, The Linux Foundation. All rights reserved.
+
+ Redistribution and use in source and binary forms, with or without
+ modification, are permitted provided that the following conditions are
+ met:
+ * Redistributions of source code must retain the above copyright
+ notice, this list of conditions and the following disclaimer.
+ * Redistributions in binary form must reproduce the above
+ copyright notice, this list of conditions and the following
+ disclaimer in the documentation and/or other materials provided
+ with the distribution.
+ * Neither the name of The Linux Foundation nor the names of its
+ contributors may be used to endorse or promote products derived
+ from this software without specific prior written permission.
+
+ THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED
+ WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT
+ ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS
+ BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+ CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+ SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
+ BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+ WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
+ OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
+ IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ -->
+<shape xmlns:android="http://schemas.android.com/apk/res/android"
+ android:shape="rectangle">
+ <corners
+ android:topRightRadius="@dimen/card_corner_radius"
+ android:topLeftRadius="@dimen/card_corner_radius" />
+ <solid android:color="@color/urgentCallBackground"/>
+</shape>
diff --git a/InCallUI/res/layout-h400dp/call_card_fragment.xml b/InCallUI/res/layout-h400dp/call_card_fragment.xml
index ccff385..d75075c 100644
--- a/InCallUI/res/layout-h400dp/call_card_fragment.xml
+++ b/InCallUI/res/layout-h400dp/call_card_fragment.xml
@@ -123,12 +123,19 @@
</FrameLayout>
+ <fragment android:name="com.android.incallui.RcsCallFragment"
+ android:id="@+id/enrichcall_container"
+ android:layout_gravity="top|center_horizontal"
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:layout_below="@id/primary_call_info_container" />
+
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:layout_centerHorizontal="true"
- android:layout_below="@id/primary_call_info_container">
+ android:layout_below="@id/enrichcall_container">
<include layout="@layout/manage_conference_call_button"
android:layout_width="match_parent"
diff --git a/InCallUI/res/layout-w500dp-land/call_card_fragment.xml b/InCallUI/res/layout-w500dp-land/call_card_fragment.xml
index 343c4da..4d59cb7 100644
--- a/InCallUI/res/layout-w500dp-land/call_card_fragment.xml
+++ b/InCallUI/res/layout-w500dp-land/call_card_fragment.xml
@@ -82,6 +82,12 @@
</FrameLayout>
+ <fragment android:name="com.android.incallui.RcsCallFragment"
+ android:id="@+id/enrichcall_container"
+ android:layout_gravity="top|center_horizontal"
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content" />
+
<fragment android:name="com.android.incallui.VideoCallFragment"
android:layout_alignParentStart="true"
android:layout_gravity="start|center_vertical"
diff --git a/InCallUI/res/layout/call_card_fragment.xml b/InCallUI/res/layout/call_card_fragment.xml
index 2a4c3e2..3a1c61d 100644
--- a/InCallUI/res/layout/call_card_fragment.xml
+++ b/InCallUI/res/layout/call_card_fragment.xml
@@ -98,12 +98,19 @@
</FrameLayout>
+ <fragment android:name="com.android.incallui.RcsCallFragment"
+ android:id="@+id/enrichcall_container"
+ android:layout_gravity="top|center_horizontal"
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:layout_below="@id/primary_call_info_container" />
+
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:layout_centerHorizontal="true"
- android:layout_below="@id/primary_call_info_container">
+ android:layout_below="@id/enrichcall_container">
<include layout="@layout/manage_conference_call_button"
android:layout_width="match_parent"
diff --git a/InCallUI/res/layout/enrich_call_content.xml b/InCallUI/res/layout/enrich_call_content.xml
new file mode 100644
index 0000000..233e901
--- /dev/null
+++ b/InCallUI/res/layout/enrich_call_content.xml
@@ -0,0 +1,127 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+ Copyright (c) 2016, The Linux Foundation. All rights reserved.
+
+ Redistribution and use in source and binary forms, with or without
+ modification, are permitted provided that the following conditions are
+ met:
+ * Redistributions of source code must retain the above copyright
+ notice, this list of conditions and the following disclaimer.
+ * Redistributions in binary form must reproduce the above
+ copyright notice, this list of conditions and the following
+ disclaimer in the documentation and/or other materials provided
+ with the distribution.
+ * Neither the name of The Linux Foundation nor the names of its
+ contributors may be used to endorse or promote products derived
+ from this software without specific prior written permission.
+
+ THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED
+ WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT
+ ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS
+ BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+ CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+ SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
+ BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+ WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
+ OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
+ IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ -->
+<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
+ android:layout_width="match_parent"
+ android:layout_height="match_parent"
+ android:visibility="gone"
+ android:gravity="center">
+
+ <LinearLayout
+ android:id="@+id/enrich_main"
+ android:layout_width="@dimen/enrich_min_width"
+ android:layout_height="wrap_content"
+ android:layout_centerHorizontal="true"
+ android:layout_marginTop="@dimen/main_layout_margin_top"
+ android:orientation="vertical">
+
+ <TextView
+ android:id="@+id/call_type"
+ android:layout_width="match_parent"
+ android:layout_height="@dimen/call_type_text_height"
+ android:background="@drawable/normal_call_bg"
+ android:gravity="center_vertical"
+ android:paddingLeft="@dimen/call_type_padding_left"
+ android:textColor="@android:color/white"
+ android:textSize="@dimen/call_type_font_size" />
+
+
+ <LinearLayout
+ android:id="@+id/enrich_details"
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:background="@drawable/enrich_details_bg"
+ android:orientation="vertical">
+
+ <TextView
+ android:id="@+id/notes"
+ android:layout_width="match_parent"
+ android:layout_height="@dimen/notes_text_height"
+ android:ellipsize="end"
+ android:gravity="center_vertical"
+ android:maxLines="1"
+ android:paddingLeft="5dp"
+ android:textColor="@android:color/black"
+ android:textSize="@dimen/notes_font_size" />
+
+ <LinearLayout
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:orientation="horizontal" >
+
+ <ImageView
+ android:id="@+id/picture"
+ android:layout_width="0dp"
+ android:layout_height="@dimen/mini_view_picture_height"
+ android:layout_weight="1"
+ android:paddingLeft="@dimen/picture_layout_padding"
+ android:layout_marginTop="@dimen/picture_layout_padding"
+ android:layout_marginBottom="@dimen/picture_layout_padding"
+ android:scaleType="centerCrop"/>
+
+ <Space
+ android:layout_width="@dimen/picture_layout_padding"
+ android:layout_height="wrap_content" />
+
+ <ImageView
+ android:id="@+id/map"
+ android:layout_width="0dp"
+ android:layout_height="@dimen/mini_view_picture_height"
+ android:layout_weight="1"
+ android:paddingRight="@dimen/picture_layout_padding"
+ android:layout_marginTop="@dimen/picture_layout_padding"
+ android:layout_marginBottom="@dimen/picture_layout_padding"
+ android:scaleType="centerCrop" />
+ </LinearLayout>
+ </LinearLayout>
+ </LinearLayout>
+
+ <RelativeLayout
+ android:layout_width="@dimen/button_layout_width"
+ android:layout_height="@dimen/button_layout_height"
+ android:layout_alignLeft="@+id/enrich_main"
+ android:layout_marginLeft="@dimen/button_margin_left">
+
+ <ImageView
+ android:id="@+id/ring_anim"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:layout_centerInParent="true"
+ android:src="@drawable/ring" />
+
+
+ <ImageView
+ android:id="@+id/expand_collapse"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:layout_centerInParent="true"
+ android:src="@drawable/ic_rcs_collpase" />
+ </RelativeLayout>
+</RelativeLayout>
+
diff --git a/InCallUI/res/values/colors.xml b/InCallUI/res/values/colors.xml
index 99cf7b0..3764014 100644
--- a/InCallUI/res/values/colors.xml
+++ b/InCallUI/res/values/colors.xml
@@ -122,4 +122,11 @@
<!-- White background for dialer -->
<color name="background_dialer_white">#ffffff</color>
+
+ <color name="colorPrimary">#3F51B5</color>
+ <color name="colorPrimaryDark">#303F9F</color>
+ <color name="colorAccent">#FF4081</color>
+ <color name="urgentCallBackground">#f40707</color>
+ <color name="normalCallBackground">#0ab5e0</color>
+ <color name="enrichDetailsBackground">#FFFFFF</color>
</resources>
diff --git a/InCallUI/res/values/dimens.xml b/InCallUI/res/values/dimens.xml
index 3a926b6..357c582 100644
--- a/InCallUI/res/values/dimens.xml
+++ b/InCallUI/res/values/dimens.xml
@@ -151,4 +151,28 @@
<dimen name="business_contact_context_detail_font_size">12sp</dimen>
<dimen name="contact_context_small_photo_size">40dp</dimen>
+
+ <!-- RCS dimensions. -->
+ <dimen name="enrich_miniview_layout_height">126.6dp</dimen>
+ <dimen name="enrich_miniview_layout_width">306.6dp</dimen>
+ <dimen name="enrich_detail_margin">0dp</dimen>
+ <dimen name="enrich_min_width">306.6dp</dimen>
+ <dimen name="call_type_font_size">18dp</dimen>
+ <dimen name="notes_font_size">15dp</dimen>
+ <dimen name="max_height_for_picture">60dp</dimen>
+ <dimen name="card_corner_radius">5dp</dimen>
+ <dimen name="call_type_text_height">33dp</dimen>
+ <dimen name="notes_text_height">40dp</dimen>
+ <dimen name="call_type_padding_left">60dp</dimen>
+ <dimen name="picture_layout_padding">3.3dp</dimen>
+ <dimen name="button_margin_top">13dp</dimen>
+ <dimen name="button_margin_left">-22dp</dimen>
+ <dimen name="enrich_details_margin_left">17dp</dimen>
+ <integer name="expand_duration">375</integer>
+ <integer name="collapse_duration">300</integer>
+ <dimen name="button_layout_width">64dp</dimen>
+ <dimen name="button_layout_height">64dp</dimen>
+ <dimen name="main_layout_margin_top">17dp</dimen>
+ <dimen name="mini_view_picture_height">50dp</dimen>
+ <dimen name="expanded_view_picture_height">143.3dp</dimen>
</resources>
diff --git a/InCallUI/res/values/qtistrings.xml b/InCallUI/res/values/qtistrings.xml
index 8f068a0..afa29ab 100644
--- a/InCallUI/res/values/qtistrings.xml
+++ b/InCallUI/res/values/qtistrings.xml
@@ -191,4 +191,27 @@
<string name="video_call_picture_mode_incoming_video">Incoming Video</string>
<string name="video_call_picture_mode_cancel_option">Cancel</string>
<string name="video_call_picture_mode_save_option">Save</string>
+
+
+ <!-- Enrich call strings -->
+ <string name="notification_incoming_enrich_call_high_priority">Incoming urgent call</string>
+ <string name="notification_incoming_enrich_call_normal_priority">Incoming rich call</string>
+ <string name="notification_on_hold_enrich_call_high_priority">Urgent call on hold</string>
+ <string name="notification_on_hold_enrich_call_normal_priority">Rich call on hold</string>
+ <string name="notification_dialing_enrich_call_high_priority">Dialing urgent call</string>
+ <string name="notification_dialing_enrich_call_normal_priority">Dialing rich call</string>
+ <string name="notification_ongoing_enrich_call_high_priority">Ongoing urgent call</string>
+ <string name="notification_ongoing_enrich_call_normal_priority">Ongoing rich call</string>
+ <string name="normal_enrich_call">RICH CALL</string>
+ <string name="urgent_enrich_call">URGENT CALL</string>
+ <string name="rich_call_failed">Rich call failed</string>
+ <string name="urgent_call_failed">Urgent call failed</string>
+ <string name="can_not_launch_image_application">Can not find any application to show shared image</string>
+ <string name="can_not_launch_maps_application">Can not find any application to show maps location</string>
+ <string name="enrich_call_permission">Access Enriched call</string>
+ <string name="access_permission_message">Phone App requires access to photos,
+ media & files on your device to enable Rich Calling. To continue, tap \'YES\'
+ below & \'ALLOW\' on the next screen.</string>
+ <string name="yes">Yes</string>
+ <string name="no">No</string>
</resources>