Skip to content

Commit 6f92d4c

Browse files
committed
Merge branch 'develop'
2 parents 5286bcd + ffd714c commit 6f92d4c

File tree

264 files changed

+51153
-2656
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

264 files changed

+51153
-2656
lines changed

.github/FUNDING.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
github: PartyDonut
2+
buy_me_a_coffee: jopknaapen

.github/workflows/build.yml

Lines changed: 22 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -744,25 +744,25 @@ jobs:
744744
publish_dir: ./build/web
745745

746746
# Winget package submission
747-
winget-package-submit:
748-
runs-on: ubuntu-latest
749-
needs: [check-trigger, create_release]
750-
strategy:
751-
matrix:
752-
include:
753-
- build_type: release
754-
identifier: DonutWare.Fladder
755-
max_versions: "0"
756-
- build_type: nightly
757-
identifier: DonutWare.Fladder.Nightly
758-
max_versions: "1"
759-
steps:
760-
- name: Submit to Winget (${{ matrix.build_type }})
761-
if: needs.check-trigger.outputs.build_type == matrix.build_type
762-
uses: vedantmgoyal9/winget-releaser@19e706d4c9121098010096f9c495a70a7518b30f
763-
with:
764-
identifier: ${{ matrix.identifier }}
765-
installers-regex: 'Fladder-Windows-.*-Setup\.exe$'
766-
token: ${{ secrets.WINGET_TOKEN }}
767-
max-versions-to-keep: ${{ matrix.max_versions || '' }}
768-
release-tag: ${{ matrix.build_type == 'nightly' && env.NIGHTLY_TAG || github.ref_name }}
747+
# winget-package-submit:
748+
# runs-on: ubuntu-latest
749+
# needs: [check-trigger, create_release]
750+
# strategy:
751+
# matrix:
752+
# include:
753+
# - build_type: release
754+
# identifier: DonutWare.Fladder
755+
# max_versions: "0"
756+
# - build_type: nightly
757+
# identifier: DonutWare.Fladder.Nightly
758+
# max_versions: "1"
759+
# steps:
760+
# - name: Submit to Winget (${{ matrix.build_type }})
761+
# if: needs.check-trigger.outputs.build_type == matrix.build_type
762+
# uses: vedantmgoyal9/winget-releaser@19e706d4c9121098010096f9c495a70a7518b30f
763+
# with:
764+
# identifier: ${{ matrix.identifier }}
765+
# installers-regex: 'Fladder-Windows-.*-Setup\.exe$'
766+
# token: ${{ secrets.WINGET_TOKEN }}
767+
# max-versions-to-keep: ${{ matrix.max_versions || '' }}
768+
# release-tag: ${{ matrix.build_type == 'nightly' && env.NIGHTLY_TAG || github.ref_name }}

.vscode/settings.json

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,9 @@
55
"Jellyfin",
66
"LTRB",
77
"LTWH",
8-
"outro"
8+
"outro",
9+
"seerr",
10+
"Seerr"
911
],
1012
"dart.flutterSdkPath": ".fvm/versions/3.35.1",
1113
"search.exclude": {

README.md

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -101,7 +101,6 @@ Web/Desktop [try out the web build!](https://DonutWare.github.io/Fladder)
101101
## Planned Features
102102

103103
* Music playback
104-
* Server management
105104
* And more???
106105

107106
## Download

android/app/build.gradle

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -110,13 +110,13 @@ flutter {
110110
}
111111

112112
dependencies {
113-
def composeBom = platform('androidx.compose:compose-bom:2025.09.01')
113+
def composeBom = platform('androidx.compose:compose-bom:2025.12.00')
114114
implementation composeBom
115115
androidTestImplementation composeBom
116116
implementation('androidx.compose.material3:material3')
117117
implementation('androidx.compose.ui:ui-tooling-preview')
118118
debugImplementation('androidx.compose.ui:ui-tooling')
119-
implementation('androidx.activity:activity-compose:1.11.0')
119+
implementation('androidx.activity:activity-compose:1.12.1')
120120

121121
// Media3 (ExoPlayer)
122122
def media3_version = "1.8.0+1"
@@ -127,11 +127,11 @@ dependencies {
127127
implementation("androidx.media3:media3-exoplayer-dash:$media3_version")
128128
implementation("androidx.media3:media3-exoplayer-hls:$media3_version")
129129
implementation("org.jellyfin.media3:media3-ffmpeg-decoder:$media3_version")
130-
implementation("io.github.peerless2012:ass-media:0.3.0-rc03")
130+
implementation("io.github.peerless2012:ass-media:0.3.0")
131131

132132
//UI
133-
implementation("io.github.rabehx:iconsax-compose:0.0.4")
133+
implementation("io.github.rabehx:iconsax-compose:0.0.5")
134134
implementation("io.coil-kt.coil3:coil-compose:3.3.0")
135135
implementation("io.coil-kt.coil3:coil-network-okhttp:3.3.0")
136-
implementation("com.materialkolor:material-kolor:3.0.1")
136+
implementation("com.materialkolor:material-kolor:4.0.5")
137137
}

android/app/src/debug/AndroidManifest.xml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,4 +4,9 @@
44
to allow setting breakpoints, to provide hot reload, etc.
55
-->
66
<uses-permission android:name="android.permission.INTERNET"/>
7+
8+
<!-- Used for testing android tv on macos where impeller crashes the emulator -->
9+
<!-- <application>
10+
<meta-data android:name="io.flutter.embedding.android.EnableImpeller" android:value="false" />
11+
</application> -->
712
</manifest>

android/app/src/main/kotlin/nl/jknaapen/fladder/VideoPlayerActivity.kt

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,10 @@ fun VideoPlayerScreen(
5454
val leanBackEnabled = leanBackEnabled(LocalContext.current)
5555
ScreenSaver {
5656
ExoPlayer { player ->
57-
ScaledContent(if (leanBackEnabled) 0.6f else 1f) {
57+
ScaledContent(
58+
scale = if (leanBackEnabled) 0.75f else 1f,
59+
fontScale = if(leanBackEnabled) 1.2f else 1f,
60+
) {
5861
CustomVideoControls(player)
5962
}
6063
}

android/app/src/main/kotlin/nl/jknaapen/fladder/api/PlayerSettingsHelper.g.kt

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -137,7 +137,8 @@ enum class SegmentType(val raw: Int) {
137137
enum class SegmentSkip(val raw: Int) {
138138
ASK(0),
139139
SKIP(1),
140-
NONE(2);
140+
SKIP_ONCE(2),
141+
NONE(3);
141142

142143
companion object {
143144
fun ofRaw(raw: Int): SegmentSkip? {

android/app/src/main/kotlin/nl/jknaapen/fladder/composables/controls/ItemHeader.kt

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@ import androidx.compose.ui.Alignment
1212
import androidx.compose.ui.Modifier
1313
import androidx.compose.ui.graphics.Color
1414
import androidx.compose.ui.text.font.FontWeight
15+
import androidx.compose.ui.text.style.TextOverflow
1516
import coil3.compose.AsyncImage
1617

1718
@Composable
@@ -44,7 +45,9 @@ fun ItemHeader(
4445
style = MaterialTheme.typography.headlineMedium.copy(
4546
color = Color.White,
4647
fontWeight = FontWeight.Bold
47-
)
48+
),
49+
maxLines = 1,
50+
overflow = TextOverflow.Ellipsis,
4851
)
4952
}
5053
}

android/app/src/main/kotlin/nl/jknaapen/fladder/composables/controls/ProgressBar.kt

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -64,6 +64,7 @@ import androidx.compose.ui.layout.onGloballyPositioned
6464
import androidx.compose.ui.platform.LocalDensity
6565
import androidx.compose.ui.text.font.FontWeight
6666
import androidx.compose.ui.text.style.TextAlign
67+
import androidx.compose.ui.text.style.TextOverflow
6768
import androidx.compose.ui.unit.dp
6869
import androidx.compose.ui.util.fastCoerceIn
6970
import androidx.media3.exoplayer.ExoPlayer
@@ -143,12 +144,13 @@ internal fun ProgressBar(
143144
color = Color.White,
144145
fontWeight = FontWeight.Bold
145146
),
147+
modifier = Modifier.weight(1f),
148+
maxLines = 1,
149+
overflow = TextOverflow.Ellipsis
146150
)
147151
}
148152
}
149153

150-
Spacer(modifier = Modifier.weight(1f))
151-
152154
Videolabel(playableData?.mediaInfo?.playbackType?.name?.capitalize)
153155
Videolabel(playableData?.mediaInfo?.videoInformation)
154156
}

0 commit comments

Comments
 (0)