Эх сурвалжийг харах

Merge pull request #395 from dontcallmedom/master

allow multi-line checkbox for preferences with long titles
masensio 11 жил өмнө
parent
commit
b124167f50

+ 2 - 2
res/xml/preferences.xml

@@ -28,10 +28,10 @@
     <Preference android:title="@string/prefs_manage_accounts" android:key="manage_account" />
     <Preference android:title="@string/prefs_manage_accounts" android:key="manage_account" />
     <CheckBoxPreference android:title="@string/prefs_pincode" android:key="set_pincode" 
     <CheckBoxPreference android:title="@string/prefs_pincode" android:key="set_pincode" 
                         android:summary="@string/prefs_pincode_summary"/>
                         android:summary="@string/prefs_pincode_summary"/>
-    <CheckBoxPreference android:key="instant_uploading" 
+    <com.owncloud.android.ui.CheckBoxPreferenceWithLongTitle android:key="instant_uploading" 
                         android:title="@string/prefs_instant_upload"  
                         android:title="@string/prefs_instant_upload"  
                         android:summary="@string/prefs_instant_upload_summary"/>
                         android:summary="@string/prefs_instant_upload_summary"/>
-    <CheckBoxPreference android:dependency="instant_uploading" 
+    <com.owncloud.android.ui.CheckBoxPreferenceWithLongTitle android:dependency="instant_uploading" 
         				android:disableDependentsState="true" 
         				android:disableDependentsState="true" 
         				android:title="@string/instant_upload_on_wifi" 
         				android:title="@string/instant_upload_on_wifi" 
         				android:key="instant_upload_on_wifi"/>
         				android:key="instant_upload_on_wifi"/>

+ 45 - 0
src/com/owncloud/android/ui/CheckBoxPreferenceWithLongTitle.java

@@ -0,0 +1,45 @@
+/* ownCloud Android client application
+ *   Copyright (C) 2011  Bartek Przybylski
+ *   Copyright (C) 2012-2013 ownCloud Inc.
+ *
+ *   This program is free software: you can redistribute it and/or modify
+ *   it under the terms of the GNU General Public License version 2,
+ *   as published by the Free Software Foundation.
+ *
+ *   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.
+ *
+ *   You should have received a copy of the GNU General Public License
+ *   along with this program.  If not, see <http://www.gnu.org/licenses/>.
+ *
+ */
+package com.owncloud.android.ui;
+import android.content.Context;
+import android.util.AttributeSet;
+import android.view.View;
+import android.widget.TextView;
+import android.preference.CheckBoxPreference;
+
+public class CheckBoxPreferenceWithLongTitle extends CheckBoxPreference{
+
+    public CheckBoxPreferenceWithLongTitle(Context context) {
+        super(context);
+    }
+
+    public CheckBoxPreferenceWithLongTitle(Context context, AttributeSet attrs) {
+        super(context, attrs);
+    }
+    public CheckBoxPreferenceWithLongTitle(Context context, AttributeSet attrs, int defStyle) {
+        super(context, attrs, defStyle);
+    }
+
+    @Override
+    protected void onBindView(View view) {
+        super.onBindView(view);
+        TextView titleView = (TextView) view.findViewById(android.R.id.title);
+	titleView.setSingleLine(false);
+        titleView.setMaxLines(3);
+    }
+}