Fix warnings
This commit is contained in:
parent
71898bf6e9
commit
70a81235b4
@ -21,7 +21,7 @@ object ApiUtils {
|
|||||||
fun isMimeImage(type: String): Boolean =
|
fun isMimeImage(type: String): Boolean =
|
||||||
type == "image" || type == "image/jpeg" || type == "image/jpg" || type == "image/png"
|
type == "image" || type == "image/jpeg" || type == "image/jpg" || type == "image/png"
|
||||||
|
|
||||||
fun parseContentType(header: String?): String? {
|
fun parseContentType(header: String): String? {
|
||||||
val matcher = Pattern.compile(RSS_CONTENT_TYPE_REGEX)
|
val matcher = Pattern.compile(RSS_CONTENT_TYPE_REGEX)
|
||||||
.matcher(header)
|
.matcher(header)
|
||||||
return if (matcher.find()) {
|
return if (matcher.find()) {
|
||||||
@ -37,7 +37,7 @@ object ApiUtils {
|
|||||||
* @param text string to clean
|
* @param text string to clean
|
||||||
* @return cleaned text
|
* @return cleaned text
|
||||||
*/
|
*/
|
||||||
fun cleanText(text: String?): String {
|
fun cleanText(text: String): String {
|
||||||
return Jsoup.parse(text).text().trim()
|
return Jsoup.parse(text).text().trim()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -3,17 +3,12 @@ package com.readrops.api.localfeed
|
|||||||
import com.readrops.api.localfeed.atom.ATOMFeedAdapter
|
import com.readrops.api.localfeed.atom.ATOMFeedAdapter
|
||||||
import com.readrops.api.localfeed.rss1.RSS1FeedAdapter
|
import com.readrops.api.localfeed.rss1.RSS1FeedAdapter
|
||||||
import com.readrops.api.localfeed.rss2.RSS2FeedAdapter
|
import com.readrops.api.localfeed.rss2.RSS2FeedAdapter
|
||||||
import junit.framework.Assert.assertTrue
|
|
||||||
import org.junit.Assert.assertThrows
|
import org.junit.Assert.assertThrows
|
||||||
import org.junit.Rule
|
import org.junit.Assert.assertTrue
|
||||||
import org.junit.Test
|
import org.junit.Test
|
||||||
import org.junit.rules.ExpectedException
|
|
||||||
|
|
||||||
class XmlAdapterTest {
|
class XmlAdapterTest {
|
||||||
|
|
||||||
@get:Rule
|
|
||||||
val expectedException: ExpectedException = ExpectedException.none()
|
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
fun xmlFeedAdapterFactoryTest() {
|
fun xmlFeedAdapterFactoryTest() {
|
||||||
assertTrue(XmlAdapter.xmlFeedAdapterFactory(LocalRSSHelper.RSSType.RSS_1) is RSS1FeedAdapter)
|
assertTrue(XmlAdapter.xmlFeedAdapterFactory(LocalRSSHelper.RSSType.RSS_1) is RSS1FeedAdapter)
|
||||||
|
@ -4,9 +4,9 @@ import com.gitlab.mvysny.konsumexml.konsumeXml
|
|||||||
import com.readrops.api.TestUtils
|
import com.readrops.api.TestUtils
|
||||||
import com.readrops.api.utils.exceptions.ParseException
|
import com.readrops.api.utils.exceptions.ParseException
|
||||||
import com.readrops.db.util.DateUtils
|
import com.readrops.db.util.DateUtils
|
||||||
import junit.framework.Assert.assertEquals
|
|
||||||
import junit.framework.Assert.assertNotNull
|
|
||||||
import junit.framework.TestCase
|
import junit.framework.TestCase
|
||||||
|
import org.junit.Assert.assertEquals
|
||||||
|
import org.junit.Assert.assertNotNull
|
||||||
import org.junit.Assert.assertThrows
|
import org.junit.Assert.assertThrows
|
||||||
import org.junit.Assert.assertTrue
|
import org.junit.Assert.assertTrue
|
||||||
import org.junit.Test
|
import org.junit.Test
|
||||||
|
@ -39,7 +39,7 @@ import androidx.compose.ui.text.font.FontWeight
|
|||||||
import androidx.compose.ui.text.style.TextOverflow
|
import androidx.compose.ui.text.style.TextOverflow
|
||||||
import androidx.compose.ui.unit.dp
|
import androidx.compose.ui.unit.dp
|
||||||
import androidx.lifecycle.compose.collectAsStateWithLifecycle
|
import androidx.lifecycle.compose.collectAsStateWithLifecycle
|
||||||
import cafe.adriel.voyager.koin.getScreenModel
|
import cafe.adriel.voyager.koin.koinScreenModel
|
||||||
import cafe.adriel.voyager.navigator.LocalNavigator
|
import cafe.adriel.voyager.navigator.LocalNavigator
|
||||||
import cafe.adriel.voyager.navigator.currentOrThrow
|
import cafe.adriel.voyager.navigator.currentOrThrow
|
||||||
import cafe.adriel.voyager.navigator.tab.Tab
|
import cafe.adriel.voyager.navigator.tab.Tab
|
||||||
@ -81,7 +81,7 @@ object AccountTab : Tab {
|
|||||||
override fun Content() {
|
override fun Content() {
|
||||||
val navigator = LocalNavigator.currentOrThrow
|
val navigator = LocalNavigator.currentOrThrow
|
||||||
val context = LocalContext.current
|
val context = LocalContext.current
|
||||||
val screenModel = getScreenModel<AccountScreenModel>()
|
val screenModel = koinScreenModel<AccountScreenModel>()
|
||||||
|
|
||||||
val closeHome by screenModel.closeHome.collectAsStateWithLifecycle()
|
val closeHome by screenModel.closeHome.collectAsStateWithLifecycle()
|
||||||
val state by screenModel.accountState.collectAsStateWithLifecycle()
|
val state by screenModel.accountState.collectAsStateWithLifecycle()
|
||||||
|
@ -37,7 +37,7 @@ import androidx.compose.ui.text.input.PasswordVisualTransformation
|
|||||||
import androidx.compose.ui.text.input.VisualTransformation
|
import androidx.compose.ui.text.input.VisualTransformation
|
||||||
import androidx.compose.ui.unit.dp
|
import androidx.compose.ui.unit.dp
|
||||||
import androidx.lifecycle.compose.collectAsStateWithLifecycle
|
import androidx.lifecycle.compose.collectAsStateWithLifecycle
|
||||||
import cafe.adriel.voyager.koin.getScreenModel
|
import cafe.adriel.voyager.koin.koinScreenModel
|
||||||
import cafe.adriel.voyager.navigator.LocalNavigator
|
import cafe.adriel.voyager.navigator.LocalNavigator
|
||||||
import cafe.adriel.voyager.navigator.currentOrThrow
|
import cafe.adriel.voyager.navigator.currentOrThrow
|
||||||
import com.readrops.app.R
|
import com.readrops.app.R
|
||||||
@ -67,7 +67,7 @@ class AccountCredentialsScreen(
|
|||||||
override fun Content() {
|
override fun Content() {
|
||||||
val navigator = LocalNavigator.currentOrThrow
|
val navigator = LocalNavigator.currentOrThrow
|
||||||
val screenModel =
|
val screenModel =
|
||||||
getScreenModel<AccountCredentialsScreenModel>(parameters = { parametersOf(account, mode) })
|
koinScreenModel<AccountCredentialsScreenModel>(parameters = { parametersOf(account, mode) })
|
||||||
|
|
||||||
val state by screenModel.state.collectAsStateWithLifecycle()
|
val state by screenModel.state.collectAsStateWithLifecycle()
|
||||||
|
|
||||||
|
@ -33,7 +33,7 @@ import androidx.compose.ui.unit.dp
|
|||||||
import androidx.core.content.res.ResourcesCompat
|
import androidx.core.content.res.ResourcesCompat
|
||||||
import androidx.core.graphics.drawable.toBitmap
|
import androidx.core.graphics.drawable.toBitmap
|
||||||
import androidx.lifecycle.compose.collectAsStateWithLifecycle
|
import androidx.lifecycle.compose.collectAsStateWithLifecycle
|
||||||
import cafe.adriel.voyager.koin.getScreenModel
|
import cafe.adriel.voyager.koin.koinScreenModel
|
||||||
import cafe.adriel.voyager.navigator.LocalNavigator
|
import cafe.adriel.voyager.navigator.LocalNavigator
|
||||||
import cafe.adriel.voyager.navigator.currentOrThrow
|
import cafe.adriel.voyager.navigator.currentOrThrow
|
||||||
import com.readrops.api.utils.ApiUtils
|
import com.readrops.api.utils.ApiUtils
|
||||||
@ -60,7 +60,7 @@ class AccountSelectionScreen : AndroidScreen() {
|
|||||||
val navigator = LocalNavigator.currentOrThrow
|
val navigator = LocalNavigator.currentOrThrow
|
||||||
val context = LocalContext.current
|
val context = LocalContext.current
|
||||||
|
|
||||||
val screenModel = getScreenModel<AccountSelectionScreenModel>()
|
val screenModel = koinScreenModel<AccountSelectionScreenModel>()
|
||||||
val state by screenModel.state.collectAsStateWithLifecycle()
|
val state by screenModel.state.collectAsStateWithLifecycle()
|
||||||
|
|
||||||
val opmlImportLauncher =
|
val opmlImportLauncher =
|
||||||
|
@ -39,7 +39,7 @@ import androidx.compose.ui.res.painterResource
|
|||||||
import androidx.compose.ui.res.stringResource
|
import androidx.compose.ui.res.stringResource
|
||||||
import androidx.compose.ui.unit.dp
|
import androidx.compose.ui.unit.dp
|
||||||
import androidx.lifecycle.compose.collectAsStateWithLifecycle
|
import androidx.lifecycle.compose.collectAsStateWithLifecycle
|
||||||
import cafe.adriel.voyager.koin.getScreenModel
|
import cafe.adriel.voyager.koin.koinScreenModel
|
||||||
import cafe.adriel.voyager.navigator.tab.Tab
|
import cafe.adriel.voyager.navigator.tab.Tab
|
||||||
import cafe.adriel.voyager.navigator.tab.TabOptions
|
import cafe.adriel.voyager.navigator.tab.TabOptions
|
||||||
import com.readrops.app.R
|
import com.readrops.app.R
|
||||||
@ -75,7 +75,7 @@ object FeedTab : Tab {
|
|||||||
val uriHandler = LocalUriHandler.current
|
val uriHandler = LocalUriHandler.current
|
||||||
val context = LocalContext.current
|
val context = LocalContext.current
|
||||||
|
|
||||||
val screenModel = getScreenModel<FeedScreenModel>()
|
val screenModel = koinScreenModel<FeedScreenModel>()
|
||||||
val state by screenModel.feedsState.collectAsStateWithLifecycle()
|
val state by screenModel.feedsState.collectAsStateWithLifecycle()
|
||||||
|
|
||||||
val snackbarHostState = remember { SnackbarHostState() }
|
val snackbarHostState = remember { SnackbarHostState() }
|
||||||
|
@ -11,6 +11,7 @@ import androidx.compose.material3.ExposedDropdownMenuDefaults
|
|||||||
import androidx.compose.material3.Icon
|
import androidx.compose.material3.Icon
|
||||||
import androidx.compose.material3.IconButton
|
import androidx.compose.material3.IconButton
|
||||||
import androidx.compose.material3.MaterialTheme
|
import androidx.compose.material3.MaterialTheme
|
||||||
|
import androidx.compose.material3.MenuAnchorType
|
||||||
import androidx.compose.material3.OutlinedTextField
|
import androidx.compose.material3.OutlinedTextField
|
||||||
import androidx.compose.material3.Text
|
import androidx.compose.material3.Text
|
||||||
import androidx.compose.runtime.Composable
|
import androidx.compose.runtime.Composable
|
||||||
@ -112,7 +113,7 @@ fun AddFeedDialog(
|
|||||||
modifier = Modifier.size(24.dp)
|
modifier = Modifier.size(24.dp)
|
||||||
)
|
)
|
||||||
},
|
},
|
||||||
modifier = Modifier.menuAnchor()
|
modifier = Modifier.menuAnchor(type = MenuAnchorType.PrimaryNotEditable)
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -6,6 +6,7 @@ import androidx.compose.material3.ExposedDropdownMenuBox
|
|||||||
import androidx.compose.material3.ExposedDropdownMenuDefaults
|
import androidx.compose.material3.ExposedDropdownMenuDefaults
|
||||||
import androidx.compose.material3.Icon
|
import androidx.compose.material3.Icon
|
||||||
import androidx.compose.material3.MaterialTheme
|
import androidx.compose.material3.MaterialTheme
|
||||||
|
import androidx.compose.material3.MenuAnchorType
|
||||||
import androidx.compose.material3.OutlinedTextField
|
import androidx.compose.material3.OutlinedTextField
|
||||||
import androidx.compose.material3.Text
|
import androidx.compose.material3.Text
|
||||||
import androidx.compose.runtime.Composable
|
import androidx.compose.runtime.Composable
|
||||||
@ -118,7 +119,7 @@ fun UpdateFeedDialog(
|
|||||||
)
|
)
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
modifier = Modifier.menuAnchor()
|
modifier = Modifier.menuAnchor(type = MenuAnchorType.PrimaryNotEditable)
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -55,7 +55,7 @@ import androidx.compose.ui.viewinterop.AndroidView
|
|||||||
import androidx.core.net.toUri
|
import androidx.core.net.toUri
|
||||||
import androidx.core.view.children
|
import androidx.core.view.children
|
||||||
import androidx.lifecycle.compose.collectAsStateWithLifecycle
|
import androidx.lifecycle.compose.collectAsStateWithLifecycle
|
||||||
import cafe.adriel.voyager.koin.getScreenModel
|
import cafe.adriel.voyager.koin.koinScreenModel
|
||||||
import cafe.adriel.voyager.navigator.LocalNavigator
|
import cafe.adriel.voyager.navigator.LocalNavigator
|
||||||
import cafe.adriel.voyager.navigator.currentOrThrow
|
import cafe.adriel.voyager.navigator.currentOrThrow
|
||||||
import coil.compose.AsyncImage
|
import coil.compose.AsyncImage
|
||||||
@ -85,7 +85,7 @@ class ItemScreen(
|
|||||||
val navigator = LocalNavigator.currentOrThrow
|
val navigator = LocalNavigator.currentOrThrow
|
||||||
|
|
||||||
val screenModel =
|
val screenModel =
|
||||||
getScreenModel<ItemScreenModel>(parameters = { parametersOf(itemId) })
|
koinScreenModel<ItemScreenModel>(parameters = { parametersOf(itemId) })
|
||||||
val state by screenModel.state.collectAsStateWithLifecycle()
|
val state by screenModel.state.collectAsStateWithLifecycle()
|
||||||
|
|
||||||
val primaryColor = MaterialTheme.colorScheme.primary
|
val primaryColor = MaterialTheme.colorScheme.primary
|
||||||
|
@ -30,7 +30,7 @@ import androidx.compose.ui.Modifier
|
|||||||
import androidx.compose.ui.platform.LocalContext
|
import androidx.compose.ui.platform.LocalContext
|
||||||
import androidx.compose.ui.res.stringResource
|
import androidx.compose.ui.res.stringResource
|
||||||
import androidx.lifecycle.compose.collectAsStateWithLifecycle
|
import androidx.lifecycle.compose.collectAsStateWithLifecycle
|
||||||
import cafe.adriel.voyager.koin.getScreenModel
|
import cafe.adriel.voyager.koin.koinScreenModel
|
||||||
import cafe.adriel.voyager.navigator.LocalNavigator
|
import cafe.adriel.voyager.navigator.LocalNavigator
|
||||||
import cafe.adriel.voyager.navigator.currentOrThrow
|
import cafe.adriel.voyager.navigator.currentOrThrow
|
||||||
import com.readrops.app.R
|
import com.readrops.app.R
|
||||||
@ -51,7 +51,7 @@ class PreferencesScreen : AndroidScreen() {
|
|||||||
override fun Content() {
|
override fun Content() {
|
||||||
val navigator = LocalNavigator.currentOrThrow
|
val navigator = LocalNavigator.currentOrThrow
|
||||||
val context = LocalContext.current
|
val context = LocalContext.current
|
||||||
val screenModel = getScreenModel<PreferencesScreenModel>()
|
val screenModel = koinScreenModel<PreferencesScreenModel>()
|
||||||
|
|
||||||
val scrollState = rememberScrollState()
|
val scrollState = rememberScrollState()
|
||||||
val coroutineScope = rememberCoroutineScope()
|
val coroutineScope = rememberCoroutineScope()
|
||||||
|
@ -31,7 +31,7 @@ import androidx.compose.ui.platform.LocalContext
|
|||||||
import androidx.compose.ui.res.painterResource
|
import androidx.compose.ui.res.painterResource
|
||||||
import androidx.compose.ui.res.stringResource
|
import androidx.compose.ui.res.stringResource
|
||||||
import androidx.lifecycle.compose.collectAsStateWithLifecycle
|
import androidx.lifecycle.compose.collectAsStateWithLifecycle
|
||||||
import cafe.adriel.voyager.koin.getScreenModel
|
import cafe.adriel.voyager.koin.koinScreenModel
|
||||||
import cafe.adriel.voyager.navigator.LocalNavigator
|
import cafe.adriel.voyager.navigator.LocalNavigator
|
||||||
import cafe.adriel.voyager.navigator.currentOrThrow
|
import cafe.adriel.voyager.navigator.currentOrThrow
|
||||||
import com.google.accompanist.permissions.ExperimentalPermissionsApi
|
import com.google.accompanist.permissions.ExperimentalPermissionsApi
|
||||||
@ -60,7 +60,7 @@ class NotificationsScreen(val account: Account) : AndroidScreen() {
|
|||||||
override fun Content() {
|
override fun Content() {
|
||||||
val navigator = LocalNavigator.currentOrThrow
|
val navigator = LocalNavigator.currentOrThrow
|
||||||
val context = LocalContext.current
|
val context = LocalContext.current
|
||||||
val screenModel = getScreenModel<NotificationsScreenModel> { parametersOf(account) }
|
val screenModel = koinScreenModel<NotificationsScreenModel> { parametersOf(account) }
|
||||||
|
|
||||||
val state by screenModel.state.collectAsStateWithLifecycle()
|
val state by screenModel.state.collectAsStateWithLifecycle()
|
||||||
|
|
||||||
|
@ -51,7 +51,7 @@ import androidx.paging.LoadState
|
|||||||
import androidx.paging.compose.LazyPagingItems
|
import androidx.paging.compose.LazyPagingItems
|
||||||
import androidx.paging.compose.collectAsLazyPagingItems
|
import androidx.paging.compose.collectAsLazyPagingItems
|
||||||
import androidx.paging.compose.itemKey
|
import androidx.paging.compose.itemKey
|
||||||
import cafe.adriel.voyager.koin.getScreenModel
|
import cafe.adriel.voyager.koin.koinScreenModel
|
||||||
import cafe.adriel.voyager.navigator.LocalNavigator
|
import cafe.adriel.voyager.navigator.LocalNavigator
|
||||||
import cafe.adriel.voyager.navigator.currentOrThrow
|
import cafe.adriel.voyager.navigator.currentOrThrow
|
||||||
import cafe.adriel.voyager.navigator.tab.Tab
|
import cafe.adriel.voyager.navigator.tab.Tab
|
||||||
@ -89,7 +89,7 @@ object TimelineTab : Tab {
|
|||||||
val navigator = LocalNavigator.currentOrThrow
|
val navigator = LocalNavigator.currentOrThrow
|
||||||
val context = LocalContext.current
|
val context = LocalContext.current
|
||||||
|
|
||||||
val screenModel = getScreenModel<TimelineScreenModel>()
|
val screenModel = koinScreenModel<TimelineScreenModel>()
|
||||||
val state by screenModel.timelineState.collectAsStateWithLifecycle()
|
val state by screenModel.timelineState.collectAsStateWithLifecycle()
|
||||||
val preferences = state.preferences
|
val preferences = state.preferences
|
||||||
val items = state.itemState.collectAsLazyPagingItems()
|
val items = state.itemState.collectAsLazyPagingItems()
|
||||||
|
@ -9,7 +9,7 @@ import androidx.compose.foundation.rememberScrollState
|
|||||||
import androidx.compose.foundation.verticalScroll
|
import androidx.compose.foundation.verticalScroll
|
||||||
import androidx.compose.material.icons.Icons
|
import androidx.compose.material.icons.Icons
|
||||||
import androidx.compose.material.icons.filled.Star
|
import androidx.compose.material.icons.filled.Star
|
||||||
import androidx.compose.material3.Divider
|
import androidx.compose.material3.HorizontalDivider
|
||||||
import androidx.compose.material3.Icon
|
import androidx.compose.material3.Icon
|
||||||
import androidx.compose.material3.MaterialTheme
|
import androidx.compose.material3.MaterialTheme
|
||||||
import androidx.compose.material3.ModalDrawerSheet
|
import androidx.compose.material3.ModalDrawerSheet
|
||||||
@ -172,7 +172,7 @@ fun DrawerDefaultItems(
|
|||||||
|
|
||||||
@Composable
|
@Composable
|
||||||
fun DrawerDivider() {
|
fun DrawerDivider() {
|
||||||
Divider(
|
HorizontalDivider(
|
||||||
thickness = 2.dp,
|
thickness = 2.dp,
|
||||||
modifier = Modifier.padding(
|
modifier = Modifier.padding(
|
||||||
vertical = MaterialTheme.spacing.drawerSpacing,
|
vertical = MaterialTheme.spacing.drawerSpacing,
|
||||||
|
Loading…
x
Reference in New Issue
Block a user