diff --git a/Jetchat/app/build.gradle.kts b/Jetchat/app/build.gradle.kts
index 8d4d638074..2c7f5781a0 100644
--- a/Jetchat/app/build.gradle.kts
+++ b/Jetchat/app/build.gradle.kts
@@ -106,7 +106,6 @@ dependencies {
implementation(libs.androidx.compose.foundation.layout)
implementation(libs.androidx.compose.material3)
- implementation(libs.androidx.compose.material.iconsExtended)
implementation(libs.androidx.compose.ui.tooling.preview)
debugImplementation(libs.androidx.compose.ui.tooling)
implementation(libs.androidx.compose.ui.util)
diff --git a/Jetchat/app/src/main/java/com/example/compose/jetchat/conversation/Conversation.kt b/Jetchat/app/src/main/java/com/example/compose/jetchat/conversation/Conversation.kt
index a6605f5eeb..8f5290750b 100644
--- a/Jetchat/app/src/main/java/com/example/compose/jetchat/conversation/Conversation.kt
+++ b/Jetchat/app/src/main/java/com/example/compose/jetchat/conversation/Conversation.kt
@@ -48,9 +48,6 @@ import androidx.compose.foundation.lazy.rememberLazyListState
import androidx.compose.foundation.shape.CircleShape
import androidx.compose.foundation.shape.RoundedCornerShape
import androidx.compose.foundation.text.ClickableText
-import androidx.compose.material.icons.Icons
-import androidx.compose.material.icons.outlined.Info
-import androidx.compose.material.icons.outlined.Search
import androidx.compose.material3.Divider
import androidx.compose.material3.ExperimentalMaterial3Api
import androidx.compose.material3.Icon
@@ -255,7 +252,7 @@ fun ChannelNameBar(
actions = {
// Search icon
Icon(
- imageVector = Icons.Outlined.Search,
+ painterResource(id = R.drawable.ic_search),
tint = MaterialTheme.colorScheme.onSurfaceVariant,
modifier = Modifier
.clickable(onClick = { functionalityNotAvailablePopupShown = true })
@@ -265,7 +262,7 @@ fun ChannelNameBar(
)
// Info icon
Icon(
- imageVector = Icons.Outlined.Info,
+ painterResource(id = R.drawable.ic_info),
tint = MaterialTheme.colorScheme.onSurfaceVariant,
modifier = Modifier
.clickable(onClick = { functionalityNotAvailablePopupShown = true })
diff --git a/Jetchat/app/src/main/java/com/example/compose/jetchat/conversation/JumpToBottom.kt b/Jetchat/app/src/main/java/com/example/compose/jetchat/conversation/JumpToBottom.kt
index 395e6eb8bb..fd0270ae0f 100644
--- a/Jetchat/app/src/main/java/com/example/compose/jetchat/conversation/JumpToBottom.kt
+++ b/Jetchat/app/src/main/java/com/example/compose/jetchat/conversation/JumpToBottom.kt
@@ -20,8 +20,6 @@ import androidx.compose.animation.core.animateDp
import androidx.compose.animation.core.updateTransition
import androidx.compose.foundation.layout.height
import androidx.compose.foundation.layout.offset
-import androidx.compose.material.icons.Icons
-import androidx.compose.material.icons.filled.ArrowDownward
import androidx.compose.material3.ExtendedFloatingActionButton
import androidx.compose.material3.Icon
import androidx.compose.material3.MaterialTheme
@@ -29,6 +27,7 @@ import androidx.compose.material3.Text
import androidx.compose.runtime.Composable
import androidx.compose.runtime.getValue
import androidx.compose.ui.Modifier
+import androidx.compose.ui.res.painterResource
import androidx.compose.ui.res.stringResource
import androidx.compose.ui.tooling.preview.Preview
import androidx.compose.ui.unit.dp
@@ -60,7 +59,7 @@ fun JumpToBottom(enabled: Boolean, onClicked: () -> Unit, modifier: Modifier = M
ExtendedFloatingActionButton(
icon = {
Icon(
- imageVector = Icons.Filled.ArrowDownward,
+ painter = painterResource(id = R.drawable.ic_arrow_downward),
modifier = Modifier.height(18.dp),
contentDescription = null,
)
diff --git a/Jetchat/app/src/main/java/com/example/compose/jetchat/conversation/RecordButton.kt b/Jetchat/app/src/main/java/com/example/compose/jetchat/conversation/RecordButton.kt
index 57b79c8cda..12538ef4fd 100644
--- a/Jetchat/app/src/main/java/com/example/compose/jetchat/conversation/RecordButton.kt
+++ b/Jetchat/app/src/main/java/com/example/compose/jetchat/conversation/RecordButton.kt
@@ -31,8 +31,6 @@ import androidx.compose.foundation.layout.aspectRatio
import androidx.compose.foundation.layout.padding
import androidx.compose.foundation.layout.sizeIn
import androidx.compose.foundation.shape.CircleShape
-import androidx.compose.material.icons.Icons
-import androidx.compose.material.icons.filled.Mic
import androidx.compose.material3.ExperimentalMaterial3Api
import androidx.compose.material3.Icon
import androidx.compose.material3.LocalContentColor
@@ -49,6 +47,7 @@ import androidx.compose.ui.Modifier
import androidx.compose.ui.draw.clip
import androidx.compose.ui.graphics.graphicsLayer
import androidx.compose.ui.input.pointer.pointerInput
+import androidx.compose.ui.res.painterResource
import androidx.compose.ui.res.stringResource
import androidx.compose.ui.unit.Dp
import androidx.compose.ui.unit.dp
@@ -114,7 +113,7 @@ fun RecordButton(
state = tooltipState,
) {
Icon(
- Icons.Default.Mic,
+ painterResource(id = R.drawable.ic_mic),
contentDescription = stringResource(R.string.record_message),
tint = iconColor.value,
modifier = modifier
diff --git a/Jetchat/app/src/main/java/com/example/compose/jetchat/conversation/UserInput.kt b/Jetchat/app/src/main/java/com/example/compose/jetchat/conversation/UserInput.kt
index 03d2f70bc2..5758016fb6 100644
--- a/Jetchat/app/src/main/java/com/example/compose/jetchat/conversation/UserInput.kt
+++ b/Jetchat/app/src/main/java/com/example/compose/jetchat/conversation/UserInput.kt
@@ -57,12 +57,6 @@ import androidx.compose.foundation.text.BasicTextField
import androidx.compose.foundation.text.KeyboardActions
import androidx.compose.foundation.text.KeyboardOptions
import androidx.compose.foundation.verticalScroll
-import androidx.compose.material.icons.Icons
-import androidx.compose.material.icons.outlined.AlternateEmail
-import androidx.compose.material.icons.outlined.Duo
-import androidx.compose.material.icons.outlined.InsertPhoto
-import androidx.compose.material.icons.outlined.Mood
-import androidx.compose.material.icons.outlined.Place
import androidx.compose.material3.Button
import androidx.compose.material3.ButtonDefaults
import androidx.compose.material3.Icon
@@ -93,9 +87,9 @@ import androidx.compose.ui.focus.onFocusChanged
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.graphics.SolidColor
import androidx.compose.ui.graphics.graphicsLayer
-import androidx.compose.ui.graphics.vector.ImageVector
import androidx.compose.ui.layout.FirstBaseline
import androidx.compose.ui.platform.LocalDensity
+import androidx.compose.ui.res.painterResource
import androidx.compose.ui.res.stringResource
import androidx.compose.ui.semantics.SemanticsPropertyKey
import androidx.compose.ui.semantics.SemanticsPropertyReceiver
@@ -286,31 +280,31 @@ private fun UserInputSelector(
) {
InputSelectorButton(
onClick = { onSelectorChange(InputSelector.EMOJI) },
- icon = Icons.Outlined.Mood,
+ icon = painterResource(id = R.drawable.ic_mood),
selected = currentInputSelector == InputSelector.EMOJI,
description = stringResource(id = R.string.emoji_selector_bt_desc),
)
InputSelectorButton(
onClick = { onSelectorChange(InputSelector.DM) },
- icon = Icons.Outlined.AlternateEmail,
+ icon = painterResource(id = R.drawable.ic_alternate_email),
selected = currentInputSelector == InputSelector.DM,
description = stringResource(id = R.string.dm_desc),
)
InputSelectorButton(
onClick = { onSelectorChange(InputSelector.PICTURE) },
- icon = Icons.Outlined.InsertPhoto,
+ icon = painterResource(id = R.drawable.ic_insert_photo),
selected = currentInputSelector == InputSelector.PICTURE,
description = stringResource(id = R.string.attach_photo_desc),
)
InputSelectorButton(
onClick = { onSelectorChange(InputSelector.MAP) },
- icon = Icons.Outlined.Place,
+ icon = painterResource(id = R.drawable.ic_place),
selected = currentInputSelector == InputSelector.MAP,
description = stringResource(id = R.string.map_selector_desc),
)
InputSelectorButton(
onClick = { onSelectorChange(InputSelector.PHONE) },
- icon = Icons.Outlined.Duo,
+ icon = painterResource(id = R.drawable.ic_duo),
selected = currentInputSelector == InputSelector.PHONE,
description = stringResource(id = R.string.videochat_desc),
)
@@ -352,7 +346,7 @@ private fun UserInputSelector(
@Composable
private fun InputSelectorButton(
onClick: () -> Unit,
- icon: ImageVector,
+ icon: androidx.compose.ui.graphics.painter.Painter,
description: String,
selected: Boolean,
modifier: Modifier = Modifier,
diff --git a/Jetchat/app/src/main/java/com/example/compose/jetchat/profile/Profile.kt b/Jetchat/app/src/main/java/com/example/compose/jetchat/profile/Profile.kt
index 983690d399..35b9b1af7c 100644
--- a/Jetchat/app/src/main/java/com/example/compose/jetchat/profile/Profile.kt
+++ b/Jetchat/app/src/main/java/com/example/compose/jetchat/profile/Profile.kt
@@ -33,9 +33,6 @@ import androidx.compose.foundation.layout.widthIn
import androidx.compose.foundation.rememberScrollState
import androidx.compose.foundation.shape.CircleShape
import androidx.compose.foundation.verticalScroll
-import androidx.compose.material.icons.Icons
-import androidx.compose.material.icons.outlined.Chat
-import androidx.compose.material.icons.outlined.Create
import androidx.compose.material3.Divider
import androidx.compose.material3.ExperimentalMaterial3Api
import androidx.compose.material3.FloatingActionButton
@@ -245,7 +242,7 @@ fun ProfileFab(extended: Boolean, userIsMe: Boolean, modifier: Modifier = Modifi
AnimatingFabContent(
icon = {
Icon(
- imageVector = if (userIsMe) Icons.Outlined.Create else Icons.Outlined.Chat,
+ painter = painterResource(id = if (userIsMe) R.drawable.ic_create else R.drawable.ic_chat),
contentDescription = stringResource(
if (userIsMe) R.string.edit_profile else R.string.message,
),
diff --git a/Jetchat/app/src/main/java/com/example/compose/jetchat/profile/ProfileFragment.kt b/Jetchat/app/src/main/java/com/example/compose/jetchat/profile/ProfileFragment.kt
index 5276540ac1..daeaed63db 100644
--- a/Jetchat/app/src/main/java/com/example/compose/jetchat/profile/ProfileFragment.kt
+++ b/Jetchat/app/src/main/java/com/example/compose/jetchat/profile/ProfileFragment.kt
@@ -25,8 +25,6 @@ import androidx.compose.foundation.clickable
import androidx.compose.foundation.layout.height
import androidx.compose.foundation.layout.padding
import androidx.compose.foundation.layout.wrapContentSize
-import androidx.compose.material.icons.Icons
-import androidx.compose.material.icons.outlined.MoreVert
import androidx.compose.material3.ExperimentalMaterial3Api
import androidx.compose.material3.Icon
import androidx.compose.material3.MaterialTheme
@@ -39,6 +37,7 @@ import androidx.compose.ui.ExperimentalComposeUiApi
import androidx.compose.ui.Modifier
import androidx.compose.ui.platform.ComposeView
import androidx.compose.ui.platform.rememberNestedScrollInteropConnection
+import androidx.compose.ui.res.painterResource
import androidx.compose.ui.res.stringResource
import androidx.compose.ui.unit.dp
import androidx.fragment.app.Fragment
@@ -82,7 +81,7 @@ class ProfileFragment : Fragment() {
actions = {
// More icon
Icon(
- imageVector = Icons.Outlined.MoreVert,
+ painter = painterResource(id = R.drawable.ic_more_vert),
tint = MaterialTheme.colorScheme.onSurfaceVariant,
modifier = Modifier
.clickable(onClick = {
diff --git a/Jetchat/app/src/main/res/drawable/ic_alternate_email.xml b/Jetchat/app/src/main/res/drawable/ic_alternate_email.xml
new file mode 100644
index 0000000000..37d1268e94
--- /dev/null
+++ b/Jetchat/app/src/main/res/drawable/ic_alternate_email.xml
@@ -0,0 +1,9 @@
+
+
+
diff --git a/Jetchat/app/src/main/res/drawable/ic_arrow_downward.xml b/Jetchat/app/src/main/res/drawable/ic_arrow_downward.xml
new file mode 100644
index 0000000000..66f1ae3f8e
--- /dev/null
+++ b/Jetchat/app/src/main/res/drawable/ic_arrow_downward.xml
@@ -0,0 +1,9 @@
+
+
+
diff --git a/Jetchat/app/src/main/res/drawable/ic_baseline_person_24.xml b/Jetchat/app/src/main/res/drawable/ic_baseline_person_24.xml
index dbcd75673d..06248132cb 100644
--- a/Jetchat/app/src/main/res/drawable/ic_baseline_person_24.xml
+++ b/Jetchat/app/src/main/res/drawable/ic_baseline_person_24.xml
@@ -18,8 +18,7 @@
android:width="24dp"
android:height="24dp"
android:viewportWidth="24"
- android:viewportHeight="24"
- android:tint="?attr/colorControlNormal">
+ android:viewportHeight="24">
diff --git a/Jetchat/app/src/main/res/drawable/ic_chat.xml b/Jetchat/app/src/main/res/drawable/ic_chat.xml
new file mode 100644
index 0000000000..e53bb33791
--- /dev/null
+++ b/Jetchat/app/src/main/res/drawable/ic_chat.xml
@@ -0,0 +1,9 @@
+
+
+
diff --git a/Jetchat/app/src/main/res/drawable/ic_create.xml b/Jetchat/app/src/main/res/drawable/ic_create.xml
new file mode 100644
index 0000000000..db9b31f528
--- /dev/null
+++ b/Jetchat/app/src/main/res/drawable/ic_create.xml
@@ -0,0 +1,9 @@
+
+
+
diff --git a/Jetchat/app/src/main/res/drawable/ic_duo.xml b/Jetchat/app/src/main/res/drawable/ic_duo.xml
new file mode 100644
index 0000000000..7e0cdcdcde
--- /dev/null
+++ b/Jetchat/app/src/main/res/drawable/ic_duo.xml
@@ -0,0 +1,9 @@
+
+
+
diff --git a/Jetchat/app/src/main/res/drawable/ic_info.xml b/Jetchat/app/src/main/res/drawable/ic_info.xml
new file mode 100644
index 0000000000..1ece0341d0
--- /dev/null
+++ b/Jetchat/app/src/main/res/drawable/ic_info.xml
@@ -0,0 +1,9 @@
+
+
+
diff --git a/Jetchat/app/src/main/res/drawable/ic_insert_photo.xml b/Jetchat/app/src/main/res/drawable/ic_insert_photo.xml
new file mode 100644
index 0000000000..083151a120
--- /dev/null
+++ b/Jetchat/app/src/main/res/drawable/ic_insert_photo.xml
@@ -0,0 +1,9 @@
+
+
+
diff --git a/Jetchat/app/src/main/res/drawable/ic_mic.xml b/Jetchat/app/src/main/res/drawable/ic_mic.xml
new file mode 100644
index 0000000000..ed523bb689
--- /dev/null
+++ b/Jetchat/app/src/main/res/drawable/ic_mic.xml
@@ -0,0 +1,9 @@
+
+
+
\ No newline at end of file
diff --git a/Jetchat/app/src/main/res/drawable/ic_mood.xml b/Jetchat/app/src/main/res/drawable/ic_mood.xml
new file mode 100644
index 0000000000..b5f400251c
--- /dev/null
+++ b/Jetchat/app/src/main/res/drawable/ic_mood.xml
@@ -0,0 +1,9 @@
+
+
+
\ No newline at end of file
diff --git a/Jetchat/app/src/main/res/drawable/ic_more_vert.xml b/Jetchat/app/src/main/res/drawable/ic_more_vert.xml
new file mode 100644
index 0000000000..59400ec977
--- /dev/null
+++ b/Jetchat/app/src/main/res/drawable/ic_more_vert.xml
@@ -0,0 +1,9 @@
+
+
+
diff --git a/Jetchat/app/src/main/res/drawable/ic_place.xml b/Jetchat/app/src/main/res/drawable/ic_place.xml
new file mode 100644
index 0000000000..ddb5a94e21
--- /dev/null
+++ b/Jetchat/app/src/main/res/drawable/ic_place.xml
@@ -0,0 +1,9 @@
+
+
+
diff --git a/Jetchat/app/src/main/res/drawable/ic_search.xml b/Jetchat/app/src/main/res/drawable/ic_search.xml
new file mode 100644
index 0000000000..20c7b4e734
--- /dev/null
+++ b/Jetchat/app/src/main/res/drawable/ic_search.xml
@@ -0,0 +1,9 @@
+
+
+