Skip to content

Commit

Permalink
[1.118.*] Pre-release merge (#436)
Browse files Browse the repository at this point in the history
  • Loading branch information
tramline-github[bot] authored Apr 10, 2024
2 parents 8d8b45f + 13b8624 commit 522af54
Show file tree
Hide file tree
Showing 21 changed files with 677 additions and 168 deletions.
2 changes: 1 addition & 1 deletion gradle/libs.versions.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[versions]
kotlin = "1.9.23"
android_gradle_plugin = "8.3.1"
android_gradle_plugin = "8.3.2"
compose = "1.6.1"

android_sdk_compile = "34"
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/*
* Copyright 2023 Sasikanth Miriyampalli
* Copyright 2024 Sasikanth Miriyampalli
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
Expand All @@ -13,6 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/

package dev.sasikanth.rss.reader.resources.icons

import androidx.compose.ui.graphics.Color
Expand All @@ -35,8 +36,8 @@ val TwineIcons.Delete: ImageVector
name = "Delete",
defaultWidth = 24.0.dp,
defaultHeight = 24.0.dp,
viewportWidth = 24.0f,
viewportHeight = 24.0f
viewportWidth = 960.0f,
viewportHeight = 960.0f
)
.apply {
path(
Expand All @@ -48,41 +49,45 @@ val TwineIcons.Delete: ImageVector
strokeLineMiter = 4.0f,
pathFillType = NonZero
) {
moveTo(7.0f, 12.0f)
curveTo(7.0f, 12.552f, 7.448f, 13.0f, 8.0f, 13.0f)
horizontalLineTo(16.0f)
curveTo(16.552f, 13.0f, 17.0f, 12.552f, 17.0f, 12.0f)
curveTo(17.0f, 11.448f, 16.552f, 11.0f, 16.0f, 11.0f)
horizontalLineTo(8.0f)
curveTo(7.448f, 11.0f, 7.0f, 11.448f, 7.0f, 12.0f)
moveTo(280.0f, 840.0f)
quadToRelative(-33.0f, 0.0f, -56.5f, -23.5f)
reflectiveQuadTo(200.0f, 760.0f)
verticalLineToRelative(-520.0f)
horizontalLineToRelative(-40.0f)
verticalLineToRelative(-80.0f)
horizontalLineToRelative(200.0f)
verticalLineToRelative(-40.0f)
horizontalLineToRelative(240.0f)
verticalLineToRelative(40.0f)
horizontalLineToRelative(200.0f)
verticalLineToRelative(80.0f)
horizontalLineToRelative(-40.0f)
verticalLineToRelative(520.0f)
quadToRelative(0.0f, 33.0f, -23.5f, 56.5f)
reflectiveQuadTo(680.0f, 840.0f)
lineTo(280.0f, 840.0f)
close()
moveTo(680.0f, 240.0f)
lineTo(280.0f, 240.0f)
verticalLineToRelative(520.0f)
horizontalLineToRelative(400.0f)
verticalLineToRelative(-520.0f)
close()
moveTo(360.0f, 680.0f)
horizontalLineToRelative(80.0f)
verticalLineToRelative(-360.0f)
horizontalLineToRelative(-80.0f)
verticalLineToRelative(360.0f)
close()
moveTo(12.0f, 22.0f)
curveTo(10.617f, 22.0f, 9.317f, 21.737f, 8.1f, 21.212f)
curveTo(6.883f, 20.688f, 5.825f, 19.975f, 4.925f, 19.075f)
curveTo(4.025f, 18.175f, 3.313f, 17.117f, 2.787f, 15.9f)
curveTo(2.263f, 14.683f, 2.0f, 13.383f, 2.0f, 12.0f)
curveTo(2.0f, 10.617f, 2.263f, 9.317f, 2.787f, 8.1f)
curveTo(3.313f, 6.883f, 4.025f, 5.825f, 4.925f, 4.925f)
curveTo(5.825f, 4.025f, 6.883f, 3.313f, 8.1f, 2.788f)
curveTo(9.317f, 2.263f, 10.617f, 2.0f, 12.0f, 2.0f)
curveTo(13.383f, 2.0f, 14.683f, 2.263f, 15.9f, 2.788f)
curveTo(17.117f, 3.313f, 18.175f, 4.025f, 19.075f, 4.925f)
curveTo(19.975f, 5.825f, 20.688f, 6.883f, 21.212f, 8.1f)
curveTo(21.737f, 9.317f, 22.0f, 10.617f, 22.0f, 12.0f)
curveTo(22.0f, 13.383f, 21.737f, 14.683f, 21.212f, 15.9f)
curveTo(20.688f, 17.117f, 19.975f, 18.175f, 19.075f, 19.075f)
curveTo(18.175f, 19.975f, 17.117f, 20.688f, 15.9f, 21.212f)
curveTo(14.683f, 21.737f, 13.383f, 22.0f, 12.0f, 22.0f)
moveTo(520.0f, 680.0f)
horizontalLineToRelative(80.0f)
verticalLineToRelative(-360.0f)
horizontalLineToRelative(-80.0f)
verticalLineToRelative(360.0f)
close()
moveTo(12.0f, 20.0f)
curveTo(14.233f, 20.0f, 16.125f, 19.225f, 17.675f, 17.675f)
curveTo(19.225f, 16.125f, 20.0f, 14.233f, 20.0f, 12.0f)
curveTo(20.0f, 9.767f, 19.225f, 7.875f, 17.675f, 6.325f)
curveTo(16.125f, 4.775f, 14.233f, 4.0f, 12.0f, 4.0f)
curveTo(9.767f, 4.0f, 7.875f, 4.775f, 6.325f, 6.325f)
curveTo(4.775f, 7.875f, 4.0f, 9.767f, 4.0f, 12.0f)
curveTo(4.0f, 14.233f, 4.775f, 16.125f, 6.325f, 17.675f)
curveTo(7.875f, 19.225f, 9.767f, 20.0f, 12.0f, 20.0f)
moveTo(280.0f, 240.0f)
verticalLineToRelative(520.0f)
verticalLineToRelative(-520.0f)
close()
}
}
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,72 @@
/*
* Copyright 2024 Sasikanth Miriyampalli
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/

package dev.sasikanth.rss.reader.resources.icons

import androidx.compose.ui.graphics.Color
import androidx.compose.ui.graphics.PathFillType.Companion.NonZero
import androidx.compose.ui.graphics.SolidColor
import androidx.compose.ui.graphics.StrokeCap.Companion.Butt
import androidx.compose.ui.graphics.StrokeJoin.Companion.Miter
import androidx.compose.ui.graphics.vector.ImageVector
import androidx.compose.ui.graphics.vector.ImageVector.Builder
import androidx.compose.ui.graphics.vector.path
import androidx.compose.ui.unit.dp

val TwineIcons.RadioSelected: ImageVector
get() {
if (radioSelected != null) {
return radioSelected!!
}
radioSelected =
Builder(
name = "RadioSelected",
defaultWidth = 24.0.dp,
defaultHeight = 24.0.dp,
viewportWidth = 24.0f,
viewportHeight = 24.0f
)
.apply {
path(
fill = SolidColor(Color(0xFF75DAA3)),
stroke = null,
strokeLineWidth = 0.0f,
strokeLineCap = Butt,
strokeLineJoin = Miter,
strokeLineMiter = 4.0f,
pathFillType = NonZero
) {
moveTo(10.6f, 16.5998f)
lineTo(17.65f, 9.5498f)
lineTo(16.25f, 8.1498f)
lineTo(10.6f, 13.7998f)
lineTo(7.75f, 10.9498f)
lineTo(6.35f, 12.3498f)
lineTo(10.6f, 16.5998f)
close()
moveTo(12.0f, 21.9998f)
curveTo(6.545f, 21.9998f, 2.0f, 17.4547f, 2.0f, 11.9998f)
curveTo(2.0f, 6.5448f, 6.545f, 1.9998f, 12.0f, 1.9998f)
curveTo(17.455f, 1.9998f, 22.0f, 6.5448f, 22.0f, 11.9998f)
curveTo(22.0f, 17.4547f, 17.455f, 21.9998f, 12.0f, 21.9998f)
close()
}
}
.build()
return radioSelected!!
}

private var radioSelected: ImageVector? = null
Original file line number Diff line number Diff line change
@@ -0,0 +1,70 @@
/*
* Copyright 2024 Sasikanth Miriyampalli
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/

package dev.sasikanth.rss.reader.resources.icons

import androidx.compose.ui.graphics.Color
import androidx.compose.ui.graphics.PathFillType.Companion.EvenOdd
import androidx.compose.ui.graphics.SolidColor
import androidx.compose.ui.graphics.StrokeCap.Companion.Butt
import androidx.compose.ui.graphics.StrokeJoin.Companion.Miter
import androidx.compose.ui.graphics.vector.ImageVector
import androidx.compose.ui.graphics.vector.ImageVector.Builder
import androidx.compose.ui.graphics.vector.path
import androidx.compose.ui.unit.dp

val TwineIcons.RadioUnselected: ImageVector
get() {
if (radioUnselected != null) {
return radioUnselected!!
}
radioUnselected =
Builder(
name = "RadioUnselected",
defaultWidth = 24.0.dp,
defaultHeight = 24.0.dp,
viewportWidth = 24.0f,
viewportHeight = 24.0f
)
.apply {
path(
fill = SolidColor(Color(0xFFDFE4DD)),
stroke = null,
strokeLineWidth = 0.0f,
strokeLineCap = Butt,
strokeLineJoin = Miter,
strokeLineMiter = 4.0f,
pathFillType = EvenOdd
) {
moveTo(12.0f, 20.9998f)
curveTo(16.9706f, 20.9998f, 21.0f, 16.9703f, 21.0f, 11.9998f)
curveTo(21.0f, 7.0292f, 16.9706f, 2.9998f, 12.0f, 2.9998f)
curveTo(7.0294f, 2.9998f, 3.0f, 7.0292f, 3.0f, 11.9998f)
curveTo(3.0f, 16.9703f, 7.0294f, 20.9998f, 12.0f, 20.9998f)
close()
moveTo(12.0f, 19.4998f)
curveTo(16.1421f, 19.4998f, 19.5f, 16.1419f, 19.5f, 11.9998f)
curveTo(19.5f, 7.8576f, 16.1421f, 4.4998f, 12.0f, 4.4998f)
curveTo(7.8579f, 4.4998f, 4.5f, 7.8576f, 4.5f, 11.9998f)
curveTo(4.5f, 16.1419f, 7.8579f, 19.4998f, 12.0f, 19.4998f)
close()
}
}
.build()
return radioUnselected!!
}

private var radioUnselected: ImageVector? = null
Original file line number Diff line number Diff line change
Expand Up @@ -135,5 +135,8 @@ val DeTwineStrings =
feedsSortOldest = "Zuerst hinzugefügt",
feedsSortAlphabetical = "A-Z",
feedsBottomBarNewGroup = "Neue Gruppe",
feedsBottomBarNewFeed = "Neuer Feed"
feedsBottomBarNewFeed = "Neuer Feed",
actionPin = "Anpinnen",
actionUnpin = "Loslösen",
actionDelete = "Löschen"
)
Original file line number Diff line number Diff line change
Expand Up @@ -142,5 +142,8 @@ val EnTwineStrings =
feedsSortOldest = "First added",
feedsSortAlphabetical = "A-Z",
feedsBottomBarNewGroup = "New group",
feedsBottomBarNewFeed = "New feed"
feedsBottomBarNewFeed = "New feed",
actionPin = "Pin",
actionUnpin = "Unpin",
actionDelete = "Delete"
)
Original file line number Diff line number Diff line change
Expand Up @@ -131,5 +131,8 @@ val TrTwineStrings =
feedsSortOldest = "İlk eklenen",
feedsSortAlphabetical = "A-Z",
feedsBottomBarNewGroup = "Yeni Grup",
feedsBottomBarNewFeed = "Yeni besleme"
feedsBottomBarNewFeed = "Yeni besleme",
actionPin = "Sabitle",
actionUnpin = "Sabitlemeyi Kaldır",
actionDelete = "Sil"
)
Original file line number Diff line number Diff line change
Expand Up @@ -128,6 +128,9 @@ data class TwineStrings(
val feedsSortAlphabetical: String,
val feedsBottomBarNewGroup: String,
val feedsBottomBarNewFeed: String,
val actionPin: String,
val actionUnpin: String,
val actionDelete: String,
)

object Locales {
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,74 @@
/*
* Copyright 2024 Sasikanth Miriyampalli
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/

package dev.sasikanth.rss.reader.components

import androidx.compose.foundation.background
import androidx.compose.foundation.layout.Box
import androidx.compose.foundation.layout.Column
import androidx.compose.foundation.layout.WindowInsets
import androidx.compose.foundation.layout.fillMaxWidth
import androidx.compose.foundation.layout.navigationBars
import androidx.compose.foundation.layout.offset
import androidx.compose.foundation.layout.requiredHeight
import androidx.compose.foundation.layout.windowInsetsPadding
import androidx.compose.foundation.shape.RoundedCornerShape
import androidx.compose.runtime.Composable
import androidx.compose.ui.Modifier
import androidx.compose.ui.graphics.Brush
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.input.pointer.pointerInput
import androidx.compose.ui.unit.dp
import dev.sasikanth.rss.reader.ui.AppTheme

@Composable
internal fun BottomBarWithGradientShadow(
modifier: Modifier = Modifier,
content: @Composable () -> Unit
) {
Column(modifier = modifier) {
Box(
Modifier.fillMaxWidth()
.requiredHeight(120.dp)
.offset(y = 24.dp)
.background(
Brush.verticalGradient(
colorStops =
arrayOf(
0f to Color.Transparent,
0.5f to AppTheme.colorScheme.tintedBackground.copy(alpha = 0.5f),
0.8f to AppTheme.colorScheme.tintedBackground
)
)
)
)

Box(
modifier =
Modifier.fillMaxWidth()
.background(
color = AppTheme.colorScheme.tintedSurface,
shape = RoundedCornerShape(topStart = 24.dp, topEnd = 24.dp)
)
.pointerInput(Unit) {
// Consume bottom bar taps
}
.windowInsetsPadding(WindowInsets.navigationBars)
) {
content()
}
}
}
Loading

0 comments on commit 522af54

Please sign in to comment.