diff --git a/app/src/main/assets/logo.png b/app/src/main/assets/logo.png new file mode 100644 index 0000000..1a162e8 Binary files /dev/null and b/app/src/main/assets/logo.png differ diff --git a/app/src/main/java/devs/org/calculator/activities/AudioGalleryActivity.kt b/app/src/main/java/devs/org/calculator/activities/AudioGalleryActivity.kt index c1e54c7..0af1f16 100644 --- a/app/src/main/java/devs/org/calculator/activities/AudioGalleryActivity.kt +++ b/app/src/main/java/devs/org/calculator/activities/AudioGalleryActivity.kt @@ -54,7 +54,7 @@ class AudioGalleryActivity : BaseGalleryActivity() { } } - override fun openPreview(file: File) { + override fun openPreview() { // Implement audio preview } } \ No newline at end of file diff --git a/app/src/main/java/devs/org/calculator/activities/BaseGalleryActivity.kt b/app/src/main/java/devs/org/calculator/activities/BaseGalleryActivity.kt index 1e533b9..5ad2f47 100644 --- a/app/src/main/java/devs/org/calculator/activities/BaseGalleryActivity.kt +++ b/app/src/main/java/devs/org/calculator/activities/BaseGalleryActivity.kt @@ -62,7 +62,7 @@ abstract class BaseGalleryActivity : AppCompatActivity() { adapter.submitList(files) } - abstract fun openPreview(file: File) + abstract fun openPreview() private fun checkPermissions() { if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.R) { diff --git a/app/src/main/java/devs/org/calculator/activities/DocumentsActivity.kt b/app/src/main/java/devs/org/calculator/activities/DocumentsActivity.kt index 18378cd..149d78c 100644 --- a/app/src/main/java/devs/org/calculator/activities/DocumentsActivity.kt +++ b/app/src/main/java/devs/org/calculator/activities/DocumentsActivity.kt @@ -54,7 +54,7 @@ class DocumentsActivity : BaseGalleryActivity() { } } - override fun openPreview(file: File) { + override fun openPreview() { // Implement document preview } } \ No newline at end of file diff --git a/app/src/main/java/devs/org/calculator/activities/ImageGalleryActivity.kt b/app/src/main/java/devs/org/calculator/activities/ImageGalleryActivity.kt index 60ad82a..6786395 100644 --- a/app/src/main/java/devs/org/calculator/activities/ImageGalleryActivity.kt +++ b/app/src/main/java/devs/org/calculator/activities/ImageGalleryActivity.kt @@ -1,7 +1,6 @@ package devs.org.calculator.activities import android.app.RecoverableSecurityException -import android.content.Context import android.content.Intent import android.net.Uri import android.os.Build @@ -14,10 +13,8 @@ import androidx.activity.result.ActivityResultLauncher import androidx.activity.result.IntentSenderRequest import androidx.activity.result.contract.ActivityResultContracts import androidx.documentfile.provider.DocumentFile -import androidx.lifecycle.lifecycleScope import devs.org.calculator.utils.FileManager import kotlinx.coroutines.Dispatchers -import kotlinx.coroutines.launch import kotlinx.coroutines.withContext import java.io.File @@ -28,62 +25,6 @@ class ImageGalleryActivity : BaseGalleryActivity() { private var selectedImageUri: Uri? = null private lateinit var pickImageLauncher: ActivityResultLauncher - private suspend fun deletePhotoFromExternalStorage(photoUri: Uri) { - withContext(Dispatchers.IO) { - try { - // First try to delete using DocumentFile - val documentFile = DocumentFile.fromSingleUri(this@ImageGalleryActivity, photoUri) - if (documentFile?.exists() == true && documentFile.canWrite()) { - val deleted = documentFile.delete() - withContext(Dispatchers.Main) { - if (deleted) { - Toast.makeText(this@ImageGalleryActivity, "File deleted successfully", Toast.LENGTH_SHORT).show() - selectedImageUri = null - } else { - Toast.makeText(this@ImageGalleryActivity, "Failed to delete file", Toast.LENGTH_SHORT).show() - } - } - return@withContext - } - - // If DocumentFile approach fails, try content resolver - try { - contentResolver.delete(photoUri, null, null) - withContext(Dispatchers.Main) { - Toast.makeText(this@ImageGalleryActivity, "File deleted successfully", Toast.LENGTH_SHORT).show() - } - } catch (e: SecurityException) { - if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.Q) { - val intentSender = when { - Build.VERSION.SDK_INT >= Build.VERSION_CODES.R -> { - MediaStore.createDeleteRequest(contentResolver, listOf(photoUri)).intentSender - } - else -> { - val recoverableSecurityException = e as? RecoverableSecurityException - recoverableSecurityException?.userAction?.actionIntent?.intentSender - } - } - intentSender?.let { sender -> - withContext(Dispatchers.Main) { - intentSenderLauncher.launch( - IntentSenderRequest.Builder(sender).build() - ) - } - } - } - } - } catch (e: Exception) { - withContext(Dispatchers.Main) { - Toast.makeText( - this@ImageGalleryActivity, - "Error deleting file: ${e.message}", - Toast.LENGTH_LONG - ).show() - } - } - } - } - override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setupIntentSenderLauncher() @@ -156,10 +97,9 @@ class ImageGalleryActivity : BaseGalleryActivity() { } } - override fun openPreview(file: File) { + override fun openPreview() { val intent = Intent(this, PreviewActivity::class.java).apply { - putExtra(PreviewActivity.EXTRA_FILE_PATH, file.absolutePath) - putExtra(PreviewActivity.EXTRA_FILE_TYPE, fileType.name) + putExtra("type", fileType) } startActivity(intent) } diff --git a/app/src/main/java/devs/org/calculator/activities/VideoGalleryActivity.kt b/app/src/main/java/devs/org/calculator/activities/VideoGalleryActivity.kt index ed72f2b..6de8b31 100644 --- a/app/src/main/java/devs/org/calculator/activities/VideoGalleryActivity.kt +++ b/app/src/main/java/devs/org/calculator/activities/VideoGalleryActivity.kt @@ -55,10 +55,9 @@ class VideoGalleryActivity : BaseGalleryActivity() { } } - override fun openPreview(file: File) { + override fun openPreview() { val intent = Intent(this, PreviewActivity::class.java).apply { - putExtra(PreviewActivity.EXTRA_FILE_PATH, file.absolutePath) - putExtra(PreviewActivity.EXTRA_FILE_TYPE, fileType.name) + putExtra("type", fileType) } startActivity(intent) } diff --git a/app/src/main/res/layout/activity_preview.xml b/app/src/main/res/layout/activity_preview.xml index b3b88ad..4713a58 100644 --- a/app/src/main/res/layout/activity_preview.xml +++ b/app/src/main/res/layout/activity_preview.xml @@ -1,5 +1,6 @@ - @@ -8,12 +9,44 @@ android:id="@+id/toolbar" android:layout_width="match_parent" android:layout_height="?attr/actionBarSize" - android:background="?attr/colorPrimary" /> + android:background="?attr/colorPrimary" + app:layout_constraintEnd_toEndOf="parent" + app:layout_constraintStart_toStartOf="parent" + app:layout_constraintTop_toTopOf="parent" /> + app:layout_constraintBottom_toBottomOf="parent" + app:layout_constraintEnd_toEndOf="parent" + app:layout_constraintStart_toStartOf="parent" + app:layout_constraintTop_toBottomOf="@+id/toolbar" /> - \ No newline at end of file + + + + + + + + + \ No newline at end of file