Use uuid for default tag images instead of titles

pull/14/head
Sam Bosley 13 years ago
parent 204cd8161a
commit 6bc7fedfe6

@ -114,7 +114,7 @@ public class TagCommentsFragment extends CommentsFragment {
AsyncImageView imageView = (AsyncImageView) header.findViewById(R.id.tag_picture); AsyncImageView imageView = (AsyncImageView) header.findViewById(R.id.tag_picture);
imageView.setDefaultImageDrawable(ResourceDrawableCache.getImageDrawableFromId(getResources(), TagService.getDefaultImageIDForTag(tagName))); imageView.setDefaultImageDrawable(ResourceDrawableCache.getImageDrawableFromId(getResources(), TagService.getDefaultImageIDForTag(tagData.getUuid())));
String imageUrl = tagData.getPictureUrl(TagData.PICTURE, RemoteModel.PICTURE_MEDIUM); String imageUrl = tagData.getPictureUrl(TagData.PICTURE, RemoteModel.PICTURE_MEDIUM);
Bitmap imageBitmap = null; Bitmap imageBitmap = null;
if (TextUtils.isEmpty(imageUrl)) if (TextUtils.isEmpty(imageUrl))

@ -220,7 +220,7 @@ public class TagSettingsActivity extends FragmentActivity {
findViewById(R.id.tag_silenced_container).setVisibility(View.VISIBLE); findViewById(R.id.tag_silenced_container).setVisibility(View.VISIBLE);
} }
picture.setDefaultImageDrawable(ResourceDrawableCache.getImageDrawableFromId(getResources(), TagService.getDefaultImageIDForTag(tagData.getValue(TagData.NAME)))); picture.setDefaultImageDrawable(ResourceDrawableCache.getImageDrawableFromId(getResources(), TagService.getDefaultImageIDForTag(tagData.getUuid())));
picture.setOnClickListener(new OnClickListener() { picture.setOnClickListener(new OnClickListener() {
@Override @Override
public void onClick(View arg0) { public void onClick(View arg0) {
@ -421,7 +421,7 @@ public class TagSettingsActivity extends FragmentActivity {
picture.setUrl(imageUrl); picture.setUrl(imageUrl);
if (!isNewTag) { if (!isNewTag) {
ImageView shortcut = (ImageView) findViewById(R.id.create_shortcut); ImageView shortcut = (ImageView) findViewById(R.id.create_shortcut);
shortcut.setImageBitmap(FilterListFragment.superImposeListIcon(this, picture.getImageBitmap(), tagData.getValue(TagData.NAME))); shortcut.setImageBitmap(FilterListFragment.superImposeListIcon(this, picture.getImageBitmap(), tagData.getUuid()));
} }
String peopleJson = tagData.getValue(TagData.MEMBERS); String peopleJson = tagData.getValue(TagData.MEMBERS);

@ -48,10 +48,12 @@ import com.todoroo.andlib.service.Autowired;
import com.todoroo.andlib.service.DependencyInjectionService; import com.todoroo.andlib.service.DependencyInjectionService;
import com.todoroo.andlib.service.ExceptionService; import com.todoroo.andlib.service.ExceptionService;
import com.todoroo.andlib.utility.AndroidUtilities; import com.todoroo.andlib.utility.AndroidUtilities;
import com.todoroo.astrid.actfm.TagViewFragment;
import com.todoroo.astrid.adapter.FilterAdapter; import com.todoroo.astrid.adapter.FilterAdapter;
import com.todoroo.astrid.api.AstridApiConstants; import com.todoroo.astrid.api.AstridApiConstants;
import com.todoroo.astrid.api.Filter; import com.todoroo.astrid.api.Filter;
import com.todoroo.astrid.api.FilterListItem; import com.todoroo.astrid.api.FilterListItem;
import com.todoroo.astrid.api.FilterWithUpdate;
import com.todoroo.astrid.core.CoreFilterExposer; import com.todoroo.astrid.core.CoreFilterExposer;
import com.todoroo.astrid.service.StatisticsService; import com.todoroo.astrid.service.StatisticsService;
import com.todoroo.astrid.tags.TagService; import com.todoroo.astrid.tags.TagService;
@ -327,7 +329,15 @@ public class FilterListFragment extends ListFragment {
if(label.length() == 0) if(label.length() == 0)
return; return;
Bitmap bitmap = superImposeListIcon(activity, filter.listingIcon, filter.listingTitle); String defaultImageId = filter.listingTitle;
if (filter instanceof FilterWithUpdate) {
FilterWithUpdate fwu = (FilterWithUpdate) filter;
Bundle customExtras = fwu.customExtras;
if (customExtras != null && customExtras.containsKey(TagViewFragment.EXTRA_TAG_UUID))
defaultImageId = customExtras.getString(TagViewFragment.EXTRA_TAG_UUID);
}
Bitmap bitmap = superImposeListIcon(activity, filter.listingIcon, defaultImageId);
Intent createShortcutIntent = new Intent(); Intent createShortcutIntent = new Intent();
createShortcutIntent.putExtra(Intent.EXTRA_SHORTCUT_INTENT, shortcutIntent); createShortcutIntent.putExtra(Intent.EXTRA_SHORTCUT_INTENT, shortcutIntent);
@ -340,11 +350,11 @@ public class FilterListFragment extends ListFragment {
activity.getString(R.string.FLA_toast_onCreateShortcut, label), Toast.LENGTH_LONG).show(); activity.getString(R.string.FLA_toast_onCreateShortcut, label), Toast.LENGTH_LONG).show();
} }
public static Bitmap superImposeListIcon(Activity activity, Bitmap listingIcon, String listingTitle) { public static Bitmap superImposeListIcon(Activity activity, Bitmap listingIcon, String uuid) {
Bitmap emblem = listingIcon; Bitmap emblem = listingIcon;
if(emblem == null) if(emblem == null)
emblem = ((BitmapDrawable) activity.getResources().getDrawable( emblem = ((BitmapDrawable) activity.getResources().getDrawable(
TagService.getDefaultImageIDForTag(listingTitle))).getBitmap(); TagService.getDefaultImageIDForTag(uuid))).getBitmap();
// create icon by superimposing astrid w/ icon // create icon by superimposing astrid w/ icon
DisplayMetrics metrics = new DisplayMetrics(); DisplayMetrics metrics = new DisplayMetrics();

@ -43,6 +43,7 @@ import com.timsu.astrid.R;
import com.todoroo.andlib.service.Autowired; import com.todoroo.andlib.service.Autowired;
import com.todoroo.andlib.service.ContextManager; import com.todoroo.andlib.service.ContextManager;
import com.todoroo.andlib.service.DependencyInjectionService; import com.todoroo.andlib.service.DependencyInjectionService;
import com.todoroo.astrid.actfm.TagViewFragment;
import com.todoroo.astrid.activity.AstridActivity; import com.todoroo.astrid.activity.AstridActivity;
import com.todoroo.astrid.activity.FilterListFragment; import com.todoroo.astrid.activity.FilterListFragment;
import com.todoroo.astrid.activity.TaskListFragment; import com.todoroo.astrid.activity.TaskListFragment;
@ -55,6 +56,7 @@ import com.todoroo.astrid.api.FilterListHeader;
import com.todoroo.astrid.api.FilterListItem; import com.todoroo.astrid.api.FilterListItem;
import com.todoroo.astrid.api.FilterWithCustomIntent; import com.todoroo.astrid.api.FilterWithCustomIntent;
import com.todoroo.astrid.api.FilterWithUpdate; import com.todoroo.astrid.api.FilterWithUpdate;
import com.todoroo.astrid.data.RemoteModel;
import com.todoroo.astrid.helper.AsyncImageView; import com.todoroo.astrid.helper.AsyncImageView;
import com.todoroo.astrid.service.MarketStrategy.NookMarketStrategy; import com.todoroo.astrid.service.MarketStrategy.NookMarketStrategy;
import com.todoroo.astrid.service.TaskService; import com.todoroo.astrid.service.TaskService;
@ -582,8 +584,16 @@ public class FilterAdapter extends ArrayAdapter<Filter> {
viewHolder.name.getLayoutParams().height = (int) (58 * metrics.density); viewHolder.name.getLayoutParams().height = (int) (58 * metrics.density);
if(!nook && filter instanceof FilterWithUpdate) { if(!nook && filter instanceof FilterWithUpdate) {
String defaultImageId = RemoteModel.NO_UUID;
FilterWithUpdate fwu = (FilterWithUpdate) filter;
Bundle customExtras = fwu.customExtras;
if (customExtras != null && customExtras.containsKey(TagViewFragment.EXTRA_TAG_UUID))
defaultImageId = customExtras.getString(TagViewFragment.EXTRA_TAG_UUID);
else
defaultImageId = viewHolder.name.getText().toString();
viewHolder.urlImage.setVisibility(View.VISIBLE); viewHolder.urlImage.setVisibility(View.VISIBLE);
viewHolder.urlImage.setDefaultImageDrawable(ResourceDrawableCache.getImageDrawableFromId(resources, TagService.getDefaultImageIDForTag(viewHolder.name.getText().toString()))); viewHolder.urlImage.setDefaultImageDrawable(ResourceDrawableCache.getImageDrawableFromId(resources, TagService.getDefaultImageIDForTag(defaultImageId)));
viewHolder.urlImage.setUrl(((FilterWithUpdate)filter).imageUrl); viewHolder.urlImage.setUrl(((FilterWithUpdate)filter).imageUrl);
} }

Loading…
Cancel
Save