diff --git a/app/src/main/java/org/fdroid/fdroid/views/AppDetailsRecyclerViewAdapter.java b/app/src/main/java/org/fdroid/fdroid/views/AppDetailsRecyclerViewAdapter.java index 7cef1e286..707fb09a7 100644 --- a/app/src/main/java/org/fdroid/fdroid/views/AppDetailsRecyclerViewAdapter.java +++ b/app/src/main/java/org/fdroid/fdroid/views/AppDetailsRecyclerViewAdapter.java @@ -6,7 +6,9 @@ import android.content.Context; import android.content.DialogInterface; import android.content.Intent; import android.content.res.Resources; +import android.graphics.Color; import android.graphics.Rect; +import android.graphics.drawable.Drawable; import android.net.Uri; import android.os.Build; import android.text.Html; @@ -28,12 +30,14 @@ import android.widget.LinearLayout; import android.widget.ProgressBar; import android.widget.TextView; import android.widget.Toast; + import androidx.annotation.DrawableRes; import androidx.annotation.LayoutRes; import androidx.annotation.NonNull; import androidx.appcompat.app.AlertDialog; import androidx.core.content.ContextCompat; import androidx.core.content.FileProvider; +import androidx.core.graphics.drawable.DrawableCompat; import androidx.core.os.ConfigurationCompat; import androidx.core.os.LocaleListCompat; import androidx.core.view.ViewCompat; @@ -42,6 +46,7 @@ import androidx.gridlayout.widget.GridLayout; import androidx.recyclerview.widget.LinearLayoutManager; import androidx.recyclerview.widget.LinearSmoothScroller; import androidx.recyclerview.widget.RecyclerView; + import org.apache.commons.io.FilenameUtils; import org.fdroid.fdroid.Preferences; import org.fdroid.fdroid.R; @@ -830,7 +835,17 @@ public class AppDetailsRecyclerViewAdapter * user can expand/collapse this item. */ protected void updateExpandableItem(boolean isExpanded) { - TextViewCompat.setCompoundDrawablesRelativeWithIntrinsicBounds(headerView, getIcon(), 0, isExpanded ? R.drawable.ic_expand_less_grey600 : R.drawable.ic_expand_more_grey600, 0); + final int icon = getIcon(); + Drawable iconDrawable = ContextCompat.getDrawable(headerView.getContext(), icon); + if (icon == R.drawable.ic_access_time) { + assert iconDrawable != null; + iconDrawable = DrawableCompat.wrap(iconDrawable).mutate(); + DrawableCompat.setTint(iconDrawable, Color.parseColor("#B4B4B4")); + } + final Drawable expandLess = ContextCompat.getDrawable(headerView.getContext(), R.drawable.ic_expand_less_grey600); + final Drawable expandMore = ContextCompat.getDrawable(headerView.getContext(), R.drawable.ic_expand_more_grey600); + TextViewCompat.setCompoundDrawablesRelativeWithIntrinsicBounds(headerView, + iconDrawable, null, isExpanded ? expandLess : expandMore, null); } } @@ -855,7 +870,7 @@ public class AppDetailsRecyclerViewAdapter @DrawableRes protected int getIcon() { - return R.drawable.ic_access_time_24dp_grey600; + return R.drawable.ic_access_time; } } @@ -865,7 +880,11 @@ public class AppDetailsRecyclerViewAdapter NoVersionsViewHolder(View view) { super(view); headerView = (TextView) view.findViewById(R.id.information); - TextViewCompat.setCompoundDrawablesRelativeWithIntrinsicBounds(headerView, R.drawable.ic_access_time_24dp_grey600, 0, 0, 0); + final Drawable accessTime = DrawableCompat.wrap(ContextCompat.getDrawable(headerView.getContext(), + R.drawable.ic_access_time)).mutate(); + DrawableCompat.setTint(accessTime, Color.parseColor("#B4B4B4")); + TextViewCompat.setCompoundDrawablesRelativeWithIntrinsicBounds(headerView, + accessTime, null, null, null); itemView.setOnClickListener(new View.OnClickListener() { @Override diff --git a/app/src/main/java/org/fdroid/fdroid/views/apps/AppListActivity.java b/app/src/main/java/org/fdroid/fdroid/views/apps/AppListActivity.java index f59a3cdf1..e81806a96 100644 --- a/app/src/main/java/org/fdroid/fdroid/views/apps/AppListActivity.java +++ b/app/src/main/java/org/fdroid/fdroid/views/apps/AppListActivity.java @@ -23,15 +23,9 @@ package org.fdroid.fdroid.views.apps; import android.content.Context; import android.content.Intent; import android.database.Cursor; +import android.graphics.Color; +import android.graphics.drawable.Drawable; import android.os.Bundle; -import androidx.annotation.NonNull; -import androidx.annotation.Nullable; -import androidx.loader.app.LoaderManager; -import androidx.loader.content.CursorLoader; -import androidx.loader.content.Loader; -import androidx.appcompat.app.AppCompatActivity; -import androidx.recyclerview.widget.LinearLayoutManager; -import androidx.recyclerview.widget.RecyclerView; import android.view.KeyEvent; import android.view.View; import android.view.inputmethod.EditorInfo; @@ -39,7 +33,20 @@ import android.view.inputmethod.InputMethodManager; import android.widget.EditText; import android.widget.ImageView; import android.widget.TextView; + +import androidx.annotation.NonNull; +import androidx.annotation.Nullable; +import androidx.appcompat.app.AppCompatActivity; +import androidx.core.content.ContextCompat; +import androidx.core.graphics.drawable.DrawableCompat; +import androidx.loader.app.LoaderManager; +import androidx.loader.content.CursorLoader; +import androidx.loader.content.Loader; +import androidx.recyclerview.widget.LinearLayoutManager; +import androidx.recyclerview.widget.RecyclerView; + import com.nostra13.universalimageloader.core.ImageLoader; + import org.fdroid.fdroid.FDroidApp; import org.fdroid.fdroid.R; import org.fdroid.fdroid.Utils; @@ -101,11 +108,10 @@ public class AppListActivity extends AppCompatActivity implements LoaderManager. }); sortImage = (ImageView) findViewById(R.id.sort); - if (FDroidApp.isAppThemeLight()) { - sortImage.setImageResource(R.drawable.ic_last_updated_black); - } else { - sortImage.setImageResource(R.drawable.ic_last_updated_white); - } + final Drawable lastUpdated = DrawableCompat.wrap(ContextCompat.getDrawable(this, + R.drawable.ic_access_time)).mutate(); + DrawableCompat.setTint(lastUpdated, FDroidApp.isAppThemeLight() ? Color.BLACK : Color.WHITE); + sortImage.setImageDrawable(lastUpdated); sortImage.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { @@ -118,11 +124,7 @@ public class AppListActivity extends AppCompatActivity implements LoaderManager. } } else { sortClauseSelected = SortClause.LAST_UPDATED; - if (FDroidApp.isAppThemeLight()) { - sortImage.setImageResource(R.drawable.ic_last_updated_black); - } else { - sortImage.setImageResource(R.drawable.ic_last_updated_white); - } + sortImage.setImageDrawable(lastUpdated); } getSupportLoaderManager().restartLoader(0, null, AppListActivity.this); appView.scrollToPosition(0); diff --git a/app/src/main/res/drawable-hdpi/ic_access_time_24dp_grey600.png b/app/src/main/res/drawable-hdpi/ic_access_time_24dp_grey600.png deleted file mode 100644 index 92f81cdf7..000000000 Binary files a/app/src/main/res/drawable-hdpi/ic_access_time_24dp_grey600.png and /dev/null differ diff --git a/app/src/main/res/drawable-hdpi/ic_last_updated_black.png b/app/src/main/res/drawable-hdpi/ic_last_updated_black.png deleted file mode 100644 index 16f638e34..000000000 Binary files a/app/src/main/res/drawable-hdpi/ic_last_updated_black.png and /dev/null differ diff --git a/app/src/main/res/drawable-hdpi/ic_last_updated_white.png b/app/src/main/res/drawable-hdpi/ic_last_updated_white.png deleted file mode 100644 index 9d923a233..000000000 Binary files a/app/src/main/res/drawable-hdpi/ic_last_updated_white.png and /dev/null differ diff --git a/app/src/main/res/drawable-mdpi/ic_access_time_24dp_grey600.png b/app/src/main/res/drawable-mdpi/ic_access_time_24dp_grey600.png deleted file mode 100644 index 3408063a5..000000000 Binary files a/app/src/main/res/drawable-mdpi/ic_access_time_24dp_grey600.png and /dev/null differ diff --git a/app/src/main/res/drawable-mdpi/ic_last_updated_black.png b/app/src/main/res/drawable-mdpi/ic_last_updated_black.png deleted file mode 100644 index 74e759b9d..000000000 Binary files a/app/src/main/res/drawable-mdpi/ic_last_updated_black.png and /dev/null differ diff --git a/app/src/main/res/drawable-mdpi/ic_last_updated_white.png b/app/src/main/res/drawable-mdpi/ic_last_updated_white.png deleted file mode 100644 index a07e0508a..000000000 Binary files a/app/src/main/res/drawable-mdpi/ic_last_updated_white.png and /dev/null differ diff --git a/app/src/main/res/drawable-xhdpi/ic_access_time_24dp_grey600.png b/app/src/main/res/drawable-xhdpi/ic_access_time_24dp_grey600.png deleted file mode 100644 index a3f2032ca..000000000 Binary files a/app/src/main/res/drawable-xhdpi/ic_access_time_24dp_grey600.png and /dev/null differ diff --git a/app/src/main/res/drawable-xhdpi/ic_last_updated_black.png b/app/src/main/res/drawable-xhdpi/ic_last_updated_black.png deleted file mode 100644 index f8e28665f..000000000 Binary files a/app/src/main/res/drawable-xhdpi/ic_last_updated_black.png and /dev/null differ diff --git a/app/src/main/res/drawable-xhdpi/ic_last_updated_white.png b/app/src/main/res/drawable-xhdpi/ic_last_updated_white.png deleted file mode 100644 index 0759e8c8c..000000000 Binary files a/app/src/main/res/drawable-xhdpi/ic_last_updated_white.png and /dev/null differ diff --git a/app/src/main/res/drawable-xxhdpi/ic_access_time_24dp_grey600.png b/app/src/main/res/drawable-xxhdpi/ic_access_time_24dp_grey600.png deleted file mode 100644 index 435aa9abd..000000000 Binary files a/app/src/main/res/drawable-xxhdpi/ic_access_time_24dp_grey600.png and /dev/null differ diff --git a/app/src/main/res/drawable-xxhdpi/ic_last_updated_black.png b/app/src/main/res/drawable-xxhdpi/ic_last_updated_black.png deleted file mode 100644 index 383c8712a..000000000 Binary files a/app/src/main/res/drawable-xxhdpi/ic_last_updated_black.png and /dev/null differ diff --git a/app/src/main/res/drawable-xxhdpi/ic_last_updated_white.png b/app/src/main/res/drawable-xxhdpi/ic_last_updated_white.png deleted file mode 100644 index baa254034..000000000 Binary files a/app/src/main/res/drawable-xxhdpi/ic_last_updated_white.png and /dev/null differ diff --git a/app/src/main/res/drawable-xxxhdpi/ic_access_time_24dp_grey600.png b/app/src/main/res/drawable-xxxhdpi/ic_access_time_24dp_grey600.png deleted file mode 100644 index dd430cf52..000000000 Binary files a/app/src/main/res/drawable-xxxhdpi/ic_access_time_24dp_grey600.png and /dev/null differ diff --git a/app/src/main/res/drawable-xxxhdpi/ic_last_updated_black.png b/app/src/main/res/drawable-xxxhdpi/ic_last_updated_black.png deleted file mode 100644 index 22bcf0d77..000000000 Binary files a/app/src/main/res/drawable-xxxhdpi/ic_last_updated_black.png and /dev/null differ diff --git a/app/src/main/res/drawable-xxxhdpi/ic_last_updated_white.png b/app/src/main/res/drawable-xxxhdpi/ic_last_updated_white.png deleted file mode 100644 index f2b09f438..000000000 Binary files a/app/src/main/res/drawable-xxxhdpi/ic_last_updated_white.png and /dev/null differ diff --git a/app/src/main/res/drawable/ic_access_time.xml b/app/src/main/res/drawable/ic_access_time.xml new file mode 100644 index 000000000..659bbd962 --- /dev/null +++ b/app/src/main/res/drawable/ic_access_time.xml @@ -0,0 +1,6 @@ + + + +