replicant-packages_apps_Email/res/layout/message_view_fragment.xml
Makoto Onuki a826d3fb03 Pixel perfect: Message view
Still waiting for a few missing assets, but it's done other than that.

The divider change is already merged; new layouts all use the framework style.

It's basically all layout changes, except for:
- Now the recepient address line has "Show details", which shows a dialog with
  all to/cc/bcc addresses with the timestamp.
- Now invite response buttons are checkboxes.
  (But the basic behavior doesn't change -- once you check a response,
  the message will be gone, so you can't change the response later.)

Copied message_header_bg from gmail manuall.  It'll look silly without it.

Bug 3138021
Bug 3307021

Change-Id: I6f7eb91d6104c3143a5c58b0c4c6c19929cea477
2011-01-10 15:51:32 -08:00

259 lines
10 KiB
XML

<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (C) 2008 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.
-->
<!-- small -->
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent"
>
<!-- header area -->
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:background="@drawable/header_card"
android:paddingTop="3dip"
android:paddingBottom="3dip"
android:paddingLeft="3dip"
android:paddingRight="6dip">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:baselineAligned="true" >
<ImageView
android:id="@+id/badge"
android:layout_width="48dip"
android:layout_height="48dip"
android:layout_gravity="center_vertical"
android:layout_marginRight="8dip"
android:layout_marginLeft="2dip"
/>
/>
<ImageView
android:id="@+id/presence"
android:src="@android:drawable/presence_offline"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginRight="5dip"
android:layout_gravity="center_vertical"
android:background="@drawable/quickcontact_presence_bg" />
<TextView
android:id="@+id/from_name"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="0"
android:layout_alignParentLeft="true"
android:textAppearance="?android:attr/textAppearanceMedium"
android:textStyle="bold"
android:textColor="?android:attr/textColorPrimary"
android:singleLine="true"
android:ellipsize="end"
android:paddingRight="6dip"
/>
<TextView
android:id="@+id/from_address"
android:layout_width="0dip"
android:layout_height="wrap_content"
android:layout_weight="1.0"
android:layout_alignParentLeft="true"
android:textAppearance="?android:attr/textAppearanceSmall"
android:textStyle="normal"
android:textColor="?android:attr/textColorPrimary"
android:singleLine="true"
android:ellipsize="end"
android:paddingRight="6dip"
/>
<!-- Reply/Forward buttons are default gone for MessageFileView -->
<ImageView
android:id="@+id/reply"
android:src="@drawable/reply"
android:layout_width="32dip"
android:layout_height="24dip"
android:layout_margin="6dip"
android:baselineAlignBottom="true"
android:visibility="gone"
/>
<ImageView
android:id="@+id/reply_all"
android:src="@drawable/reply_all"
android:layout_width="32dip"
android:layout_height="24dip"
android:layout_margin="6dip"
android:baselineAlignBottom="true"
android:visibility="gone"
/>
<ImageView
android:id="@+id/forward"
android:src="@drawable/forward"
android:layout_width="32dip"
android:layout_height="24dip"
android:layout_margin="6dip"
android:baselineAlignBottom="true"
android:visibility="gone"
/>
<TextView
android:id="@+id/datetime"
android:textAppearance="?android:attr/textAppearanceSmall"
android:textColor="?android:attr/textColorPrimary"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="4dip"
android:singleLine="true" />
</LinearLayout>
<TextView
android:id="@+id/addresses"
android:textAppearance="?android:attr/textAppearanceSmall"
android:textColor="?android:attr/textColorSecondary"
android:layout_width="0dip"
android:layout_weight="1.0"
android:layout_height="wrap_content"
android:layout_marginLeft="4dip"
android:singleLine="false"
android:ellipsize="none" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content" >
<TextView
android:id="@+id/subject"
android:textAppearance="?android:attr/textAppearanceSmall"
android:textColor="?android:attr/textColorSecondary"
android:textStyle="bold"
android:layout_width="0dip"
android:layout_weight="1.0"
android:layout_height="wrap_content"
android:singleLine="false"
android:ellipsize="none" />
<!-- TODO: Move this to wherever it really belongs -->
<ImageView
android:id="@+id/favorite"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:src="@drawable/btn_star_big_buttonless_off" />
</LinearLayout>
</LinearLayout>
<!-- end of header area -->
<!-- tab area -->
<LinearLayout
android:id="@+id/message_tabs_section"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:paddingLeft="6dip"
android:paddingRight="6dip"
android:paddingTop="6dip"
android:paddingBottom="6dip"
>
<Button
android:id="@+id/show_message"
android:text="@string/message_view_show_message_action"
android:layout_gravity="center"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
/>
<!--
Even though the "invite" section is only for MessageViewFragment, it's managed
by MessageViewFragmentBase for simplicity.
-->
<Button
android:id="@+id/show_invite"
android:text="@string/message_view_show_invite_action"
android:layout_gravity="center"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
/>
<Button
android:id="@+id/show_attachments"
android:layout_gravity="center"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
/>
<View
android:layout_width="0dip"
android:layout_height="0dip"
android:layout_weight="1"
/>
<Button
android:id="@+id/show_pictures"
android:text="@string/message_view_show_pictures_action"
android:layout_gravity="center"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
/>
</LinearLayout>
<!-- end of tab area -->
<!--
content area - only one of them is visible at a time.
-->
<WebView
android:id="@+id/message_content"
android:layout_width="match_parent"
android:layout_height="0dip"
android:layout_weight="1"
android:background="#ffffff"
android:visibility="gone"
/>
<!--
Even though the "invite" section is only for MessageViewFragment,
Its visibility is controlled by MessageViewFragmentBase for simplicity.
-->
<ScrollView
android:id="@+id/invite_scroll"
android:layout_width="match_parent"
android:layout_height="0dip"
android:layout_weight="1"
android:visibility="gone"
>
<!--
Invite section - the views in it are controlled only by MessageViewFragment.
MessageViewFragment shouldn't know what's inside it.
-->
<include layout="@layout/message_view_invitation" />
</ScrollView>
<ScrollView
android:id="@+id/attachments_scroll"
android:layout_width="match_parent"
android:layout_height="0dip"
android:layout_weight="1"
android:visibility="gone"
>
<LinearLayout
android:id="@+id/attachments"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:padding="4dip"
android:background="#ffffff"
/>
</ScrollView>
<!-- end of content area -->
<!--
Buttons such as delete, mark unread. Only MessageViewFragment uses these.
MessageFileViewFragment doesn't.
-->
<include
layout="@layout/message_command_button_view"
android:id="@+id/message_command_buttons"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:visibility="gone"
/>
</LinearLayout>