Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Unverified Commit d83260d7 authored by solokot's avatar solokot Committed by GitHub
Browse files

Merge pull request #11 from SimpleMobileTools/master

update
parents f42e486b 063ab786
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -6,7 +6,7 @@ buildscript {
        propMinSdkVersion = 16
        propTargetSdkVersion = propCompileSdkVersion
        propVersionCode = 1
        propVersionName = '3.6.15'
        propVersionName = '3.7.2'
        kotlin_version = '1.2.10'
        support_libs = '27.0.2'
    }
+3 −2
Original line number Diff line number Diff line
@@ -78,12 +78,13 @@ class PropertiesDialog() {
            }
            file.isImageSlow() -> addProperty(R.string.resolution, file.getResolution().formatAsResolution())
            file.isAudioSlow() -> {
                file.getDuration()?.let { addProperty(R.string.duration, it) }
                file.getDuration().let { addProperty(R.string.duration, it) }
                file.getSongTitle()?.let { addProperty(R.string.song_title, it) }
                file.getArtist()?.let { addProperty(R.string.artist, it) }
                file.getAlbum()?.let { addProperty(R.string.album, it) }
            }
            file.isVideoSlow() -> {
                file.getDuration()?.let { addProperty(R.string.duration, it) }
                file.getDuration().let { addProperty(R.string.duration, it) }
                addProperty(R.string.resolution, file.getResolution().formatAsResolution())
                file.getArtist()?.let { addProperty(R.string.artist, it) }
                file.getAlbum()?.let { addProperty(R.string.album, it) }
+15 −3
Original line number Diff line number Diff line
@@ -18,15 +18,17 @@ fun File.isAudioSlow() = absolutePath.isAudioFast() || getMimeType().startsWith(

fun File.getMimeType() = absolutePath.getMimeTypeFromPath()

fun File.getDuration(): String? {
fun File.getDuration() = getDurationSeconds().getFormattedDuration()

fun File.getDurationSeconds(): Int {
    return try {
        val retriever = MediaMetadataRetriever()
        retriever.setDataSource(absolutePath)
        val time = retriever.extractMetadata(MediaMetadataRetriever.METADATA_KEY_DURATION)
        val timeInMs = java.lang.Long.parseLong(time)
        (timeInMs / 1000).toInt().getFormattedDuration()
        (timeInMs / 1000).toInt()
    } catch (e: Exception) {
        null
        0
    }
}

@@ -50,6 +52,16 @@ fun File.getAlbum(): String? {
    }
}

fun File.getSongTitle(): String? {
    return try {
        val retriever = MediaMetadataRetriever()
        retriever.setDataSource(absolutePath)
        retriever.extractMetadata(MediaMetadataRetriever.METADATA_KEY_TITLE)
    } catch (ignored: Exception) {
        null
    }
}

fun File.getResolution(): Point {
    return if (isImageFast() || isImageSlow()) {
        getImageResolution()
+1 −1
Original line number Diff line number Diff line
@@ -29,7 +29,7 @@ fun String.isAValidFilename(): Boolean {

val String.photoExtensions: Array<String> get() = arrayOf(".jpg", ".png", ".jpeg", ".bmp", ".webp", ".dng")
val String.videoExtensions: Array<String> get() = arrayOf(".mp4", ".mkv", ".webm", ".avi", ".3gp", ".mov", ".m4v", ".3gpp")
val String.audioExtensions: Array<String> get() = arrayOf(".mp3", ".wav", ".wma", ".ogg", ".m4a")
val String.audioExtensions: Array<String> get() = arrayOf(".mp3", ".wav", ".wma", ".ogg", ".m4a", ".opus")

fun String.isImageVideoGif() = isImageFast() || isVideoFast() || isGif()

+12 −0
Original line number Diff line number Diff line
@@ -119,6 +119,7 @@
    <string name="f_number">F-number</string>
    <string name="camera">Càmera</string>
    <string name="exif">EXIF</string>
    <string name="song_title">Song title</string>

    <!-- Color customization -->
    <string name="background_color">Color del fons</string>
@@ -234,6 +235,17 @@
    <string name="keep_last_modified">Mantenir el valor de la darrera modificació al copiar/moure/canviar el nom dels arxius</string>
    <string name="show_info_bubble">Mostra una bombolla d\'informació en elements de desplaçament mitjançant arrossegament de la barra de desplaçament</string>

    <!-- Import / Export -->
    <string name="importing">Importing…</string>
    <string name="exporting">Exporting…</string>
    <string name="importing_successful">Importing successful</string>
    <string name="exporting_successful">Exporting successful</string>
    <string name="importing_failed">Importing failed</string>
    <string name="exporting_failed">Exporting failed</string>
    <string name="importing_some_entries_failed">Importing some entries failed</string>
    <string name="exporting_some_entries_failed">Exporting some entries failed</string>
    <string name="no_entries_for_exporting">No entries for exporting have been found</string>

    <!-- About -->
    <string name="about">Sobre</string>
    <string name="website_label">Més aplicacions senzilles i codi font a</string>
Loading