Create XL layouts for incoming, outgoing, exchange
* Create XL fragments (will be shared w/settings) * Create XL landscape activities * Create XL portrait activities * Placeholders left for integration with settings - remove in settings CL * Quick fixes (non shipping) for phone UX * Update existing portait next/prev buttons per new wireframes Bug: 3188940 Change-Id: Ied6e7fd1e968fd6db57607a68dabf7e00ba78ee6
This commit is contained in:
parent
15f46cc715
commit
e6c6587b04
@ -14,7 +14,7 @@
|
||||
limitations under the License.
|
||||
-->
|
||||
|
||||
<!-- Large-screen holder - landscape - see layout/ for small-screen version -->
|
||||
<!-- Account setup - XL - landscape - see layout/ for small-screen version -->
|
||||
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
|
74
res/layout-xlarge-land/account_setup_exchange.xml
Normal file
74
res/layout-xlarge-land/account_setup_exchange.xml
Normal file
@ -0,0 +1,74 @@
|
||||
<?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.
|
||||
-->
|
||||
|
||||
<!-- Exchange Setup - XL - landscape - see layout/ for small-screen version -->
|
||||
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:paddingTop="16dip"
|
||||
android:paddingLeft="96dip"
|
||||
android:paddingRight="96dip"
|
||||
>
|
||||
|
||||
<!-- Headline and hairline divider -->
|
||||
<TextView
|
||||
android:id="@+id/headline"
|
||||
android:layout_alignParentTop="true"
|
||||
android:layout_alignParentLeft="true"
|
||||
android:layout_marginLeft="16dip"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:text="@string/account_setup_exchange_headline"
|
||||
android:textAppearance="@style/accountSetupHeadline" />
|
||||
|
||||
<View
|
||||
android:id="@+id/top_divider"
|
||||
android:layout_below="@+id/headline"
|
||||
android:layout_marginBottom="16dip"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="1px"
|
||||
android:background="@color/account_setup_divider_color" />
|
||||
|
||||
<!-- Buttons on the right -->
|
||||
<Button
|
||||
android:id="@+id/previous"
|
||||
android:layout_below="@+id/top_divider"
|
||||
android:layout_alignParentRight="true"
|
||||
android:layout_marginTop="32dip"
|
||||
android:layout_marginRight="16dip"
|
||||
style="@style/accountSetupButton"
|
||||
android:text="@string/previous_action" />
|
||||
<Button
|
||||
android:id="@+id/next"
|
||||
android:layout_below="@+id/previous"
|
||||
android:layout_alignParentRight="true"
|
||||
android:layout_marginTop="32dip"
|
||||
android:layout_marginRight="16dip"
|
||||
style="@style/accountSetupButton"
|
||||
android:text="@string/next_action" />
|
||||
|
||||
<!-- Fragment on the left containing the setup info -->
|
||||
<fragment
|
||||
android:id="@+id/setup_fragment"
|
||||
class="com.android.email.activity.setup.AccountSetupExchangeFragment"
|
||||
android:layout_below="@+id/top_divider"
|
||||
android:layout_alignParentLeft="true"
|
||||
android:layout_toLeftOf="@+id/next"
|
||||
android:layout_marginRight="64dip"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
/>
|
||||
</RelativeLayout>
|
74
res/layout-xlarge-land/account_setup_incoming.xml
Normal file
74
res/layout-xlarge-land/account_setup_incoming.xml
Normal file
@ -0,0 +1,74 @@
|
||||
<?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.
|
||||
-->
|
||||
|
||||
<!-- Incoming setup - XL - landscape - see layout/ for small-screen version -->
|
||||
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:paddingTop="16dip"
|
||||
android:paddingLeft="96dip"
|
||||
android:paddingRight="96dip"
|
||||
>
|
||||
|
||||
<!-- Headline and hairline divider -->
|
||||
<TextView
|
||||
android:id="@+id/headline"
|
||||
android:layout_alignParentTop="true"
|
||||
android:layout_alignParentLeft="true"
|
||||
android:layout_marginLeft="16dip"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:text="@string/account_setup_incoming_headline"
|
||||
android:textAppearance="@style/accountSetupHeadline" />
|
||||
|
||||
<View
|
||||
android:id="@+id/top_divider"
|
||||
android:layout_below="@+id/headline"
|
||||
android:layout_marginBottom="16dip"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="1px"
|
||||
android:background="@color/account_setup_divider_color" />
|
||||
|
||||
<!-- Buttons on the right -->
|
||||
<Button
|
||||
android:id="@+id/previous"
|
||||
android:layout_below="@+id/top_divider"
|
||||
android:layout_alignParentRight="true"
|
||||
android:layout_marginTop="32dip"
|
||||
android:layout_marginRight="16dip"
|
||||
style="@style/accountSetupButton"
|
||||
android:text="@string/previous_action" />
|
||||
<Button
|
||||
android:id="@+id/next"
|
||||
android:layout_below="@+id/previous"
|
||||
android:layout_alignParentRight="true"
|
||||
android:layout_marginTop="32dip"
|
||||
android:layout_marginRight="16dip"
|
||||
style="@style/accountSetupButton"
|
||||
android:text="@string/next_action" />
|
||||
|
||||
<!-- Fragment on the left containing the setup info -->
|
||||
<fragment
|
||||
android:id="@+id/setup_fragment"
|
||||
class="com.android.email.activity.setup.AccountSetupIncomingFragment"
|
||||
android:layout_below="@+id/top_divider"
|
||||
android:layout_alignParentLeft="true"
|
||||
android:layout_toLeftOf="@+id/next"
|
||||
android:layout_marginRight="64dip"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
/>
|
||||
</RelativeLayout>
|
@ -14,7 +14,7 @@
|
||||
limitations under the License.
|
||||
-->
|
||||
|
||||
<!-- Large-screen format - landscape - see layout/ for small-screen version -->
|
||||
<!-- Account Names - XL - landscape - see layout/ for small-screen version -->
|
||||
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
|
@ -14,7 +14,7 @@
|
||||
limitations under the License.
|
||||
-->
|
||||
|
||||
<!-- Large-screen holder - landscape - see layout/ for small-screen version -->
|
||||
<!-- Account Options - XL - landscape - see layout/ for small-screen version -->
|
||||
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
@ -61,7 +61,6 @@
|
||||
|
||||
<!-- Layout on the left containing the setup info -->
|
||||
<RelativeLayout
|
||||
android:id="@+id/setup_basics_fragment"
|
||||
android:layout_below="@+id/top_divider"
|
||||
android:layout_alignParentLeft="true"
|
||||
android:layout_toLeftOf="@+id/next"
|
||||
|
74
res/layout-xlarge-land/account_setup_outgoing.xml
Normal file
74
res/layout-xlarge-land/account_setup_outgoing.xml
Normal file
@ -0,0 +1,74 @@
|
||||
<?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.
|
||||
-->
|
||||
|
||||
<!-- Outgoing Setup - XL - landscape - see layout/ for small-screen version -->
|
||||
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:paddingTop="16dip"
|
||||
android:paddingLeft="96dip"
|
||||
android:paddingRight="96dip"
|
||||
>
|
||||
|
||||
<!-- Headline and hairline divider -->
|
||||
<TextView
|
||||
android:id="@+id/headline"
|
||||
android:layout_alignParentTop="true"
|
||||
android:layout_alignParentLeft="true"
|
||||
android:layout_marginLeft="16dip"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:text="@string/account_setup_outgoing_headline"
|
||||
android:textAppearance="@style/accountSetupHeadline" />
|
||||
|
||||
<View
|
||||
android:id="@+id/top_divider"
|
||||
android:layout_below="@+id/headline"
|
||||
android:layout_marginBottom="16dip"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="1px"
|
||||
android:background="@color/account_setup_divider_color" />
|
||||
|
||||
<!-- Buttons on the right -->
|
||||
<Button
|
||||
android:id="@+id/previous"
|
||||
android:layout_below="@+id/top_divider"
|
||||
android:layout_alignParentRight="true"
|
||||
android:layout_marginTop="32dip"
|
||||
android:layout_marginRight="16dip"
|
||||
style="@style/accountSetupButton"
|
||||
android:text="@string/previous_action" />
|
||||
<Button
|
||||
android:id="@+id/next"
|
||||
android:layout_below="@+id/previous"
|
||||
android:layout_alignParentRight="true"
|
||||
android:layout_marginTop="32dip"
|
||||
android:layout_marginRight="16dip"
|
||||
style="@style/accountSetupButton"
|
||||
android:text="@string/next_action" />
|
||||
|
||||
<!-- Fragment on the left containing the setup info -->
|
||||
<fragment
|
||||
android:id="@+id/setup_fragment"
|
||||
class="com.android.email.activity.setup.AccountSetupOutgoingFragment"
|
||||
android:layout_below="@+id/top_divider"
|
||||
android:layout_alignParentLeft="true"
|
||||
android:layout_toLeftOf="@+id/next"
|
||||
android:layout_marginRight="64dip"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
/>
|
||||
</RelativeLayout>
|
@ -14,7 +14,7 @@
|
||||
limitations under the License.
|
||||
-->
|
||||
|
||||
<!-- Large-screen holder - portrait - see layout/ for small-screen version -->
|
||||
<!-- Account setup - XL - portrait - see layout/ for small-screen version -->
|
||||
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
@ -57,15 +57,15 @@
|
||||
<Button
|
||||
android:id="@+id/manual_setup"
|
||||
android:layout_below="@+id/setup_basics_fragment"
|
||||
android:layout_centerHorizontal="true"
|
||||
android:layout_marginTop="48dip"
|
||||
android:layout_alignParentLeft="true"
|
||||
style="@style/accountSetupButton"
|
||||
android:text="@string/account_setup_basics_manual_setup_action" />
|
||||
<Button
|
||||
android:id="@+id/next"
|
||||
android:layout_below="@+id/manual_setup"
|
||||
android:layout_centerHorizontal="true"
|
||||
android:layout_below="@+id/setup_basics_fragment"
|
||||
android:layout_marginTop="48dip"
|
||||
android:layout_alignParentRight="true"
|
||||
style="@style/accountSetupButton"
|
||||
android:text="@string/next_action" />
|
||||
|
||||
|
72
res/layout-xlarge-port/account_setup_exchange.xml
Normal file
72
res/layout-xlarge-port/account_setup_exchange.xml
Normal file
@ -0,0 +1,72 @@
|
||||
<?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.
|
||||
-->
|
||||
|
||||
<!-- Exchange Setup - XL - portrait - see layout/ for small-screen version -->
|
||||
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:paddingTop="16dip"
|
||||
android:paddingLeft="96dip"
|
||||
android:paddingRight="96dip"
|
||||
>
|
||||
|
||||
<!-- Headline and hairline divider -->
|
||||
<TextView
|
||||
android:id="@+id/headline"
|
||||
android:layout_alignParentTop="true"
|
||||
android:layout_alignParentLeft="true"
|
||||
android:layout_marginLeft="16dip"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:text="@string/account_setup_exchange_headline"
|
||||
android:textAppearance="@style/accountSetupHeadline" />
|
||||
|
||||
<View
|
||||
android:id="@+id/top_divider"
|
||||
android:layout_below="@+id/headline"
|
||||
android:layout_marginBottom="16dip"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="1px"
|
||||
android:background="@color/account_setup_divider_color" />
|
||||
|
||||
<!-- Fragment on the top containing the setup info -->
|
||||
<fragment
|
||||
android:id="@+id/setup_fragment"
|
||||
class="com.android.email.activity.setup.AccountSetupExchangeFragment"
|
||||
android:layout_below="@+id/top_divider"
|
||||
android:layout_marginLeft="16dip"
|
||||
android:layout_marginRight="96dip"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
/>
|
||||
|
||||
<!-- Buttons below -->
|
||||
<Button
|
||||
android:id="@+id/previous"
|
||||
android:layout_below="@+id/setup_fragment"
|
||||
android:layout_marginTop="48dip"
|
||||
android:layout_alignParentLeft="true"
|
||||
style="@style/accountSetupButton"
|
||||
android:text="@string/previous_action" />
|
||||
<Button
|
||||
android:id="@+id/next"
|
||||
android:layout_below="@+id/setup_fragment"
|
||||
android:layout_marginTop="48dip"
|
||||
android:layout_alignParentRight="true"
|
||||
style="@style/accountSetupButton"
|
||||
android:text="@string/next_action" />
|
||||
|
||||
</RelativeLayout>
|
72
res/layout-xlarge-port/account_setup_incoming.xml
Normal file
72
res/layout-xlarge-port/account_setup_incoming.xml
Normal file
@ -0,0 +1,72 @@
|
||||
<?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.
|
||||
-->
|
||||
|
||||
<!-- Incoming setup - XL - portrait - see layout/ for small-screen version -->
|
||||
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:paddingTop="16dip"
|
||||
android:paddingLeft="96dip"
|
||||
android:paddingRight="96dip"
|
||||
>
|
||||
|
||||
<!-- Headline and hairline divider -->
|
||||
<TextView
|
||||
android:id="@+id/headline"
|
||||
android:layout_alignParentTop="true"
|
||||
android:layout_alignParentLeft="true"
|
||||
android:layout_marginLeft="16dip"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:text="@string/account_setup_incoming_headline"
|
||||
android:textAppearance="@style/accountSetupHeadline" />
|
||||
|
||||
<View
|
||||
android:id="@+id/top_divider"
|
||||
android:layout_below="@+id/headline"
|
||||
android:layout_marginBottom="16dip"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="1px"
|
||||
android:background="@color/account_setup_divider_color" />
|
||||
|
||||
<!-- Fragment on the top containing the setup info -->
|
||||
<fragment
|
||||
android:id="@+id/setup_fragment"
|
||||
class="com.android.email.activity.setup.AccountSetupIncomingFragment"
|
||||
android:layout_below="@+id/top_divider"
|
||||
android:layout_marginLeft="16dip"
|
||||
android:layout_marginRight="96dip"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
/>
|
||||
|
||||
<!-- Buttons below -->
|
||||
<Button
|
||||
android:id="@+id/previous"
|
||||
android:layout_below="@+id/setup_fragment"
|
||||
android:layout_marginTop="48dip"
|
||||
android:layout_alignParentLeft="true"
|
||||
style="@style/accountSetupButton"
|
||||
android:text="@string/previous_action" />
|
||||
<Button
|
||||
android:id="@+id/next"
|
||||
android:layout_below="@+id/setup_fragment"
|
||||
android:layout_marginTop="48dip"
|
||||
android:layout_alignParentRight="true"
|
||||
style="@style/accountSetupButton"
|
||||
android:text="@string/next_action" />
|
||||
|
||||
</RelativeLayout>
|
@ -14,7 +14,7 @@
|
||||
limitations under the License.
|
||||
-->
|
||||
|
||||
<!-- Large-screen format - portrait - see layout/ for small-screen version -->
|
||||
<!-- Account Names - XL - portrait - see layout/ for small-screen version -->
|
||||
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
@ -87,8 +87,8 @@
|
||||
<Button
|
||||
android:id="@+id/next"
|
||||
android:layout_below="@+id/names_layout"
|
||||
android:layout_centerHorizontal="true"
|
||||
android:layout_marginTop="48dip"
|
||||
android:layout_alignParentRight="true"
|
||||
style="@style/accountSetupButton"
|
||||
android:text="@string/next_action" />
|
||||
|
||||
|
@ -14,7 +14,7 @@
|
||||
limitations under the License.
|
||||
-->
|
||||
|
||||
<!-- Large-screen holder - portrait - see layout/ for small-screen version -->
|
||||
<!-- Account Options - XL - portrait - see layout/ for small-screen version -->
|
||||
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
@ -43,7 +43,7 @@
|
||||
|
||||
<!-- Layout on the top containing the setup info -->
|
||||
<RelativeLayout
|
||||
android:id="@+id/setup_basics_fragment"
|
||||
android:id="@+id/setup_options_section"
|
||||
android:layout_below="@+id/top_divider"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
@ -180,14 +180,14 @@
|
||||
<!-- Buttons below -->
|
||||
<Button
|
||||
android:id="@+id/previous"
|
||||
android:layout_below="@+id/setup_basics_fragment"
|
||||
android:layout_below="@+id/setup_options_section"
|
||||
android:layout_marginTop="48dip"
|
||||
android:layout_alignParentLeft="true"
|
||||
style="@style/accountSetupButton"
|
||||
android:text="@string/previous_action" />
|
||||
<Button
|
||||
android:id="@+id/next"
|
||||
android:layout_below="@+id/setup_basics_fragment"
|
||||
android:layout_below="@+id/setup_options_section"
|
||||
android:layout_marginTop="48dip"
|
||||
android:layout_alignParentRight="true"
|
||||
style="@style/accountSetupButton"
|
||||
|
72
res/layout-xlarge-port/account_setup_outgoing.xml
Normal file
72
res/layout-xlarge-port/account_setup_outgoing.xml
Normal file
@ -0,0 +1,72 @@
|
||||
<?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.
|
||||
-->
|
||||
|
||||
<!-- Outgoing Setup - XL - portrait - see layout/ for small-screen version -->
|
||||
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:paddingTop="16dip"
|
||||
android:paddingLeft="96dip"
|
||||
android:paddingRight="96dip"
|
||||
>
|
||||
|
||||
<!-- Headline and hairline divider -->
|
||||
<TextView
|
||||
android:id="@+id/headline"
|
||||
android:layout_alignParentTop="true"
|
||||
android:layout_alignParentLeft="true"
|
||||
android:layout_marginLeft="16dip"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:text="@string/account_setup_outgoing_headline"
|
||||
android:textAppearance="@style/accountSetupHeadline" />
|
||||
|
||||
<View
|
||||
android:id="@+id/top_divider"
|
||||
android:layout_below="@+id/headline"
|
||||
android:layout_marginBottom="16dip"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="1px"
|
||||
android:background="@color/account_setup_divider_color" />
|
||||
|
||||
<!-- Fragment on the top containing the setup info -->
|
||||
<fragment
|
||||
android:id="@+id/setup_fragment"
|
||||
class="com.android.email.activity.setup.AccountSetupOutgoingFragment"
|
||||
android:layout_below="@+id/top_divider"
|
||||
android:layout_marginLeft="16dip"
|
||||
android:layout_marginRight="96dip"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
/>
|
||||
|
||||
<!-- Buttons below -->
|
||||
<Button
|
||||
android:id="@+id/previous"
|
||||
android:layout_below="@+id/setup_fragment"
|
||||
android:layout_marginTop="48dip"
|
||||
android:layout_alignParentLeft="true"
|
||||
style="@style/accountSetupButton"
|
||||
android:text="@string/previous_action" />
|
||||
<Button
|
||||
android:id="@+id/next"
|
||||
android:layout_below="@+id/setup_fragment"
|
||||
android:layout_marginTop="48dip"
|
||||
android:layout_alignParentRight="true"
|
||||
style="@style/accountSetupButton"
|
||||
android:text="@string/next_action" />
|
||||
|
||||
</RelativeLayout>
|
@ -14,7 +14,7 @@
|
||||
limitations under the License.
|
||||
-->
|
||||
|
||||
<!-- Large-screen version - see layout/ for small-screen version -->
|
||||
<!-- Account-type picker - xlarge - see layout/ for small-screen version -->
|
||||
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
|
126
res/layout-xlarge/account_setup_exchange_fragment.xml
Normal file
126
res/layout-xlarge/account_setup_exchange_fragment.xml
Normal file
@ -0,0 +1,126 @@
|
||||
<?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.
|
||||
-->
|
||||
|
||||
<!-- Exchange server settings - xlarge - see layout/ for phone UX variant -->
|
||||
<!-- TODO add back styles for final appearance -->
|
||||
<TableLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginTop="16dip"
|
||||
android:layout_marginLeft="16dip"
|
||||
android:layout_marginRight="96dip"
|
||||
android:stretchColumns="1" >
|
||||
|
||||
<TableRow
|
||||
android:paddingTop="16dip" >
|
||||
<TextView
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_marginRight="16dip"
|
||||
android:text="@string/account_setup_exchange_username_label" />
|
||||
<EditText
|
||||
android:id="@+id/account_username"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:inputType="textEmailAddress"
|
||||
android:imeOptions="actionDone" />
|
||||
</TableRow>
|
||||
<TableRow
|
||||
android:paddingTop="16dip" >
|
||||
<TextView
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_marginRight="16dip"
|
||||
android:text="@string/account_setup_incoming_password_label" />
|
||||
<EditText
|
||||
android:id="@+id/account_password"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:inputType="textPassword"
|
||||
android:imeOptions="actionDone" />
|
||||
</TableRow>
|
||||
<TableRow
|
||||
android:paddingTop="16dip" >
|
||||
<TextView
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_marginRight="16dip"
|
||||
android:text="@string/account_setup_exchange_server_label" />
|
||||
<!-- Note: we use inputType=textUri as the closest approximation to a server name -->
|
||||
<EditText
|
||||
android:id="@+id/account_server"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:inputType="textUri"
|
||||
android:imeOptions="actionDone" />
|
||||
</TableRow>
|
||||
<!-- Note, this row is not a TableRow, and it will span the entire table - no columns -->
|
||||
<LinearLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginTop="32dip"
|
||||
android:orientation="vertical" >
|
||||
<View
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="1px"
|
||||
android:background="@color/account_setup_divider_color" />
|
||||
<CheckBox
|
||||
android:id="@+id/account_ssl"
|
||||
android:layout_marginTop="16dip"
|
||||
android:layout_marginBottom="16dip"
|
||||
android:layout_marginLeft="32dip"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:text="@string/account_setup_exchange_ssl_label" />
|
||||
<View
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="1px"
|
||||
android:background="@color/account_setup_divider_color" />
|
||||
</LinearLayout>
|
||||
<!-- Note, this row is not a TableRow, and it will span the entire table - no columns -->
|
||||
<LinearLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:orientation="vertical" >
|
||||
<CheckBox
|
||||
android:id="@+id/account_trust_certificates"
|
||||
android:layout_marginTop="16dip"
|
||||
android:layout_marginBottom="16dip"
|
||||
android:layout_marginLeft="32dip"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:text="@string/account_setup_exchange_trust_certificates_label" />
|
||||
<View
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="1px"
|
||||
android:background="@color/account_setup_divider_color" />
|
||||
</LinearLayout>
|
||||
<TableRow
|
||||
android:paddingTop="32dip" >
|
||||
<TextView
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_marginRight="16dip"
|
||||
android:text="@string/account_setup_exchange_device_id_label" />
|
||||
<!-- TODO - when adding back in styles, this should be slightly different (was "medium") -->
|
||||
<TextView
|
||||
android:id="@+id/device_id"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:textColor="#ffbebebe" />
|
||||
</TableRow>
|
||||
</TableLayout>
|
||||
|
128
res/layout-xlarge/account_setup_incoming_fragment.xml
Normal file
128
res/layout-xlarge/account_setup_incoming_fragment.xml
Normal file
@ -0,0 +1,128 @@
|
||||
<?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.
|
||||
-->
|
||||
|
||||
<!-- Incoming server settings - xlarge - see layout/ for phone UX variant -->
|
||||
<!-- TODO add back styles for final appearance -->
|
||||
<TableLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginTop="16dip"
|
||||
android:layout_marginLeft="16dip"
|
||||
android:layout_marginRight="96dip"
|
||||
android:stretchColumns="1" >
|
||||
|
||||
<TableRow
|
||||
android:paddingTop="16dip" >
|
||||
<TextView
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_marginRight="16dip"
|
||||
android:text="@string/account_setup_incoming_username_label" />
|
||||
<EditText
|
||||
android:id="@+id/account_username"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:inputType="textEmailAddress"
|
||||
android:imeOptions="actionDone" />
|
||||
</TableRow>
|
||||
<TableRow
|
||||
android:paddingTop="16dip" >
|
||||
<TextView
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_marginRight="16dip"
|
||||
android:text="@string/account_setup_incoming_password_label" />
|
||||
<EditText
|
||||
android:id="@+id/account_password"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:inputType="textPassword"
|
||||
android:imeOptions="actionDone" />
|
||||
</TableRow>
|
||||
<TableRow
|
||||
android:paddingTop="16dip" >
|
||||
<!-- This text may be changed in code if the server is IMAP, etc. -->
|
||||
<TextView
|
||||
android:id="@+id/account_server_label"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_marginRight="16dip"
|
||||
android:text="@string/account_setup_incoming_pop_server_label" />
|
||||
<!-- Note: we use inputType=textUri as the closest approximation to a server name -->
|
||||
<EditText
|
||||
android:id="@+id/account_server"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:inputType="textUri"
|
||||
android:imeOptions="actionDone" />
|
||||
</TableRow>
|
||||
<TableRow
|
||||
android:paddingTop="16dip" >
|
||||
<TextView
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_marginRight="16dip"
|
||||
android:text="@string/account_setup_incoming_security_label" />
|
||||
<Spinner
|
||||
android:id="@+id/account_security_type"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content" />
|
||||
</TableRow>
|
||||
<TableRow
|
||||
android:paddingTop="16dip" >
|
||||
<TextView
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_marginRight="16dip"
|
||||
android:text="@string/account_setup_incoming_port_label" />
|
||||
<EditText
|
||||
android:id="@+id/account_port"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:inputType="number"
|
||||
android:imeOptions="actionDone" />
|
||||
</TableRow>
|
||||
<TableRow
|
||||
android:paddingTop="16dip" >
|
||||
<TextView
|
||||
android:id="@+id/account_delete_policy_label"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_marginRight="16dip"
|
||||
android:text="@string/account_setup_incoming_delete_policy_label" />
|
||||
<Spinner
|
||||
android:id="@+id/account_delete_policy"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content" />
|
||||
</TableRow>
|
||||
<TableRow
|
||||
android:id="@+id/imap_path_prefix_section"
|
||||
android:paddingTop="16dip" >
|
||||
<TextView
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_marginRight="16dip"
|
||||
android:text="@string/account_setup_incoming_imap_path_prefix_label" />
|
||||
<EditText
|
||||
android:id="@+id/imap_path_prefix"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:hint="@string/account_setup_incoming_imap_path_prefix_hint"
|
||||
android:inputType="text"
|
||||
android:imeOptions="actionDone" />
|
||||
</TableRow>
|
||||
</TableLayout>
|
||||
|
123
res/layout-xlarge/account_setup_outgoing_fragment.xml
Normal file
123
res/layout-xlarge/account_setup_outgoing_fragment.xml
Normal file
@ -0,0 +1,123 @@
|
||||
<?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.
|
||||
-->
|
||||
|
||||
<!-- Incoming server settings - xlarge - see layout/ for phone UX variant -->
|
||||
<!-- TODO add back styles for final appearance -->
|
||||
<TableLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginTop="16dip"
|
||||
android:layout_marginLeft="16dip"
|
||||
android:layout_marginRight="96dip"
|
||||
android:stretchColumns="1" >
|
||||
|
||||
<TableRow
|
||||
android:paddingTop="16dip" >
|
||||
<TextView
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_marginRight="16dip"
|
||||
android:text="@string/account_setup_outgoing_smtp_server_label" />
|
||||
<!-- Note: we use inputType=textUri as the closest approximation to a server name -->
|
||||
<EditText
|
||||
android:id="@+id/account_server"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:inputType="textUri"
|
||||
android:imeOptions="actionDone" />
|
||||
</TableRow>
|
||||
<TableRow
|
||||
android:paddingTop="16dip" >
|
||||
<TextView
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_marginRight="16dip"
|
||||
android:text="@string/account_setup_outgoing_security_label" />
|
||||
<Spinner
|
||||
android:id="@+id/account_security_type"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content" />
|
||||
</TableRow>
|
||||
<TableRow
|
||||
android:paddingTop="16dip" >
|
||||
<TextView
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_marginRight="16dip"
|
||||
android:text="@string/account_setup_outgoing_port_label" />
|
||||
<EditText
|
||||
android:id="@+id/account_port"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:inputType="number"
|
||||
android:imeOptions="actionDone" />
|
||||
</TableRow>
|
||||
<!-- Note, this row is not a TableRow, and it will span the entire table - no columns -->
|
||||
<LinearLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginTop="32dip"
|
||||
android:orientation="vertical" >
|
||||
<View
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="1px"
|
||||
android:background="@color/account_setup_divider_color" />
|
||||
<CheckBox
|
||||
android:id="@+id/account_require_login"
|
||||
android:layout_marginTop="16dip"
|
||||
android:layout_marginBottom="16dip"
|
||||
android:layout_marginLeft="32dip"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:text="@string/account_setup_outgoing_require_login_label" />
|
||||
<View
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="1px"
|
||||
android:background="@color/account_setup_divider_color" />
|
||||
</LinearLayout>
|
||||
<TableRow
|
||||
android:id="@+id/account_require_login_settings"
|
||||
android:paddingTop="16dip"
|
||||
android:visibility="gone" >
|
||||
<TextView
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_marginRight="16dip"
|
||||
android:text="@string/account_setup_outgoing_username_label" />
|
||||
<EditText
|
||||
android:id="@+id/account_username"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:inputType="textEmailAddress"
|
||||
android:imeOptions="actionDone" />
|
||||
</TableRow>
|
||||
<TableRow
|
||||
android:id="@+id/account_require_login_settings_2"
|
||||
android:paddingTop="16dip"
|
||||
android:visibility="gone" >
|
||||
<TextView
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_marginRight="16dip"
|
||||
android:text="@string/account_setup_outgoing_password_label" />
|
||||
<EditText
|
||||
android:id="@+id/account_password"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:inputType="textPassword"
|
||||
android:imeOptions="actionDone" />
|
||||
</TableRow>
|
||||
</TableLayout>
|
@ -41,14 +41,14 @@
|
||||
<Button
|
||||
android:id="@+id/manual_setup"
|
||||
android:layout_below="@+id/setup_basics_fragment"
|
||||
android:layout_centerHorizontal="true"
|
||||
android:layout_marginTop="32dip"
|
||||
android:layout_alignParentLeft="true"
|
||||
android:layout_marginTop="16dip"
|
||||
style="@style/accountSetupButton"
|
||||
android:text="@string/account_setup_basics_manual_setup_action" />
|
||||
<Button
|
||||
android:id="@+id/next"
|
||||
android:layout_below="@+id/manual_setup"
|
||||
android:layout_centerHorizontal="true"
|
||||
android:layout_below="@+id/setup_basics_fragment"
|
||||
android:layout_alignParentRight="true"
|
||||
android:layout_marginTop="16dip"
|
||||
style="@style/accountSetupButton"
|
||||
android:text="@string/next_action" />
|
||||
|
@ -20,11 +20,34 @@
|
||||
android:layout_height="match_parent"
|
||||
android:fillViewport="true">
|
||||
|
||||
<RelativeLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content" >
|
||||
|
||||
<fragment
|
||||
android:id="@+id/setup_fragment"
|
||||
class="com.android.email.activity.setup.AccountSetupExchangeFragment"
|
||||
android:layout_alignParentTop="true"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_weight="1"
|
||||
/>
|
||||
|
||||
<!-- Buttons below -->
|
||||
<!-- TODO - quick placeholder - phone UX still TBD -->
|
||||
<Button
|
||||
android:id="@+id/previous"
|
||||
android:layout_below="@+id/setup_fragment"
|
||||
android:layout_alignParentLeft="true"
|
||||
android:layout_marginTop="16dip"
|
||||
style="@style/accountSetupButton"
|
||||
android:text="@string/previous_action" />
|
||||
<Button
|
||||
android:id="@+id/next"
|
||||
android:layout_below="@+id/setup_fragment"
|
||||
android:layout_alignParentRight="true"
|
||||
android:layout_marginTop="16dip"
|
||||
style="@style/accountSetupButton"
|
||||
android:text="@string/next_action" />
|
||||
</RelativeLayout>
|
||||
</ScrollView>
|
||||
|
@ -14,6 +14,7 @@
|
||||
limitations under the License.
|
||||
-->
|
||||
|
||||
<!-- Exchange server settings - default - see layout-xlarge/ for XL variant -->
|
||||
<LinearLayout
|
||||
xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:layout_width="match_parent"
|
||||
|
@ -20,11 +20,34 @@
|
||||
android:layout_height="match_parent"
|
||||
android:fillViewport="true" >
|
||||
|
||||
<RelativeLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content" >
|
||||
|
||||
<fragment
|
||||
android:id="@+id/setup_fragment"
|
||||
class="com.android.email.activity.setup.AccountSetupIncomingFragment"
|
||||
android:layout_alignParentTop="true"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_weight="1"
|
||||
/>
|
||||
|
||||
<!-- Buttons below -->
|
||||
<!-- TODO - quick placeholder - phone UX still TBD -->
|
||||
<Button
|
||||
android:id="@+id/previous"
|
||||
android:layout_below="@+id/setup_fragment"
|
||||
android:layout_alignParentLeft="true"
|
||||
android:layout_marginTop="16dip"
|
||||
style="@style/accountSetupButton"
|
||||
android:text="@string/previous_action" />
|
||||
<Button
|
||||
android:id="@+id/next"
|
||||
android:layout_below="@+id/setup_fragment"
|
||||
android:layout_alignParentRight="true"
|
||||
android:layout_marginTop="16dip"
|
||||
style="@style/accountSetupButton"
|
||||
android:text="@string/next_action" />
|
||||
</RelativeLayout>
|
||||
</ScrollView>
|
||||
|
@ -14,6 +14,7 @@
|
||||
limitations under the License.
|
||||
-->
|
||||
|
||||
<!-- Incoming server settings - default - see layout-xlarge/ for XL variant -->
|
||||
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
|
@ -56,6 +56,7 @@
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_width="match_parent" />
|
||||
|
||||
<!-- TODO - quick placeholder - phone UX still TBD -->
|
||||
<Button
|
||||
android:id="@+id/next"
|
||||
android:layout_marginTop="16dip"
|
||||
|
@ -77,6 +77,7 @@
|
||||
android:text="@string/account_setup_options_sync_email_label" />
|
||||
|
||||
<!-- Buttons below -->
|
||||
<!-- TODO - quick placeholder - phone UX still TBD -->
|
||||
<Button
|
||||
android:id="@+id/previous"
|
||||
android:layout_marginTop="16dip"
|
||||
|
@ -20,11 +20,34 @@
|
||||
android:layout_height="match_parent"
|
||||
android:fillViewport="true" >
|
||||
|
||||
<RelativeLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content" >
|
||||
|
||||
<fragment
|
||||
android:id="@+id/setup_fragment"
|
||||
class="com.android.email.activity.setup.AccountSetupOutgoingFragment"
|
||||
android:layout_alignParentTop="true"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_weight="1"
|
||||
/>
|
||||
|
||||
<!-- Buttons below -->
|
||||
<!-- TODO - quick placeholder - phone UX still TBD -->
|
||||
<Button
|
||||
android:id="@+id/previous"
|
||||
android:layout_below="@+id/setup_fragment"
|
||||
android:layout_alignParentLeft="true"
|
||||
android:layout_marginTop="16dip"
|
||||
style="@style/accountSetupButton"
|
||||
android:text="@string/previous_action" />
|
||||
<Button
|
||||
android:id="@+id/next"
|
||||
android:layout_below="@+id/setup_fragment"
|
||||
android:layout_alignParentRight="true"
|
||||
android:layout_marginTop="16dip"
|
||||
style="@style/accountSetupButton"
|
||||
android:text="@string/next_action" />
|
||||
</RelativeLayout>
|
||||
</ScrollView>
|
||||
|
@ -14,6 +14,7 @@
|
||||
limitations under the License.
|
||||
-->
|
||||
|
||||
<!-- Outgoing server settings - default - see layout-xlarge/ for XL variant -->
|
||||
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
|
@ -465,12 +465,12 @@ save attachment.</string>
|
||||
<string name="message_list_snippet"><xliff:g id="subject" example="Re: Foo">
|
||||
%1$s</xliff:g> - <xliff:g id="text" example="Hi, John. Blah...">%2$s</xliff:g></string>
|
||||
|
||||
<!-- Title of screen when setting up new email account -->
|
||||
<!-- Title of screen when setting up new email account [CHAR LIMIT=45] -->
|
||||
<string name="account_setup_basics_title">Account setup</string>
|
||||
<!-- Title of the screen when adding exchange account -->
|
||||
<!-- Title of the screen when adding exchange account [CHAR LIMIT=45] -->
|
||||
<string name="account_setup_basics_exchange_title">
|
||||
Add an Exchange account</string>
|
||||
<!-- Title of the screen when adding exchange account -->
|
||||
<!-- Title of the screen when adding exchange account [CHAR LIMIT=45] -->
|
||||
<string name="account_setup_basics_exchange_title_alternate">
|
||||
Add an Exchange ActiveSync account</string>
|
||||
<!-- Headline of screen when setting up new email account (large text over divider)
|
||||
@ -517,7 +517,7 @@ save attachment.</string>
|
||||
<string name="account_setup_check_settings_check_outgoing_msg">
|
||||
Checking outgoing server settings\u2026</string>
|
||||
|
||||
<!-- Title of "Set up email" screen after success -->
|
||||
<!-- Title of "Set up email" screen after success [CHAR LIMIT=45] -->
|
||||
<string name="account_setup_names_title">Account setup</string>
|
||||
<!-- Text that appears on "Set up email" screen after successfully setting up an account
|
||||
[CHAR LIMIT=none] -->
|
||||
@ -530,10 +530,9 @@ save attachment.</string>
|
||||
<string name="account_setup_names_user_name_label">
|
||||
Your name (displayed on outgoing messages)</string>
|
||||
|
||||
<!-- Activity Title for the first screen in manual setup (where you select IMAP or POP3) -->
|
||||
<!-- Activity Title for the account type selector (IMAP or POP3 or EAS) [CHAR LIMIT=45] -->
|
||||
<string name="account_setup_account_type_title">Account setup</string>
|
||||
<!-- Headline for the first screen in manual setup (where you select IMAP or POP3)
|
||||
[CHAR LIMIT=none] -->
|
||||
<!-- Headline for the the account type selector (IMAP or POP3 or EAS) [CHAR LIMIT=none] -->
|
||||
<string name="account_setup_account_type_headline">Account type</string>
|
||||
<!-- "Add new email account" screen, text that appears on screen -->
|
||||
<string name="account_setup_account_type_instructions">What type of account is this?</string>
|
||||
@ -552,8 +551,10 @@ save attachment.</string>
|
||||
<string name="account_setup_account_type_exchange_action_alternate"
|
||||
translatable="false">Microsoft Exchange ActiveSync</string>
|
||||
|
||||
<!-- "Incoming server settings" screen, label for text field -->
|
||||
<string name="account_setup_incoming_title">Incoming server settings</string>
|
||||
<!-- "Incoming server settings" screen, title [CHAR LIMIT=45] -->
|
||||
<string name="account_setup_incoming_title">Account setup</string>
|
||||
<!-- "Incoming server settings" screen, headline (text over divider) [CHAR LIMIT=none] -->
|
||||
<string name="account_setup_incoming_headline">Incoming server settings</string>
|
||||
<!-- "Incoming server settings" screen, label for text field -->
|
||||
<string name="account_setup_incoming_username_label">Username</string>
|
||||
<!-- "Incoming server settings" screen, label for text field -->
|
||||
@ -569,11 +570,13 @@ save attachment.</string>
|
||||
<!-- "Incoming server settings" screen, options for "Security type" pop-up menu -->
|
||||
<string name="account_setup_incoming_security_none_label">None</string>
|
||||
<!-- "Incoming server settings" screen, options for "Security type" pop-up menu -->
|
||||
<string name="account_setup_incoming_security_ssl_trust_certificates_label">SSL (Accept all certificates)</string>
|
||||
<string name="account_setup_incoming_security_ssl_trust_certificates_label">
|
||||
SSL (Accept all certificates)</string>
|
||||
<!-- "Incoming server settings" screen, options for "Security type" pop-up menu -->
|
||||
<string name="account_setup_incoming_security_ssl_label">SSL</string>
|
||||
<!-- "Incoming server settings" screen, options for "Security type" pop-up menu -->
|
||||
<string name="account_setup_incoming_security_tls_trust_certificates_label">TLS (Accept all certificates)</string>
|
||||
<string name="account_setup_incoming_security_tls_trust_certificates_label">
|
||||
TLS (Accept all certificates)</string>
|
||||
<!-- "Incoming server settings" screen, options for "Security type" pop-up menu -->
|
||||
<string name="account_setup_incoming_security_tls_label">TLS</string>
|
||||
<!-- "Incoming server settings" screen, label for pop-up menu -->
|
||||
@ -582,14 +585,17 @@ save attachment.</string>
|
||||
<!-- "Incoming server settings" screen, options in pop-up menu for Delete email from server: -->
|
||||
<string name="account_setup_incoming_delete_policy_never_label">Never</string>
|
||||
<!-- "Incoming server settings" screen, options in pop-up menu for Delete email from server: -->
|
||||
<string name="account_setup_incoming_delete_policy_delete_label">When I delete from Inbox</string>
|
||||
|
||||
<string name="account_setup_incoming_delete_policy_delete_label">
|
||||
When I delete from Inbox</string>
|
||||
<!-- "Incoming server settings" screen, label for setting IMAP path prefix: -->
|
||||
<string name="account_setup_incoming_imap_path_prefix_label">IMAP path prefix</string>
|
||||
<!-- "Incoming server settings" screen, hint for setting IMAP path prefix: -->
|
||||
<string name="account_setup_incoming_imap_path_prefix_hint">Optional</string>
|
||||
<!-- Title of "Outgoing server settings" screen -->
|
||||
<string name="account_setup_outgoing_title">Outgoing server settings</string>
|
||||
|
||||
<!-- "Outgoing server settings" screen, title [CHAR LIMIT=45] -->
|
||||
<string name="account_setup_outgoing_title">Account setup</string>
|
||||
<!-- "Outgoing server settings" screen, headline (text over divider) [CHAR LIMIT=none] -->
|
||||
<string name="account_setup_outgoing_headline">Outgoing server settings</string>
|
||||
<!-- On "Outgoing server settings" screen, label for text field -->
|
||||
<string name="account_setup_outgoing_smtp_server_label">SMTP server</string>
|
||||
<!-- On "Outgoing server settings" screen, label for text field -->
|
||||
@ -603,8 +609,10 @@ save attachment.</string>
|
||||
<!-- On "Outgoing server settings" screen, label for text field -->
|
||||
<string name="account_setup_outgoing_password_label">Password</string>
|
||||
|
||||
<!-- Title of "Exchange server settings" screen -->
|
||||
<string name="account_setup_exchange_title">Server settings</string>
|
||||
<!-- Title of "Exchange server settings" screen [CHAR LIMIT=45] -->
|
||||
<string name="account_setup_exchange_title">Account setup</string>
|
||||
<!-- Headline of "Exchange server settings" screen (text over divider) [CHAR LIMIT=none] -->
|
||||
<string name="account_setup_exchange_headline">Server settings</string>
|
||||
<!-- On "Exchange" setup screen, the name of the server -->
|
||||
<string name="account_setup_exchange_server_label">Server</string>
|
||||
<!-- On "Exchange" setup screen, the domain\\username -->
|
||||
@ -616,7 +624,7 @@ save attachment.</string>
|
||||
<!-- On "Exchange" setup screen, the exchange device-id label [CHAR LIMIT=30] -->
|
||||
<string name="account_setup_exchange_device_id_label">Mobile Device ID</string>
|
||||
|
||||
<!-- In Account setup options screen, Activity title -->
|
||||
<!-- In Account setup options screen, Activity title [CHAR LIMIT=45] -->
|
||||
<string name="account_setup_options_title">Account settings</string>
|
||||
<!-- In Account setup options screen, Activity headline [CHAR LIMIT=none] -->
|
||||
<string name="account_setup_options_headline">Account options</string>
|
||||
|
@ -41,6 +41,8 @@ public abstract class AccountServerBaseFragment extends Fragment
|
||||
protected Context mContext;
|
||||
protected Callback mCallback = EmptyCallback.INSTANCE;
|
||||
protected boolean mNextButtonEnabled;
|
||||
// STOPSHIP - this is a temp UI for "next" in AccountSettings. Disabled during Account Setup.
|
||||
public boolean mNextButtonDisplayed = true;
|
||||
|
||||
/**
|
||||
* Callback interface that owning activities must provide
|
||||
@ -103,23 +105,30 @@ public abstract class AccountServerBaseFragment extends Fragment
|
||||
}
|
||||
|
||||
// Add a "Next" button when this fragment is displayed
|
||||
// TODO remove this and replace with a button during Account Settings
|
||||
@Override
|
||||
public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
|
||||
super.onCreateOptionsMenu(menu, inflater);
|
||||
if (mNextButtonDisplayed) {
|
||||
inflater.inflate(R.menu.account_setup_next_option, menu);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Enable/disable "next" button
|
||||
* TODO remove this and replace with a button during Account Settings
|
||||
*/
|
||||
@Override
|
||||
public void onPrepareOptionsMenu(Menu menu) {
|
||||
if (mNextButtonDisplayed) {
|
||||
MenuItem item = menu.findItem(R.id.next);
|
||||
item.setEnabled(mNextButtonEnabled);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Respond to clicks in the "Next" button
|
||||
* TODO remove this and replace with a button during Account Settings
|
||||
*/
|
||||
@Override
|
||||
public boolean onOptionsItemSelected(MenuItem item) {
|
||||
|
@ -25,6 +25,9 @@ import android.app.Activity;
|
||||
import android.app.FragmentTransaction;
|
||||
import android.content.Intent;
|
||||
import android.os.Bundle;
|
||||
import android.view.View;
|
||||
import android.view.View.OnClickListener;
|
||||
import android.widget.Button;
|
||||
|
||||
/**
|
||||
* Provides generic setup for Exchange accounts. The following fields are supported:
|
||||
@ -61,7 +64,7 @@ import android.os.Bundle;
|
||||
* finish() (removes self from back stack)
|
||||
*/
|
||||
public class AccountSetupExchange extends AccountSetupActivity
|
||||
implements AccountSetupExchangeFragment.Callback {
|
||||
implements AccountSetupExchangeFragment.Callback, OnClickListener {
|
||||
|
||||
// Keys for savedInstanceState
|
||||
private final static String STATE_STARTED_AUTODISCOVERY =
|
||||
@ -69,6 +72,7 @@ public class AccountSetupExchange extends AccountSetupActivity
|
||||
|
||||
boolean mStartedAutoDiscovery;
|
||||
/* package */ AccountSetupExchangeFragment mFragment;
|
||||
private Button mNextButton;
|
||||
/* package */ boolean mNextButtonEnabled;
|
||||
|
||||
public static void actionIncomingSettings(Activity fromActivity, int mode, Account account) {
|
||||
@ -86,6 +90,13 @@ public class AccountSetupExchange extends AccountSetupActivity
|
||||
mFragment = (AccountSetupExchangeFragment)
|
||||
getFragmentManager().findFragmentById(R.id.setup_fragment);
|
||||
mFragment.setCallback(this);
|
||||
// TODO temp code to inhibit the options menu - still needed for AccountSettings
|
||||
mFragment.mNextButtonDisplayed = false;
|
||||
invalidateOptionsMenu();
|
||||
|
||||
mNextButton = (Button) findViewById(R.id.next);
|
||||
mNextButton.setOnClickListener(this);
|
||||
findViewById(R.id.previous).setOnClickListener(this);
|
||||
|
||||
// One-shot to launch autodiscovery at the entry to this activity (but not if it restarts)
|
||||
mStartedAutoDiscovery = false;
|
||||
@ -97,6 +108,21 @@ public class AccountSetupExchange extends AccountSetupActivity
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Implements View.OnClickListener
|
||||
*/
|
||||
@Override
|
||||
public void onClick(View view) {
|
||||
switch (view.getId()) {
|
||||
case R.id.next:
|
||||
mFragment.onNext();
|
||||
break;
|
||||
case R.id.previous:
|
||||
onBackPressed();
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onSaveInstanceState(Bundle outState) {
|
||||
super.onSaveInstanceState(outState);
|
||||
@ -168,13 +194,9 @@ public class AccountSetupExchange extends AccountSetupActivity
|
||||
/**
|
||||
* Implements AccountServerBaseFragment.Callback
|
||||
*/
|
||||
public void onEnableProceedButtons(boolean enabled) {
|
||||
boolean wasEnabled = mNextButtonEnabled;
|
||||
mNextButtonEnabled = enabled;
|
||||
|
||||
if (enabled != wasEnabled) {
|
||||
invalidateOptionsMenu();
|
||||
}
|
||||
public void onEnableProceedButtons(boolean enable) {
|
||||
mNextButtonEnabled = enable;
|
||||
mNextButton.setEnabled(enable);
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -24,6 +24,9 @@ import android.app.Activity;
|
||||
import android.app.FragmentTransaction;
|
||||
import android.content.Intent;
|
||||
import android.os.Bundle;
|
||||
import android.view.View;
|
||||
import android.view.View.OnClickListener;
|
||||
import android.widget.Button;
|
||||
|
||||
/**
|
||||
* Provides setup flow for IMAP/POP accounts.
|
||||
@ -32,9 +35,10 @@ import android.os.Bundle;
|
||||
* the settings as entered. If the account is OK, proceeds to AccountSetupOutgoing.
|
||||
*/
|
||||
public class AccountSetupIncoming extends AccountSetupActivity
|
||||
implements AccountSetupIncomingFragment.Callback {
|
||||
implements AccountSetupIncomingFragment.Callback, OnClickListener {
|
||||
|
||||
/* package */ AccountSetupIncomingFragment mFragment;
|
||||
private Button mNextButton;
|
||||
/* package */ boolean mNextButtonEnabled;
|
||||
|
||||
public static void actionIncomingSettings(Activity fromActivity, int mode, Account account) {
|
||||
@ -54,6 +58,28 @@ public class AccountSetupIncoming extends AccountSetupActivity
|
||||
|
||||
// Configure fragment
|
||||
mFragment.setCallback(this);
|
||||
// TODO temp code to inhibit the options menu - still needed for AccountSettings
|
||||
mFragment.mNextButtonDisplayed = false;
|
||||
invalidateOptionsMenu();
|
||||
|
||||
mNextButton = (Button) findViewById(R.id.next);
|
||||
mNextButton.setOnClickListener(this);
|
||||
findViewById(R.id.previous).setOnClickListener(this);
|
||||
}
|
||||
|
||||
/**
|
||||
* Implements View.OnClickListener
|
||||
*/
|
||||
@Override
|
||||
public void onClick(View view) {
|
||||
switch (view.getId()) {
|
||||
case R.id.next:
|
||||
mFragment.onNext();
|
||||
break;
|
||||
case R.id.previous:
|
||||
onBackPressed();
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
@ -74,12 +100,8 @@ public class AccountSetupIncoming extends AccountSetupActivity
|
||||
* Implements AccountServerBaseFragment.Callback
|
||||
*/
|
||||
public void onEnableProceedButtons(boolean enable) {
|
||||
boolean wasEnabled = mNextButtonEnabled;
|
||||
mNextButtonEnabled = enable;
|
||||
|
||||
if (enable != wasEnabled) {
|
||||
invalidateOptionsMenu();
|
||||
}
|
||||
mNextButton.setEnabled(enable);
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -24,6 +24,9 @@ import android.app.Activity;
|
||||
import android.app.FragmentTransaction;
|
||||
import android.content.Intent;
|
||||
import android.os.Bundle;
|
||||
import android.view.View;
|
||||
import android.view.View.OnClickListener;
|
||||
import android.widget.Button;
|
||||
|
||||
/**
|
||||
* Provides setup flow for SMTP (for IMAP/POP accounts).
|
||||
@ -32,9 +35,10 @@ import android.os.Bundle;
|
||||
* the settings as entered. If the account is OK, proceeds to AccountSetupOptions.
|
||||
*/
|
||||
public class AccountSetupOutgoing extends Activity
|
||||
implements AccountSetupOutgoingFragment.Callback {
|
||||
implements AccountSetupOutgoingFragment.Callback, OnClickListener {
|
||||
|
||||
/* package */ AccountSetupOutgoingFragment mFragment;
|
||||
private Button mNextButton;
|
||||
/* package */ boolean mNextButtonEnabled;
|
||||
|
||||
public static void actionOutgoingSettings(Activity fromActivity, int mode, Account account) {
|
||||
@ -54,6 +58,28 @@ public class AccountSetupOutgoing extends Activity
|
||||
|
||||
// Configure fragment
|
||||
mFragment.setCallback(this);
|
||||
// TODO temp code to inhibit the options menu - still needed for AccountSettings
|
||||
mFragment.mNextButtonDisplayed = false;
|
||||
invalidateOptionsMenu();
|
||||
|
||||
mNextButton = (Button) findViewById(R.id.next);
|
||||
mNextButton.setOnClickListener(this);
|
||||
findViewById(R.id.previous).setOnClickListener(this);
|
||||
}
|
||||
|
||||
/**
|
||||
* Implements View.OnClickListener
|
||||
*/
|
||||
@Override
|
||||
public void onClick(View view) {
|
||||
switch (view.getId()) {
|
||||
case R.id.next:
|
||||
mFragment.onNext();
|
||||
break;
|
||||
case R.id.previous:
|
||||
onBackPressed();
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
@ -74,12 +100,8 @@ public class AccountSetupOutgoing extends Activity
|
||||
* Implements AccountServerBaseFragment.Callback
|
||||
*/
|
||||
public void onEnableProceedButtons(boolean enable) {
|
||||
boolean wasEnabled = mNextButtonEnabled;
|
||||
mNextButtonEnabled = enable;
|
||||
|
||||
if (enable != wasEnabled) {
|
||||
invalidateOptionsMenu();
|
||||
}
|
||||
mNextButton.setEnabled(enable);
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -65,7 +65,8 @@ public class AccountSetupOutgoingFragment extends AccountServerBaseFragment
|
||||
private EditText mServerView;
|
||||
private EditText mPortView;
|
||||
private CheckBox mRequireLoginView;
|
||||
private ViewGroup mRequireLoginSettingsView;
|
||||
private View mRequireLoginSettingsView;
|
||||
private View mRequireLoginSettingsView2;
|
||||
private Spinner mSecurityTypeView;
|
||||
|
||||
// Support for lifecycle
|
||||
@ -98,8 +99,8 @@ public class AccountSetupOutgoingFragment extends AccountServerBaseFragment
|
||||
mServerView = (EditText) view.findViewById(R.id.account_server);
|
||||
mPortView = (EditText) view.findViewById(R.id.account_port);
|
||||
mRequireLoginView = (CheckBox) view.findViewById(R.id.account_require_login);
|
||||
mRequireLoginSettingsView =
|
||||
(ViewGroup) view.findViewById(R.id.account_require_login_settings);
|
||||
mRequireLoginSettingsView = view.findViewById(R.id.account_require_login_settings);
|
||||
mRequireLoginSettingsView2 = view.findViewById(R.id.account_require_login_settings_2);
|
||||
mSecurityTypeView = (Spinner) view.findViewById(R.id.account_security_type);
|
||||
mRequireLoginView.setOnCheckedChangeListener(this);
|
||||
|
||||
@ -317,6 +318,9 @@ public class AccountSetupOutgoingFragment extends AccountServerBaseFragment
|
||||
@Override
|
||||
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
|
||||
mRequireLoginSettingsView.setVisibility(isChecked ? View.VISIBLE : View.GONE);
|
||||
if (mRequireLoginSettingsView2 != null) {
|
||||
mRequireLoginSettingsView2.setVisibility(isChecked ? View.VISIBLE : View.GONE);
|
||||
}
|
||||
validateFields();
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user