Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .github/workflows/release.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -267,3 +267,4 @@ jobs:
uses: sarisia/actions-status-discord@eb045afee445dc055c18d3d90bd0f244fd062708 # v1.16.0
with:
webhook: ${{ secrets.DISCORD_WEBHOOK }}
description: ${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}
36 changes: 19 additions & 17 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,9 +1,10 @@
[![GitHub Downloads](https://img.shields.io/github/downloads/cssnr/zipline-android/total?logo=android)](https://github.com/cssnr/zipline-android/releases/latest/download/app-release.apk)
[![GitHub Release Version](https://img.shields.io/github/v/release/cssnr/zipline-android?logo=github&label=latest)](https://github.com/cssnr/zipline-android/releases/latest)
[![APK Size](https://badges.cssnr.com/gh/release/cssnr/zipline-android/latest/asset/app-release.apk/size?label=apk&color=darkgreen)](https://github.com/cssnr/zipline-android/releases/latest/download/app-release.apk)
[![AGP Version](https://img.shields.io/badge/dynamic/toml?url=https%3A%2F%2Fraw.githubusercontent.com%2Fcssnr%2Fzipline-android%2Frefs%2Fheads%2Fmaster%2Fgradle%2Flibs.versions.toml&query=%24.versions.agp&logo=gradle&label=gradle)](https://github.com/cssnr/zipline-android/blob/master/gradle/libs.versions.toml#L2)
[![Workflow Lint](https://img.shields.io/github/actions/workflow/status/cssnr/zipline-android/lint.yaml?logo=norton&logoColor=white&label=lint)](https://github.com/cssnr/zipline-android/actions/workflows/lint.yaml)
[![Workflow Release](https://img.shields.io/github/actions/workflow/status/cssnr/zipline-android/release.yaml?logo=norton&logoColor=white&label=release)](https://github.com/cssnr/zipline-android/actions/workflows/release.yaml)
[![AGP Version](https://img.shields.io/badge/dynamic/toml?logo=gradle&label=agp&query=%24.versions.agp&url=https%3A%2F%2Fraw.githubusercontent.com%2Fcssnr%2Fzipline-android%2Frefs%2Fheads%2Fmaster%2Fgradle%2Flibs.versions.toml)](https://github.com/cssnr/zipline-android/blob/master/gradle/libs.versions.toml#L2)
[![GitHub Docs Last Commit](https://img.shields.io/github/last-commit/cssnr/zipline-android-docs?logo=vitepress&logoColor=white&label=docs)](https://zipline-android.cssnr.com/)
[![GitHub Docs Last Commit](https://img.shields.io/github/last-commit/cssnr/zipline-android-docs?logo=vitepress&logoColor=white&label=docs)](https://github.com/cssnr/zipline-android-docs)
[![GitHub Last Commit](https://img.shields.io/github/last-commit/cssnr/zipline-android?logo=listenhub&label=updated)](https://github.com/cssnr/zipline-android/pulse)
[![GitHub Repo Size](https://img.shields.io/github/repo-size/cssnr/zipline-android?logo=buffer&label=repo%20size)](https://github.com/cssnr/zipline-android?tab=readme-ov-file#readme)
[![GitHub Top Language](https://img.shields.io/github/languages/top/cssnr/zipline-android?logo=devbox)](https://github.com/cssnr/zipline-android?tab=readme-ov-file#readme)
Expand Down Expand Up @@ -64,8 +65,8 @@ _We are also developing a browser addon for all major browsers including Firefox

</details>

[![Latest Release](https://img.shields.io/github/v/release/cssnr/zipline-android?style=for-the-badge&logo=github&label=latest%20release)](https://github.com/cssnr/zipline-android/releases/latest)
[![Latest Pre-Release](https://img.shields.io/github/v/release/cssnr/zipline-android?style=for-the-badge&logo=github&include_prereleases&label=pre-release)](https://github.com/cssnr/zipline-android/releases)
[![Latest Release](https://img.shields.io/github/v/release/cssnr/zipline-android?style=for-the-badge&logo=github&label=latest%20release&color=34A853)](https://github.com/cssnr/zipline-android/releases/latest)
[![Latest Pre-Release](https://img.shields.io/github/v/release/cssnr/zipline-android?style=for-the-badge&logo=github&include_prereleases&label=pre-release&color=blue)](https://github.com/cssnr/zipline-android/releases)

_Note: If installing directly, you may need to allow installation of apps from unknown sources.
For more information, see [Release through a website](https://developer.android.com/studio/publish#publishing-website)._
Expand Down Expand Up @@ -151,7 +152,7 @@ The User Page can be used to edit your profile, avatar, and execute server actio

If you are having trouble using the app, support is available via [GitHub](#support) or [Discord](https://discord.gg/wXy6m2X8wY).

[![View Documentation](https://img.shields.io/badge/view_documentation-blue?style=for-the-badge&logo=googledocs&logoColor=white)](https://zipline-android.cssnr.com/faq)
[![View Documentation](https://img.shields.io/badge/view_documentation-blue?style=for-the-badge&logo=quicklook)](https://zipline-android.cssnr.com/faq)

## Screenshots

Expand Down Expand Up @@ -196,18 +197,19 @@ A slideshow is available [on the website](https://zipline-android.cssnr.com/guid

## Support

[![View Documentation](https://img.shields.io/badge/view_documentation-blue?style=for-the-badge&logo=googledocs&logoColor=white)](https://zipline-android.cssnr.com/support)
[![View Documentation](https://img.shields.io/badge/view_documentation-blue?style=for-the-badge&logo=quicklook)](https://zipline-android.cssnr.com/support)

For general help or to request a feature, see:
If you run into any issues or need help getting started, please do one of the following:

- Q&A Discussion: https://github.com/cssnr/zipline-android/discussions/categories/q-a
- Request a Feature: https://github.com/cssnr/zipline-android/discussions/categories/feature-requests
- Report an Issue: <https://github.com/cssnr/zipline-android/issues>
- Q&A Discussion: <https://github.com/cssnr/zipline-android/discussions/categories/q-a>
- Request a Feature: <https://github.com/cssnr/zipline-android/issues/new?template=1-feature.yaml>
- Chat with us on Discord: <https://discord.gg/wXy6m2X8wY>

If you are experiencing an issue/bug or getting unexpected results, you can:

- Report an Issue: https://github.com/cssnr/zipline-android/issues
- Chat with us on Discord: https://discord.gg/wXy6m2X8wY
- Provide General Feedback: [https://cssnr.github.io/feedback/](https://cssnr.github.io/feedback/?app=Zipline%20Android%20App)
[![Features](https://img.shields.io/badge/features-brightgreen?style=for-the-badge&logo=rocket&logoColor=white)](https://github.com/cssnr/zipline-android/issues/new?template=1-feature.yaml)
[![Issues](https://img.shields.io/badge/issues-red?style=for-the-badge&logo=southwestairlines&logoColor=white)](https://github.com/cssnr/zipline-android/issues)
[![Discussions](https://img.shields.io/badge/discussions-blue?style=for-the-badge&logo=livechat&logoColor=white)](https://github.com/cssnr/zipline-android/discussions)
[![Discord](https://img.shields.io/badge/discord-5865F2?style=for-the-badge&logo=discord&logoColor=white)](https://discord.gg/wXy6m2X8wY)

# Development

Expand Down Expand Up @@ -344,8 +346,8 @@ For a full list of current projects visit: [https://cssnr.github.io/](https://cs

<a href="https://github.com/cssnr/zipline-android/stargazers">
<picture>
<source media="(prefers-color-scheme: dark)" srcset="https://api.star-history.com/svg?repos=cssnr/zipline-android&type=date&legend=bottom-right&theme=dark" />
<source media="(prefers-color-scheme: light)" srcset="https://api.star-history.com/svg?repos=cssnr/zipline-android&type=date&legend=bottom-right" />
<img alt="Star History Chart" src="https://api.star-history.com/svg?repos=cssnr/zipline-android&type=date&legend=bottom-right" />
<source media="(prefers-color-scheme: dark)" srcset="https://api.star-history.com/svg?repos=cssnr/zipline-android%2Ccssnr/zipline-extension%2Ccssnr/zipline-cli&type=date&legend=top-left&theme=dark" />
<source media="(prefers-color-scheme: light)" srcset="https://api.star-history.com/svg?repos=cssnr/zipline-android%2Ccssnr/zipline-extension%2Ccssnr/zipline-cli&type=date&legend=top-left" />
<img alt="Star History Chart" src="https://api.star-history.com/svg?repos=cssnr/zipline-android%2Ccssnr/zipline-extension%2Ccssnr/zipline-cli&type=date&legend=top-left" />
</picture>
</a>
4 changes: 2 additions & 2 deletions Taskfile.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,8 +13,8 @@ tasks:
format:
desc: Format
aliases: [fmt]
cmd: |
prettier --write .
cmds:
- prettier --write .

build:
desc: Build (recommended android studio)
Expand Down
6 changes: 2 additions & 4 deletions app/src/main/java/org/cssnr/zipline/MainActivity.kt
Original file line number Diff line number Diff line change
Expand Up @@ -231,10 +231,8 @@ class MainActivity : AppCompatActivity() {
// Update Header Image
val headerImage = headerView.findViewById<ShapeableImageView>(R.id.header_image)
val radius = resources.getDimension(R.dimen.avatar_radius)
headerImage.setShapeAppearanceModel(
headerImage.shapeAppearanceModel.toBuilder()
.setAllCorners(CornerFamily.ROUNDED, radius).build()
)
headerImage.shapeAppearanceModel = headerImage.shapeAppearanceModel.toBuilder()
.setAllCorners(CornerFamily.ROUNDED, radius).build()
val file = File(filesDir, "avatar.png")
if (file.exists()) {
Log.i(LOG_TAG, "GLIDE LOAD - MainActivity - file.name: ${file.name}")
Expand Down
2 changes: 1 addition & 1 deletion app/src/main/java/org/cssnr/zipline/api/ServerApi.kt
Original file line number Diff line number Diff line change
Expand Up @@ -820,7 +820,7 @@ class ServerApi(private val context: Context, url: String? = null) {
@JsonClass(generateAdapter = true)
data class StatusResponse(val status: String)

inner class SimpleCookieJar : CookieJar {
class SimpleCookieJar : CookieJar {
private val cookieStore = mutableMapOf<String, List<Cookie>>()

override fun saveFromResponse(url: HttpUrl, cookies: List<Cookie>) {
Expand Down
10 changes: 4 additions & 6 deletions app/src/main/java/org/cssnr/zipline/ui/files/FilesBottomSheet.kt
Original file line number Diff line number Diff line change
Expand Up @@ -70,12 +70,10 @@ class FilesBottomSheet : BottomSheetDialogFragment() {
val ctx = requireContext()

val radius = ctx.resources.getDimension(R.dimen.image_preview_large)
binding.imagePreview.setShapeAppearanceModel(
binding.imagePreview.shapeAppearanceModel
.toBuilder()
.setAllCorners(CornerFamily.ROUNDED, radius)
.build()
)
binding.imagePreview.shapeAppearanceModel = binding.imagePreview.shapeAppearanceModel
.toBuilder()
.setAllCorners(CornerFamily.ROUNDED, radius)
.build()

viewModel.activeFile.observe(viewLifecycleOwner) { file ->
Log.i("activeFile.observe", "file: $file")
Expand Down
10 changes: 4 additions & 6 deletions app/src/main/java/org/cssnr/zipline/ui/files/FilesViewAdapter.kt
Original file line number Diff line number Diff line change
Expand Up @@ -154,12 +154,10 @@ class FilesViewAdapter(

// Image - Holder
val radius = context.resources.getDimension(R.dimen.image_preview_small)
viewHolder.fileImage.setShapeAppearanceModel(
viewHolder.fileImage.shapeAppearanceModel
.toBuilder()
.setAllCorners(CornerFamily.ROUNDED, radius)
.build()
)
viewHolder.fileImage.shapeAppearanceModel = viewHolder.fileImage.shapeAppearanceModel
.toBuilder()
.setAllCorners(CornerFamily.ROUNDED, radius)
.build()

// Image - Glide Listener
val glideListener = object : RequestListener<Drawable> {
Expand Down
4 changes: 0 additions & 4 deletions app/src/main/java/org/cssnr/zipline/ui/home/HomeFragment.kt
Original file line number Diff line number Diff line change
Expand Up @@ -19,13 +19,9 @@ import android.webkit.WebView
import android.webkit.WebViewClient
import androidx.activity.OnBackPressedCallback
import androidx.activity.result.contract.ActivityResultContracts
import androidx.core.content.edit
import androidx.core.net.toUri
import androidx.core.os.bundleOf
import androidx.fragment.app.Fragment
import androidx.fragment.app.activityViewModels
import androidx.navigation.NavOptions
import androidx.navigation.fragment.findNavController
import androidx.preference.PreferenceManager
import org.cssnr.zipline.R
import org.cssnr.zipline.databinding.FragmentHomeBinding
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ class HomeViewModel : ViewModel() {
_urlToLoad.value = Event(url)
}

inner class Event<out T>(private val content: T) {
class Event<out T>(private val content: T) {
private var hasBeenHandled = false

fun getContentIfNotHandled(): T? {
Expand Down
6 changes: 2 additions & 4 deletions app/src/main/java/org/cssnr/zipline/ui/setup/SetupFragment.kt
Original file line number Diff line number Diff line change
Expand Up @@ -108,10 +108,8 @@ class SetupFragment : Fragment() {
binding.appVersion.text = getString(R.string.version_string, versionName)

val radius = ctx.resources.getDimension(R.dimen.avatar_radius)
binding.appIcon.setShapeAppearanceModel(
binding.appIcon.shapeAppearanceModel.toBuilder()
.setAllCorners(CornerFamily.ROUNDED, radius).build()
)
binding.appIcon.shapeAppearanceModel = binding.appIcon.shapeAppearanceModel.toBuilder()
.setAllCorners(CornerFamily.ROUNDED, radius).build()

val avatarFile = File(ctx.filesDir, "avatar.png")
Log.d(UserFragment.LOG_TAG, "avatarFile: $avatarFile")
Expand Down
6 changes: 2 additions & 4 deletions app/src/main/java/org/cssnr/zipline/ui/user/UserFragment.kt
Original file line number Diff line number Diff line change
Expand Up @@ -202,10 +202,8 @@ class UserFragment : Fragment() {
//}

val radius = ctx.resources.getDimension(R.dimen.avatar_radius)
binding.appIcon.setShapeAppearanceModel(
binding.appIcon.shapeAppearanceModel.toBuilder()
.setAllCorners(CornerFamily.ROUNDED, radius).build()
)
binding.appIcon.shapeAppearanceModel = binding.appIcon.shapeAppearanceModel.toBuilder()
.setAllCorners(CornerFamily.ROUNDED, radius).build()

val avatarFile = File(ctx.filesDir, "avatar.png")
Log.d(LOG_TAG, "avatarFile: $avatarFile")
Expand Down
13 changes: 13 additions & 0 deletions gradle/gradle-daemon-jvm.properties
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
#This file is generated by updateDaemonJvm
toolchainUrl.FREE_BSD.AARCH64=https\://api.foojay.io/disco/v3.0/ids/29ee363f71d060405f729a8f1b7f7aef/redirect
toolchainUrl.FREE_BSD.X86_64=https\://api.foojay.io/disco/v3.0/ids/ecd23fd7707c683afbcd6052998cb6a9/redirect
toolchainUrl.LINUX.AARCH64=https\://api.foojay.io/disco/v3.0/ids/29ee363f71d060405f729a8f1b7f7aef/redirect
toolchainUrl.LINUX.X86_64=https\://api.foojay.io/disco/v3.0/ids/ecd23fd7707c683afbcd6052998cb6a9/redirect
toolchainUrl.MAC_OS.AARCH64=https\://api.foojay.io/disco/v3.0/ids/10fc3bf1ee0001078a473afe6e43cfdb/redirect
toolchainUrl.MAC_OS.X86_64=https\://api.foojay.io/disco/v3.0/ids/9c55677aff3966382f3d853c0959bfb2/redirect
toolchainUrl.UNIX.AARCH64=https\://api.foojay.io/disco/v3.0/ids/29ee363f71d060405f729a8f1b7f7aef/redirect
toolchainUrl.UNIX.X86_64=https\://api.foojay.io/disco/v3.0/ids/ecd23fd7707c683afbcd6052998cb6a9/redirect
toolchainUrl.WINDOWS.AARCH64=https\://api.foojay.io/disco/v3.0/ids/248ffb1098f61659502d0c09aa348294/redirect
toolchainUrl.WINDOWS.X86_64=https\://api.foojay.io/disco/v3.0/ids/ac151d55def6b6a9a159dc4cb4642851/redirect
toolchainVendor=JETBRAINS
toolchainVersion=21
8 changes: 4 additions & 4 deletions gradle/libs.versions.toml
Original file line number Diff line number Diff line change
Expand Up @@ -21,10 +21,6 @@ webkit = "1.15.0"
room = "2.8.4"
media3 = "1.9.2"

googleServices = "4.4.4"
firebaseBom = "34.9.0"
crashlyticsPlugin = "3.0.6"

okhttp = "5.3.2"
retrofit = "3.0.0"
moshiKotlinCodegen = "1.15.2"
Expand All @@ -34,6 +30,10 @@ konfettiXml = "2.0.5"
photoview = "1.0.3"
androidImageCropper = "4.7.0"

googleServices = "4.4.4"
firebaseBom = "34.9.0"
crashlyticsPlugin = "3.0.6"

[libraries]
androidx-core-ktx = { group = "androidx.core", name = "core-ktx", version.ref = "coreKtx" }
junit = { group = "junit", name = "junit", version.ref = "junit" }
Expand Down
2 changes: 1 addition & 1 deletion gradle/wrapper/gradle-wrapper.properties
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
#Mon Apr 07 23:08:29 PDT 2025
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-9.2.1-bin.zip
distributionUrl=https\://services.gradle.org/distributions/gradle-9.3.1-bin.zip
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
5 changes: 5 additions & 0 deletions settings.gradle.kts
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
@file:Suppress("UnstableApiUsage")

pluginManagement {
repositories {
google {
Expand All @@ -11,6 +13,9 @@ pluginManagement {
gradlePluginPortal()
}
}
plugins {
id("org.gradle.toolchains.foojay-resolver-convention") version "1.0.0"
}
dependencyResolutionManagement {
repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
repositories {
Expand Down
Loading