Implement missig SDK method
This commit is contained in:
parent
93f55e84d1
commit
80b1c2eb49
@ -7,7 +7,7 @@ minSdk = "26"
|
|||||||
compileSdk = "34"
|
compileSdk = "34"
|
||||||
targetSdk = "35"
|
targetSdk = "35"
|
||||||
|
|
||||||
pluginSdk = "2.0.0"
|
pluginSdk = "2.0.1"
|
||||||
|
|
||||||
gradle = "8.1.2"
|
gradle = "8.1.2"
|
||||||
android-gradle-plugin = "8.2.2"
|
android-gradle-plugin = "8.2.2"
|
||||||
|
|||||||
@ -1,10 +1,13 @@
|
|||||||
package de.mm20.launcher2.sdk.files
|
package de.mm20.launcher2.sdk.files
|
||||||
|
|
||||||
import android.database.Cursor
|
import android.database.Cursor
|
||||||
|
import android.net.Uri
|
||||||
|
import android.os.Bundle
|
||||||
import de.mm20.launcher2.plugin.PluginType
|
import de.mm20.launcher2.plugin.PluginType
|
||||||
import de.mm20.launcher2.plugin.config.QueryPluginConfig
|
import de.mm20.launcher2.plugin.config.QueryPluginConfig
|
||||||
import de.mm20.launcher2.plugin.contracts.FilePluginContract.FileColumns
|
import de.mm20.launcher2.plugin.contracts.FilePluginContract.FileColumns
|
||||||
import de.mm20.launcher2.plugin.data.buildCursor
|
import de.mm20.launcher2.plugin.data.buildCursor
|
||||||
|
import de.mm20.launcher2.plugin.data.get
|
||||||
import de.mm20.launcher2.sdk.base.StringPluginProvider
|
import de.mm20.launcher2.sdk.base.StringPluginProvider
|
||||||
|
|
||||||
abstract class FileProvider(
|
abstract class FileProvider(
|
||||||
@ -38,4 +41,37 @@ abstract class FileProvider(
|
|||||||
put(FileColumns.MetaAppPackageName, it.metadata.appPackageName)
|
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