Implement missig SDK method
This commit is contained in:
parent
93f55e84d1
commit
80b1c2eb49
@ -7,7 +7,7 @@ minSdk = "26"
|
||||
compileSdk = "34"
|
||||
targetSdk = "35"
|
||||
|
||||
pluginSdk = "2.0.0"
|
||||
pluginSdk = "2.0.1"
|
||||
|
||||
gradle = "8.1.2"
|
||||
android-gradle-plugin = "8.2.2"
|
||||
|
||||
@ -1,10 +1,13 @@
|
||||
package de.mm20.launcher2.sdk.files
|
||||
|
||||
import android.database.Cursor
|
||||
import android.net.Uri
|
||||
import android.os.Bundle
|
||||
import de.mm20.launcher2.plugin.PluginType
|
||||
import de.mm20.launcher2.plugin.config.QueryPluginConfig
|
||||
import de.mm20.launcher2.plugin.contracts.FilePluginContract.FileColumns
|
||||
import de.mm20.launcher2.plugin.data.buildCursor
|
||||
import de.mm20.launcher2.plugin.data.get
|
||||
import de.mm20.launcher2.sdk.base.StringPluginProvider
|
||||
|
||||
abstract class FileProvider(
|
||||
@ -38,4 +41,37 @@ abstract class FileProvider(
|
||||
put(FileColumns.MetaAppPackageName, it.metadata.appPackageName)
|
||||
}
|
||||
}
|
||||
|
||||
override fun Bundle.toResult(): File? {
|
||||
return File(
|
||||
id = get(FileColumns.Id) ?: return null,
|
||||
displayName = get(FileColumns.DisplayName) ?: return null,
|
||||
mimeType = get(FileColumns.MimeType) ?: return null,
|
||||
size = get(FileColumns.Size) ?: 0L,
|
||||
path = get(FileColumns.Path) ?: "",
|
||||
uri = get(FileColumns.ContentUri)?.let { Uri.parse(it) } ?: return null,
|
||||
thumbnailUri = get(FileColumns.ThumbnailUri)?.let { Uri.parse(it) },
|
||||
isDirectory = get(FileColumns.IsDirectory) == false,
|
||||
owner = get(FileColumns.Owner),
|
||||
metadata = FileMetadata(
|
||||
title = get(FileColumns.MetaTitle),
|
||||
artist = get(FileColumns.MetaArtist),
|
||||
album = get(FileColumns.MetaAlbum),
|
||||
duration = get(FileColumns.MetaDuration),
|
||||
year = get(FileColumns.MetaYear),
|
||||
dimensions = run {
|
||||
val width = get(FileColumns.MetaWidth)
|
||||
val height = get(FileColumns.MetaHeight)
|
||||
if (width != null && height != null) {
|
||||
FileDimensions(width, height)
|
||||
} else {
|
||||
null
|
||||
}
|
||||
},
|
||||
location = get(FileColumns.MetaLocation),
|
||||
appName = get(FileColumns.MetaAppName),
|
||||
appPackageName = get(FileColumns.MetaAppPackageName),
|
||||
),
|
||||
)
|
||||
}
|
||||
}
|
||||
Loading…
x
Reference in New Issue
Block a user