feat(fs): cross platform approach to get file name from filepath - #2421
Closed
VulnX wants to merge 8 commits into
Closed
feat(fs): cross platform approach to get file name from filepath#2421VulnX wants to merge 8 commits into
VulnX wants to merge 8 commits into
Conversation
Contributor
Package Changes Through fba537eThere are 2 changes which include log with minor, log-js with minor Planned Package VersionsThe following package releases are the planned based on the context of changes in this pull request.
Add another change file through the GitHub UI by following this link. Read about change files or the docs at github.com/jbolda/covector |
lucasfernog
added a commit
to tauri-apps/tauri
that referenced
this pull request
Mar 17, 2025
This PR adds a new Android path plugin function to resolve file names from content URIs. `PathResolver::file_name` was added to expose this API on Rust, and the existing `@tauri-apps/api/path` basename and extname function now leverages it on Android. Closes tauri-apps/plugins-workspace#1775 Tauri core port from tauri-apps/plugins-workspace#2421 Co-authored-by: VulnX
Member
|
tested it and it works great! I think we should add this to the path plugin though, which is why i opened tauri-apps/tauri#13012 and marked you as author (did I do it correctly???) |
lucasfernog
added a commit
to tauri-apps/tauri
that referenced
this pull request
Mar 18, 2025
* feat(core): resolve file names from Android content URIs This PR adds a new Android path plugin function to resolve file names from content URIs. `PathResolver::file_name` was added to expose this API on Rust, and the existing `@tauri-apps/api/path` basename and extname function now leverages it on Android. Closes tauri-apps/plugins-workspace#1775 Tauri core port from tauri-apps/plugins-workspace#2421 Co-authored-by: VulnX * update change file [skip ci] Co-authored-by: VulnX <62636727+VulnX@users.noreply.github.com> --------- Co-authored-by: VulnX <62636727+VulnX@users.noreply.github.com>
Member
|
this has been merged to the path plugin, thanks! will be released soon |
Author
|
thank you! |
kandrelczyk
pushed a commit
to kandrelczyk/tauri
that referenced
this pull request
Apr 7, 2025
…13012) * feat(core): resolve file names from Android content URIs This PR adds a new Android path plugin function to resolve file names from content URIs. `PathResolver::file_name` was added to expose this API on Rust, and the existing `@tauri-apps/api/path` basename and extname function now leverages it on Android. Closes tauri-apps/plugins-workspace#1775 Tauri core port from tauri-apps/plugins-workspace#2421 Co-authored-by: VulnX * update change file [skip ci] Co-authored-by: VulnX <62636727+VulnX@users.noreply.github.com> --------- Co-authored-by: VulnX <62636727+VulnX@users.noreply.github.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Closes #1775
Reason
On desktop platforms, obtaining the file name from a file path is straightforward, as it is directly embedded in the path's last part. However, on Android, the situation differs. When a file is opened via the dialog plugin (see note here), a content URI is returned instead of a file path. To extract the actual file name from this URI, Android-specific APIs must be accessed via Kotlin.
Changes
A new
fileName()function has been added to the guest JS API. This function internally calls thefile_name()command, which acts as a thin wrapper around platform-specific implementations of theFsstruct defined inmobile.rsanddesktop.rs.For Android, the file name is resolved by querying the content URI with
contentResolver.query, specifically retrieving theOpenableColumns.DISPLAY_NAMEcolumn to extract the file name.This change enables Tauri's file system plugin to correctly retrieve file names from any path.