Update task action icons

pull/467/head
Alex Baker 9 years ago
parent b042dcf0cf
commit c55b11850a

@ -372,7 +372,7 @@ public class TaskAdapter extends CursorAdapter implements Filterable {
TaskAction action = getTaskAction(task, viewHolder.hasFiles, viewHolder.hasNotes); TaskAction action = getTaskAction(task, viewHolder.hasFiles, viewHolder.hasNotes);
if (action != null) { if (action != null) {
viewHolder.taskActionContainer.setVisibility(View.VISIBLE); viewHolder.taskActionContainer.setVisibility(View.VISIBLE);
taskAction.setImageDrawable(action.icon); taskAction.setImageResource(action.icon);
taskAction.setTag(action); taskAction.setTag(action);
} else { } else {
viewHolder.taskActionContainer.setVisibility(View.GONE); viewHolder.taskActionContainer.setVisibility(View.GONE);

@ -6,7 +6,6 @@
package com.todoroo.astrid.api; package com.todoroo.astrid.api;
import android.app.PendingIntent; import android.app.PendingIntent;
import android.graphics.drawable.BitmapDrawable;
/** /**
* Represents an intent that can be called on a task * Represents an intent that can be called on a task
@ -24,12 +23,12 @@ public class TaskAction {
/** /**
* Quick action icon * Quick action icon
*/ */
public BitmapDrawable icon = null; public int icon = 0;
/** /**
* Create an EditOperation object * Create an EditOperation object
*/ */
public TaskAction(PendingIntent intent, BitmapDrawable icon) { public TaskAction(PendingIntent intent, int icon) {
super(); super();
this.intent = intent; this.intent = intent;
this.icon = icon; this.icon = icon;

@ -11,10 +11,7 @@ import android.content.Intent;
import android.content.pm.PackageManager; import android.content.pm.PackageManager;
import android.content.pm.ResolveInfo; import android.content.pm.ResolveInfo;
import android.content.res.Resources; import android.content.res.Resources;
import android.graphics.drawable.BitmapDrawable;
import android.graphics.drawable.Drawable;
import android.net.Uri; import android.net.Uri;
import android.support.v4.content.ContextCompat;
import android.text.Spannable; import android.text.Spannable;
import android.text.style.URLSpan; import android.text.style.URLSpan;
import android.text.util.Linkify; import android.text.util.Linkify;
@ -26,7 +23,6 @@ import com.todoroo.astrid.notes.NotesAction;
import org.tasks.R; import org.tasks.R;
import java.util.HashMap;
import java.util.List; import java.util.List;
/** /**
@ -64,15 +60,12 @@ public class LinkActionExposer {
} }
} }
Resources r = context.getResources();
if (hasAttachments) { if (hasAttachments) {
BitmapDrawable icon = getBitmapDrawable(context, R.drawable.action_attachments, r); return new FilesAction(R.drawable.ic_attachment_24dp);
return new FilesAction(icon);
} }
if (hasNotes) { if (hasNotes) {
BitmapDrawable icon = getBitmapDrawable(context, R.drawable.action_notes, r); return new NotesAction(R.drawable.ic_event_note_24dp);
return new NotesAction(icon);
} }
return null; return null;
@ -101,28 +94,15 @@ public class LinkActionExposer {
} }
Resources r = context.getResources(); Resources r = context.getResources();
Drawable icon; int icon;
if (url.startsWith("mailto")) { if (url.startsWith("mailto")) {
icon = getBitmapDrawable(context, R.drawable.action_mail, r); icon = R.drawable.ic_email_black_24dp;
} else if (url.startsWith("tel")) { } else if (url.startsWith("tel")) {
icon = getBitmapDrawable(context, R.drawable.action_tel, r); icon = R.drawable.ic_phone_white_24dp;
} else { } else {
icon = getBitmapDrawable(context, R.drawable.action_web, r); icon = R.drawable.ic_public_black_24dp;
} }
return new TaskAction(PendingIntent.getActivity(context, (int)id, actionIntent, 0), (BitmapDrawable)icon); return new TaskAction(PendingIntent.getActivity(context, (int)id, actionIntent, 0), icon);
} }
private static final HashMap<Integer, BitmapDrawable> IMAGE_CACHE = new HashMap<>();
private static BitmapDrawable getBitmapDrawable(Context context, int resId, Resources resources) {
if (IMAGE_CACHE.containsKey(resId)) {
return IMAGE_CACHE.get(resId);
} else {
BitmapDrawable b = (BitmapDrawable) ContextCompat.getDrawable(context, resId);
IMAGE_CACHE.put(resId, b);
return b;
}
}
} }

@ -5,13 +5,11 @@
*/ */
package com.todoroo.astrid.files; package com.todoroo.astrid.files;
import android.graphics.drawable.BitmapDrawable;
import com.todoroo.astrid.api.TaskAction; import com.todoroo.astrid.api.TaskAction;
public class FilesAction extends TaskAction { public class FilesAction extends TaskAction {
public FilesAction(BitmapDrawable icon) { public FilesAction(int icon) {
super(null, icon); super(null, icon);
} }
} }

@ -5,13 +5,11 @@
*/ */
package com.todoroo.astrid.notes; package com.todoroo.astrid.notes;
import android.graphics.drawable.BitmapDrawable;
import com.todoroo.astrid.api.TaskAction; import com.todoroo.astrid.api.TaskAction;
public class NotesAction extends TaskAction { public class NotesAction extends TaskAction {
public NotesAction(BitmapDrawable icon) { public NotesAction(int icon) {
super(null, icon); super(null, icon);
} }
} }

Binary file not shown.

Before

Width:  |  Height:  |  Size: 749 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 523 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 406 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 918 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.9 KiB

@ -0,0 +1,5 @@
<vector android:autoMirrored="true" android:height="24dp"
android:viewportHeight="24.0" android:viewportWidth="24.0"
android:width="24dp" xmlns:android="http://schemas.android.com/apk/res/android">
<path android:fillColor="#FF000000" android:pathData="M20,4L4,4c-1.1,0 -1.99,0.9 -1.99,2L2,18c0,1.1 0.9,2 2,2h16c1.1,0 2,-0.9 2,-2L22,6c0,-1.1 -0.9,-2 -2,-2zM20,8l-8,5 -8,-5L4,6l8,5 8,-5v2z"/>
</vector>

@ -0,0 +1,5 @@
<vector android:autoMirrored="true" android:height="24dp"
android:viewportHeight="24.0" android:viewportWidth="24.0"
android:width="24dp" xmlns:android="http://schemas.android.com/apk/res/android">
<path android:fillColor="#FF000000" android:pathData="M12,2C6.48,2 2,6.48 2,12s4.48,10 10,10 10,-4.48 10,-10S17.52,2 12,2zM11,19.93c-3.95,-0.49 -7,-3.85 -7,-7.93 0,-0.62 0.08,-1.21 0.21,-1.79L9,15v1c0,1.1 0.9,2 2,2v1.93zM17.9,17.39c-0.26,-0.81 -1,-1.39 -1.9,-1.39h-1v-3c0,-0.55 -0.45,-1 -1,-1L8,12v-2h2c0.55,0 1,-0.45 1,-1L11,7h2c1.1,0 2,-0.9 2,-2v-0.41c2.93,1.19 5,4.06 5,7.41 0,2.08 -0.8,3.97 -2.1,5.39z"/>
</vector>

@ -76,10 +76,12 @@
<ImageView <ImageView
android:id="@+id/taskActionIcon" android:id="@+id/taskActionIcon"
android:layout_width="24dp" android:layout_width="wrap_content"
android:layout_height="24dp" android:layout_height="wrap_content"
android:scaleType="fitCenter" android:layout_gravity="top"
tools:ignore="ContentDescription" /> android:alpha="?attr/alpha_secondary"
android:scaleType="center"
android:tint="?attr/icon_tint" />
</LinearLayout> </LinearLayout>
</LinearLayout> </LinearLayout>

Loading…
Cancel
Save