Support scrolling of Updates tab.
This commit changes the Updates tab to use a ListView for its items. The
ListView has an extra header item that overlaps with the carousel tab
(if present), and implements the scrolling which hides part of the
carousel (excluding the tab itself).
The fragment now basically contains only a list view, which will store
all the items, and an optional title (I need to check if that's actually
needed, but for now it is there).
The extra header is implemented with a layout: for those configurations
where there is a carousel, the header contains a placeholder which is
the same size as the carousel; for those configurations where there is
no carousel, the header will be an empty FrameLayout (but in those same
cases, there is a header at the top of the list in the fragment's
layout).
This commit does not take care of making the scrolling work across the
two tabs, e.g., when switching between tabs. I will address those issues
in a follow-up.
Bug: 5119353
Change-Id: I0eb6dcc06d624991ab1f5f8fe1197337ba03286b
diff --git a/res/layout/updates_header_contact.xml b/res/layout/updates_header_contact.xml
new file mode 100644
index 0000000..d401f05
--- /dev/null
+++ b/res/layout/updates_header_contact.xml
@@ -0,0 +1,35 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Copyright (C) 2011 The Android Open Source Project
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+-->
+
+<!--
+ This is a header entry in the contact updates list.
+ Add a first item that gives us enough space to show the carousel
+-->
+<view
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:ex="http://schemas.android.com/apk/res/com.android.contacts"
+ class="com.android.contacts.widget.ProportionalLayout"
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ ex:ratio="0.5"
+ ex:direction="widthToHeight">
+
+ <!-- Put a dummy view here because the ProportionalLayout requires one -->
+ <FrameLayout
+ android:layout_width="match_parent"
+ android:layout_height="match_parent"/>
+
+</view>