1
0
Fork 0
mirror of https://github.com/MatomoCamp/matomocamp-companion-android.git synced 2024-09-19 16:13:46 +02:00

Removed underline for persons and room links and unify their appearance.

Disabled instance state save for TextViews showing heavy text or custom spans.
This commit is contained in:
Christophe Beyls 2017-01-09 12:25:46 +01:00
parent bedab2071c
commit 1e748874d9
3 changed files with 21 additions and 11 deletions

View file

@ -19,11 +19,11 @@ import android.support.v4.content.Loader;
import android.text.Spannable;
import android.text.SpannableString;
import android.text.SpannableStringBuilder;
import android.text.TextPaint;
import android.text.TextUtils;
import android.text.method.LinkMovementMethod;
import android.text.method.MovementMethod;
import android.text.style.ClickableSpan;
import android.text.style.UnderlineSpan;
import android.view.LayoutInflater;
import android.view.Menu;
import android.view.MenuInflater;
@ -155,15 +155,19 @@ public class EventDetailsFragment extends Fragment {
final int roomImageResId = getResources().getIdentifier(StringUtils.roomNameToResourceName(roomName), "drawable", getActivity().getPackageName());
// If the room image exists, make the room text clickable to display it
if (roomImageResId != 0) {
roomText.setSpan(new UnderlineSpan(), 0, roomText.length(), Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
textView.setOnClickListener(new View.OnClickListener() {
roomText.setSpan(new ClickableSpan() {
@Override
public void onClick(View view) {
RoomImageDialogFragment.newInstance(roomName, roomImageResId).show(getFragmentManager());
}
});
textView.setFocusable(true);
@Override
public void updateDrawState(TextPaint ds) {
super.updateDrawState(ds);
ds.setUnderlineText(false);
}
}, 0, roomText.length(), Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
textView.setMovementMethod(linkMovementMethod);
}
textView.setText(roomText);
textView.setContentDescription(getString(R.string.room_content_description, roomText));
@ -481,6 +485,12 @@ public class EventDetailsFragment extends Fragment {
Intent intent = new Intent(context, PersonInfoActivity.class).putExtra(PersonInfoActivity.EXTRA_PERSON, person);
context.startActivity(intent);
}
@Override
public void updateDrawState(TextPaint ds) {
super.updateDrawState(ds);
ds.setUnderlineText(false);
}
}
private static class LinkClickListener implements View.OnClickListener {

View file

@ -39,6 +39,7 @@
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="8dp"
android:saveEnabled="false"
tools:text="FOSDEM Staff"/>
<View
@ -66,11 +67,12 @@
<TextView
android:id="@+id/room"
style="@style/Metadata.Selectable"
style="@style/Metadata"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:drawableLeft="@drawable/ic_place_grey600_18dp"
android:drawableStart="@drawable/ic_place_grey600_18dp"
android:saveEnabled="false"
tools:text="Janson (Building J)"/>
</LinearLayout>
@ -82,6 +84,7 @@
android:layout_height="wrap_content"
android:background="@color/translucent_grey"
android:padding="@dimen/content_margin"
android:saveEnabled="false"
android:textIsSelectable="true"
tools:text="FOSDEM welcome and opening talk."/>
@ -91,6 +94,7 @@
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:padding="@dimen/content_margin"
android:saveEnabled="false"
android:textIsSelectable="true"
tools:text="Welcome to FOSDEM 2015!"/>

View file

@ -110,10 +110,6 @@
<item name="android:drawablePadding">8dp</item>
</style>
<style name="Metadata.Selectable">
<item name="android:background">?attr/selectableItemBackground</item>
</style>
<style name="Header">
<item name="android:layout_width">match_parent</item>
<item name="android:layout_height">wrap_content</item>