From 46141a0ac44027f25eeae93a4d2f209c25407b73 Mon Sep 17 00:00:00 2001 From: devhyper <57877914+devhyper@users.noreply.github.com> Date: Sun, 17 Mar 2024 13:57:26 -0700 Subject: [PATCH 01/37] Fix crash in getFileNameFromUri --- .../github/devhyper/openvideoeditor/misc/Utils.kt | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/app/src/main/java/io/github/devhyper/openvideoeditor/misc/Utils.kt b/app/src/main/java/io/github/devhyper/openvideoeditor/misc/Utils.kt index 735c5c0..8717579 100644 --- a/app/src/main/java/io/github/devhyper/openvideoeditor/misc/Utils.kt +++ b/app/src/main/java/io/github/devhyper/openvideoeditor/misc/Utils.kt @@ -39,16 +39,18 @@ import java.util.concurrent.TimeUnit fun getFileNameFromUri(context: Context, uri: Uri): String { - val fileName: String? + var fileName: String? = null val cursor = context.contentResolver.query(uri, null, null, null, null) val nameIndex = cursor?.getColumnIndex(OpenableColumns.DISPLAY_NAME) - cursor?.moveToFirst() - fileName = nameIndex?.let { cursor.getString(it) } + val cursorHasValue = cursor?.moveToFirst() + if (cursorHasValue == true) { + fileName = nameIndex?.let { cursor.getString(it) } + } cursor?.close() - if (fileName.isNullOrEmpty()) { - return "null" + if (!fileName.isNullOrEmpty()) { + return fileName } - return fileName + return "null" } fun getVideoFileDuration(context: Context, uri: Uri): Long? { From fdaa48caba475c5dd181bfe75aa622ab0d717249 Mon Sep 17 00:00:00 2001 From: devhyper <57877914+devhyper@users.noreply.github.com> Date: Sun, 17 Mar 2024 14:45:36 -0700 Subject: [PATCH 02/37] Set duration even if framerate is not available --- .../openvideoeditor/videoeditor/VideoEditorScreen.kt | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/app/src/main/java/io/github/devhyper/openvideoeditor/videoeditor/VideoEditorScreen.kt b/app/src/main/java/io/github/devhyper/openvideoeditor/videoeditor/VideoEditorScreen.kt index bfdaf80..cf2680e 100644 --- a/app/src/main/java/io/github/devhyper/openvideoeditor/videoeditor/VideoEditorScreen.kt +++ b/app/src/main/java/io/github/devhyper/openvideoeditor/videoeditor/VideoEditorScreen.kt @@ -223,11 +223,14 @@ fun VideoEditorScreen( ) { super.onEvents(player, events) - fpm = (player.videoFormat?.frameRate ?: 0F) / 1000F - if (player.duration > 0L && fpm > 0F) { + if (player.duration > 0L) { totalDuration = player.duration - totalDurationFrames = (totalDuration * fpm).toLong() + fpm = (player.videoFormat?.frameRate ?: 0F) / 1000F + if (fpm > 0F) { + totalDurationFrames = (totalDuration * fpm).toLong() + } } + isPlaying = player.isPlaying playbackState = player.playbackState From 97a9a057a60b4f9148bd69f9911980b404dfc5f0 Mon Sep 17 00:00:00 2001 From: devhyper <57877914+devhyper@users.noreply.github.com> Date: Mon, 18 Mar 2024 13:13:53 -0700 Subject: [PATCH 03/37] Swap to ffmpeg-kit-min --- app/build.gradle.kts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/app/build.gradle.kts b/app/build.gradle.kts index b458ad6..ef4ecc7 100644 --- a/app/build.gradle.kts +++ b/app/build.gradle.kts @@ -81,7 +81,7 @@ dependencies { implementation("org.jetbrains.kotlinx:kotlinx-collections-immutable:0.3.7") implementation("com.godaddy.android.colorpicker:compose-color-picker:0.7.0") implementation("com.godaddy.android.colorpicker:compose-color-picker-android:0.7.0") - implementation("com.arthenica:ffmpeg-kit-min-gpl:6.0-2") + implementation("com.arthenica:ffmpeg-kit-min:6.0-2") testImplementation("junit:junit:4.13.2") androidTestImplementation("androidx.test.ext:junit:1.1.5") androidTestImplementation("androidx.test.espresso:espresso-core:3.5.1") @@ -89,4 +89,4 @@ dependencies { androidTestImplementation("androidx.compose.ui:ui-test-junit4") debugImplementation("androidx.compose.ui:ui-tooling") debugImplementation("androidx.compose.ui:ui-test-manifest") -} \ No newline at end of file +} From a58fc3f8e40a4843d9ddd06d56ed0ee2748571ab Mon Sep 17 00:00:00 2001 From: Software In Interlingua Date: Tue, 19 Mar 2024 01:23:39 +0100 Subject: [PATCH 04/37] Added translation using Weblate (Interlingua) --- app/src/main/res/values-ia/strings.xml | 2 ++ 1 file changed, 2 insertions(+) create mode 100644 app/src/main/res/values-ia/strings.xml diff --git a/app/src/main/res/values-ia/strings.xml b/app/src/main/res/values-ia/strings.xml new file mode 100644 index 0000000..a6b3dae --- /dev/null +++ b/app/src/main/res/values-ia/strings.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file From b912d8698a604b0e90182b7f6d4d201879ed443b Mon Sep 17 00:00:00 2001 From: Anonymous Date: Mon, 18 Mar 2024 07:32:31 +0000 Subject: [PATCH 05/37] Translated using Weblate (Russian) Currently translated at 28.3% (19 of 67 strings) Translation: Open Video Editor/app Translate-URL: https://hosted.weblate.org/projects/open-video-editor/android/ru/ --- app/src/main/res/values-ru/strings.xml | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/app/src/main/res/values-ru/strings.xml b/app/src/main/res/values-ru/strings.xml index b30243c..73e24ce 100644 --- a/app/src/main/res/values-ru/strings.xml +++ b/app/src/main/res/values-ru/strings.xml @@ -11,4 +11,9 @@ Видео Добавить Разрешение + Размер + Назад + Выберите файл для редактирования + Цвет фона + Шрифт \ No newline at end of file From 291ea4fb273e1c47231ba88028c10797d36b834e Mon Sep 17 00:00:00 2001 From: plum7x Date: Mon, 18 Mar 2024 06:38:41 +0000 Subject: [PATCH 06/37] Translated using Weblate (Chinese (Traditional)) Currently translated at 98.5% (66 of 67 strings) Translation: Open Video Editor/app Translate-URL: https://hosted.weblate.org/projects/open-video-editor/android/zh_Hant/ --- app/src/main/res/values-zh-rTW/strings.xml | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/app/src/main/res/values-zh-rTW/strings.xml b/app/src/main/res/values-zh-rTW/strings.xml index 4c5b6fa..5a3c8d2 100644 --- a/app/src/main/res/values-zh-rTW/strings.xml +++ b/app/src/main/res/values-zh-rTW/strings.xml @@ -8,8 +8,8 @@ 開啟圖層面板 開啟篩選器面板 HDR 模式 - 音訊類型 - 視訊類型 + 音訊編碼類型 + 視訊編碼類型 移除篩選器 匯出媒體 剪輯 @@ -58,7 +58,9 @@ 背景色彩 前景色彩 色彩選擇器 - 視訊 + 影片 視訊篩選器 輸入必須小於或等於 + 預設 + 字型 \ No newline at end of file From f4fa62695d5ce53ac59def1c1e37d9c4c0027cfe Mon Sep 17 00:00:00 2001 From: plum7x Date: Mon, 18 Mar 2024 06:41:40 +0000 Subject: [PATCH 07/37] Translated using Weblate (Chinese (Traditional)) Currently translated at 42.8% (3 of 7 strings) Translation: Open Video Editor/fdroid Translate-URL: https://hosted.weblate.org/projects/open-video-editor/fdroid/zh_Hant/ --- metadata/zh-TW/full_description.txt | 1 + metadata/zh-TW/short_description.txt | 1 + metadata/zh-TW/title.txt | 1 + 3 files changed, 3 insertions(+) create mode 100644 metadata/zh-TW/full_description.txt create mode 100644 metadata/zh-TW/short_description.txt create mode 100644 metadata/zh-TW/title.txt diff --git a/metadata/zh-TW/full_description.txt b/metadata/zh-TW/full_description.txt new file mode 100644 index 0000000..01be289 --- /dev/null +++ b/metadata/zh-TW/full_description.txt @@ -0,0 +1 @@ +

Open Video Editor 讓您編輯您的影片。它支援 HDR 並且允許應用篩選器。使用此應用程式您還可以裁減、縮放與旋轉甚至灰階化您的影片。 您也可以使用此應用程式從影片中匯出音訊,轉換 HDR 影片至 SDR,或者轉換成另一種格式。

diff --git a/metadata/zh-TW/short_description.txt b/metadata/zh-TW/short_description.txt new file mode 100644 index 0000000..9315ed8 --- /dev/null +++ b/metadata/zh-TW/short_description.txt @@ -0,0 +1 @@ +開放原始碼 Android 影片編輯器,使用 Media3 與 Jetpack Compose 建置。 diff --git a/metadata/zh-TW/title.txt b/metadata/zh-TW/title.txt new file mode 100644 index 0000000..0bc6b86 --- /dev/null +++ b/metadata/zh-TW/title.txt @@ -0,0 +1 @@ +Open Video Editor From 4a7de472b3491bb2371a6d572d08d70e35973ee9 Mon Sep 17 00:00:00 2001 From: Diegofmar Date: Tue, 19 Mar 2024 04:18:49 +0100 Subject: [PATCH 08/37] Added translation using Weblate (Portuguese) --- app/src/main/res/values-pt/strings.xml | 2 ++ 1 file changed, 2 insertions(+) create mode 100644 app/src/main/res/values-pt/strings.xml diff --git a/app/src/main/res/values-pt/strings.xml b/app/src/main/res/values-pt/strings.xml new file mode 100644 index 0000000..a6b3dae --- /dev/null +++ b/app/src/main/res/values-pt/strings.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file From c4872f65d56a3f3c1fbcc53def3d43f20615deee Mon Sep 17 00:00:00 2001 From: Software In Interlingua Date: Tue, 19 Mar 2024 00:26:39 +0000 Subject: [PATCH 09/37] Translated using Weblate (Interlingua) Currently translated at 65.6% (44 of 67 strings) Translation: Open Video Editor/app Translate-URL: https://hosted.weblate.org/projects/open-video-editor/android/ia/ --- app/src/main/res/values-ia/strings.xml | 44 +++++++++++++++++++++++++- 1 file changed, 43 insertions(+), 1 deletion(-) diff --git a/app/src/main/res/values-ia/strings.xml b/app/src/main/res/values-ia/strings.xml index a6b3dae..ad00a59 100644 --- a/app/src/main/res/values-ia/strings.xml +++ b/app/src/main/res/values-ia/strings.xml @@ -1,2 +1,44 @@ - \ No newline at end of file + + Avantiar 10 secundas + Reproducer/Pausar + Velocitate + Usar le selector ancian de files + Definir + Salveguardar le projecto + Predefinite + Cancellar + Adder + Medio a exportar + Modo HDR + Typo de audio + Exportate + Typo de video + In exportation + Dimitter + Error + Selige un file a modificar + Projecto + Plus de optiones vertical + Thema + Color de fundo + Color de prime plano + Texto + Dimension + Selector de color + Acceptar + Video + Scala de gris + Inverter le colores + Resolution + Disposition + Scala + Taliar + Error de FFmpeg + Exportar + Parametros + Acceptar le filtro + Remover le filtro + Filtros de video + Accurtar + \ No newline at end of file From eede0e657fde8fe0abc7547c2085775d59dcfb41 Mon Sep 17 00:00:00 2001 From: Diego Fernandes Date: Tue, 19 Mar 2024 05:28:58 +0100 Subject: [PATCH 10/37] Added translation using Weblate (Portuguese (Brazil)) --- app/src/main/res/values-pt-rBR/strings.xml | 2 ++ 1 file changed, 2 insertions(+) create mode 100644 app/src/main/res/values-pt-rBR/strings.xml diff --git a/app/src/main/res/values-pt-rBR/strings.xml b/app/src/main/res/values-pt-rBR/strings.xml new file mode 100644 index 0000000..a6b3dae --- /dev/null +++ b/app/src/main/res/values-pt-rBR/strings.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file From a79add99a7f50a54ecf14b6ac56e48e4c405cd6b Mon Sep 17 00:00:00 2001 From: Diego Fernandes Date: Tue, 19 Mar 2024 03:37:03 +0000 Subject: [PATCH 11/37] Translated using Weblate (Portuguese) Currently translated at 47.7% (32 of 67 strings) Translation: Open Video Editor/app Translate-URL: https://hosted.weblate.org/projects/open-video-editor/android/pt/ --- app/src/main/res/values-pt/strings.xml | 32 +++++++++++++++++++++++++- 1 file changed, 31 insertions(+), 1 deletion(-) diff --git a/app/src/main/res/values-pt/strings.xml b/app/src/main/res/values-pt/strings.xml index a6b3dae..d187376 100644 --- a/app/src/main/res/values-pt/strings.xml +++ b/app/src/main/res/values-pt/strings.xml @@ -1,2 +1,32 @@ - \ No newline at end of file + + Exportar + Diminuir frame + Aceitar filtro + Recusar filtro + Modo HDR + Tipo de áudio + Exportando + Descartar + Erro + Selecionar um arquivo para editar + Projeto + Camadas de vídeo + Avançar 10 segundos + Repetir 5 segundos + Taxa de quadros + Voltar + Configurações + Remover filtro + Filtros de vídeo + Cortar + Cancelar + Adicionar + Mídia para exportar + Tipo de vídeo + Exportado + Reproduzir/Pausar + Mais opções verticais + Velocidade + Tema + \ No newline at end of file From 7a624a87b87984db38be568ced34b317c0bede2a Mon Sep 17 00:00:00 2001 From: Diego Fernandes Date: Tue, 19 Mar 2024 03:27:08 +0000 Subject: [PATCH 12/37] Translated using Weblate (Portuguese) Currently translated at 50.0% (4 of 8 strings) Translation: Open Video Editor/fdroid Translate-URL: https://hosted.weblate.org/projects/open-video-editor/fdroid/pt/ --- metadata/pt/changelogs/1.txt | 1 + metadata/pt/full_description.txt | 1 + metadata/pt/short_description.txt | 1 + metadata/pt/title.txt | 1 + 4 files changed, 4 insertions(+) create mode 100644 metadata/pt/changelogs/1.txt create mode 100644 metadata/pt/full_description.txt create mode 100644 metadata/pt/short_description.txt create mode 100644 metadata/pt/title.txt diff --git a/metadata/pt/changelogs/1.txt b/metadata/pt/changelogs/1.txt new file mode 100644 index 0000000..51269e9 --- /dev/null +++ b/metadata/pt/changelogs/1.txt @@ -0,0 +1 @@ +Lançamento inicial diff --git a/metadata/pt/full_description.txt b/metadata/pt/full_description.txt new file mode 100644 index 0000000..945ac7d --- /dev/null +++ b/metadata/pt/full_description.txt @@ -0,0 +1 @@ +

Open Video Editor permite que você edite seus vídeos. Suporta HDR e permite aplicar filtros. Com este aplicativo você também pode cortar, dimensionar e girar seus vídeos ou até mesmo colocá-los em tons de cinza. Também é possível usar este aplicativo para extrair áudio de um vídeo, converter um vídeo HDR para SDR ou convertê-lo em um formato diferente.

diff --git a/metadata/pt/short_description.txt b/metadata/pt/short_description.txt new file mode 100644 index 0000000..00a90a9 --- /dev/null +++ b/metadata/pt/short_description.txt @@ -0,0 +1 @@ +Editor de vídeo Android de código aberto, feito com Media3 e Jetpack Compose. diff --git a/metadata/pt/title.txt b/metadata/pt/title.txt new file mode 100644 index 0000000..0bc6b86 --- /dev/null +++ b/metadata/pt/title.txt @@ -0,0 +1 @@ +Open Video Editor From 93b8aa7edf4526210db129cb67fb0e8af4701162 Mon Sep 17 00:00:00 2001 From: Diego Fernandes Date: Tue, 19 Mar 2024 12:04:10 +0000 Subject: [PATCH 13/37] Translated using Weblate (Portuguese (Brazil)) Currently translated at 100.0% (67 of 67 strings) Translation: Open Video Editor/app Translate-URL: https://hosted.weblate.org/projects/open-video-editor/android/pt_BR/ --- app/src/main/res/values-pt-rBR/strings.xml | 67 +++++++++++++++++++++- 1 file changed, 66 insertions(+), 1 deletion(-) diff --git a/app/src/main/res/values-pt-rBR/strings.xml b/app/src/main/res/values-pt-rBR/strings.xml index a6b3dae..a433b4a 100644 --- a/app/src/main/res/values-pt-rBR/strings.xml +++ b/app/src/main/res/values-pt-rBR/strings.xml @@ -1,2 +1,67 @@ - \ No newline at end of file + + Voltar + Exportar + Configurações + Diminuir frame + Aceitar filtro + Recusar filtro + Aumentar taxa de quadros + Abrir o painel de camadas + Remover filtro + Abrir painel de filtro + Ícone de camada + Cancelar + Adicionar + Mídia para exportar + Modo HDR + Exportando + Selecionar um arquivo para editar + Camadas de vídeo + Avançar 10 segundos + Reproduzir/Pausar + Mais opções verticais + Taxa de quadros + Velocidade + Tema + Utilizar o antigo seletor de arquivos + Aplicar + Tamanho + Aceitar + Usar efeito em cascata da interface do usuário + Frames + Novo frame + Vídeo + Escala de cinza + Inverter cores + Resolução + Graus + Cortar + A taxa de quadros deve ser menor que a do vídeo original + Corte sem perdas + Informações de configuração + Erro FFmpeg + Fonte + Filtros de vídeo + Cortar + Tipo de áudio + Tipo de vídeo + Exportado + Descartar + Erro + Projeto + Repetir 5 segundos + Cor de fundo + Texto + Cor do primeiro plano + Seletor de cores + Salvar Projeto + Ativar o corte sem perdas exportará apenas as seções encurtadas. + Padrão + A entrada deve ser menor ou igual a + Largura + Altura + Layout + Escala + Girar + \ No newline at end of file From 60064408b65f64940fb3d75bba17a676ec30c705 Mon Sep 17 00:00:00 2001 From: Diego Fernandes Date: Tue, 19 Mar 2024 12:23:36 +0000 Subject: [PATCH 14/37] Translated using Weblate (Portuguese (Brazil)) Currently translated at 100.0% (8 of 8 strings) Translation: Open Video Editor/fdroid Translate-URL: https://hosted.weblate.org/projects/open-video-editor/fdroid/pt_BR/ --- metadata/pt-BR/changelogs/1.txt | 1 + metadata/pt-BR/changelogs/2.txt | 1 + metadata/pt-BR/changelogs/3.txt | 7 +++++++ metadata/pt-BR/changelogs/4.txt | 8 ++++++++ metadata/pt-BR/changelogs/5.txt | 12 ++++++++++++ metadata/pt-BR/full_description.txt | 1 + metadata/pt-BR/short_description.txt | 1 + metadata/pt-BR/title.txt | 1 + 8 files changed, 32 insertions(+) create mode 100644 metadata/pt-BR/changelogs/1.txt create mode 100644 metadata/pt-BR/changelogs/2.txt create mode 100644 metadata/pt-BR/changelogs/3.txt create mode 100644 metadata/pt-BR/changelogs/4.txt create mode 100644 metadata/pt-BR/changelogs/5.txt create mode 100644 metadata/pt-BR/full_description.txt create mode 100644 metadata/pt-BR/short_description.txt create mode 100644 metadata/pt-BR/title.txt diff --git a/metadata/pt-BR/changelogs/1.txt b/metadata/pt-BR/changelogs/1.txt new file mode 100644 index 0000000..51269e9 --- /dev/null +++ b/metadata/pt-BR/changelogs/1.txt @@ -0,0 +1 @@ +Lançamento inicial diff --git a/metadata/pt-BR/changelogs/2.txt b/metadata/pt-BR/changelogs/2.txt new file mode 100644 index 0000000..06de9f1 --- /dev/null +++ b/metadata/pt-BR/changelogs/2.txt @@ -0,0 +1 @@ +Pequenas correções de tela diff --git a/metadata/pt-BR/changelogs/3.txt b/metadata/pt-BR/changelogs/3.txt new file mode 100644 index 0000000..430f31b --- /dev/null +++ b/metadata/pt-BR/changelogs/3.txt @@ -0,0 +1,7 @@ +Toque e segure o quadro seguinte/anterior para repetir +Correção de mudança de rotação da tela que fazia com que as edições fossem perdidas +Correção de impossibilidade de selecionar um vídeo +Remove a extensão do arquivo ao selecionar o local de exportação +Adiciona o aplicativo como um atalho no menu Compartilhar +Corrige elementos da IU que não são responsivos/adaptáveis +Corrige botões de diálogo ocultos em determinados tamanhos de tela diff --git a/metadata/pt-BR/changelogs/4.txt b/metadata/pt-BR/changelogs/4.txt new file mode 100644 index 0000000..15470d1 --- /dev/null +++ b/metadata/pt-BR/changelogs/4.txt @@ -0,0 +1,8 @@ +Tradução parcial em chinês +Atualizão de dependências +Alterar a velocidade e a taxa de quadros do vídeo +Adicionar texto ao vídeo +Salvar projeto +Cortar +Cores invertidas +Procurar um quadro específico diff --git a/metadata/pt-BR/changelogs/5.txt b/metadata/pt-BR/changelogs/5.txt new file mode 100644 index 0000000..368fe8f --- /dev/null +++ b/metadata/pt-BR/changelogs/5.txt @@ -0,0 +1,12 @@ +Novas traduções: + - Chinês (Simplificado) + - Chinês (Tradicional) + - Francês +Novas características: + - Corte sem perdas + - Personalização da fonte do efeito de texto +Correções de bugs: + - Correção de falha ao tentar obter permissões persistentes + - Impedir o redimensionamento de vídeo no modo imersivo +Diversos: + - Atualização de dependências diff --git a/metadata/pt-BR/full_description.txt b/metadata/pt-BR/full_description.txt new file mode 100644 index 0000000..945ac7d --- /dev/null +++ b/metadata/pt-BR/full_description.txt @@ -0,0 +1 @@ +

Open Video Editor permite que você edite seus vídeos. Suporta HDR e permite aplicar filtros. Com este aplicativo você também pode cortar, dimensionar e girar seus vídeos ou até mesmo colocá-los em tons de cinza. Também é possível usar este aplicativo para extrair áudio de um vídeo, converter um vídeo HDR para SDR ou convertê-lo em um formato diferente.

diff --git a/metadata/pt-BR/short_description.txt b/metadata/pt-BR/short_description.txt new file mode 100644 index 0000000..263d534 --- /dev/null +++ b/metadata/pt-BR/short_description.txt @@ -0,0 +1 @@ +Editor de vídeo para Android, código aberto, feito com Media3 e Jetpack Compose. diff --git a/metadata/pt-BR/title.txt b/metadata/pt-BR/title.txt new file mode 100644 index 0000000..0bc6b86 --- /dev/null +++ b/metadata/pt-BR/title.txt @@ -0,0 +1 @@ +Open Video Editor From f11709cfa441c79af7551adcd7dc07dc7cca5169 Mon Sep 17 00:00:00 2001 From: devhyper <57877914+devhyper@users.noreply.github.com> Date: Wed, 20 Mar 2024 17:05:28 -0700 Subject: [PATCH 15/37] Update deps --- app/build.gradle.kts | 4 ++-- build.gradle.kts | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/app/build.gradle.kts b/app/build.gradle.kts index ef4ecc7..803931c 100644 --- a/app/build.gradle.kts +++ b/app/build.gradle.kts @@ -65,7 +65,7 @@ dependencies { implementation("androidx.lifecycle:lifecycle-runtime-ktx:2.7.0") implementation("androidx.lifecycle:lifecycle-runtime-compose:2.7.0") implementation("androidx.activity:activity-compose:1.8.2") - implementation(platform("androidx.compose:compose-bom:2024.02.02")) + implementation(platform("androidx.compose:compose-bom:2024.03.00")) implementation("androidx.compose.ui:ui") implementation("androidx.compose.ui:ui-graphics") implementation("androidx.compose.ui:ui-tooling-preview") @@ -85,7 +85,7 @@ dependencies { testImplementation("junit:junit:4.13.2") androidTestImplementation("androidx.test.ext:junit:1.1.5") androidTestImplementation("androidx.test.espresso:espresso-core:3.5.1") - androidTestImplementation(platform("androidx.compose:compose-bom:2024.02.02")) + androidTestImplementation(platform("androidx.compose:compose-bom:2024.03.00")) androidTestImplementation("androidx.compose.ui:ui-test-junit4") debugImplementation("androidx.compose.ui:ui-tooling") debugImplementation("androidx.compose.ui:ui-test-manifest") diff --git a/build.gradle.kts b/build.gradle.kts index d39e180..f1c4780 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -1,5 +1,5 @@ // Top-level build file where you can add configuration options common to all sub-projects/modules. plugins { - id("com.android.application") version "8.3.0" apply false + id("com.android.application") version "8.3.1" apply false id("org.jetbrains.kotlin.android") version "1.8.10" apply false } \ No newline at end of file From d0801dcdab12df4eeb3404f8033969280a481685 Mon Sep 17 00:00:00 2001 From: devhyper <57877914+devhyper@users.noreply.github.com> Date: Wed, 20 Mar 2024 23:54:40 -0700 Subject: [PATCH 16/37] Rollback to gradle 8.2.1 --- build.gradle.kts | 2 +- gradle/wrapper/gradle-wrapper.properties | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/build.gradle.kts b/build.gradle.kts index f1c4780..f09cb3b 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -1,5 +1,5 @@ // Top-level build file where you can add configuration options common to all sub-projects/modules. plugins { - id("com.android.application") version "8.3.1" apply false + id("com.android.application") version "8.2.2" apply false id("org.jetbrains.kotlin.android") version "1.8.10" apply false } \ No newline at end of file diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index 46671ac..c244788 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -1,7 +1,7 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists -distributionSha256Sum=3e1af3ae886920c3ac87f7a91f816c0c7c436f276a6eefdb3da152100fef72ae -distributionUrl=https\://services.gradle.org/distributions/gradle-8.4-bin.zip +distributionSha256Sum=03ec176d388f2aa99defcadc3ac6adf8dd2bce5145a129659537c0874dea5ad1 +distributionUrl=https\://services.gradle.org/distributions/gradle-8.2.1-bin.zip networkTimeout=10000 validateDistributionUrl=true zipStoreBase=GRADLE_USER_HOME From 9b977fd1d3e2eb89d9a63a379caf099232e6e3de Mon Sep 17 00:00:00 2001 From: Diego Fernandes Date: Wed, 20 Mar 2024 14:47:15 +0000 Subject: [PATCH 17/37] Translated using Weblate (Portuguese) Currently translated at 47.7% (32 of 67 strings) Translation: Open Video Editor/app Translate-URL: https://hosted.weblate.org/projects/open-video-editor/android/pt/ --- app/src/main/res/values-pt/strings.xml | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/app/src/main/res/values-pt/strings.xml b/app/src/main/res/values-pt/strings.xml index d187376..ee05338 100644 --- a/app/src/main/res/values-pt/strings.xml +++ b/app/src/main/res/values-pt/strings.xml @@ -1,19 +1,19 @@ Exportar - Diminuir frame + Frame anterior Aceitar filtro Recusar filtro Modo HDR Tipo de áudio Exportando - Descartar + Fechar Erro - Selecionar um arquivo para editar + Selecione um arquivo para editar Projeto Camadas de vídeo Avançar 10 segundos - Repetir 5 segundos + Retroceder 5 segundos Taxa de quadros Voltar Configurações @@ -22,7 +22,7 @@ Cortar Cancelar Adicionar - Mídia para exportar + Exportar mídia Tipo de vídeo Exportado Reproduzir/Pausar From fe81d6fa15c1fb229a576d5b66800bacc70bcb64 Mon Sep 17 00:00:00 2001 From: Diego Fernandes Date: Wed, 20 Mar 2024 14:48:08 +0000 Subject: [PATCH 18/37] Translated using Weblate (Portuguese) Currently translated at 50.0% (4 of 8 strings) Translation: Open Video Editor/fdroid Translate-URL: https://hosted.weblate.org/projects/open-video-editor/fdroid/pt/ --- metadata/pt/short_description.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/metadata/pt/short_description.txt b/metadata/pt/short_description.txt index 00a90a9..263d534 100644 --- a/metadata/pt/short_description.txt +++ b/metadata/pt/short_description.txt @@ -1 +1 @@ -Editor de vídeo Android de código aberto, feito com Media3 e Jetpack Compose. +Editor de vídeo para Android, código aberto, feito com Media3 e Jetpack Compose. From c379e315563eeeb4d910636b9a2963e912d9f7f1 Mon Sep 17 00:00:00 2001 From: Diego Fernandes Date: Wed, 20 Mar 2024 14:02:42 +0000 Subject: [PATCH 19/37] Translated using Weblate (Portuguese (Brazil)) Currently translated at 100.0% (67 of 67 strings) Translation: Open Video Editor/app Translate-URL: https://hosted.weblate.org/projects/open-video-editor/android/pt_BR/ --- app/src/main/res/values-pt-rBR/strings.xml | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/app/src/main/res/values-pt-rBR/strings.xml b/app/src/main/res/values-pt-rBR/strings.xml index a433b4a..c6134b8 100644 --- a/app/src/main/res/values-pt-rBR/strings.xml +++ b/app/src/main/res/values-pt-rBR/strings.xml @@ -3,20 +3,20 @@ Voltar Exportar Configurações - Diminuir frame + Frame anterior Aceitar filtro Recusar filtro - Aumentar taxa de quadros + Frame seguinte Abrir o painel de camadas Remover filtro Abrir painel de filtro Ícone de camada Cancelar Adicionar - Mídia para exportar + Exportar mídia Modo HDR Exportando - Selecionar um arquivo para editar + Selecione um arquivo para editar Camadas de vídeo Avançar 10 segundos Reproduzir/Pausar @@ -24,7 +24,7 @@ Taxa de quadros Velocidade Tema - Utilizar o antigo seletor de arquivos + Escolher outro seletor de arquivo Aplicar Tamanho Aceitar @@ -36,7 +36,7 @@ Inverter cores Resolução Graus - Cortar + Corte livre A taxa de quadros deve ser menor que a do vídeo original Corte sem perdas Informações de configuração @@ -47,10 +47,10 @@ Tipo de áudio Tipo de vídeo Exportado - Descartar + Fechar Erro Projeto - Repetir 5 segundos + retroceder 5 segundos Cor de fundo Texto Cor do primeiro plano From a358780d8d1147f4fcd187c0dd6bd95ef6ee6527 Mon Sep 17 00:00:00 2001 From: devhyper <57877914+devhyper@users.noreply.github.com> Date: Thu, 21 Mar 2024 19:34:25 -0700 Subject: [PATCH 20/37] Force buildtools version 35.0.0 rc2 --- app/build.gradle.kts | 1 + 1 file changed, 1 insertion(+) diff --git a/app/build.gradle.kts b/app/build.gradle.kts index 803931c..a09aa94 100644 --- a/app/build.gradle.kts +++ b/app/build.gradle.kts @@ -58,6 +58,7 @@ android { androidResources { generateLocaleConfig = true } + buildToolsVersion = "35.0.0 rc2" } dependencies { From 92bc22ce244a4dcc17172fb32923c7c239a25ae4 Mon Sep 17 00:00:00 2001 From: Software In Interlingua Date: Sat, 23 Mar 2024 02:48:23 +0000 Subject: [PATCH 21/37] Translated using Weblate (Interlingua) Currently translated at 68.6% (46 of 67 strings) Translation: Open Video Editor/app Translate-URL: https://hosted.weblate.org/projects/open-video-editor/android/ia/ --- app/src/main/res/values-ia/strings.xml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/app/src/main/res/values-ia/strings.xml b/app/src/main/res/values-ia/strings.xml index ad00a59..309ac24 100644 --- a/app/src/main/res/values-ia/strings.xml +++ b/app/src/main/res/values-ia/strings.xml @@ -41,4 +41,6 @@ Remover le filtro Filtros de video Accurtar + Retornar + Aperir le tiratorio de filtros \ No newline at end of file From 317a6f119c2b6fa3567218e481f35be5a6a287e8 Mon Sep 17 00:00:00 2001 From: plum7x Date: Mon, 25 Mar 2024 20:09:15 +0000 Subject: [PATCH 22/37] Translated using Weblate (Chinese (Traditional)) Currently translated at 98.5% (66 of 67 strings) Translation: Open Video Editor/app Translate-URL: https://hosted.weblate.org/projects/open-video-editor/android/zh_Hant/ --- app/src/main/res/values-zh-rTW/strings.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/app/src/main/res/values-zh-rTW/strings.xml b/app/src/main/res/values-zh-rTW/strings.xml index 5a3c8d2..2592157 100644 --- a/app/src/main/res/values-zh-rTW/strings.xml +++ b/app/src/main/res/values-zh-rTW/strings.xml @@ -42,9 +42,9 @@ 裁切 影格速率必須小於原始視訊的影格速率 設定資訊 - 無損裁減 + 無損裁剪 FFmpeg 錯誤 - 啟用無損裁減只能匯出剪輯。 + 啟用無損裁剪只能匯出剪輯。 返回 匯出 設定 From 869e1b3f9ee80c724583bc421cab8fee511e762c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=A4=A7=E7=8E=8B=E5=8F=AB=E6=88=91=E6=9D=A5=E5=B7=A1?= =?UTF-8?q?=E5=B1=B1?= Date: Tue, 2 Apr 2024 11:34:02 +0000 Subject: [PATCH 23/37] Translated using Weblate (Chinese (Simplified)) Currently translated at 100.0% (67 of 67 strings) Translation: Open Video Editor/app Translate-URL: https://hosted.weblate.org/projects/open-video-editor/android/zh_Hans/ --- app/src/main/res/values-zh/strings.xml | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/app/src/main/res/values-zh/strings.xml b/app/src/main/res/values-zh/strings.xml index 55e743b..ef57b79 100644 --- a/app/src/main/res/values-zh/strings.xml +++ b/app/src/main/res/values-zh/strings.xml @@ -1,3 +1,4 @@ + 返回 导出 @@ -57,4 +58,10 @@ 布局 角度 帧率必须比原视频的帧率低 + 开启无损剪切将只导出剪辑。 + FFmpeg 错误 + 默认 + 字体 + 无损剪切 + 设置信息 \ No newline at end of file From b598da7f19140c87640f12649eb8348fd6013b8c Mon Sep 17 00:00:00 2001 From: gallegonovato Date: Mon, 1 Apr 2024 12:43:39 +0000 Subject: [PATCH 24/37] Translated using Weblate (Spanish) Currently translated at 100.0% (8 of 8 strings) Translation: Open Video Editor/fdroid Translate-URL: https://hosted.weblate.org/projects/open-video-editor/fdroid/es/ --- metadata/es-ES/changelogs/1.txt | 1 + metadata/es-ES/changelogs/2.txt | 1 + metadata/es-ES/changelogs/3.txt | 7 +++++++ metadata/es-ES/changelogs/4.txt | 8 ++++++++ metadata/es-ES/changelogs/5.txt | 12 ++++++++++++ metadata/es-ES/full_description.txt | 1 + metadata/es-ES/short_description.txt | 1 + metadata/es-ES/title.txt | 1 + 8 files changed, 32 insertions(+) create mode 100644 metadata/es-ES/changelogs/1.txt create mode 100644 metadata/es-ES/changelogs/2.txt create mode 100644 metadata/es-ES/changelogs/3.txt create mode 100644 metadata/es-ES/changelogs/4.txt create mode 100644 metadata/es-ES/changelogs/5.txt create mode 100644 metadata/es-ES/full_description.txt create mode 100644 metadata/es-ES/short_description.txt create mode 100644 metadata/es-ES/title.txt diff --git a/metadata/es-ES/changelogs/1.txt b/metadata/es-ES/changelogs/1.txt new file mode 100644 index 0000000..2a6ac22 --- /dev/null +++ b/metadata/es-ES/changelogs/1.txt @@ -0,0 +1 @@ +Versión inicial diff --git a/metadata/es-ES/changelogs/2.txt b/metadata/es-ES/changelogs/2.txt new file mode 100644 index 0000000..f55ab6e --- /dev/null +++ b/metadata/es-ES/changelogs/2.txt @@ -0,0 +1 @@ +Correcciones para pantallas pequeñas diff --git a/metadata/es-ES/changelogs/3.txt b/metadata/es-ES/changelogs/3.txt new file mode 100644 index 0000000..ca1e7f0 --- /dev/null +++ b/metadata/es-ES/changelogs/3.txt @@ -0,0 +1,7 @@ +Mantenga presionado el cuadro siguiente/anterior para repetir +Se corrigió el cambio de rotación de la pantalla que causaba que se perdieran las ediciones. +Se corrigió la imposibilidad de seleccionar un video. +Eliminar la extensión del archivo al seleccionar la ubicación de exportación +Agregue la aplicación como acceso directo al menú Compartir +Reparar elementos de la interfaz de usuario que no responden o no se adaptan +Reparar botones de diálogo ocultos en ciertos tamaños de pantalla diff --git a/metadata/es-ES/changelogs/4.txt b/metadata/es-ES/changelogs/4.txt new file mode 100644 index 0000000..458f98f --- /dev/null +++ b/metadata/es-ES/changelogs/4.txt @@ -0,0 +1,8 @@ +Traducción parcial al chino +Actualizar dependencias +Cambiar la velocidad del video y la velocidad de fotogramas +Texto en vídeo +Guardar proyecto +Cultivo +Colores invertidos +Buscar un marco específico diff --git a/metadata/es-ES/changelogs/5.txt b/metadata/es-ES/changelogs/5.txt new file mode 100644 index 0000000..c78cdf2 --- /dev/null +++ b/metadata/es-ES/changelogs/5.txt @@ -0,0 +1,12 @@ +Nuevas traducciones: + - Chino (simplificado) + - Chino (tradicional) + - francés +Nuevas funciones: + - Corte sin pérdidas + - Personalización de la fuente del efecto de texto +Corrección de errores: + - Corrección de fallo al intentar tomar permisos persistentes + - Evitar el redimensionamiento de vídeo en modo inmersivo +Varios + - Actualización de dependencias diff --git a/metadata/es-ES/full_description.txt b/metadata/es-ES/full_description.txt new file mode 100644 index 0000000..c32adb4 --- /dev/null +++ b/metadata/es-ES/full_description.txt @@ -0,0 +1 @@ +

Open Video Editor te permite editar tus videos. Es compatible con HDR y permite aplicar filtros. Con esta aplicación también puedes recortar, escalar y rotar tus videos o incluso escalarlos en escala de grises. También es posible usar esta aplicación para extraer audio de un video, convertir un video HDR a SDR o convertirlo a un formato diferente.

diff --git a/metadata/es-ES/short_description.txt b/metadata/es-ES/short_description.txt new file mode 100644 index 0000000..67b2afe --- /dev/null +++ b/metadata/es-ES/short_description.txt @@ -0,0 +1 @@ +Editor de vídeo Android de código abierto, desarrollo Media3 y Jetpack Compose. diff --git a/metadata/es-ES/title.txt b/metadata/es-ES/title.txt new file mode 100644 index 0000000..0bc6b86 --- /dev/null +++ b/metadata/es-ES/title.txt @@ -0,0 +1 @@ +Open Video Editor From dc415c5ecd9e16c422dbcfdfb9a0ef1a8216c00c Mon Sep 17 00:00:00 2001 From: gallegonovato Date: Mon, 1 Apr 2024 12:45:12 +0000 Subject: [PATCH 25/37] Translated using Weblate (Spanish) Currently translated at 100.0% (67 of 67 strings) Translation: Open Video Editor/app Translate-URL: https://hosted.weblate.org/projects/open-video-editor/android/es/ --- app/src/main/res/values-es/strings.xml | 67 +++++++++++++++++++++++++- 1 file changed, 66 insertions(+), 1 deletion(-) diff --git a/app/src/main/res/values-es/strings.xml b/app/src/main/res/values-es/strings.xml index a6b3dae..ac3c95c 100644 --- a/app/src/main/res/values-es/strings.xml +++ b/app/src/main/res/values-es/strings.xml @@ -1,2 +1,67 @@ - \ No newline at end of file + + Atras + Exportar + Ajustes + Disminuir marco + Incrementar el marco + Aplicar filtro + Rechazar el filtro + Abrir el panel de filtros + icono de capa + Eliminar el filtro + Filtros de vídeo + Recortar + Cancelar + Añadir + Modo HDR + Tipo de audio + Tipo de vídeo + Exportado + Exportando + Descartar + Error + Seleccionar un archivo para editar + Proyecto + Capas de vídeo + Reproducir/Pausar + Repetir durante 5 segundos + Guardar el proyecto + Vídeo + Escala de grises + Avanzar 10 segundos + Más opciones verticales + Fotogramas por segundo + Velocidad + Tema + Utilice el selector de archivos heredado + Color de fondo + Color frontal + Texto + Establecer + Tamaño + Selector de color + Aceptar + Utilizar el efecto cascada de la interfaz de usuario + Fotogramas + Nuevo fotograma + La entrada debe ser inferior o igual a + Colores invertidos + Resolución + Ancho + Disposición + Escala + Girar + Por defecto + Fuente + Recortar sin pérdidas + Información de la configuración + Error FFmpeg + Abrir el panel de capas + Exportar medios + Alto + Grados + La velocidad de fotogramas debe ser inferior a la velocidad de fotogramas del vídeo original + Al habilitar el corte sin pérdidas solo se exportarán las secciones acortadas. + Cortar + \ No newline at end of file From ed88b2435b663562240453e7db9e1365ec8699ad Mon Sep 17 00:00:00 2001 From: cwpute Date: Wed, 3 Apr 2024 15:28:09 +0000 Subject: [PATCH 26/37] Translated using Weblate (French) Currently translated at 97.0% (65 of 67 strings) Translation: Open Video Editor/app Translate-URL: https://hosted.weblate.org/projects/open-video-editor/android/fr/ --- app/src/main/res/values-fr/strings.xml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/app/src/main/res/values-fr/strings.xml b/app/src/main/res/values-fr/strings.xml index d45564c..86082bd 100644 --- a/app/src/main/res/values-fr/strings.xml +++ b/app/src/main/res/values-fr/strings.xml @@ -62,4 +62,6 @@ Texte Appliquer Taille + Lorem Ipsum + Police d\'écriture \ No newline at end of file From 3d69778129ce4a17b2cbe052d42340af5e957c6e Mon Sep 17 00:00:00 2001 From: cwpute Date: Wed, 3 Apr 2024 15:33:41 +0000 Subject: [PATCH 27/37] Translated using Weblate (French) Currently translated at 87.5% (7 of 8 strings) Translation: Open Video Editor/fdroid Translate-URL: https://hosted.weblate.org/projects/open-video-editor/fdroid/fr/ --- metadata/fr-FR/changelogs/3.txt | 7 +++++++ metadata/fr-FR/changelogs/4.txt | 8 ++++++++ metadata/fr-FR/changelogs/5.txt | 12 ++++++++++++ metadata/fr-FR/title.txt | 1 + 4 files changed, 28 insertions(+) create mode 100644 metadata/fr-FR/changelogs/3.txt create mode 100644 metadata/fr-FR/changelogs/4.txt create mode 100644 metadata/fr-FR/changelogs/5.txt create mode 100644 metadata/fr-FR/title.txt diff --git a/metadata/fr-FR/changelogs/3.txt b/metadata/fr-FR/changelogs/3.txt new file mode 100644 index 0000000..8804fbe --- /dev/null +++ b/metadata/fr-FR/changelogs/3.txt @@ -0,0 +1,7 @@ +Appui prolongé sur Frame suivante/précédente pour répéter l'action +Rectif. changement de rotation d'écran qui fait perdre les modifications +Rectif. impossible de sélectionner une vidéo +Retiré extension de fichier au moment di choisir le dossier d'export +Ajout de l'appli en raccourci dans le menu Partage +Rectif. éléments UI qui n'étaient pas "responsive" +Rectif. visibilité de boutons de menu sur certaines tailles d'écran diff --git a/metadata/fr-FR/changelogs/4.txt b/metadata/fr-FR/changelogs/4.txt new file mode 100644 index 0000000..4f6157f --- /dev/null +++ b/metadata/fr-FR/changelogs/4.txt @@ -0,0 +1,8 @@ +Traduction chinoise partielle +Màj des dépendances +Changer la vitesse et le framerate d'une vidéo +Intégrer du texte à la vidéo +Sauvegarder un projet +Découper +Inverser les couleurs +Recherche d'une frame spécifique diff --git a/metadata/fr-FR/changelogs/5.txt b/metadata/fr-FR/changelogs/5.txt new file mode 100644 index 0000000..9f6176c --- /dev/null +++ b/metadata/fr-FR/changelogs/5.txt @@ -0,0 +1,12 @@ +Nouvelles traductions: + - Chinois (Simplifié) + - Chinois (Traditionnel) + - Français +Nouvelles fonctionnalités: + - Découpage "lossless" + - Personnalisation des effets de polices de texte +Correction de bugs: + - Rectif. crash lors de l'octroiement de permissions persistantes + - Rectif. recadrage intempestif de la video en mode immersif +autres: + - Màj des dépendances diff --git a/metadata/fr-FR/title.txt b/metadata/fr-FR/title.txt new file mode 100644 index 0000000..0bc6b86 --- /dev/null +++ b/metadata/fr-FR/title.txt @@ -0,0 +1 @@ +Open Video Editor From e046a97145dbe6e00d361efd0e3791c8ef6b5db3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=EF=BC=B7=EF=BC=A9=EF=BC=AE=EF=BC=BA=EF=BC=AF=EF=BC=B2?= =?UTF-8?q?=EF=BC=B4?= <75412448+mikropsoft@users.noreply.github.com> Date: Wed, 10 Apr 2024 20:16:16 +0300 Subject: [PATCH 28/37] Add tr locales (#68) --- app/src/main/res/values-tr/strings.xml | 69 ++++++++++++++++++++++++++ 1 file changed, 69 insertions(+) create mode 100644 app/src/main/res/values-tr/strings.xml diff --git a/app/src/main/res/values-tr/strings.xml b/app/src/main/res/values-tr/strings.xml new file mode 100644 index 0000000..c2c8230 --- /dev/null +++ b/app/src/main/res/values-tr/strings.xml @@ -0,0 +1,69 @@ + + Video Düzenleyiciyi Aç + Geri + Dışa Aktar + Ayarlar + Azaltma çerçevesi + Artırma çerçevesi + Filtreyi kabul et + Filtreyi reddet + Katman çekmecesini aç + Filtre çekmecesini aç + Katman simgesi + Filtreyi kaldır + Video Filtreleri + Düzelt + İptal + Ekle + Dışa Aktarılacak Medya + HDR Modu + Ses Türü + Video Türü + Dışa aktarıldı + Dışa aktarılıyor + Kapat + Hata + Düzenlemek için bir dosya seçin + Proje + Video Katmanları + 10 saniye ileri sar + Oynat/Duraklat + 5 saniye tekrar oynat + Daha fazla dikey seçenek + Kare hızı + Hız + Tema + Eski dosya seçiciyi kullan + Arka Plan Rengi + Ön Plan Rengi + Metin + Set + Boyut + Renk Seçici + Kabul Et + Projeyi kaydet + Kullanıcı arabirimi basamaklama efekti kullan + Çerçeveler + Yeni çerçeve + Girdi şundan küçük veya şuna eşit olmalıdır + Video + Gri tonlamalı + Renkleri Tersine Çevir + Çözünürlük + Genişlik + Yükseklik + Düzen + Ölçek + X + Y + Döndür + Derece + Kırp + Kare hızı, orijinal videonun kare hızından daha düşük olmalıdır + Kayıpsız kesim + Ayar bilgisi + Kayıpsız kesimi etkinleştirmek yalnızca kırpmaları dışa aktarır. + FFmpeg Hatası + Varsayılan + Yazı tipi + \ No newline at end of file From 3882c30875957cfa94eb057e75339d083d70a6a5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?An=C4=B1l=20Uyan=C4=B1k?= Date: Thu, 11 Apr 2024 08:09:44 +0200 Subject: [PATCH 29/37] Added translation using Weblate (Turkish) --- app/src/main/res/values-tr/strings.xml | 2 ++ 1 file changed, 2 insertions(+) create mode 100644 app/src/main/res/values-tr/strings.xml diff --git a/app/src/main/res/values-tr/strings.xml b/app/src/main/res/values-tr/strings.xml new file mode 100644 index 0000000..a6b3dae --- /dev/null +++ b/app/src/main/res/values-tr/strings.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file From 0e66bcd51a3db028ef22a7172d93933ee729511e Mon Sep 17 00:00:00 2001 From: Lucas <57877914+devhyper@users.noreply.github.com> Date: Fri, 12 Apr 2024 04:23:27 +0200 Subject: [PATCH 30/37] Deleted translation using Weblate (Turkish) --- app/src/main/res/values-tr/strings.xml | 2 -- 1 file changed, 2 deletions(-) delete mode 100644 app/src/main/res/values-tr/strings.xml diff --git a/app/src/main/res/values-tr/strings.xml b/app/src/main/res/values-tr/strings.xml deleted file mode 100644 index a6b3dae..0000000 --- a/app/src/main/res/values-tr/strings.xml +++ /dev/null @@ -1,2 +0,0 @@ - - \ No newline at end of file From 8d770f65ebaf82de77e61b6b52c6035bef100240 Mon Sep 17 00:00:00 2001 From: devhyper <57877914+devhyper@users.noreply.github.com> Date: Sun, 21 Apr 2024 14:08:50 -0700 Subject: [PATCH 31/37] Add amoled dark theme #66 --- .../settings/SettingsDataStore.kt | 21 +++++++++++++++++++ .../settings/SettingsScreen.kt | 13 ++++++++++++ .../openvideoeditor/ui/theme/Theme.kt | 12 ++++++++--- 3 files changed, 43 insertions(+), 3 deletions(-) diff --git a/app/src/main/java/io/github/devhyper/openvideoeditor/settings/SettingsDataStore.kt b/app/src/main/java/io/github/devhyper/openvideoeditor/settings/SettingsDataStore.kt index afba10b..322a3c5 100644 --- a/app/src/main/java/io/github/devhyper/openvideoeditor/settings/SettingsDataStore.kt +++ b/app/src/main/java/io/github/devhyper/openvideoeditor/settings/SettingsDataStore.kt @@ -19,6 +19,7 @@ class SettingsDataStore(private val context: Context) { val THEME = stringPreferencesKey("theme") val LEGACY_FILE_PICKER = booleanPreferencesKey("legacy_file_picker") val UI_CASCADING_EFFECT = booleanPreferencesKey("ui_cascading_effect") + val AMOLED_DARK_THEME = booleanPreferencesKey("amoled_dark_theme") } fun getThemeBlocking(): String { @@ -41,6 +42,26 @@ class SettingsDataStore(private val context: Context) { } } + fun getAmoledBlocking(): Boolean { + return runBlocking { + val preferences = context.dataStore.data.first() + preferences[AMOLED_DARK_THEME] ?: false + } + } + + fun getAmoledAsync(): Flow { + return context.dataStore.data + .map { preferences -> + preferences[AMOLED_DARK_THEME] ?: false + } + } + + suspend fun setAmoled(value: Boolean) { + context.dataStore.edit { preferences -> + preferences[AMOLED_DARK_THEME] = value + } + } + fun getLegacyFilePickerBlocking(): Boolean { return runBlocking { val preferences = context.dataStore.data.first() diff --git a/app/src/main/java/io/github/devhyper/openvideoeditor/settings/SettingsScreen.kt b/app/src/main/java/io/github/devhyper/openvideoeditor/settings/SettingsScreen.kt index 482b854..517b97e 100644 --- a/app/src/main/java/io/github/devhyper/openvideoeditor/settings/SettingsScreen.kt +++ b/app/src/main/java/io/github/devhyper/openvideoeditor/settings/SettingsScreen.kt @@ -118,6 +118,19 @@ fun SettingsScreen() { } }) } + item { + val useAmoled = dataStore.getAmoledBlocking() + SwitchSetting( + name = stringResource(R.string.amoled_dark_theme), + startChecked = useAmoled, + onCheckChanged = { + if (it != useAmoled) { + scope.launch { + dataStore.setAmoled(it) + } + } + }) + } } } ) diff --git a/app/src/main/java/io/github/devhyper/openvideoeditor/ui/theme/Theme.kt b/app/src/main/java/io/github/devhyper/openvideoeditor/ui/theme/Theme.kt index da3bf49..c85cdaf 100644 --- a/app/src/main/java/io/github/devhyper/openvideoeditor/ui/theme/Theme.kt +++ b/app/src/main/java/io/github/devhyper/openvideoeditor/ui/theme/Theme.kt @@ -49,11 +49,13 @@ fun OpenVideoEditorTheme( dynamicColor: Boolean = true, content: @Composable () -> Unit ) { + val dataStore = SettingsDataStore(LocalContext.current) + val theme by dataStore.getThemeAsync().collectAsState(dataStore.getThemeBlocking()) + val amoled by dataStore.getAmoledAsync().collectAsState(dataStore.getAmoledBlocking()) + val darkTheme = if (forceDarkTheme) { true } else { - val dataStore = SettingsDataStore(LocalContext.current) - val theme by dataStore.getThemeAsync().collectAsState(dataStore.getThemeBlocking()) when (theme) { "Light" -> false "Dark" -> true @@ -61,7 +63,7 @@ fun OpenVideoEditorTheme( } } - val colorScheme = when { + var colorScheme = when { dynamicColor && Build.VERSION.SDK_INT >= Build.VERSION_CODES.S -> { val context = LocalContext.current if (darkTheme) dynamicDarkColorScheme(context) else dynamicLightColorScheme(context) @@ -70,6 +72,10 @@ fun OpenVideoEditorTheme( darkTheme -> DarkColorScheme else -> LightColorScheme } + if (darkTheme && amoled) { + colorScheme = colorScheme.copy(background = Color.Black, surface = Color.Black) + } + val view = LocalView.current if (!view.isInEditMode) { SideEffect { From 66be14c5c47987a9a9d2804747f47a2499357530 Mon Sep 17 00:00:00 2001 From: devhyper <57877914+devhyper@users.noreply.github.com> Date: Sun, 21 Apr 2024 14:10:39 -0700 Subject: [PATCH 32/37] Fix missing string --- app/src/main/res/values/strings.xml | 1 + 1 file changed, 1 insertion(+) diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 86948dc..0e5edb1 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -66,4 +66,5 @@ FFmpeg Error Default Font + AMOLED dark theme \ No newline at end of file From 1f9e54167162841f903d03108f8ba9b0963c58bb Mon Sep 17 00:00:00 2001 From: devhyper <57877914+devhyper@users.noreply.github.com> Date: Sun, 21 Apr 2024 14:18:30 -0700 Subject: [PATCH 33/37] Proper check for persistable permissions --- .../videoeditor/TransformManager.kt | 16 +++++----------- 1 file changed, 5 insertions(+), 11 deletions(-) diff --git a/app/src/main/java/io/github/devhyper/openvideoeditor/videoeditor/TransformManager.kt b/app/src/main/java/io/github/devhyper/openvideoeditor/videoeditor/TransformManager.kt index 23a2515..199ee12 100644 --- a/app/src/main/java/io/github/devhyper/openvideoeditor/videoeditor/TransformManager.kt +++ b/app/src/main/java/io/github/devhyper/openvideoeditor/videoeditor/TransformManager.kt @@ -3,8 +3,6 @@ package io.github.devhyper.openvideoeditor.videoeditor import android.annotation.SuppressLint import android.content.Context import android.content.Intent -import android.content.pm.PackageManager.PERMISSION_DENIED -import android.os.Binder import androidx.compose.runtime.Composable import androidx.compose.ui.graphics.vector.ImageVector import androidx.core.net.toUri @@ -251,20 +249,16 @@ class TransformManager { } else { ProjectData(uri) } - val perm = context.checkUriPermission( - uri.toUri(), null, null, - Binder.getCallingPid(), Binder.getCallingUid(), - Intent.FLAG_GRANT_READ_URI_PERMISSION - ) - if (perm != PERMISSION_DENIED) { - viewModel.setProjectSavingSupported(true) + var projectSavingSupported = true + try { context.contentResolver.takePersistableUriPermission( uri.toUri(), Intent.FLAG_GRANT_READ_URI_PERMISSION ) - } else { - viewModel.setProjectSavingSupported(false) + } catch (_: SecurityException) { + projectSavingSupported = false } + viewModel.setProjectSavingSupported(projectSavingSupported) hasInitialized = true } originalMedia = MediaItem.fromUri(projectData.uri) From 66342957da812326d2b097c1bfe6e97ca3c737a2 Mon Sep 17 00:00:00 2001 From: devhyper <57877914+devhyper@users.noreply.github.com> Date: Wed, 24 Apr 2024 18:56:09 -0700 Subject: [PATCH 34/37] Request video permissions when necessary #70 --- app/src/main/AndroidManifest.xml | 5 ++ .../videoeditor/TransformManager.kt | 48 ++++++++++++++++--- .../videoeditor/VideoEditorActivity.kt | 17 ++++++- .../videoeditor/VideoEditorScreen.kt | 6 +-- app/src/main/res/values/strings.xml | 1 + 5 files changed, 66 insertions(+), 11 deletions(-) diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index 5012c23..bc03a79 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -9,6 +9,11 @@ android:name="android.permission.ACCESS_NETWORK_STATE" tools:node="remove" /> + + + ) { if (hasInitialized) { if (exoPlayer != player) { @@ -249,14 +258,14 @@ class TransformManager { } else { ProjectData(uri) } - var projectSavingSupported = true - try { - context.contentResolver.takePersistableUriPermission( + var projectSavingSupported = false + if (requestPersistablePermissions( + context, uri.toUri(), - Intent.FLAG_GRANT_READ_URI_PERMISSION + requestVideoPermission ) - } catch (_: SecurityException) { - projectSavingSupported = false + ) { + projectSavingSupported = true } viewModel.setProjectSavingSupported(projectSavingSupported) hasInitialized = true @@ -272,6 +281,31 @@ class TransformManager { } } + private fun requestPersistablePermissions( + context: Context, + uri: Uri, + requestVideoPermission: ActivityResultLauncher + ): Boolean { + try { + context.contentResolver.takePersistableUriPermission( + uri, + Intent.FLAG_GRANT_READ_URI_PERMISSION + ) + } catch (_: SecurityException) { + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.TIRAMISU) { + if (context.checkSelfPermission(Manifest.permission.READ_MEDIA_VIDEO) != PackageManager.PERMISSION_GRANTED) { + requestVideoPermission.launch(Manifest.permission.READ_MEDIA_VIDEO) + } + } else { + if (context.checkSelfPermission(Manifest.permission.READ_EXTERNAL_STORAGE) != PackageManager.PERMISSION_GRANTED) { + requestVideoPermission.launch(Manifest.permission.READ_EXTERNAL_STORAGE) + } + } + return false + } + return true + } + private fun getEffectArray(): MutableList { val effectArray = mutableListOf() for (userEffect in projectData.videoEffects) { diff --git a/app/src/main/java/io/github/devhyper/openvideoeditor/videoeditor/VideoEditorActivity.kt b/app/src/main/java/io/github/devhyper/openvideoeditor/videoeditor/VideoEditorActivity.kt index 80eb313..07c3056 100644 --- a/app/src/main/java/io/github/devhyper/openvideoeditor/videoeditor/VideoEditorActivity.kt +++ b/app/src/main/java/io/github/devhyper/openvideoeditor/videoeditor/VideoEditorActivity.kt @@ -4,6 +4,7 @@ import android.content.Intent import android.net.Uri import android.os.Build import android.os.Bundle +import android.widget.Toast import androidx.activity.ComponentActivity import androidx.activity.compose.setContent import androidx.activity.result.ActivityResultLauncher @@ -11,6 +12,7 @@ import androidx.activity.result.contract.ActivityResultContracts import androidx.compose.runtime.collectAsState import androidx.compose.runtime.getValue import androidx.lifecycle.viewmodel.compose.viewModel +import io.github.devhyper.openvideoeditor.R import io.github.devhyper.openvideoeditor.misc.PROJECT_MIME_TYPE import io.github.devhyper.openvideoeditor.misc.setImmersiveMode import io.github.devhyper.openvideoeditor.misc.setupSystemUi @@ -19,6 +21,7 @@ import io.github.devhyper.openvideoeditor.misc.setupSystemUi class VideoEditorActivity : ComponentActivity() { private lateinit var createDocument: ActivityResultLauncher private lateinit var createProject: ActivityResultLauncher + private lateinit var requestVideoPermission: ActivityResultLauncher private lateinit var viewModel: VideoEditorViewModel override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) @@ -49,6 +52,18 @@ class VideoEditorActivity : ComponentActivity() { viewModel.setProjectOutputPath(uri.toString()) } } + requestVideoPermission = + registerForActivityResult(ActivityResultContracts.RequestPermission()) { + if (it == true) { + recreate() + } else { + val text = getString(R.string.permission_denied_grant_video_permissions) + val duration = Toast.LENGTH_SHORT + + val toast = Toast.makeText(this, text, duration) + toast.show() + } + } var uri: String? = null if (intent.action == Intent.ACTION_EDIT) { @@ -73,7 +88,7 @@ class VideoEditorActivity : ComponentActivity() { viewModel = viewModel { viewModel } val controlsVisible by viewModel.controlsVisible.collectAsState() setImmersiveMode(!controlsVisible) - VideoEditorScreen(it, createDocument, createProject) + VideoEditorScreen(it, createDocument, createProject, requestVideoPermission) } } ?: finish() } diff --git a/app/src/main/java/io/github/devhyper/openvideoeditor/videoeditor/VideoEditorScreen.kt b/app/src/main/java/io/github/devhyper/openvideoeditor/videoeditor/VideoEditorScreen.kt index cf2680e..f4b5a62 100644 --- a/app/src/main/java/io/github/devhyper/openvideoeditor/videoeditor/VideoEditorScreen.kt +++ b/app/src/main/java/io/github/devhyper/openvideoeditor/videoeditor/VideoEditorScreen.kt @@ -135,9 +135,9 @@ import kotlinx.coroutines.launch fun VideoEditorScreen( uri: String, createDocument: ActivityResultLauncher, - createProject: ActivityResultLauncher + createProject: ActivityResultLauncher, + requestVideoPermission: ActivityResultLauncher ) { - val viewModel = viewModel { VideoEditorViewModel() } val context = LocalContext.current @@ -163,7 +163,7 @@ fun VideoEditorScreen( val transformManager = remember { viewModel.transformManager.apply { - init(player, uri, context, viewModel) + init(player, uri, context, viewModel, requestVideoPermission) player.seekTo(currentTime) } } diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 0e5edb1..1d351e8 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -67,4 +67,5 @@ Default Font AMOLED dark theme + Permission denied, grant video permissions \ No newline at end of file From 27e216d4ca8f2a1fc07a31051fff6a5e2006da1d Mon Sep 17 00:00:00 2001 From: devhyper <57877914+devhyper@users.noreply.github.com> Date: Wed, 24 Apr 2024 19:01:34 -0700 Subject: [PATCH 35/37] Update deps --- app/build.gradle.kts | 18 +++++++++--------- .../videoeditor/TransformManager.kt | 4 ++-- .../videoeditor/VideoEditorActivity.kt | 8 ++++---- .../videoeditor/VideoEditorScreen.kt | 16 ++++++++-------- 4 files changed, 23 insertions(+), 23 deletions(-) diff --git a/app/build.gradle.kts b/app/build.gradle.kts index a09aa94..70280a3 100644 --- a/app/build.gradle.kts +++ b/app/build.gradle.kts @@ -62,23 +62,23 @@ android { } dependencies { - implementation("androidx.core:core-ktx:1.12.0") + implementation("androidx.core:core-ktx:1.13.0") implementation("androidx.lifecycle:lifecycle-runtime-ktx:2.7.0") implementation("androidx.lifecycle:lifecycle-runtime-compose:2.7.0") - implementation("androidx.activity:activity-compose:1.8.2") - implementation(platform("androidx.compose:compose-bom:2024.03.00")) + implementation("androidx.activity:activity-compose:1.9.0") + implementation(platform("androidx.compose:compose-bom:2024.04.01")) implementation("androidx.compose.ui:ui") implementation("androidx.compose.ui:ui-graphics") implementation("androidx.compose.ui:ui-tooling-preview") implementation("androidx.compose.material3:material3") implementation("androidx.compose.material:material-icons-core") implementation("androidx.compose.material:material-icons-extended") - implementation("androidx.media3:media3-exoplayer:1.3.0") - implementation("androidx.media3:media3-transformer:1.3.0") - implementation("androidx.media3:media3-effect:1.3.0") - implementation("androidx.media3:media3-common:1.3.0") + implementation("androidx.media3:media3-exoplayer:1.3.1") + implementation("androidx.media3:media3-transformer:1.3.1") + implementation("androidx.media3:media3-effect:1.3.1") + implementation("androidx.media3:media3-common:1.3.1") implementation("androidx.navigation:navigation-compose:2.7.7") - implementation("androidx.datastore:datastore-preferences:1.0.0") + implementation("androidx.datastore:datastore-preferences:1.1.0") implementation("org.jetbrains.kotlinx:kotlinx-collections-immutable:0.3.7") implementation("com.godaddy.android.colorpicker:compose-color-picker:0.7.0") implementation("com.godaddy.android.colorpicker:compose-color-picker-android:0.7.0") @@ -86,7 +86,7 @@ dependencies { testImplementation("junit:junit:4.13.2") androidTestImplementation("androidx.test.ext:junit:1.1.5") androidTestImplementation("androidx.test.espresso:espresso-core:3.5.1") - androidTestImplementation(platform("androidx.compose:compose-bom:2024.03.00")) + androidTestImplementation(platform("androidx.compose:compose-bom:2024.04.01")) androidTestImplementation("androidx.compose.ui:ui-test-junit4") debugImplementation("androidx.compose.ui:ui-tooling") debugImplementation("androidx.compose.ui:ui-test-manifest") diff --git a/app/src/main/java/io/github/devhyper/openvideoeditor/videoeditor/TransformManager.kt b/app/src/main/java/io/github/devhyper/openvideoeditor/videoeditor/TransformManager.kt index 8f6c3e1..f715828 100644 --- a/app/src/main/java/io/github/devhyper/openvideoeditor/videoeditor/TransformManager.kt +++ b/app/src/main/java/io/github/devhyper/openvideoeditor/videoeditor/TransformManager.kt @@ -238,7 +238,7 @@ class TransformManager { uri: String, context: Context, viewModel: VideoEditorViewModel, - requestVideoPermission: ActivityResultLauncher + requestVideoPermission: ActivityResultLauncher ) { if (hasInitialized) { if (exoPlayer != player) { @@ -284,7 +284,7 @@ class TransformManager { private fun requestPersistablePermissions( context: Context, uri: Uri, - requestVideoPermission: ActivityResultLauncher + requestVideoPermission: ActivityResultLauncher ): Boolean { try { context.contentResolver.takePersistableUriPermission( diff --git a/app/src/main/java/io/github/devhyper/openvideoeditor/videoeditor/VideoEditorActivity.kt b/app/src/main/java/io/github/devhyper/openvideoeditor/videoeditor/VideoEditorActivity.kt index 07c3056..c38d2f2 100644 --- a/app/src/main/java/io/github/devhyper/openvideoeditor/videoeditor/VideoEditorActivity.kt +++ b/app/src/main/java/io/github/devhyper/openvideoeditor/videoeditor/VideoEditorActivity.kt @@ -19,9 +19,9 @@ import io.github.devhyper.openvideoeditor.misc.setupSystemUi class VideoEditorActivity : ComponentActivity() { - private lateinit var createDocument: ActivityResultLauncher - private lateinit var createProject: ActivityResultLauncher - private lateinit var requestVideoPermission: ActivityResultLauncher + private lateinit var createDocument: ActivityResultLauncher + private lateinit var createProject: ActivityResultLauncher + private lateinit var requestVideoPermission: ActivityResultLauncher private lateinit var viewModel: VideoEditorViewModel override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) @@ -54,7 +54,7 @@ class VideoEditorActivity : ComponentActivity() { } requestVideoPermission = registerForActivityResult(ActivityResultContracts.RequestPermission()) { - if (it == true) { + if (it) { recreate() } else { val text = getString(R.string.permission_denied_grant_video_permissions) diff --git a/app/src/main/java/io/github/devhyper/openvideoeditor/videoeditor/VideoEditorScreen.kt b/app/src/main/java/io/github/devhyper/openvideoeditor/videoeditor/VideoEditorScreen.kt index f4b5a62..799266d 100644 --- a/app/src/main/java/io/github/devhyper/openvideoeditor/videoeditor/VideoEditorScreen.kt +++ b/app/src/main/java/io/github/devhyper/openvideoeditor/videoeditor/VideoEditorScreen.kt @@ -134,9 +134,9 @@ import kotlinx.coroutines.launch @Composable fun VideoEditorScreen( uri: String, - createDocument: ActivityResultLauncher, - createProject: ActivityResultLauncher, - requestVideoPermission: ActivityResultLauncher + createDocument: ActivityResultLauncher, + createProject: ActivityResultLauncher, + requestVideoPermission: ActivityResultLauncher ) { val viewModel = viewModel { VideoEditorViewModel() } @@ -365,8 +365,8 @@ private fun PlayerControls( isPlaying: () -> Boolean, title: () -> String, transformManager: TransformManager, - createDocument: ActivityResultLauncher, - createProject: ActivityResultLauncher, + createDocument: ActivityResultLauncher, + createProject: ActivityResultLauncher, onReplayClick: () -> Unit, onForwardClick: () -> Unit, onPauseToggle: () -> Unit, @@ -457,8 +457,8 @@ private fun TopControls( modifier: Modifier = Modifier, title: () -> String, transformManager: TransformManager, - createDocument: ActivityResultLauncher, - createProject: ActivityResultLauncher + createDocument: ActivityResultLauncher, + createProject: ActivityResultLauncher ) { val activity = LocalContext.current as Activity val viewModel = viewModel { VideoEditorViewModel() } @@ -1101,7 +1101,7 @@ private fun FilterDialog( @Composable private fun ExportDialog( transformManager: TransformManager, - createDocument: ActivityResultLauncher, + createDocument: ActivityResultLauncher, title: String, activity: Activity, onDismissRequest: () -> Unit From e1597a9e280166b4712016748dec728194939fbb Mon Sep 17 00:00:00 2001 From: devhyper <57877914+devhyper@users.noreply.github.com> Date: Wed, 24 Apr 2024 19:10:44 -0700 Subject: [PATCH 36/37] Allow view intent #73 --- app/src/main/AndroidManifest.xml | 9 +++++++++ .../openvideoeditor/videoeditor/VideoEditorActivity.kt | 2 +- 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index bc03a79..a5a2241 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -61,6 +61,15 @@ + + + + + + + + + diff --git a/app/src/main/java/io/github/devhyper/openvideoeditor/videoeditor/VideoEditorActivity.kt b/app/src/main/java/io/github/devhyper/openvideoeditor/videoeditor/VideoEditorActivity.kt index c38d2f2..326d9d4 100644 --- a/app/src/main/java/io/github/devhyper/openvideoeditor/videoeditor/VideoEditorActivity.kt +++ b/app/src/main/java/io/github/devhyper/openvideoeditor/videoeditor/VideoEditorActivity.kt @@ -66,7 +66,7 @@ class VideoEditorActivity : ComponentActivity() { } var uri: String? = null - if (intent.action == Intent.ACTION_EDIT) { + if (intent.action == Intent.ACTION_EDIT || intent.action == Intent.ACTION_VIEW) { intent.dataString?.let { uri = it } From ece0f0de4e5cec4c5ca5103160ccf0726270a0b6 Mon Sep 17 00:00:00 2001 From: devhyper <57877914+devhyper@users.noreply.github.com> Date: Sat, 27 Apr 2024 15:40:22 -0700 Subject: [PATCH 37/37] Version 1.1.2 --- app/build.gradle.kts | 4 ++-- metadata/en-US/changelogs/6.txt | 13 +++++++++++++ 2 files changed, 15 insertions(+), 2 deletions(-) create mode 100644 metadata/en-US/changelogs/6.txt diff --git a/app/build.gradle.kts b/app/build.gradle.kts index 70280a3..aba6ca2 100644 --- a/app/build.gradle.kts +++ b/app/build.gradle.kts @@ -11,8 +11,8 @@ android { applicationId = "io.github.devhyper.openvideoeditor" minSdk = 26 targetSdk = 34 - versionCode = 5 - versionName = "1.1.1" + versionCode = 6 + versionName = "1.1.2" testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner" vectorDrawables { diff --git a/metadata/en-US/changelogs/6.txt b/metadata/en-US/changelogs/6.txt new file mode 100644 index 0000000..19f27e6 --- /dev/null +++ b/metadata/en-US/changelogs/6.txt @@ -0,0 +1,13 @@ +New translations: + - Turkish @mikropsoft + - Portuguese @Diegofmar + - Spanish @gallegonovato +New features: + - Allow view intent #73 + - Add AMOLED dark theme #66 +Bug fixes: + - Fix crash on edit #70 + - Fix crash on security exception +Misc: + - Reduce app size + - Update dependencies