removing more warnings

This commit is contained in:
Vitor Pamplona
2026-03-28 14:24:13 -04:00
parent e8ba9a2d2f
commit cfa59dab01
11 changed files with 23 additions and 140 deletions
@@ -18,6 +18,8 @@
* AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
* WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
*/
@file:Suppress("DEPRECATION")
package com.vitorpamplona.amethyst.service.relayClient.reqCommand.event.watchers
import com.vitorpamplona.amethyst.model.Note
@@ -1,114 +0,0 @@
/*
* Copyright (c) 2025 Vitor Pamplona
*
* Permission is hereby granted, free of charge, to any person obtaining a copy of
* this software and associated documentation files (the "Software"), to deal in
* the Software without restriction, including without limitation the rights to use,
* copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the
* Software, and to permit persons to whom the Software is furnished to do so,
* subject to the following conditions:
*
* The above copyright notice and this permission notice shall be included in all
* copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
* FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
* COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
* AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
* WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
*/
package com.vitorpamplona.amethyst.ui.components.util
import android.app.Activity
import android.content.Context
import android.content.pm.ActivityInfo
import android.content.pm.PackageManager
import android.provider.Settings
import androidx.compose.runtime.Composable
import androidx.compose.runtime.remember
import androidx.window.core.layout.WindowHeightSizeClass
import androidx.window.core.layout.WindowSizeClass
import androidx.window.core.layout.WindowWidthSizeClass
import com.vitorpamplona.amethyst.ui.components.util.DeviceUtils.screenOrientationIsLocked
object DeviceUtils {
/**
* Tries to determine if the device is
* in landscape mode, by using the [android.util.DisplayMetrics] API.
*
* Credits: NewPipe devs
*/
fun isLandscapeMetric(context: Context): Boolean = context.resources.displayMetrics.heightPixels < context.resources.displayMetrics.widthPixels
/**
* Checks if the device's orientation is set to locked.
*
* Credits: NewPipe devs
*/
fun screenOrientationIsLocked(context: Context): Boolean {
// 1: Screen orientation changes using accelerometer
// 0: Screen orientation is locked
// if the accelerometer sensor is missing completely, assume locked orientation
return (
Settings.System.getInt(
context.contentResolver,
Settings.System.ACCELEROMETER_ROTATION,
0,
) == 0 ||
!context.packageManager.hasSystemFeature(PackageManager.FEATURE_SENSOR_ACCELEROMETER)
)
}
/**
* Changes the device's orientation. This works even if the device's orientation
* is set to locked.
* Thus, to prevent unwanted behaviour,
* it's use can be guarded by conditions such as [screenOrientationIsLocked].
*/
fun changeDeviceOrientation(
isInLandscape: Boolean,
currentActivity: Activity,
) {
val newOrientation =
if (isInLandscape) {
ActivityInfo.SCREEN_ORIENTATION_PORTRAIT
} else {
ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE
}
currentActivity.requestedOrientation = newOrientation
}
/**
* This method looks at the window in which the app resides,
* and determines if it is large, while making sure not to be affected
* by configuration changes(such as screen rotation),
* as the device display metrics can be affected as well.
*
* It could be used as an approximation of the type of device(as is the case here),
* though one ought to be careful about multi-window situations.
*/
@Composable
fun windowIsLarge(
isInLandscapeMode: Boolean,
windowSize: WindowSizeClass,
): Boolean =
remember(windowSize) {
if (isInLandscapeMode) {
when (windowSize.windowHeightSizeClass) {
WindowHeightSizeClass.COMPACT -> false
WindowHeightSizeClass.MEDIUM -> true
WindowHeightSizeClass.EXPANDED -> true
else -> true
}
} else {
when (windowSize.windowWidthSizeClass) {
WindowWidthSizeClass.EXPANDED -> true
WindowWidthSizeClass.MEDIUM -> true
WindowWidthSizeClass.COMPACT -> false
else -> true
}
}
}
}
@@ -18,6 +18,8 @@
* AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
* WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
*/
@file:Suppress("DEPRECATION")
package com.vitorpamplona.amethyst.ui.note.types
import androidx.compose.foundation.clickable
@@ -18,6 +18,8 @@
* AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
* WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
*/
@file:Suppress("DEPRECATION")
package com.vitorpamplona.amethyst.ui.screen.loggedIn.profile.conversations.dal
import com.vitorpamplona.amethyst.model.Account
@@ -18,6 +18,8 @@
* AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
* WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
*/
@file:Suppress("DEPRECATION")
package com.vitorpamplona.amethyst.ui.screen.loggedIn.profile.datasource
import com.vitorpamplona.amethyst.model.LocalCache
@@ -169,18 +169,17 @@ fun GalleryContentView(
accountViewModel: AccountViewModel,
) {
AutoNonlazyGrid(contentList.size, modifier = Modifier.fillMaxSize()) { contentIndex ->
when (val content = contentList[contentIndex]) {
is MediaUrlContent -> {
val sensitivityReason =
when (content) {
is MediaUrlVideo -> content.contentWarning
is MediaUrlImage -> content.contentWarning
else -> null
}
SensitivityWarning(sensitivityReason, accountViewModel) {
UrlImageView(content, accountViewModel)
}
val content = contentList[contentIndex]
val sensitivityReason =
when (content) {
is MediaUrlVideo -> content.contentWarning
is MediaUrlImage -> content.contentWarning
else -> null
}
SensitivityWarning(sensitivityReason, accountViewModel) {
UrlImageView(content, accountViewModel)
}
}
}
@@ -543,6 +543,7 @@ fun RelayInformationBody(
// Active subscriptions + outbox display
// ---------------------------------------------------------------------------
@Suppress("DEPRECATION")
fun kindDisplayName(kind: Int): Int =
when (kind) {
AdvertisedRelayListEvent.KIND -> R.string.kind_outbox_relays
@@ -20,7 +20,6 @@
*/
package com.vitorpamplona.amethyst.ui.screen.loggedIn.settings
import android.R.attr.targetName
import androidx.compose.foundation.clickable
import androidx.compose.foundation.layout.Arrangement
import androidx.compose.foundation.layout.Column
@@ -80,7 +79,6 @@ import com.vitorpamplona.amethyst.ui.theme.Size10dp
import com.vitorpamplona.amethyst.ui.theme.Size20dp
import com.vitorpamplona.amethyst.ui.theme.SpacedBy10dp
import com.vitorpamplona.amethyst.ui.theme.ThemeComparisonRow
import okio.`-DeprecatedOkio`.source
import java.util.Locale as JavaLocale
@Preview(device = "spec:width=2160px,height=2340px,dpi=440")
@@ -39,13 +39,4 @@ class DesktopRelayConnectionManagerTest {
assertTrue(connectedRelays.isEmpty(), "Should have no connected relays on initialization")
assertTrue(availableRelays.isEmpty(), "Should have no available relays on initialization")
}
@Test
fun testRelayConnectionManagerInheritsFromBaseClass() {
val manager = DesktopRelayConnectionManager()
assertTrue(
manager is RelayConnectionManager,
"DesktopRelayConnectionManager should extend RelayConnectionManager",
)
}
}
@@ -56,7 +56,7 @@ actual class LargeCache<K, V> : ICacheOperations<K, V> {
actual fun getOrCreate(
key: K,
builder: (K) -> V,
builder: (key: K) -> V,
): V {
val value = concurrentMap.get(key)
@@ -71,7 +71,7 @@ actual class LargeCache<K, V> : ICacheOperations<K, V> {
actual fun createIfAbsent(
key: K,
builder: (K) -> V,
builder: (key: K) -> V,
): Boolean =
runBlocking {
val value = concurrentMap.get(key)
@@ -65,7 +65,7 @@ actual class LargeCache<K, V> : ICacheOperations<K, V> {
actual fun getOrCreate(
key: K,
builder: (K) -> V,
builder: (key: K) -> V,
): V {
val existing = get(key)
if (existing != null) return existing
@@ -76,7 +76,7 @@ actual class LargeCache<K, V> : ICacheOperations<K, V> {
actual fun createIfAbsent(
key: K,
builder: (K) -> V,
builder: (key: K) -> V,
): Boolean {
val existing = get(key)
if (existing != null) return false