New plugin added dialog missing plugin icon
https://github.com/osmandapp/OsmAnd-Issues/issues/489
This commit is contained in:
parent
c0e769b746
commit
e30e2e1034
2 changed files with 14 additions and 4 deletions
|
@ -4,6 +4,7 @@ import android.app.Activity;
|
||||||
import android.content.Context;
|
import android.content.Context;
|
||||||
import android.content.DialogInterface;
|
import android.content.DialogInterface;
|
||||||
import android.content.res.TypedArray;
|
import android.content.res.TypedArray;
|
||||||
|
import android.graphics.drawable.Drawable;
|
||||||
import android.os.Bundle;
|
import android.os.Bundle;
|
||||||
import android.text.method.LinkMovementMethod;
|
import android.text.method.LinkMovementMethod;
|
||||||
import android.view.LayoutInflater;
|
import android.view.LayoutInflater;
|
||||||
|
@ -225,7 +226,10 @@ public class PluginsFragment extends BaseOsmAndFragment implements PluginStateLi
|
||||||
pluginDescription.setText(plugin.getDescription());
|
pluginDescription.setText(plugin.getDescription());
|
||||||
|
|
||||||
int color = AndroidUtils.getColorFromAttr(context, R.attr.list_background_color);
|
int color = AndroidUtils.getColorFromAttr(context, R.attr.list_background_color);
|
||||||
pluginLogo.setImageDrawable(UiUtilities.tintDrawable(plugin.getLogoResource(), color));
|
|
||||||
|
Drawable pluginIcon = plugin.getLogoResource();
|
||||||
|
pluginIcon.clearColorFilter();
|
||||||
|
pluginLogo.setImageDrawable(UiUtilities.tintDrawable(pluginIcon, color));
|
||||||
pluginLogo.setOnClickListener(new View.OnClickListener() {
|
pluginLogo.setOnClickListener(new View.OnClickListener() {
|
||||||
@Override
|
@Override
|
||||||
public void onClick(View v) {
|
public void onClick(View v) {
|
||||||
|
|
|
@ -2,7 +2,9 @@ package net.osmand.plus.dialogs;
|
||||||
|
|
||||||
import android.app.Activity;
|
import android.app.Activity;
|
||||||
import android.content.Context;
|
import android.content.Context;
|
||||||
|
import android.graphics.PorterDuff;
|
||||||
import android.graphics.Typeface;
|
import android.graphics.Typeface;
|
||||||
|
import android.graphics.drawable.Drawable;
|
||||||
import android.os.Bundle;
|
import android.os.Bundle;
|
||||||
import android.text.SpannableString;
|
import android.text.SpannableString;
|
||||||
import android.view.View;
|
import android.view.View;
|
||||||
|
@ -11,12 +13,11 @@ import android.widget.LinearLayout;
|
||||||
import android.widget.ProgressBar;
|
import android.widget.ProgressBar;
|
||||||
|
|
||||||
import androidx.annotation.NonNull;
|
import androidx.annotation.NonNull;
|
||||||
|
import androidx.core.content.ContextCompat;
|
||||||
import androidx.fragment.app.FragmentManager;
|
import androidx.fragment.app.FragmentManager;
|
||||||
|
|
||||||
import net.osmand.AndroidUtils;
|
import net.osmand.AndroidUtils;
|
||||||
import net.osmand.PlatformUtil;
|
import net.osmand.PlatformUtil;
|
||||||
import net.osmand.plus.profiles.ProfileDataUtils;
|
|
||||||
import net.osmand.plus.settings.backend.ApplicationMode;
|
|
||||||
import net.osmand.plus.OsmandApplication;
|
import net.osmand.plus.OsmandApplication;
|
||||||
import net.osmand.plus.OsmandPlugin;
|
import net.osmand.plus.OsmandPlugin;
|
||||||
import net.osmand.plus.R;
|
import net.osmand.plus.R;
|
||||||
|
@ -34,6 +35,8 @@ import net.osmand.plus.download.DownloadValidationManager;
|
||||||
import net.osmand.plus.download.IndexItem;
|
import net.osmand.plus.download.IndexItem;
|
||||||
import net.osmand.plus.helpers.AndroidUiHelper;
|
import net.osmand.plus.helpers.AndroidUiHelper;
|
||||||
import net.osmand.plus.helpers.FontCache;
|
import net.osmand.plus.helpers.FontCache;
|
||||||
|
import net.osmand.plus.profiles.ProfileDataUtils;
|
||||||
|
import net.osmand.plus.settings.backend.ApplicationMode;
|
||||||
import net.osmand.plus.widgets.style.CustomTypefaceSpan;
|
import net.osmand.plus.widgets.style.CustomTypefaceSpan;
|
||||||
|
|
||||||
import org.apache.commons.logging.Log;
|
import org.apache.commons.logging.Log;
|
||||||
|
@ -87,11 +90,14 @@ public class PluginInstalledBottomSheetDialog extends MenuBottomSheetDialogFragm
|
||||||
Typeface typeface = FontCache.getRobotoMedium(getContext());
|
Typeface typeface = FontCache.getRobotoMedium(getContext());
|
||||||
SpannableString pluginTitleSpan = new SpannableString(plugin.getName());
|
SpannableString pluginTitleSpan = new SpannableString(plugin.getName());
|
||||||
pluginTitleSpan.setSpan(new CustomTypefaceSpan(typeface), 0, pluginTitleSpan.length(), 0);
|
pluginTitleSpan.setSpan(new CustomTypefaceSpan(typeface), 0, pluginTitleSpan.length(), 0);
|
||||||
|
Drawable pluginIcon = plugin.getLogoResource();
|
||||||
|
pluginIcon.setColorFilter(ContextCompat.getColor(
|
||||||
|
context, nightMode ? R.color.icon_color_default_light : R.color.icon_color_default_dark), PorterDuff.Mode.MULTIPLY);
|
||||||
|
|
||||||
BaseBottomSheetItem pluginTitle = new SimpleBottomSheetItem.Builder()
|
BaseBottomSheetItem pluginTitle = new SimpleBottomSheetItem.Builder()
|
||||||
.setTitle(pluginTitleSpan)
|
.setTitle(pluginTitleSpan)
|
||||||
.setTitleColorId(nightMode ? R.color.active_color_primary_dark : R.color.active_color_primary_light)
|
.setTitleColorId(nightMode ? R.color.active_color_primary_dark : R.color.active_color_primary_light)
|
||||||
.setIcon(plugin.getLogoResource())
|
.setIcon(pluginIcon)
|
||||||
.setLayoutId(R.layout.bottom_sheet_item_simple_56dp)
|
.setLayoutId(R.layout.bottom_sheet_item_simple_56dp)
|
||||||
.create();
|
.create();
|
||||||
items.add(pluginTitle);
|
items.add(pluginTitle);
|
||||||
|
|
Loading…
Reference in a new issue