List of usage examples for android.graphics.drawable Drawable setColorFilter
public void setColorFilter(@ColorInt int color, @NonNull PorterDuff.Mode mode)
From source file:org.kiwix.kiwixmobile.KiwixMobileActivity.java
public void toggleImageViewGrayFilter(ImageView image, boolean state) { Drawable originalIcon = image.getDrawable(); Drawable res = originalIcon.mutate(); if (state) {//from w ww. j a v a 2 s .com res.clearColorFilter(); } else { res.setColorFilter(Color.GRAY, PorterDuff.Mode.SRC_IN); } image.setImageDrawable(res); }
From source file:org.mariotaku.twidere.fragment.support.UserFragment.java
private void showRelationship(ParcelableUser user, Relationship relationship) { mRelationship = relationship;/* w w w . ja v a 2s . c o m*/ if (user == null) return; invalidateOptionsMenu(); final boolean isMyself = user.account_id == user.id; if (isMyself) { mFollowButton.setText(R.string.edit); mFollowButton.setVisibility(View.VISIBLE); } else if (relationship != null) { final int drawableRes; mFollowButton.setEnabled(!relationship.isSourceBlockedByTarget()); if (relationship.isSourceBlockedByTarget()) { mPagesErrorContainer.setVisibility(View.VISIBLE); final String displayName = mUserColorNameManager.getDisplayName(user, mNameFirst, true); mPagesErrorText.setText(getString(R.string.blocked_by_user_summary, displayName)); mPagesErrorIcon.setImageResource(R.drawable.ic_info_error_generic); mPagesContent.setVisibility(View.GONE); } else if (!relationship.isSourceFollowingTarget() && user.is_protected) { mPagesErrorContainer.setVisibility(View.VISIBLE); final String displayName = mUserColorNameManager.getDisplayName(user, mNameFirst, true); mPagesErrorText.setText(getString(R.string.user_protected_summary, displayName)); mPagesErrorIcon.setImageResource(R.drawable.ic_info_locked); mPagesContent.setVisibility(View.GONE); } else { mPagesErrorContainer.setVisibility(View.GONE); mPagesErrorText.setText(null); mPagesContent.setVisibility(View.VISIBLE); } if (relationship.isSourceBlockingTarget()) { mFollowButton.setText(R.string.unblock); drawableRes = R.drawable.ic_follow_blocked; } else if (relationship.isSourceFollowingTarget()) { mFollowButton.setText(R.string.unfollow); if (relationship.isTargetFollowingSource()) { drawableRes = R.drawable.ic_follow_bidirectional; } else { drawableRes = R.drawable.ic_follow_outgoing; } } else if (user.is_follow_request_sent) { mFollowButton.setText(R.string.requested); if (relationship.isTargetFollowingSource()) { drawableRes = R.drawable.ic_follow_incoming; } else { drawableRes = R.drawable.ic_follow_pending; } } else { mFollowButton.setText(R.string.follow); if (relationship.isTargetFollowingSource()) { drawableRes = R.drawable.ic_follow_incoming; } else { drawableRes = R.drawable.ic_follow_none; } } final Drawable icon = ResourcesCompat.getDrawable(getResources(), drawableRes, null); final int iconSize = Math.round(mFollowButton.getTextSize() * 1.4f); icon.setBounds(0, 0, iconSize, iconSize); icon.setColorFilter(mFollowButton.getCurrentTextColor(), Mode.SRC_ATOP); mFollowButton.setCompoundDrawables(icon, null, null, null); mFollowButton.setCompoundDrawablePadding(Math.round(mFollowButton.getTextSize() * 0.25f)); final ContentResolver resolver = getContentResolver(); final ContentValues cachedValues = ParcelableUser.makeCachedUserContentValues(user); resolver.insert(CachedUsers.CONTENT_URI, cachedValues); mFollowButton.setVisibility(View.VISIBLE); } else { mFollowButton.setText(null); mFollowButton.setVisibility(View.GONE); mPagesErrorContainer.setVisibility(View.GONE); mPagesContent.setVisibility(View.VISIBLE); } }
From source file:dev.memento.MainActivity.java
/** * Converts the given drawable to a gray image. This method may be * used to simulate the color of disable icons in Honeycomb's ActionBar. * /*from www . j a va2 s . c om*/ * @return a version of the given drawable with a color filter applied. */ private Drawable convertDrawableToGrayScale(Drawable drawable) { if (drawable == null) return null; Drawable res = drawable.mutate(); res.setColorFilter(Color.GRAY, Mode.SRC_IN); return res; }
From source file:com.dwdesign.tweetings.activity.ComposeActivity.java
private void setMenu() { final Menu menu = mMenuBar.getMenu(); final int activated_color = getResources().getColor(R.color.holo_blue_bright); final MenuItem itemAddImage = menu.findItem(MENU_ADD_IMAGE); final MenuItem itemLibrary = menu.findItem(MENU_LIBRARY_MENU); final Drawable iconAddImage = itemAddImage.getIcon().mutate(); final Drawable iconLibrary = itemLibrary.getIcon().mutate(); boolean menuSelected = false; if (mIsImageAttached && !mIsPhotoAttached) { iconAddImage.setColorFilter(activated_color, Mode.MULTIPLY); itemAddImage.setTitle(R.string.remove_image); menuSelected = true;//from w w w . ja v a 2 s . com } else { iconAddImage.clearColorFilter(); itemAddImage.setTitle(R.string.add_image); } final MenuItem itemTakePhoto = menu.findItem(MENU_TAKE_PHOTO); final Drawable iconTakePhoto = itemTakePhoto.getIcon().mutate(); if (!mIsImageAttached && mIsPhotoAttached) { iconTakePhoto.setColorFilter(activated_color, Mode.MULTIPLY); itemTakePhoto.setTitle(R.string.remove_photo); menuSelected = true; } else { iconTakePhoto.clearColorFilter(); itemTakePhoto.setTitle(R.string.take_photo); } if (menuSelected == true) { iconLibrary.setColorFilter(activated_color, Mode.MULTIPLY); } else { iconLibrary.clearColorFilter(); } final MenuItem itemAttachLocation = menu.findItem(MENU_ADD_LOCATION); final Drawable iconAttachLocation = itemAttachLocation.getIcon().mutate(); final boolean attach_location = mPreferences.getBoolean(PREFERENCE_KEY_ATTACH_LOCATION, false); if (attach_location && getLocation()) { iconAttachLocation.setColorFilter(activated_color, Mode.MULTIPLY); itemAttachLocation.setTitle(R.string.remove_location); } else { mPreferences.edit().putBoolean(PREFERENCE_KEY_ATTACH_LOCATION, false).commit(); iconAttachLocation.clearColorFilter(); itemAttachLocation.setTitle(R.string.add_location); } final MenuItem itemMore = menu.findItem(R.id.more_submenu); boolean moreHighlighted = false; if (itemMore != null) { final MenuItem itemDrafts = menu.findItem(R.id.drafts); final MenuItem itemToggleSensitive = menu.findItem(MENU_TOGGLE_SENSITIVE); if (itemMore != null) { if (itemDrafts != null) { final Cursor drafts_cur = getContentResolver().query(Drafts.CONTENT_URI, new String[0], null, null, null); final Drawable iconMore = itemMore.getIcon().mutate(); final Drawable iconDrafts = itemDrafts.getIcon().mutate(); if (drafts_cur.getCount() > 0) { moreHighlighted = true; iconDrafts.setColorFilter(activated_color, Mode.MULTIPLY); } else { iconDrafts.clearColorFilter(); } drafts_cur.close(); } if (itemToggleSensitive != null) { final boolean has_media = (mIsImageAttached || mIsPhotoAttached) && mImageUri != null; if (has_media && isNullOrEmpty(mUploadProvider)) { itemToggleSensitive.setVisible(true); } else { itemToggleSensitive.setVisible(false); } if (has_media && isNullOrEmpty(mUploadProvider)) { final Drawable iconToggleSensitive = itemToggleSensitive.getIcon().mutate(); if (mIsPossiblySensitive) { moreHighlighted = true; iconToggleSensitive.setColorFilter(activated_color, Mode.MULTIPLY); } else { iconToggleSensitive.clearColorFilter(); } } } } } if (mScheduleDate != null) { final MenuItem itemSchedule = menu.findItem(R.id.schedule_tweet); final Drawable iconSchedule = itemSchedule.getIcon().mutate(); iconSchedule.setColorFilter(activated_color, Mode.MULTIPLY); moreHighlighted = true; itemSchedule.setTitle(getString(R.string.schedule_clear)); } else { final MenuItem itemSchedule = menu.findItem(R.id.schedule_tweet); final Drawable iconSchedule = itemSchedule.getIcon().mutate(); iconSchedule.clearColorFilter(); itemSchedule.setTitle(getString(R.string.schedule_tweet)); } final String consumer_key = mPreferences.getString(PREFERENCE_KEY_CONSUMER_KEY, null); final String consumer_secret = mPreferences.getString(PREFERENCE_KEY_CONSUMER_SECRET, null); if (!isNullOrEmpty(consumer_key) && !isNullOrEmpty(consumer_secret)) { final MenuItem itemSchedule = menu.findItem(R.id.schedule_tweet); itemSchedule.setVisible(false); } final MenuItem bufferItem = menu.findItem(MENU_ADD_TO_BUFFER); if (bufferItem != null) { final String buffer_authorised = mPreferences.getString(PREFERENCE_KEY_BUFFERAPP_ACCESS_TOKEN, null); final Drawable iconBuffer = bufferItem.getIcon().mutate(); if (buffer_authorised != null && !buffer_authorised.equals("")) { bufferItem.setVisible(true); if (mIsBuffer) { iconBuffer.setColorFilter(activated_color, Mode.MULTIPLY); moreHighlighted = true; } else { iconBuffer.clearColorFilter(); } } else { bufferItem.setVisible(false); mIsBuffer = false; } } if (itemMore != null) { final Drawable iconMore = itemMore.getIcon().mutate(); if (moreHighlighted == true) { iconMore.setColorFilter(activated_color, Mode.MULTIPLY); } else { iconMore.clearColorFilter(); } } mMenuBar.invalidate(); invalidateSupportOptionsMenu(); }
From source file:com.qiscus.sdk.ui.fragment.QiscusBaseChatFragment.java
protected void onApplyChatConfig() { Drawable buttonBg; rootView.setBackground(chatConfig.getChatRoomBackground()); swipeRefreshLayout.setColorSchemeResources(chatConfig.getSwipeRefreshColorScheme()); sendButton.setImageResource(chatConfig.getShowAttachmentPanelIcon()); messageEditText.setHint(chatConfig.getMessageFieldHint()); if (emptyChatImageView != null) { emptyChatImageView.setImageResource(chatConfig.getEmptyRoomImageResource()); }/*from ww w.ja v a 2s . c o m*/ if (emptyChatTitleView != null) { emptyChatTitleView.setText(chatConfig.getEmptyRoomTitle()); } if (emptyChatDescView != null) { emptyChatDescView.setText(chatConfig.getEmptyRoomSubtitle()); } if (addImageButton != null) { addImageButton.setImageResource(chatConfig.getAddPictureIcon()); buttonBg = ContextCompat.getDrawable(Qiscus.getApps(), R.drawable.qiscus_gallery_button_bg); buttonBg.setColorFilter( ContextCompat.getColor(Qiscus.getApps(), chatConfig.getAddPictureBackgroundColor()), PorterDuff.Mode.SRC_ATOP); addImageButton.setBackground(buttonBg); } if (addImageTextView != null) { addImageTextView.setText(chatConfig.getAddPictureText()); } if (takeImageButton != null) { takeImageButton.setImageResource(chatConfig.getTakePictureIcon()); buttonBg = ContextCompat.getDrawable(Qiscus.getApps(), R.drawable.qiscus_camera_button_bg); buttonBg.setColorFilter( ContextCompat.getColor(Qiscus.getApps(), chatConfig.getTakePictureBackgroundColor()), PorterDuff.Mode.SRC_ATOP); takeImageButton.setBackground(buttonBg); } if (takeImageTextView != null) { takeImageTextView.setText(chatConfig.getTakePictureText()); } if (addFileButton != null) { addFileButton.setImageResource(chatConfig.getAddFileIcon()); buttonBg = ContextCompat.getDrawable(Qiscus.getApps(), R.drawable.qiscus_file_button_bg); buttonBg.setColorFilter( ContextCompat.getColor(Qiscus.getApps(), chatConfig.getAddFileBackgroundColor()), PorterDuff.Mode.SRC_ATOP); addFileButton.setBackground(buttonBg); } if (addFileTextView != null) { addFileTextView.setText(chatConfig.getAddFileText()); } if (recordAudioButton != null) { recordAudioButton.setImageResource(chatConfig.getRecordAudioIcon()); buttonBg = ContextCompat.getDrawable(Qiscus.getApps(), R.drawable.qiscus_record_button_bg); buttonBg.setColorFilter(ContextCompat.getColor(Qiscus.getApps(), chatConfig.getRecordBackgroundColor()), PorterDuff.Mode.SRC_ATOP); recordAudioButton.setBackground(buttonBg); } if (recordAudioTextView != null) { recordAudioTextView.setText(chatConfig.getRecordText()); } if (hideAttachmentButton != null) { hideAttachmentButton.setImageResource(chatConfig.getHideAttachmentPanelIcon()); buttonBg = ContextCompat.getDrawable(Qiscus.getApps(), R.drawable.qiscus_keyboard_button_bg); buttonBg.setColorFilter( ContextCompat.getColor(Qiscus.getApps(), chatConfig.getHideAttachmentPanelBackgroundColor()), PorterDuff.Mode.SRC_ATOP); hideAttachmentButton.setBackground(buttonBg); } if (recordAudioPanel != null) { recordAudioPanel.setButtonStopRecord(chatConfig.getStopRecordIcon()); recordAudioPanel.setButtonCancelRecord(chatConfig.getCancelRecordIcon()); } if (toggleEmojiButton != null) { toggleEmojiButton.setImageResource(chatConfig.getShowEmojiIcon()); } if (addImageLayout != null) { addImageLayout.setVisibility(chatConfig.isEnableAddPicture() ? View.VISIBLE : View.GONE); } if (takeImageLayout != null) { takeImageLayout.setVisibility(chatConfig.isEnableTakePicture() ? View.VISIBLE : View.GONE); } if (addFileLayout != null) { addFileLayout.setVisibility(chatConfig.isEnableAddFile() ? View.VISIBLE : View.GONE); } if (recordAudioLayout != null) { recordAudioLayout.setVisibility(chatConfig.isEnableRecordAudio() ? View.VISIBLE : View.GONE); } }
From source file:org.mariotaku.twidere.util.Utils.java
public static void setMenuForStatus(final Context context, final Menu menu, final ParcelableStatus status) { if (context == null || menu == null || status == null) return;//from www . j ava 2s . com final int activated_color = context.getResources().getColor(R.color.holo_blue_bright); final MenuItem delete = menu.findItem(R.id.delete_submenu); if (delete != null) { delete.setVisible(status.account_id == status.user_id && !isMyRetweet(status)); } final MenuItem retweet = menu.findItem(MENU_RETWEET); if (retweet != null) { final Drawable icon = retweet.getIcon().mutate(); retweet.setVisible(!status.is_protected || isMyRetweet(status)); if (isMyRetweet(status)) { icon.setColorFilter(activated_color, Mode.MULTIPLY); retweet.setTitle(R.string.cancel_retweet); } else { icon.clearColorFilter(); retweet.setTitle(R.string.retweet); } } final MenuItem favorite = menu.findItem(MENU_FAVORITE); if (favorite != null) { final Drawable icon = favorite.getIcon().mutate(); if (status.is_favorite) { icon.setColorFilter(activated_color, Mode.MULTIPLY); favorite.setTitle(R.string.unfavorite); } else { icon.clearColorFilter(); favorite.setTitle(R.string.favorite); } } final MenuItem extensions = menu.findItem(MENU_EXTENSIONS_SUBMENU); if (extensions != null) { final Intent intent = new Intent(INTENT_ACTION_EXTENSION_OPEN_STATUS); final Bundle extras = new Bundle(); extras.putParcelable(INTENT_KEY_STATUS, status); intent.putExtras(extras); final PackageManager pm = context.getPackageManager(); final List<ResolveInfo> activities = pm.queryIntentActivities(intent, 0); final boolean has_extension = !activities.isEmpty(); extensions.setVisible(has_extension); if (has_extension) { addIntentToSubMenu(context, extensions.getSubMenu(), intent); } } }
From source file:com.dwdesign.tweetings.util.Utils.java
public static void setMenuForStatus(final Context context, final Menu menu, final ParcelableStatus status) { if (context == null || menu == null || status == null) return;// w w w . j a v a 2s. co m final int activated_color = context.getResources().getColor(R.color.holo_blue_bright); final MenuItem itemDelete = menu.findItem(R.id.delete_submenu); if (itemDelete != null) { itemDelete.setVisible(status.account_id == status.user_id && !isMyRetweet(status)); } final MenuItem itemRetweet = menu.findItem(MENU_RETWEET); if (itemRetweet != null) { final Drawable icon = itemRetweet.getIcon().mutate(); itemRetweet.setVisible( (!status.is_protected && status.account_id != status.user_id) || isMyRetweet(status)); if (isMyRetweet(status)) { icon.setColorFilter(activated_color, Mode.MULTIPLY); itemRetweet.setTitle(R.string.cancel_retweet); } else { icon.clearColorFilter(); itemRetweet.setTitle(R.string.retweet); } } final MenuItem itemFav = menu.findItem(MENU_FAV); if (itemFav != null) { final Drawable iconFav = itemFav.getIcon().mutate(); if (status.is_favorite) { iconFav.setColorFilter(activated_color, Mode.MULTIPLY); itemFav.setTitle(R.string.unfav); } else { iconFav.clearColorFilter(); itemFav.setTitle(R.string.fav); } } final MenuItem itemConversation = menu.findItem(MENU_CONVERSATION); if (itemConversation != null) { itemConversation.setVisible(status.in_reply_to_status_id > 0); } }
From source file:de.vanita5.twittnuker.util.Utils.java
public static void setMenuForStatus(final Context context, final Menu menu, final ParcelableStatus status) { if (context == null || menu == null || status == null) return;/* ww w . j ava 2 s. c o m*/ final int activatedColor = ThemeUtils.getUserThemeColor(context); final boolean isMyRetweet = isMyRetweet(status); final MenuItem delete = menu.findItem(MENU_DELETE); if (delete != null) { delete.setVisible(status.account_id == status.user_id && !isMyRetweet); } final MenuItem retweet = menu.findItem(MENU_RETWEET); if (retweet != null) { final Drawable icon = retweet.getIcon().mutate(); retweet.setVisible(!status.user_is_protected || isMyRetweet); if (isMyRetweet) { icon.setColorFilter(activatedColor, Mode.SRC_ATOP); retweet.setTitle(R.string.cancel_retweet); } else { icon.clearColorFilter(); retweet.setTitle(R.string.retweet); } } final MenuItem itemRetweetSubmenu = menu.findItem(R.id.retweet_submenu); if (itemRetweetSubmenu != null) { final Drawable icon = itemRetweetSubmenu.getIcon().mutate(); if (isMyRetweet) { icon.setColorFilter(activatedColor, Mode.SRC_ATOP); } else { icon.clearColorFilter(); } } final MenuItem favorite = menu.findItem(MENU_FAVORITE); if (favorite != null) { final Drawable icon = favorite.getIcon().mutate(); if (status.is_favorite) { icon.setColorFilter(activatedColor, Mode.SRC_ATOP); favorite.setTitle(R.string.unfavorite); } else { icon.clearColorFilter(); favorite.setTitle(R.string.favorite); } } final MenuItem love = menu.findItem(MENU_LOVE); if (love != null) { final Drawable icon = love.getIcon().mutate(); love.setVisible(!status.user_is_protected || isMyRetweet); if (isMyRetweet && status.is_favorite) { icon.setColorFilter(activatedColor, Mode.SRC_ATOP); } else { icon.clearColorFilter(); } } final MenuItem translate = menu.findItem(MENU_TRANSLATE); if (translate != null) { final AccountWithCredentials account = Account.getAccountWithCredentials(context, status.account_id); final boolean isOfficialKey = AccountWithCredentials.isOfficialCredentials(context, account); setMenuItemAvailability(menu, MENU_TRANSLATE, isOfficialKey); } final MenuItem shareItem = menu.findItem(R.id.share_submenu); final Menu shareSubmenu = shareItem != null && shareItem.hasSubMenu() ? shareItem.getSubMenu() : null; if (shareSubmenu != null) { final Intent shareIntent = createStatusShareIntent(context, status); shareSubmenu.removeGroup(MENU_GROUP_STATUS_SHARE); addIntentToMenu(context, shareSubmenu, shareIntent, MENU_GROUP_STATUS_SHARE); } }
From source file:org.getlantern.firetweet.util.Utils.java
public static void addIntentToMenuForExtension(final Context context, final Menu menu, final int groupId, final String action, final String parelableKey, final String parelableJSONKey, final FiretweetParcelable parcelable) { if (context == null || menu == null || action == null || parelableKey == null || parcelable == null) return;/*from w w w . j a v a 2 s . c o m*/ final PackageManager pm = context.getPackageManager(); final Resources res = context.getResources(); final float density = res.getDisplayMetrics().density; final int padding = Math.round(density * 4); final Intent queryIntent = new Intent(action); queryIntent.setExtrasClassLoader(context.getClassLoader()); final List<ResolveInfo> activities = pm.queryIntentActivities(queryIntent, PackageManager.GET_META_DATA); for (final ResolveInfo info : activities) { final Intent intent = new Intent(queryIntent); if (isExtensionUseJSON(info)) { intent.putExtra(parelableJSONKey, JSONSerializer.toJSONObjectString(parcelable)); } else { intent.putExtra(parelableKey, parcelable); } intent.setClassName(info.activityInfo.packageName, info.activityInfo.name); final MenuItem item = menu.add(groupId, Menu.NONE, Menu.NONE, info.loadLabel(pm)); item.setIntent(intent); final Drawable metaDataDrawable = getMetadataDrawable(pm, info.activityInfo, METADATA_KEY_EXTENSION_ICON); final int actionIconColor = ThemeUtils.getThemeForegroundColor(context); if (metaDataDrawable != null) { metaDataDrawable.mutate(); metaDataDrawable.setColorFilter(actionIconColor, Mode.SRC_ATOP); item.setIcon(metaDataDrawable); } else { final Drawable icon = info.loadIcon(pm); final int iw = icon.getIntrinsicWidth(), ih = icon.getIntrinsicHeight(); if (iw > 0 && ih > 0) { final Drawable iconWithPadding = new PaddingDrawable(icon, padding); iconWithPadding.setBounds(0, 0, iw, ih); item.setIcon(iconWithPadding); } else { item.setIcon(icon); } } } }