desktop: font for emoji (#2853)

* desktop: font for emoji

* heart emoji for Mac

* limit font size

* alignment

* padding

* emoji item layout

* padding on desktop

---------

Co-authored-by: Evgeny Poberezkin <2769109+epoberezkin@users.noreply.github.com>
This commit is contained in:
Stanislav Dmitrenko
2023-08-04 22:28:09 +01:00
committed by GitHub
co-authored by Evgeny Poberezkin
parent 353fe4539c
commit 5952fd5290
13 changed files with 106 additions and 12 deletions
@@ -11,3 +11,5 @@ actual val Inter: FontFamily = FontFamily(
Font(MR.fonts.Inter.medium.fontResourceId, FontWeight.Medium),
Font(MR.fonts.Inter.light.fontResourceId, FontWeight.Light)
)
actual val EmojiFont: FontFamily = FontFamily.Default
@@ -2,18 +2,27 @@ package chat.simplex.common.views.chat.item
import android.Manifest
import android.os.Build
import androidx.compose.material.Text
import androidx.compose.runtime.Composable
import androidx.compose.runtime.MutableState
import androidx.compose.ui.unit.TextUnit
import androidx.compose.ui.unit.sp
import chat.simplex.common.model.ChatItem
import chat.simplex.common.model.MsgContent
import chat.simplex.common.platform.FileChooserLauncher
import chat.simplex.common.platform.saveImage
import chat.simplex.common.views.helpers.SharedContent
import chat.simplex.common.views.helpers.withApi
import chat.simplex.res.MR
import com.google.accompanist.permissions.rememberPermissionState
import dev.icerock.moko.resources.compose.painterResource
import dev.icerock.moko.resources.compose.stringResource
@Composable
actual fun ReactionIcon(text: String, fontSize: TextUnit) {
Text(text, fontSize = fontSize)
}
@Composable
actual fun SaveContentItemAction(cItem: ChatItem, saveFileLauncher: FileChooserLauncher, showMenu: MutableState<Boolean>) {
val writePermissionState = rememberPermissionState(permission = Manifest.permission.WRITE_EXTERNAL_STORAGE)
@@ -0,0 +1,10 @@
package chat.simplex.common.views.chat.item
import androidx.compose.material.Text
import androidx.compose.runtime.Composable
@Composable
actual fun EmojiText(text: String) {
val s = text.trim()
Text(s, style = if (s.codePoints().count() < 4) largeEmojiFont else mediumEmojiFont)
}