More directionality fixes

pull/437/head
Alex Baker 8 years ago
parent ea45c636d3
commit e88f008980

@ -154,7 +154,7 @@ public class CustomFilterAdapter extends ArrayAdapter<CriterionInstance> {
ViewHolder viewHolder = new ViewHolder();
viewHolder.type = (ImageView) convertView.findViewById(R.id.type);
viewHolder.name= (TextView) convertView.findViewById(R.id.name);
viewHolder.filterCount = (TextView) convertView.findViewById(R.id.filter);
viewHolder.filterCount = (TextView) convertView.findViewById(R.id.filter_count);
convertView.setTag(viewHolder);
}

@ -85,14 +85,17 @@ public class AlertDialogBuilder {
private String[] addDirectionality(String[] strings) {
if (atLeastJellybeanMR1()) {
final char directionalityMark = locale.getDirectionalityMark();
for (int i = 0 ; i < strings.length ; i++) {
strings[i] = directionalityMark + strings[i];
strings[i] = withDirectionality(strings[i]);
}
}
return strings;
}
private String withDirectionality(String string) {
return locale.getDirectionalityMark() + string;
}
public AlertDialogBuilder setSingleChoiceItems(ListAdapter adapter, int selectedIndex, DialogInterface.OnClickListener onClickListener) {
builder.setSingleChoiceItems(adapter, selectedIndex, onClickListener);
return this;

@ -3,7 +3,7 @@ package org.tasks.locale;
import android.app.Dialog;
import android.content.Context;
import android.content.res.Configuration;
import android.text.TextUtils;
import android.support.v4.text.TextUtilsCompat;
import android.view.ContextThemeWrapper;
import android.view.View;
import android.view.ViewParent;
@ -36,8 +36,8 @@ public class Locale {
private final java.util.Locale deviceLocale;
private final java.util.Locale appLocale;
private final int deviceDirectionality;
private final int appDirectionality;
private final char appDirectionalityMark;
private final String languageOverride;
private final int directionOverride;
private final boolean hasUserOverrides;
@ -46,7 +46,6 @@ public class Locale {
this.deviceLocale = deviceLocale;
this.languageOverride = languageOverride;
this.directionOverride = directionOverride;
deviceDirectionality = TextUtils.getLayoutDirectionFromLocale(deviceLocale);
java.util.Locale override = localeFromString(languageOverride);
if (override != null) {
@ -57,12 +56,11 @@ public class Locale {
if (directionOverride == View.LAYOUT_DIRECTION_LTR || directionOverride == View.LAYOUT_DIRECTION_RTL) {
appDirectionality = directionOverride;
} else if (appLocale != null) {
appDirectionality = TextUtils.getLayoutDirectionFromLocale(appLocale);
} else {
appDirectionality = deviceDirectionality;
} else {
appDirectionality = TextUtilsCompat.getLayoutDirectionFromLocale(appLocale);
}
appDirectionalityMark = appDirectionality == View.LAYOUT_DIRECTION_RTL ? RIGHT_TO_LEFT_MARK : LEFT_TO_RIGHT_MARK;
int deviceDirectionality = TextUtilsCompat.getLayoutDirectionFromLocale(deviceLocale);
hasUserOverrides = !(deviceLocale.equals(appLocale) && appDirectionality == deviceDirectionality) && atLeastJellybeanMR1();
}
@ -71,11 +69,7 @@ public class Locale {
}
public char getDirectionalityMark() {
return getDirectionalityMark(appDirectionality);
}
private char getDirectionalityMark(int directionality) {
return directionality == View.LAYOUT_DIRECTION_RTL ? RIGHT_TO_LEFT_MARK : LEFT_TO_RIGHT_MARK;
return appDirectionalityMark;
}
public int getDirectionality() {
@ -140,7 +134,6 @@ public class Locale {
return "Locale{" +
"deviceLocale=" + deviceLocale +
", appLocale=" + appLocale +
", deviceDirectionality=" + deviceDirectionality +
", appDirectionality=" + appDirectionality +
", languageOverride='" + languageOverride + '\'' +
", directionOverride=" + directionOverride +

@ -20,9 +20,9 @@
android:drawablePadding="@dimen/keyline_second"
android:gravity="center_vertical"
android:textAlignment="viewStart"
android:minHeight="?android:attr/listPreferredItemHeightSmall"
android:paddingEnd="?android:attr/listPreferredItemPaddingEnd"
android:paddingLeft="?android:attr/listPreferredItemPaddingStart"
android:paddingRight="?android:attr/listPreferredItemPaddingEnd"
android:paddingStart="?android:attr/listPreferredItemPaddingStart"
android:textAppearance="?android:attr/textAppearanceListItemSmall" />
android:minHeight="?attr/listPreferredItemHeightSmall"
android:paddingEnd="@dimen/keyline_first"
android:paddingLeft="@dimen/keyline_first"
android:paddingRight="@dimen/keyline_first"
android:paddingStart="@dimen/keyline_first"
android:textAppearance="?attr/textAppearanceListItemSmall" />

@ -33,6 +33,7 @@
android:layout_marginTop="16dp"
android:background="#00000000"
android:hint="@string/enter_filter_name"
android:textAlignment="viewStart"
android:imeOptions="flagNoExtractUi"
android:inputType="textCapSentences"
android:singleLine="true"

@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
<!--
** Copyright (c) 2012 Todoroo Inc
**
** See the file "LICENSE" for the full license governing this code.
@ -15,7 +15,7 @@
android:orientation="horizontal">
<TextView
android:id="@+id/filter"
android:id="@+id/filter_count"
android:paddingLeft="5dip"
android:paddingRight="5dip"
android:layout_alignParentRight="true"
@ -25,10 +25,10 @@
android:layout_height="fill_parent" />
<LinearLayout
android:layout_width="wrap_content"
android:layout_width="match_parent"
android:layout_height="fill_parent"
android:layout_toLeftOf="@id/filter"
android:layout_toStartOf="@id/filter"
android:layout_toLeftOf="@id/filter_count"
android:layout_toStartOf="@id/filter_count"
android:layout_alignParentStart="true"
android:layout_alignParentLeft="true"
android:gravity="center_vertical|start"
@ -39,7 +39,9 @@
android:layout_width="32dip"
android:layout_height="fill_parent"
android:paddingLeft="5dip"
android:paddingStart="5dp"
android:paddingRight="5dip"
android:paddingEnd="5dp"
android:scaleType="center"/>
<!-- filter icon -->
@ -47,7 +49,9 @@
android:layout_width="32dip"
android:layout_height="fill_parent"
android:paddingLeft="5dip"
android:paddingStart="5dp"
android:paddingRight="5dip"
android:paddingEnd="5dp"
android:visibility="gone"/>
<!-- filter text -->
@ -56,6 +60,9 @@
android:layout_height="fill_parent"
android:paddingLeft="5dip"
android:paddingStart="5dip"
android:paddingRight="5dp"
android:paddingEnd="5dp"
android:textAlignment="viewStart"
android:textSize="18sp"
android:gravity="center_vertical"
style="@style/TextAppearance"/>

@ -40,6 +40,7 @@
android:imeOptions="flagNoExtractUi"
android:inputType="textCapSentences"
android:singleLine="true"
android:textAlignment="viewStart"
android:textColor="?attr/asTextColorHint"
android:textColorHint="?attr/asTextColorHint"
android:textSize="15sp" />

@ -42,6 +42,7 @@
android:nextFocusLeft="@id/tag_name"
android:nextFocusUp="@id/tag_name"
android:singleLine="true"
android:textAlignment="viewStart"
android:textColor="?android:attr/textColorPrimary"
android:textColorHint="?android:attr/textColorHint"
android:textSize="18sp" />
@ -58,8 +59,8 @@
android:id="@+id/theme_label"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentStart="true"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
android:text="@string/color"
android:textColor="?android:attr/textColorSecondary"
android:textSize="18sp" />
@ -68,8 +69,8 @@
android:id="@+id/theme"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentStart="true"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
android:layout_below="@id/theme_label"
android:layout_marginTop="@dimen/keyline_first"
android:textColor="?android:attr/textColorPrimary"

Loading…
Cancel
Save