replicant-packages_apps_Email/res/layout-sw600dp/message_view_fragment.xml
Jorge Lugo 8e779e627a Accessibility improvements
TalkBack functions properly with MessageList items, as well as
"reply," "reply-all," and "forward" buttons while viewing messages.
It is now also possible to switch accounts using only a dpad
or trackball. Finally, EditText fields in account setup also work
with TalkBack now.

Checkmarks don't work with Talkback, but this I have confirmed and
reported it as frameworks bug.

Change-Id: I7f72682a517eef4fa122241c675026fe7997ac64
2011-07-15 09:08:13 -07:00

374 lines
16 KiB
XML

<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (C) 2010 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.
-->
<!-- tablet -->
<FrameLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#ffffffff"
>
<ProgressBar
android:id="@+id/loading_progress"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
style="?android:attr/progressBarStyleLarge"
/>
<RelativeLayout
android:id="@+id/main_panel"
android:layout_width="match_parent"
android:layout_height="match_parent"
>
<!-- Subject -->
<TextView
android:id="@+id/subject"
android:layout_width="fill_parent"
android:layout_height="48dip"
android:layout_alignParentTop="true"
android:layout_marginTop="0dip"
android:layout_marginLeft="32dip"
android:layout_marginRight="32dip"
android:gravity="center_vertical"
style="@style/message_view_subject"
/>
<View
android:id="@+id/subject_divider"
android:layout_marginBottom="16dip"
android:layout_below="@id/subject"
android:layout_width="match_parent"
android:layout_marginLeft="16dip"
android:layout_marginRight="16dip"
style="@style/message_view_horizontal_divider"
/>
<!-- Badge -->
<ImageButton
android:id="@+id/badge"
android:layout_width="64dip"
android:layout_height="64dip"
android:layout_below="@id/subject_divider"
android:layout_alignLeft="@id/subject"
android:padding="0dip"
android:scaleType="fitCenter"
/>
<!-- Background for sender name and buttons -->
<View
android:id="@+id/header_background"
android:layout_width="0dip"
android:layout_height="64dip"
android:layout_below="@id/subject_divider"
android:layout_toRightOf="@id/badge"
android:layout_alignRight="@id/subject"
android:background="@drawable/message_header_bg"
/>
<!--
reply, reply-all, forward, Star
These buttons can all be gone at runtime, so don't refer to individual buttons from
other views. Instead refer to this outer layout.
-->
<LinearLayout
android:id="@+id/forward_reply_buttons"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="8dip"
android:layout_marginLeft="0dip"
android:layout_alignTop="@id/header_background"
android:layout_alignRight="@id/header_background"
android:orientation="horizontal"
>
<ImageButton
android:id="@+id/reply"
android:layout_marginRight="16dip"
android:contentDescription="@string/reply_action"
android:src="@drawable/ic_reply"
android:visibility="gone"
style="@style/message_view_action_buttons"
/>
<ImageButton
android:id="@+id/reply_all"
android:layout_marginRight="16dip"
android:contentDescription="@string/reply_all_action"
android:src="@drawable/ic_reply_all"
android:visibility="gone"
style="@style/message_view_action_buttons"
/>
<ImageButton
android:id="@+id/forward"
android:layout_marginRight="16dip"
android:contentDescription="@string/forward_action"
android:src="@drawable/ic_forward"
android:visibility="gone"
style="@style/message_view_action_buttons"
/>
<ImageButton
android:id="@+id/favorite"
android:layout_marginRight="16dip"
android:src="@drawable/btn_star_off_normal_email_holo_light"
style="@style/message_view_action_buttons"
/>
</LinearLayout>
<!-- presence, sender address, sender name: make them center_vertical -->
<LinearLayout
android:id="@+id/presence_from_name"
android:layout_width="0dip"
android:layout_height="0dip"
android:layout_alignTop="@id/header_background"
android:layout_alignBottom="@id/header_background"
android:layout_alignLeft="@id/header_background"
android:layout_toLeftOf="@id/forward_reply_buttons"
android:orientation="vertical"
android:gravity="center_vertical"
>
<LinearLayout
android:id="@+id/presence_from_name"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:gravity="center|center_vertical"
>
<!-- Presence icon -->
<ImageView
android:id="@+id/presence"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="0"
android:layout_marginLeft="8dip"
android:layout_marginRight="8dip"
android:src="@android:drawable/presence_offline"
/>
<!-- Sender display name -->
<TextView
android:id="@+id/from_name"
android:layout_width="0dip"
android:layout_height="wrap_content"
android:layout_weight="1"
android:textSize="18dip"
android:textColor="@color/text_primary_color"
android:textStyle="bold"
android:singleLine="true"
android:ellipsize="end"
/>
</LinearLayout>
<!-- From address -->
<TextView
android:id="@+id/from_address"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="2dip"
android:layout_marginLeft="40dip"
android:textSize="14dip"
android:textColor="@color/text_secondary_color"
android:singleLine="true"
android:ellipsize="end"
/>
</LinearLayout>
<!-- Addresses, timestamp -->
<FrameLayout
android:id="@+id/message_view_subheader"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="32dip"
android:layout_marginRight="32dip"
android:layout_below="@id/header_background"
>
<include layout="@layout/message_view_subheader" />
</FrameLayout>
<View
android:id="@+id/address_divider"
android:layout_width="0dip"
android:layout_below="@id/message_view_subheader"
android:layout_alignLeft="@id/badge"
android:layout_alignRight="@id/header_background"
style="@style/message_view_horizontal_divider"
/>
<!--
The rest: tab + body + command buttons. Use LinearLayout to easily hide part of
them.
-->
<LinearLayout
android:layout_width="0dip"
android:layout_height="0dip"
android:layout_below="@id/address_divider"
android:layout_alignLeft="@id/badge"
android:layout_alignRight="@id/header_background"
android:layout_alignParentBottom="true"
android:orientation="vertical"
>
<!-- Tabs + divider -->
<!-- Can't use a RelativeLayout, because tabs can be GONE -->
<LinearLayout
android:id="@+id/message_tabs_section"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="40dip"
android:layout_marginLeft="14dip"
android:orientation="horizontal"
>
<Button
android:id="@+id/show_message"
android:layout_width="128dip"
android:layout_height="match_parent"
android:gravity="center"
android:text="@string/message_view_show_message_action"
android:textSize="14dip"
android:textColor="@color/text_primary_color"
android:singleLine="true"
android:ellipsize="end"
style="@android:style/Widget.Holo.Light.Tab"
/>
<Button
android:id="@+id/show_invite"
android:layout_width="128dip"
android:layout_height="match_parent"
android:gravity="center"
android:text="@string/message_view_show_invite_action"
android:textSize="14dip"
android:textColor="@color/text_primary_color"
android:singleLine="true"
android:ellipsize="end"
style="@android:style/Widget.Holo.Light.Tab"
/>
<Button
android:id="@+id/show_attachments"
android:layout_width="128dip"
android:layout_height="match_parent"
android:gravity="center"
android:textSize="14dip"
android:textColor="@color/text_primary_color"
android:singleLine="true"
android:ellipsize="end"
style="@android:style/Widget.Holo.Light.Tab"
/>
<!-- filler -->
<View
android:layout_width="0dip"
android:layout_height="0dip"
android:layout_weight="1"
/>
<Button
android:id="@+id/show_pictures"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:gravity="center"
style="@android:style/Widget.Holo.Button.Borderless"
android:padding="0dip"
android:text="@string/message_view_show_pictures_action"
android:textSize="14dip"
android:textColor="@color/text_ternary_color"
android:drawableRight="@drawable/ic_show_images_holo_light"
android:drawablePadding="8dip"
/>
<RelativeLayout
android:id="@+id/always_show_pictures_container"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:visibility="gone"
>
<Button
android:id="@+id/always_show_pictures_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:layout_alignParentRight="true"
android:text="@string/message_view_always_show_pictures_button" />
<TextView
android:id="@+id/always_show_pictures_text"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:layout_toLeftOf="@+id/always_show_pictures_button"
android:text="@string/message_view_always_show_pictures_prompt" />
</RelativeLayout>
<View
android:layout_width="16dip"
android:layout_height="0dip"
/>
</LinearLayout>
<View
android:layout_width="match_parent"
style="@style/message_view_horizontal_divider"
/>
</LinearLayout>
<!-- margin -->
<View
android:layout_width="0dip"
android:layout_height="16dip"
/>
<!-- content area - only one of them is visible at a time -->
<!-- Message body -->
<WebView
android:id="@+id/message_content"
android:layout_width="match_parent"
android:layout_height="0dip"
android:layout_weight="1"
android:layout_marginLeft="14dip"
android:layout_marginRight="14dip"
android:background="#ffffffff"
android:visibility="gone"
/>
<!-- Invite: Even though this section is only for MessageViewFragment,
Its visibility is controlled by MessageViewFragmentBase for simplicity.
MessageFileViewFragment shouldn't touch this. -->
<ScrollView
android:id="@+id/invite_scroll"
android:layout_width="match_parent"
android:layout_height="0dip"
android:layout_weight="1"
android:layout_marginLeft="14dip"
android:layout_marginRight="14dip"
android:visibility="gone"
>
<include layout="@layout/message_view_invitation" />
</ScrollView>
<!-- Attachments -->
<ScrollView
android:id="@+id/attachments_scroll"
android:layout_width="match_parent"
android:layout_height="0dip"
android:layout_weight="1"
android:layout_marginLeft="14dip"
android:layout_marginRight="14dip"
android:visibility="gone"
>
<LinearLayout
android:id="@+id/attachments"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@color/message_view_info_back_color"
android:divider="?android:attr/dividerHorizontal"
android:showDividers="beginning|middle|end"
/>
</ScrollView>
</LinearLayout>
</RelativeLayout>
</FrameLayout>