mirror of
https://github.com/signalapp/Signal-Android.git
synced 2026-04-21 09:20:19 +01:00
Centralize common icons into SignalIcons.
This commit is contained in:
committed by
Greyson Parrelli
parent
e6918b592e
commit
ce46c44b5d
@@ -32,6 +32,7 @@ import androidx.vectordrawable.graphics.drawable.AnimatorInflaterCompat;
|
||||
|
||||
import com.annimon.stream.Stream;
|
||||
|
||||
import org.signal.core.ui.compose.SignalIcons;
|
||||
import org.signal.core.util.DimensionUnit;
|
||||
import org.signal.core.util.logging.Log;
|
||||
import org.thoughtcrime.securesms.R;
|
||||
@@ -48,6 +49,7 @@ import org.thoughtcrime.securesms.util.ViewUtil;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import java.util.Objects;
|
||||
|
||||
import kotlin.Unit;
|
||||
|
||||
@@ -690,11 +692,11 @@ public final class ConversationReactionOverlay extends FrameLayout {
|
||||
}
|
||||
|
||||
if (menuState.shouldShowEditAction()) {
|
||||
items.add(new ActionItem(R.drawable.symbol_edit_24, getResources().getString(R.string.conversation_selection__menu_edit), () -> handleActionItemClicked(Action.EDIT)));
|
||||
items.add(new ActionItem(org.signal.core.ui.R.drawable.symbol_edit_24, getResources().getString(R.string.conversation_selection__menu_edit), () -> handleActionItemClicked(Action.EDIT)));
|
||||
}
|
||||
|
||||
if (menuState.shouldShowForwardAction()) {
|
||||
items.add(new ActionItem(R.drawable.symbol_forward_24, getResources().getString(R.string.conversation_selection__menu_forward), () -> handleActionItemClicked(Action.FORWARD)));
|
||||
items.add(new ActionItem(org.signal.core.ui.R.drawable.symbol_forward_24, getResources().getString(R.string.conversation_selection__menu_forward), () -> handleActionItemClicked(Action.FORWARD)));
|
||||
}
|
||||
|
||||
if (menuState.shouldShowResendAction()) {
|
||||
@@ -706,17 +708,17 @@ public final class ConversationReactionOverlay extends FrameLayout {
|
||||
}
|
||||
|
||||
if (menuState.shouldShowCopyAction()) {
|
||||
items.add(new ActionItem(R.drawable.symbol_copy_android_24, getResources().getString(R.string.conversation_selection__menu_copy), () -> handleActionItemClicked(Action.COPY)));
|
||||
items.add(new ActionItem(org.signal.core.ui.R.drawable.symbol_copy_android_24, getResources().getString(R.string.conversation_selection__menu_copy), () -> handleActionItemClicked(Action.COPY)));
|
||||
}
|
||||
|
||||
if (menuState.shouldShowPaymentDetails()) {
|
||||
items.add(new ActionItem(R.drawable.symbol_payment_24, getResources().getString(R.string.conversation_selection__menu_payment_details), () -> handleActionItemClicked(Action.PAYMENT_DETAILS)));
|
||||
}
|
||||
|
||||
items.add(new ActionItem(R.drawable.symbol_check_circle_24, getResources().getString(R.string.conversation_selection__menu_multi_select), () -> handleActionItemClicked(Action.MULTISELECT)));
|
||||
items.add(new ActionItem(org.signal.core.ui.R.drawable.symbol_check_circle_24, getResources().getString(R.string.conversation_selection__menu_multi_select), () -> handleActionItemClicked(Action.MULTISELECT)));
|
||||
|
||||
if (menuState.shouldShowDetailsAction()) {
|
||||
items.add(new ActionItem(R.drawable.symbol_info_24, getResources().getString(R.string.conversation_selection__menu_message_details), () -> handleActionItemClicked(Action.VIEW_INFO)));
|
||||
items.add(new ActionItem(org.signal.core.ui.R.drawable.symbol_info_24, getResources().getString(R.string.conversation_selection__menu_message_details), () -> handleActionItemClicked(Action.VIEW_INFO)));
|
||||
}
|
||||
|
||||
if (menuState.shouldShowPollTerminateAction()) {
|
||||
@@ -734,7 +736,7 @@ public final class ConversationReactionOverlay extends FrameLayout {
|
||||
backgroundView.setVisibility(menuState.shouldShowReactions() ? View.VISIBLE : View.INVISIBLE);
|
||||
foregroundView.setVisibility(menuState.shouldShowReactions() ? View.VISIBLE : View.INVISIBLE);
|
||||
|
||||
items.add(new ActionItem(R.drawable.symbol_trash_24, getResources().getString(R.string.conversation_selection__menu_delete), () -> handleActionItemClicked(Action.DELETE)));
|
||||
items.add(new ActionItem(org.signal.core.ui.R.drawable.symbol_trash_24, getResources().getString(R.string.conversation_selection__menu_delete), () -> handleActionItemClicked(Action.DELETE)));
|
||||
|
||||
return items;
|
||||
}
|
||||
|
||||
@@ -7,6 +7,7 @@ import org.signal.core.util.DimensionUnit
|
||||
import org.thoughtcrime.securesms.R
|
||||
import org.thoughtcrime.securesms.components.menu.ActionItem
|
||||
import org.thoughtcrime.securesms.components.menu.SignalContextMenu
|
||||
import org.signal.core.ui.R as CoreUiR
|
||||
|
||||
/**
|
||||
* A context menu shown when handling selected media only permissions.
|
||||
@@ -46,7 +47,7 @@ object ManageContextMenu {
|
||||
) {
|
||||
val actions = mutableListOf<ActionItem>().apply {
|
||||
add(
|
||||
ActionItem(R.drawable.symbol_settings_android_24, context.getString(R.string.AttachmentKeyboard_go_to_settings)) {
|
||||
ActionItem(CoreUiR.drawable.symbol_settings_android_24, context.getString(R.string.AttachmentKeyboard_go_to_settings)) {
|
||||
callbacks.onSettings()
|
||||
}
|
||||
)
|
||||
|
||||
@@ -11,6 +11,7 @@ import org.thoughtcrime.securesms.database.model.MmsMessageRecord
|
||||
import org.thoughtcrime.securesms.util.hasGiftBadge
|
||||
import org.thoughtcrime.securesms.util.isPoll
|
||||
import org.thoughtcrime.securesms.util.isViewOnceMessage
|
||||
import org.signal.core.ui.R as CoreUiR
|
||||
|
||||
/**
|
||||
* A context menu shown when long pressing on a pinned messages
|
||||
@@ -70,7 +71,7 @@ object PinnedContextMenu {
|
||||
!message.hasGiftBadge()
|
||||
) {
|
||||
add(
|
||||
ActionItem(R.drawable.symbol_copy_android_24, context.getString(R.string.conversation_selection__menu_copy)) {
|
||||
ActionItem(CoreUiR.drawable.symbol_copy_android_24, context.getString(R.string.conversation_selection__menu_copy)) {
|
||||
callbacks.onCopy()
|
||||
}
|
||||
)
|
||||
@@ -78,7 +79,7 @@ object PinnedContextMenu {
|
||||
|
||||
if (!message.isRemoteDelete) {
|
||||
add(
|
||||
ActionItem(R.drawable.symbol_trash_24, context.getString(R.string.conversation_selection__menu_delete)) {
|
||||
ActionItem(CoreUiR.drawable.symbol_trash_24, context.getString(R.string.conversation_selection__menu_delete)) {
|
||||
callbacks.onDelete()
|
||||
}
|
||||
)
|
||||
|
||||
@@ -52,6 +52,7 @@ import org.thoughtcrime.securesms.util.hasTextSlide
|
||||
import org.thoughtcrime.securesms.util.requireTextSlide
|
||||
import java.io.IOException
|
||||
import java.util.Locale
|
||||
import org.signal.core.ui.R as CoreUiR
|
||||
|
||||
/**
|
||||
* Bottom sheet dialog to view all scheduled messages within a given thread.
|
||||
@@ -156,9 +157,9 @@ class ScheduledMessagesBottomSheet : FixedRoundedCornerBottomSheetDialogFragment
|
||||
private fun getMenuActionItems(message: ConversationMessage): List<ActionItem> {
|
||||
val canCopy = message.multiselectCollection.toSet().any { it !is Attachments && message.messageRecord.body.isNotEmpty() }
|
||||
val items: MutableList<ActionItem> = ArrayList()
|
||||
items.add(ActionItem(R.drawable.symbol_trash_24, resources.getString(R.string.conversation_selection__menu_delete), action = { handleDeleteMessage(message.messageRecord) }))
|
||||
items.add(ActionItem(CoreUiR.drawable.symbol_trash_24, resources.getString(R.string.conversation_selection__menu_delete), action = { handleDeleteMessage(message.messageRecord) }))
|
||||
if (canCopy) {
|
||||
items.add(ActionItem(R.drawable.symbol_copy_android_24, resources.getString(R.string.conversation_selection__menu_copy), action = { handleCopyMessage(message) }))
|
||||
items.add(ActionItem(CoreUiR.drawable.symbol_copy_android_24, resources.getString(R.string.conversation_selection__menu_copy), action = { handleCopyMessage(message) }))
|
||||
}
|
||||
items.add(ActionItem(R.drawable.symbol_send_24, resources.getString(R.string.ScheduledMessagesBottomSheet_menu_send_now), action = { handleSendMessageNow(message.messageRecord) }))
|
||||
items.add(ActionItem(R.drawable.symbol_calendar_24, resources.getString(R.string.ScheduledMessagesBottomSheet_menu_reschedule), action = { handleRescheduleMessage(message.messageRecord) }))
|
||||
|
||||
@@ -45,6 +45,7 @@ import org.signal.core.ui.compose.DayNightPreviews
|
||||
import org.signal.core.ui.compose.Dividers
|
||||
import org.signal.core.ui.compose.Previews
|
||||
import org.signal.core.ui.compose.Scaffolds
|
||||
import org.signal.core.ui.compose.SignalIcons
|
||||
import org.signal.core.ui.compose.horizontalGutters
|
||||
import org.signal.core.util.logging.Log
|
||||
import org.thoughtcrime.securesms.R
|
||||
@@ -94,7 +95,7 @@ class PollVotesFragment : ComposeDialogFragment(), RecipientBottomSheetDialogFra
|
||||
Scaffolds.Settings(
|
||||
title = stringResource(if (state.poll?.hasEnded == true) R.string.Poll__poll_results else R.string.Poll__poll_details),
|
||||
onNavigationClick = this::dismissAllowingStateLoss,
|
||||
navigationIcon = ImageVector.vectorResource(id = R.drawable.symbol_x_24),
|
||||
navigationIcon = SignalIcons.X.imageVector,
|
||||
navigationContentDescription = stringResource(id = R.string.Material3SearchToolbar__close)
|
||||
) { paddingValues ->
|
||||
if (state.poll == null) {
|
||||
|
||||
@@ -32,6 +32,7 @@ import org.thoughtcrime.securesms.mediasend.camerax.CameraXUtil
|
||||
import org.thoughtcrime.securesms.mediasend.v2.MediaSelectionActivity
|
||||
import org.thoughtcrime.securesms.permissions.Permissions
|
||||
import org.thoughtcrime.securesms.recipients.RecipientId
|
||||
import org.signal.core.ui.R as CoreUiR
|
||||
|
||||
/**
|
||||
* This encapsulates the logic for interacting with other activities used throughout a conversation. The gist
|
||||
@@ -82,7 +83,7 @@ class ConversationActivityResultContracts(private val fragment: Fragment, privat
|
||||
Permissions.with(fragment)
|
||||
.request(Manifest.permission.CAMERA)
|
||||
.ifNecessary()
|
||||
.withRationaleDialog(fragment.getString(R.string.CameraXFragment_allow_access_camera), fragment.getString(R.string.CameraXFragment_to_capture_photos_and_video_allow_camera), R.drawable.symbol_camera_24)
|
||||
.withRationaleDialog(fragment.getString(R.string.CameraXFragment_allow_access_camera), fragment.getString(R.string.CameraXFragment_to_capture_photos_and_video_allow_camera), CoreUiR.drawable.symbol_camera_24)
|
||||
.withPermanentDenialDialog(fragment.getString(R.string.CameraXFragment_signal_needs_camera_access_capture_photos), null, R.string.CameraXFragment_allow_access_camera, R.string.CameraXFragment_to_capture_photos_videos, fragment.parentFragmentManager)
|
||||
.onAllGranted {
|
||||
cameraLauncher.launch(MediaSelectionInput(emptyList(), recipientId, null, isReply))
|
||||
|
||||
@@ -381,6 +381,7 @@ import java.util.Optional
|
||||
import java.util.concurrent.ExecutionException
|
||||
import kotlin.time.Duration.Companion.days
|
||||
import kotlin.time.Duration.Companion.milliseconds
|
||||
import org.signal.core.ui.R as CoreUiR
|
||||
|
||||
/**
|
||||
* A single unified fragment for Conversations.
|
||||
@@ -1529,6 +1530,7 @@ class ConversationFragment :
|
||||
|
||||
when (args.conversationScreenType) {
|
||||
ConversationScreenType.NORMAL -> presentNavigationIconForNormal()
|
||||
|
||||
ConversationScreenType.BUBBLE,
|
||||
ConversationScreenType.POPUP -> presentNavigationIconForBubble()
|
||||
}
|
||||
@@ -1546,7 +1548,7 @@ class ConversationFragment :
|
||||
|
||||
private fun updateNavigationIconForNormal(isFullScreenPane: Boolean) {
|
||||
if (!resources.getWindowSizeClass().isSplitPane() || isFullScreenPane) {
|
||||
binding.toolbar.setNavigationIcon(R.drawable.symbol_arrow_start_24)
|
||||
binding.toolbar.setNavigationIcon(CoreUiR.drawable.symbol_arrow_start_24)
|
||||
binding.toolbar.setNavigationContentDescription(R.string.ConversationFragment__content_description_back_button)
|
||||
binding.toolbar.setNavigationOnClickListener {
|
||||
binding.root.hideKeyboard(composeText)
|
||||
@@ -2398,7 +2400,7 @@ class ConversationFragment :
|
||||
|
||||
if (menuState.shouldShowEditAction()) {
|
||||
items.add(
|
||||
ActionItem(R.drawable.symbol_edit_24, resources.getString(R.string.conversation_selection__menu_edit)) {
|
||||
ActionItem(CoreUiR.drawable.symbol_edit_24, resources.getString(R.string.conversation_selection__menu_edit)) {
|
||||
handleEditMessage(getSelectedConversationMessage())
|
||||
finishActionMode()
|
||||
}
|
||||
@@ -2407,7 +2409,7 @@ class ConversationFragment :
|
||||
|
||||
if (menuState.shouldShowForwardAction()) {
|
||||
items.add(
|
||||
ActionItem(R.drawable.symbol_forward_24, resources.getString(R.string.conversation_selection__menu_forward)) {
|
||||
ActionItem(CoreUiR.drawable.symbol_forward_24, resources.getString(R.string.conversation_selection__menu_forward)) {
|
||||
handleForwardMessageParts(selectedParts)
|
||||
}
|
||||
)
|
||||
@@ -2415,7 +2417,7 @@ class ConversationFragment :
|
||||
|
||||
if (menuState.shouldShowSaveAttachmentAction()) {
|
||||
items.add(
|
||||
ActionItem(R.drawable.symbol_save_android_24, getResources().getString(R.string.conversation_selection__menu_save)) {
|
||||
ActionItem(R.drawable.symbol_save_android_24, resources.getString(R.string.conversation_selection__menu_save)) {
|
||||
handleSaveAttachment(getSelectedConversationMessage().messageRecord as MmsMessageRecord)
|
||||
finishActionMode()
|
||||
}
|
||||
@@ -2424,7 +2426,7 @@ class ConversationFragment :
|
||||
|
||||
if (menuState.shouldShowCopyAction()) {
|
||||
items.add(
|
||||
ActionItem(R.drawable.symbol_copy_android_24, getResources().getString(R.string.conversation_selection__menu_copy)) {
|
||||
ActionItem(CoreUiR.drawable.symbol_copy_android_24, resources.getString(R.string.conversation_selection__menu_copy)) {
|
||||
handleCopyMessage(selectedParts)
|
||||
finishActionMode()
|
||||
}
|
||||
@@ -2433,7 +2435,7 @@ class ConversationFragment :
|
||||
|
||||
if (menuState.shouldShowDetailsAction()) {
|
||||
items.add(
|
||||
ActionItem(R.drawable.symbol_info_24, getResources().getString(R.string.conversation_selection__menu_message_details)) {
|
||||
ActionItem(CoreUiR.drawable.symbol_info_24, resources.getString(R.string.conversation_selection__menu_message_details)) {
|
||||
handleDisplayDetails(getSelectedConversationMessage())
|
||||
finishActionMode()
|
||||
}
|
||||
@@ -2442,7 +2444,7 @@ class ConversationFragment :
|
||||
|
||||
if (menuState.shouldShowDeleteAction()) {
|
||||
items.add(
|
||||
ActionItem(R.drawable.symbol_trash_24, getResources().getString(R.string.conversation_selection__menu_delete)) {
|
||||
ActionItem(CoreUiR.drawable.symbol_trash_24, resources.getString(R.string.conversation_selection__menu_delete)) {
|
||||
handleDeleteMessages(selectedParts)
|
||||
finishActionMode()
|
||||
}
|
||||
|
||||
@@ -57,6 +57,7 @@ import org.signal.core.ui.compose.Dividers
|
||||
import org.signal.core.ui.compose.Previews
|
||||
import org.signal.core.ui.compose.Rows
|
||||
import org.signal.core.ui.compose.Scaffolds
|
||||
import org.signal.core.ui.compose.SignalIcons
|
||||
import org.signal.core.ui.compose.copied.androidx.compose.DragAndDropEvent
|
||||
import org.signal.core.ui.compose.copied.androidx.compose.DraggableItem
|
||||
import org.signal.core.ui.compose.copied.androidx.compose.dragContainer
|
||||
@@ -107,7 +108,7 @@ class CreatePollFragment : ComposeDialogFragment() {
|
||||
onNavigationClick = {
|
||||
dismissAllowingStateLoss()
|
||||
},
|
||||
navigationIcon = ImageVector.vectorResource(R.drawable.symbol_x_24),
|
||||
navigationIcon = SignalIcons.X.imageVector,
|
||||
navigationContentDescription = stringResource(R.string.Material3SearchToolbar__close)
|
||||
) { paddingValues ->
|
||||
CreatePollScreen(
|
||||
|
||||
Reference in New Issue
Block a user