diff --git a/app/src/main/java/org/xbmc/kore/ui/AddonDetailsFragment.java b/app/src/main/java/org/xbmc/kore/ui/AddonDetailsFragment.java index f16dc8b..daab446 100644 --- a/app/src/main/java/org/xbmc/kore/ui/AddonDetailsFragment.java +++ b/app/src/main/java/org/xbmc/kore/ui/AddonDetailsFragment.java @@ -87,7 +87,7 @@ public class AddonDetailsFragment extends SharedElementFragment { // Buttons @InjectView(R.id.fab) ImageButton fabButton; @InjectView(R.id.enable_disable) ImageButton enabledButton; - @InjectView(R.id.pin_unpin) ImageButton pinButton; + @InjectView(R.id.pin_unpin) ImageView pinButton; // Detail views @InjectView(R.id.media_panel) ScrollView mediaPanel; @@ -333,39 +333,40 @@ public class AddonDetailsFragment extends SharedElementFragment { @OnClick(R.id.pin_unpin) public void onPinClicked(View v) { - final boolean enable = (v.getTag() == null)? true : !(Boolean)v.getTag(); + final boolean isBookmarked = (v.getTag() == null)? true : !(Boolean)v.getTag(); String name = mediaTitle.getText().toString(); String path = addonId; SharedPreferences prefs = getActivity().getSharedPreferences("addons", Context.MODE_PRIVATE); - Set bookmarked = new HashSet<>(prefs.getStringSet("bookmarked", Collections.emptySet())); - if (enable) - bookmarked.add(path); + Set bookmarks = new HashSet<>(prefs.getStringSet("bookmarked", Collections.emptySet())); + if (isBookmarked) + bookmarks.add(path); else - bookmarked.remove(path); - prefs - .edit() - .putStringSet("bookmarked", bookmarked) - .putString("name_" + path, name) - .commit(); - Toast.makeText(getActivity(), enable? R.string.addon_pinned : R.string.addon_unpinned, Toast.LENGTH_SHORT).show(); - setupPinButton(enable); + bookmarks.remove(path); + prefs.edit() + .putStringSet("bookmarked", bookmarks) + .putString("name_" + path, name) + .apply(); + Toast.makeText(getActivity(), isBookmarked? R.string.addon_pinned : R.string.addon_unpinned, Toast.LENGTH_SHORT).show(); + setupPinButton(isBookmarked); } - private void setupPinButton(boolean enabled) { - // Enabled button - if (enabled) { - Resources.Theme theme = getActivity().getTheme(); - TypedArray styledAttributes = theme.obtainStyledAttributes(new int[]{ - R.attr.colorAccent}); - pinButton.setColorFilter(styledAttributes.getColor(0, - getActivity().getResources().getColor(R.color.accent_default))); - styledAttributes.recycle(); + private void setupPinButton(boolean bookmarked) { + Resources.Theme theme = getActivity().getTheme(); + TypedArray styledAttributes = + theme.obtainStyledAttributes(new int[] {R.attr.defaultButtonColorFilter, R.attr.colorAccent}); + Resources resources = getActivity().getResources(); + // Bookmarked button + if (bookmarked) { + pinButton.setColorFilter(styledAttributes.getColor(styledAttributes.getIndex(1), + resources.getColor(R.color.accent_default))); } else { - pinButton.clearColorFilter(); + pinButton.setColorFilter(styledAttributes.getColor(styledAttributes.getIndex(0), + resources.getColor(R.color.white))); } - pinButton.setTag(enabled); + styledAttributes.recycle(); + pinButton.setTag(bookmarked); pinButton.setVisibility(View.VISIBLE); } diff --git a/app/src/main/res/drawable/ic_bookmark_24dp.xml b/app/src/main/res/drawable/ic_bookmark_24dp.xml new file mode 100644 index 0000000..c7d64d6 --- /dev/null +++ b/app/src/main/res/drawable/ic_bookmark_24dp.xml @@ -0,0 +1,10 @@ + + + diff --git a/app/src/main/res/layout/fragment_addon_details.xml b/app/src/main/res/layout/fragment_addon_details.xml index 912ae69..5eacdc9 100644 --- a/app/src/main/res/layout/fragment_addon_details.xml +++ b/app/src/main/res/layout/fragment_addon_details.xml @@ -103,7 +103,7 @@ android:layout_width="@dimen/buttonbar_button_width" android:layout_height="match_parent" style="@style/Widget.Button.Borderless" - android:src="?attr/iconNew" + android:src="?attr/iconBookmark" android:contentDescription="@string/enable_disable"/> + \ No newline at end of file diff --git a/app/src/main/res/values/themes.xml b/app/src/main/res/values/themes.xml index 9c0fd6f..97ac643 100644 --- a/app/src/main/res/values/themes.xml +++ b/app/src/main/res/values/themes.xml @@ -141,6 +141,8 @@ @drawable/ic_search_white_24dp @drawable/ic_open_in_new_white_24dp + + @drawable/ic_bookmark_24dp @@ -266,6 +268,8 @@ @drawable/ic_search_white_24dp @drawable/ic_open_in_new_black_24dp + + @drawable/ic_bookmark_24dp