android: Separate view added to select certificates
authorTobias Brunner <tobias@strongswan.org>
Mon, 27 Aug 2012 15:58:09 +0000 (17:58 +0200)
committerTobias Brunner <tobias@strongswan.org>
Fri, 31 Aug 2012 16:24:23 +0000 (18:24 +0200)
src/frontends/android/res/layout/certificate_selector.xml [new file with mode: 0644]
src/frontends/android/res/layout/profile_detail_view.xml
src/frontends/android/src/org/strongswan/android/ui/VpnProfileDetailActivity.java

diff --git a/src/frontends/android/res/layout/certificate_selector.xml b/src/frontends/android/res/layout/certificate_selector.xml
new file mode 100644 (file)
index 0000000..c8c2581
--- /dev/null
@@ -0,0 +1,39 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+    Copyright (C) 2012 Tobias Brunner
+    Hochschule fuer Technik Rapperswil
+
+    This program is free software; you can redistribute it and/or modify it
+    under the terms of the GNU General Public License as published by the
+    Free Software Foundation; either version 2 of the License, or (at your
+    option) any later version.  See <http://www.fsf.org/copyleft/gpl.txt>.
+
+    This program is distributed in the hope that it will be useful, but
+    WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
+    or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+    for more details.
+-->
+<TwoLineListItem xmlns:android="http://schemas.android.com/apk/res/android"
+    android:layout_width="match_parent"
+    android:layout_height="wrap_content"
+    android:minHeight="?android:attr/listPreferredItemHeight"
+    android:background="?android:attr/selectableItemBackground"
+    android:mode="twoLine"
+    android:padding="10dp" >
+
+    <TextView
+        android:id="@android:id/text1"
+        android:layout_width="match_parent"
+        android:layout_height="wrap_content"
+        android:textAppearance="?android:attr/textAppearanceMedium" />
+
+    <TextView
+        android:id="@android:id/text2"
+        android:layout_width="match_parent"
+        android:layout_height="wrap_content"
+        android:layout_below="@android:id/text1"
+        android:layout_alignLeft="@android:id/text1"
+        android:textAppearance="?android:attr/textAppearanceSmall"
+        android:textColor="?android:attr/textColorSecondary" />
+
+</TwoLineListItem>
index 1ca562a..2a52ae0 100644 (file)
             android:layout_height="wrap_content"
             android:text="@string/profile_ca_auto_label" />
 
-        <RelativeLayout
+        <include
             android:id="@+id/select_certificate"
-            android:layout_width="match_parent"
-            android:layout_height="wrap_content"
-            android:minHeight="?android:attr/listPreferredItemHeight"
-            android:background="?android:attr/selectableItemBackground"
-            android:padding="10dp" >
-
-            <TextView
-                android:id="@+id/select_certificate_title"
-                android:layout_width="match_parent"
-                android:layout_height="wrap_content"
-                android:textAppearance="?android:attr/textAppearanceMedium"
-                android:text="@string/profile_ca_select_certificate_label" />
-
-            <TextView
-                android:id="@+id/select_certificate_subtitle"
-                android:layout_width="match_parent"
-                android:layout_height="wrap_content"
-                android:layout_below="@id/select_certificate_title"
-                android:layout_alignLeft="@id/select_certificate_title"
-                android:textAppearance="?android:attr/textAppearanceSmall"
-                android:textColor="?android:attr/textColorSecondary"
-                android:text="@string/profile_ca_select_certificate" />
-
-        </RelativeLayout>
+            layout="@layout/certificate_selector" />
 
     </LinearLayout>
 
index 2134cb3..6cdf97b 100644 (file)
@@ -44,9 +44,8 @@ import android.widget.CheckBox;
 import android.widget.CompoundButton;
 import android.widget.CompoundButton.OnCheckedChangeListener;
 import android.widget.EditText;
-import android.widget.RelativeLayout;
 import android.widget.Spinner;
-import android.widget.TextView;
+import android.widget.TwoLineListItem;
 
 public class VpnProfileDetailActivity extends Activity
 {
@@ -64,9 +63,7 @@ public class VpnProfileDetailActivity extends Activity
        private EditText mUsername;
        private EditText mPassword;
        private CheckBox mCheckAuto;
-       private RelativeLayout mSelectCert;
-       private TextView mCertTitle;
-       private TextView mCertSubtitle;
+       private TwoLineListItem mSelectCert;
 
        @Override
        public void onCreate(Bundle savedInstanceState)
@@ -90,10 +87,7 @@ public class VpnProfileDetailActivity extends Activity
                mPassword = (EditText)findViewById(R.id.password);
 
                mCheckAuto = (CheckBox)findViewById(R.id.ca_auto);
-               mSelectCert = (RelativeLayout)findViewById(R.id.select_certificate);
-               mCertTitle = (TextView)findViewById(R.id.select_certificate_title);
-               mCertSubtitle = (TextView)findViewById(R.id.select_certificate_subtitle);
-
+               mSelectCert = (TwoLineListItem)findViewById(R.id.select_certificate);
 
                mSelectVpnType.setOnItemSelectedListener(new OnItemSelectedListener() {
                        @Override
@@ -246,13 +240,13 @@ public class VpnProfileDetailActivity extends Activity
 
                        if (mCertEntry != null)
                        {
-                               mCertTitle.setText(mCertEntry.getSubjectPrimary());
-                               mCertSubtitle.setText(mCertEntry.getSubjectSecondary());
+                               mSelectCert.getText1().setText(mCertEntry.getSubjectPrimary());
+                               mSelectCert.getText2().setText(mCertEntry.getSubjectSecondary());
                        }
                        else
                        {
-                               mCertTitle.setText(R.string.profile_ca_select_certificate_label);
-                               mCertSubtitle.setText(R.string.profile_ca_select_certificate);
+                               mSelectCert.getText1().setText(R.string.profile_ca_select_certificate_label);
+                               mSelectCert.getText2().setText(R.string.profile_ca_select_certificate);
                        }
                }
                else