From 1e674fcc10aa0f99a9a96817ef7ea46d78514a2f Mon Sep 17 00:00:00 2001 From: alperozturk96 Date: Mon, 19 Oct 2026 09:34:27 +0200 Subject: [PATCH 1/2] refactor(preview): image rename to media Signed-off-by: alperozturk96 --- ...ctivityIT.kt => PreviewMediaActivityIT.kt} | 7 ++--- app/src/main/AndroidManifest.xml | 2 +- .../nextcloud/client/di/ComponentsModule.kt | 8 ++--- .../jobs/download/FileDownloadIntents.kt | 8 ++--- .../AppNotificationManagerImpl.kt | 8 ++--- .../client/player/media3/PlaybackService.kt | 6 ++-- .../SystemBarBackgroundCallbacks.kt | 4 +-- .../datamodel/ThumbnailsCacheManager.java | 10 +++---- .../android/ui/activity/FileActivity.java | 4 +-- .../ui/activity/FileDisplayActivity.kt | 24 +++++++-------- .../helper/UploadListAdapterHelper.kt | 4 +-- .../android/ui/fragment/ActivitiesFragment.kt | 6 ++-- .../ui/fragment/albums/AlbumItemsFragment.kt | 4 +-- .../ui/preview/FileDownloadFragment.kt | 2 +- ...ageActivity.kt => PreviewMediaActivity.kt} | 10 +++---- ...ageFragment.kt => PreviewMediaFragment.kt} | 30 +++++++++---------- .../ui/preview/PreviewMediaPagerAdapter.kt | 4 +-- .../ui/preview/PreviewPlaybackFragment.kt | 4 +-- 18 files changed, 72 insertions(+), 73 deletions(-) rename app/src/androidTest/java/com/owncloud/android/ui/preview/{PreviewImageActivityIT.kt => PreviewMediaActivityIT.kt} (97%) rename app/src/main/java/com/owncloud/android/ui/preview/{PreviewImageActivity.kt => PreviewMediaActivity.kt} (98%) rename app/src/main/java/com/owncloud/android/ui/preview/{PreviewImageFragment.kt => PreviewMediaFragment.kt} (97%) diff --git a/app/src/androidTest/java/com/owncloud/android/ui/preview/PreviewImageActivityIT.kt b/app/src/androidTest/java/com/owncloud/android/ui/preview/PreviewMediaActivityIT.kt similarity index 97% rename from app/src/androidTest/java/com/owncloud/android/ui/preview/PreviewImageActivityIT.kt rename to app/src/androidTest/java/com/owncloud/android/ui/preview/PreviewMediaActivityIT.kt index b87398f46130..f7053c7f5497 100644 --- a/app/src/androidTest/java/com/owncloud/android/ui/preview/PreviewImageActivityIT.kt +++ b/app/src/androidTest/java/com/owncloud/android/ui/preview/PreviewMediaActivityIT.kt @@ -36,11 +36,10 @@ import org.junit.After import org.junit.Assert.assertFalse import org.junit.Assert.assertTrue import org.junit.Before -import org.junit.Ignore import org.junit.Test import java.io.File -class PreviewImageActivityIT : AbstractOnServerIT() { +class PreviewMediaActivityIT : AbstractOnServerIT() { companion object { private const val REMOTE_FOLDER: String = "/PreviewImageActivityIT/" } @@ -152,8 +151,8 @@ class PreviewImageActivityIT : AbstractOnServerIT() { } val expectedFileOrder = fileListTransformation(testFiles) - val intent = PreviewImageActivity.previewFileIntent(targetContext, user, expectedFileOrder.first()) - launchActivity(intent).use { scenario -> + val intent = PreviewMediaActivity.previewFileIntent(targetContext, user, expectedFileOrder.first()) + launchActivity(intent).use { scenario -> if (offline) { scenario.onActivity { activity -> activity.connectivityService = connectivityServiceMock diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index 22a2c841ab65..410c97c17885 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -384,7 +384,7 @@ android:exported="false" android:theme="@style/PreferenceTheme" /> { if (connectivityService.isInternetWalled()) { - if (fileFragment instanceof PreviewImageFragment) { - ((PreviewImageFragment) fileFragment).setNoConnectionErrorMessage(); + if (fileFragment instanceof PreviewMediaFragment) { + ((PreviewMediaFragment) fileFragment).setNoConnectionErrorMessage(); } } else { - if (fileFragment instanceof PreviewImageFragment) { - ((PreviewImageFragment) fileFragment).handleUnsupportedImage(); + if (fileFragment instanceof PreviewMediaFragment) { + ((PreviewMediaFragment) fileFragment).handleUnsupportedImage(); } } }).start(); diff --git a/app/src/main/java/com/owncloud/android/ui/activity/FileActivity.java b/app/src/main/java/com/owncloud/android/ui/activity/FileActivity.java index 3761024e591b..cb1929cf3139 100644 --- a/app/src/main/java/com/owncloud/android/ui/activity/FileActivity.java +++ b/app/src/main/java/com/owncloud/android/ui/activity/FileActivity.java @@ -92,7 +92,7 @@ import com.owncloud.android.ui.fragment.filesRepository.RemoteFilesRepository; import com.owncloud.android.ui.helpers.CredentialsUpdateHelper; import com.owncloud.android.ui.helpers.FileOperationsHelper; -import com.owncloud.android.ui.preview.PreviewImageActivity; +import com.owncloud.android.ui.preview.PreviewMediaActivity; import com.owncloud.android.utils.ClipboardUtil; import com.owncloud.android.utils.ErrorMessageAdapter; import com.owncloud.android.utils.FilesSyncHelper; @@ -220,7 +220,7 @@ protected void onCreate(Bundle savedInstanceState) { savedInstanceState.getLong(KEY_WAITING_FOR_OP_ID, Long.MAX_VALUE) ); final ActionBar actionBar = getSupportActionBar(); - if (actionBar != null && !(this instanceof PreviewImageActivity)) { + if (actionBar != null && !(this instanceof PreviewMediaActivity)) { viewThemeUtils.files.themeActionBar(this, actionBar, savedInstanceState.getString(KEY_ACTION_BAR_TITLE)); } } else { diff --git a/app/src/main/java/com/owncloud/android/ui/activity/FileDisplayActivity.kt b/app/src/main/java/com/owncloud/android/ui/activity/FileDisplayActivity.kt index 593c9c60e9cd..bf2e1194849d 100644 --- a/app/src/main/java/com/owncloud/android/ui/activity/FileDisplayActivity.kt +++ b/app/src/main/java/com/owncloud/android/ui/activity/FileDisplayActivity.kt @@ -155,8 +155,8 @@ import com.owncloud.android.ui.helpers.UriUploader import com.owncloud.android.ui.interfaces.TransactionInterface import com.owncloud.android.ui.navigation.NavigatorScreen import com.owncloud.android.ui.navigation.animator.NavigationAnimator -import com.owncloud.android.ui.preview.PreviewImageActivity -import com.owncloud.android.ui.preview.PreviewImageFragment +import com.owncloud.android.ui.preview.PreviewMediaActivity +import com.owncloud.android.ui.preview.PreviewMediaFragment import com.owncloud.android.ui.preview.PreviewTextFileFragment import com.owncloud.android.ui.preview.PreviewTextFragment import com.owncloud.android.ui.preview.PreviewTextStringFragment @@ -1849,7 +1849,7 @@ class FileDisplayActivity : // Force the preview if the file is an image or text file if (uploadWasFine) { file?.let { - if (PreviewImageFragment.canBePreviewed(it)) { + if (PreviewMediaFragment.canBePreviewed(it)) { startImagePreview(it, true) } else if (PreviewTextFileFragment.canBePreviewed(it)) { startTextPreview(it, true) @@ -1954,7 +1954,7 @@ class FileDisplayActivity : } fileIDForImmediatePreview = -1 - if (PreviewImageFragment.canBePreviewed(currentFile)) { + if (PreviewMediaFragment.canBePreviewed(currentFile)) { startImagePreview(currentFile, currentFile.isDown) } else { previewFile(currentFile, null) @@ -2114,7 +2114,7 @@ class FileDisplayActivity : } fun canPreviewInMediaPager(file: OCFile?): Boolean = - PreviewImageFragment.canBePreviewed(file) || (file != null && MimeTypeUtil.isVideo(file)) + PreviewMediaFragment.canBePreviewed(file) || (file != null && MimeTypeUtil.isVideo(file)) fun previewImageWithSearchContext( file: OCFile, @@ -2780,12 +2780,12 @@ class FileDisplayActivity : return null } - return Intent(this, PreviewImageActivity::class.java).apply { + return Intent(this, PreviewMediaActivity::class.java).apply { putExtra(EXTRA_FILE, file) putExtra(EXTRA_LIVE_PHOTO_FILE, file.livePhotoVideo) putExtra(EXTRA_USER, user.get()) - type?.let { putExtra(PreviewImageActivity.EXTRA_VIRTUAL_TYPE, it) } - mediaState?.let { putExtra(PreviewImageActivity.EXTRA_MEDIA_STATE, it) } + type?.let { putExtra(PreviewMediaActivity.EXTRA_VIRTUAL_TYPE, it) } + mediaState?.let { putExtra(PreviewMediaActivity.EXTRA_MEDIA_STATE, it) } } } @@ -3010,13 +3010,13 @@ class FileDisplayActivity : startTextPreview(file, true) } else if (event.intent.getBooleanExtra(AUDIO_PREVIEW, false)) { startAudioPreview(file, true, true) - } else if (bundle.containsKey(PreviewImageActivity.EXTRA_VIRTUAL_TYPE)) { - val virtualType = bundle.get(PreviewImageActivity.EXTRA_VIRTUAL_TYPE) as VirtualFolderType? + } else if (bundle.containsKey(PreviewMediaActivity.EXTRA_VIRTUAL_TYPE)) { + val virtualType = bundle.get(PreviewMediaActivity.EXTRA_VIRTUAL_TYPE) as VirtualFolderType? startImagePreview( file, true, virtualType, - bundle.getSerializableArgument(PreviewImageActivity.EXTRA_MEDIA_STATE, MediaState::class.java), + bundle.getSerializableArgument(PreviewMediaActivity.EXTRA_MEDIA_STATE, MediaState::class.java), galleryThumbnailOf(file) ) } else { @@ -3410,7 +3410,7 @@ class FileDisplayActivity : @JvmStatic fun openFileIntent(context: Context?, user: User?, file: OCFile?): Intent { - val intent = Intent(context, PreviewImageActivity::class.java) + val intent = Intent(context, PreviewMediaActivity::class.java) intent.putExtra(EXTRA_FILE, file) intent.putExtra(EXTRA_USER, user) return intent diff --git a/app/src/main/java/com/owncloud/android/ui/adapter/uploadList/helper/UploadListAdapterHelper.kt b/app/src/main/java/com/owncloud/android/ui/adapter/uploadList/helper/UploadListAdapterHelper.kt index bb3ef838b76e..f09a00bfbf1e 100644 --- a/app/src/main/java/com/owncloud/android/ui/adapter/uploadList/helper/UploadListAdapterHelper.kt +++ b/app/src/main/java/com/owncloud/android/ui/adapter/uploadList/helper/UploadListAdapterHelper.kt @@ -19,7 +19,7 @@ import com.owncloud.android.lib.common.utils.Log_OC import com.owncloud.android.ui.activity.ConflictsResolveActivity import com.owncloud.android.ui.activity.DrawerActivity import com.owncloud.android.ui.activity.FileDisplayActivity -import com.owncloud.android.ui.preview.PreviewImageFragment +import com.owncloud.android.ui.preview.PreviewMediaFragment import com.owncloud.android.utils.MimeType import com.owncloud.android.utils.MimeTypeUtil import java.io.File @@ -64,7 +64,7 @@ class UploadListAdapterHelper(private val activity: DrawerActivity) { } val optionalUser = activity.user - if (PreviewImageFragment.canBePreviewed(file) && optionalUser.isPresent) { + if (PreviewMediaFragment.canBePreviewed(file) && optionalUser.isPresent) { // show image preview and stay in uploads tab val intent = FileDisplayActivity.openFileIntent(activity, optionalUser.get(), file) activity.startActivity(intent) diff --git a/app/src/main/java/com/owncloud/android/ui/fragment/ActivitiesFragment.kt b/app/src/main/java/com/owncloud/android/ui/fragment/ActivitiesFragment.kt index 524b6c078aa0..68b403c5d7a3 100644 --- a/app/src/main/java/com/owncloud/android/ui/fragment/ActivitiesFragment.kt +++ b/app/src/main/java/com/owncloud/android/ui/fragment/ActivitiesFragment.kt @@ -35,8 +35,8 @@ import com.owncloud.android.ui.activity.FileActivity import com.owncloud.android.ui.activity.FileDisplayActivity import com.owncloud.android.ui.interfaces.ActivityListInterface import com.owncloud.android.ui.navigation.NavigatorActivity -import com.owncloud.android.ui.preview.PreviewImageActivity -import com.owncloud.android.ui.preview.PreviewImageFragment.Companion.canBePreviewed +import com.owncloud.android.ui.preview.PreviewMediaActivity +import com.owncloud.android.ui.preview.PreviewMediaFragment.Companion.canBePreviewed import com.owncloud.android.utils.theme.ViewThemeUtils import javax.inject.Inject @@ -179,7 +179,7 @@ class ActivitiesFragment : val context = context ?: return val user = userAccountManager.user val intent = if (canBePreviewed(ocFile)) { - Intent(context, PreviewImageActivity::class.java) + Intent(context, PreviewMediaActivity::class.java) } else { Intent(context, FileDisplayActivity::class.java) }.apply { diff --git a/app/src/main/java/com/owncloud/android/ui/fragment/albums/AlbumItemsFragment.kt b/app/src/main/java/com/owncloud/android/ui/fragment/albums/AlbumItemsFragment.kt index fd790a616fd0..de3baaeb836a 100644 --- a/app/src/main/java/com/owncloud/android/ui/fragment/albums/AlbumItemsFragment.kt +++ b/app/src/main/java/com/owncloud/android/ui/fragment/albums/AlbumItemsFragment.kt @@ -87,7 +87,7 @@ import com.owncloud.android.ui.fragment.albums.util.AlbumCollageLayout import com.owncloud.android.ui.fragment.helper.ColumnCount import com.owncloud.android.ui.helpers.UriUploader import com.owncloud.android.ui.interfaces.OCFileListFragmentInterface -import com.owncloud.android.ui.preview.PreviewImageFragment +import com.owncloud.android.ui.preview.PreviewMediaFragment import com.owncloud.android.utils.ClipboardUtil import com.owncloud.android.utils.ErrorMessageAdapter import com.owncloud.android.utils.MimeTypeUtil @@ -539,7 +539,7 @@ class AlbumItemsFragment : val activity = containerActivity as? FileDisplayActivity ?: return when { - PreviewImageFragment.canBePreviewed(file) -> + PreviewMediaFragment.canBePreviewed(file) -> activity.startImagePreview(file, !file.isDown, VirtualFolderType.ALBUM) MimeTypeUtil.isVideo(file) -> diff --git a/app/src/main/java/com/owncloud/android/ui/preview/FileDownloadFragment.kt b/app/src/main/java/com/owncloud/android/ui/preview/FileDownloadFragment.kt index b4f1cdd84f3e..b6e4580c7954 100644 --- a/app/src/main/java/com/owncloud/android/ui/preview/FileDownloadFragment.kt +++ b/app/src/main/java/com/owncloud/android/ui/preview/FileDownloadFragment.kt @@ -74,7 +74,7 @@ class FileDownloadFragment : binding.cancelBtn.setOnClickListener(this) binding.fileDownloadLL.setOnClickListener { - getTypedActivity(PreviewImageActivity::class.java)?.toggleFullScreen() + getTypedActivity(PreviewMediaActivity::class.java)?.toggleFullScreen() } setButtonsForTransferring(isTransferring = !downloadError) diff --git a/app/src/main/java/com/owncloud/android/ui/preview/PreviewImageActivity.kt b/app/src/main/java/com/owncloud/android/ui/preview/PreviewMediaActivity.kt similarity index 98% rename from app/src/main/java/com/owncloud/android/ui/preview/PreviewImageActivity.kt rename to app/src/main/java/com/owncloud/android/ui/preview/PreviewMediaActivity.kt index d2eabee3965a..80c4ef106943 100644 --- a/app/src/main/java/com/owncloud/android/ui/preview/PreviewImageActivity.kt +++ b/app/src/main/java/com/owncloud/android/ui/preview/PreviewMediaActivity.kt @@ -78,7 +78,7 @@ import kotlin.math.min * Holds a swiping gallery where image and video files contained in a Nextcloud directory are shown. */ @Suppress("TooManyFunctions") -class PreviewImageActivity : +class PreviewMediaActivity : FileActivity(), FileFragment.ContainerActivity, OnRemoteOperationListener, @@ -304,7 +304,7 @@ class PreviewImageActivity : override fun handleOnBackPressed() { sendRefreshSearchEventBroadcast() isEnabled = false - NavigationAnimator(this@PreviewImageActivity).finishWithScaleDown() + NavigationAnimator(this@PreviewMediaActivity).finishWithScaleDown() } }) } @@ -315,7 +315,7 @@ class PreviewImageActivity : val isLaunchedWithSharedElement = intent.getBooleanExtra(NavigationAnimator.EXTRA_HAS_SHARED_ELEMENT, false) if (savedInstanceState == null && isLaunchedWithSharedElement && - PreviewImageFragment.canBePreviewed(openedFile) + PreviewMediaFragment.canBePreviewed(openedFile) ) { sharedElementTransition.postponeUntilSharedViewReady() } @@ -702,7 +702,7 @@ class PreviewImageActivity : override fun onTransferStateChanged(file: OCFile, downloading: Boolean, uploading: Boolean) = Unit companion object { - val TAG: String = PreviewImageActivity::class.java.simpleName + val TAG: String = PreviewMediaActivity::class.java.simpleName const val EXTRA_VIRTUAL_TYPE: String = "EXTRA_VIRTUAL_TYPE" const val EXTRA_MEDIA_STATE: String = "EXTRA_MEDIA_STATE" private const val KEY_WAITING_FOR_BINDER = "WAITING_FOR_BINDER" @@ -710,7 +710,7 @@ class PreviewImageActivity : private const val NO_POSITION = -1 fun previewFileIntent(context: Context?, user: User?, file: OCFile?): Intent = - Intent(context, PreviewImageActivity::class.java).apply { + Intent(context, PreviewMediaActivity::class.java).apply { putExtra(EXTRA_FILE, file) putExtra(EXTRA_USER, user) } diff --git a/app/src/main/java/com/owncloud/android/ui/preview/PreviewImageFragment.kt b/app/src/main/java/com/owncloud/android/ui/preview/PreviewMediaFragment.kt similarity index 97% rename from app/src/main/java/com/owncloud/android/ui/preview/PreviewImageFragment.kt rename to app/src/main/java/com/owncloud/android/ui/preview/PreviewMediaFragment.kt index c10cb7c8231e..2ca651501b36 100644 --- a/app/src/main/java/com/owncloud/android/ui/preview/PreviewImageFragment.kt +++ b/app/src/main/java/com/owncloud/android/ui/preview/PreviewMediaFragment.kt @@ -88,11 +88,11 @@ import kotlin.math.max import kotlin.math.min /** - * This fragment shows a preview of a downloaded image. + * This fragment shows a preview of a downloaded media. * Trying to get an instance with a NULL [OCFile] will produce an [IllegalStateException]. * If the [OCFile] passed is not downloaded, an [IllegalStateException] is generated on instantiation too. * - * Creates an empty fragment for image previews. + * Creates an empty fragment for media previews. * * MUST BE KEPT: the system uses it when tries to re-instantiate a fragment automatically (for instance, when the * device is turned a aside). @@ -100,7 +100,7 @@ import kotlin.math.min * DO NOT CALL IT: an [OCFile] and [User] must be provided for a successful construction */ @Suppress("TooManyFunctions") -class PreviewImageFragment : +class PreviewMediaFragment : FileFragment(), Injectable { private var showResizedImage: Boolean? = null @@ -161,7 +161,7 @@ class PreviewImageFragment : } private fun hideActionBar() { - (requireActivity() as PreviewImageActivity).run { + (requireActivity() as PreviewMediaActivity).run { toggleActionBarVisibility(false) } } @@ -473,7 +473,7 @@ class PreviewImageFragment : backgroundJobManager ) } else if (itemId == R.id.action_edit) { - (requireActivity() as PreviewImageActivity).startImageEditor(file) + (requireActivity() as PreviewMediaActivity).startImageEditor(file) } else if (itemId == R.id.action_add_to_album) { containerActivity.fileOperationsHelper.addFileToAlbum(listOf(file)) } @@ -648,7 +648,7 @@ class PreviewImageFragment : imageView.setImageBitmap(bitmap) } - this@PreviewImageFragment.ownedBitmap = bitmap + this@PreviewMediaFragment.ownedBitmap = bitmap } else { if (drawable != null && MIME_TYPE_SVG.equals(result.ocFile.mimeType, ignoreCase = true) @@ -750,7 +750,7 @@ class PreviewImageFragment : fun handleUnsupportedImage() { try { - (activity as? PreviewImageActivity)?.requestForDownload(file) ?: context?.let { + (activity as? PreviewMediaActivity)?.requestForDownload(file) ?: context?.let { Snackbar.make( binding.emptyListView, resources.getString(R.string.could_not_download_image), @@ -782,7 +782,7 @@ class PreviewImageFragment : val activity: Activity? = activity if (activity != null) { - (activity as PreviewImageActivity).toggleFullScreen() + (activity as PreviewMediaActivity).toggleFullScreen() } toggleImageBackground() } @@ -798,14 +798,14 @@ class PreviewImageFragment : MIME_TYPE_SVG.equals(file.mimeType, ignoreCase = true) ) && activity != null && - activity is PreviewImageActivity + activity is PreviewMediaActivity ) { - val previewImageActivity = activity as PreviewImageActivity? + val previewMediaActivity = activity as PreviewMediaActivity? if (binding.image.drawable is LayerDrawable) { val layerDrawable = binding.image.drawable as LayerDrawable - val layerOne = if (previewImageActivity?.isActionBarVisible == true) { + val layerOne = if (previewMediaActivity?.isActionBarVisible == true) { ResourcesCompat.getDrawable(resources, R.color.bg_default, null) } else { ResourcesCompat.getDrawable( @@ -838,7 +838,7 @@ class PreviewImageFragment : private const val MIME_TYPE_GIF = "image/gif" private const val MIME_TYPE_SVG = "image/svg+xml" - private val TAG: String = PreviewImageFragment::class.java.simpleName + private val TAG: String = PreviewMediaFragment::class.java.simpleName /** * Public factory method to create a new fragment that previews an image. @@ -858,21 +858,21 @@ class PreviewImageFragment : imageFile: OCFile, ignoreFirstSavedState: Boolean, showResizedImage: Boolean - ): PreviewImageFragment { + ): PreviewMediaFragment { val args = Bundle().apply { putParcelable(ARG_FILE, imageFile) putBoolean(ARG_IGNORE_FIRST, ignoreFirstSavedState) putBoolean(ARG_SHOW_RESIZED_IMAGE, showResizedImage) } - return PreviewImageFragment().apply { + return PreviewMediaFragment().apply { this.showResizedImage = showResizedImage arguments = args } } /** - * Helper method to test if an [OCFile] can be passed to a [PreviewImageFragment] to be previewed. + * Helper method to test if an [OCFile] can be passed to a [PreviewMediaFragment] to be previewed. * * @param file File to test if can be previewed. * @return 'True' if the file can be handled by the fragment. diff --git a/app/src/main/java/com/owncloud/android/ui/preview/PreviewMediaPagerAdapter.kt b/app/src/main/java/com/owncloud/android/ui/preview/PreviewMediaPagerAdapter.kt index 7c8ffbf3860e..788bdb10dcca 100644 --- a/app/src/main/java/com/owncloud/android/ui/preview/PreviewMediaPagerAdapter.kt +++ b/app/src/main/java/com/owncloud/android/ui/preview/PreviewMediaPagerAdapter.kt @@ -82,7 +82,7 @@ class PreviewMediaPagerAdapter( if (file.isAudioOrVideo()) { PreviewPlaybackFragment.newInstance(file, playbackCollection, takeAutoplay(file)) } else { - PreviewImageFragment.newInstance(file, ignoreFirstSavedState, false) + PreviewMediaFragment.newInstance(file, ignoreFirstSavedState, false) } private fun fragmentForNotDownloaded(file: OCFile, position: Int, ignoreFirstSavedState: Boolean): Fragment { @@ -98,7 +98,7 @@ class PreviewMediaPagerAdapter( file.isAudioOrVideo() -> PreviewPlaybackFragment.newInstance(file, playbackCollection, takeAutoplay(file)) - else -> PreviewImageFragment.newInstance(file, ignoreFirstSavedState, true) + else -> PreviewMediaFragment.newInstance(file, ignoreFirstSavedState, true) } } diff --git a/app/src/main/java/com/owncloud/android/ui/preview/PreviewPlaybackFragment.kt b/app/src/main/java/com/owncloud/android/ui/preview/PreviewPlaybackFragment.kt index 3b3028810b7f..8b569176d344 100644 --- a/app/src/main/java/com/owncloud/android/ui/preview/PreviewPlaybackFragment.kt +++ b/app/src/main/java/com/owncloud/android/ui/preview/PreviewPlaybackFragment.kt @@ -111,8 +111,8 @@ class PreviewPlaybackFragment : private var pictureInPictureCallback: OnBackPressedCallback? = null - private val previewActivity: PreviewImageActivity? - get() = activity as? PreviewImageActivity + private val previewActivity: PreviewMediaActivity? + get() = activity as? PreviewMediaActivity override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) From f0086b64f3e60d5e87f4f95001798dd0c276cd7d Mon Sep 17 00:00:00 2001 From: alperozturk96 Date: Mon, 19 Oct 2026 09:38:24 +0200 Subject: [PATCH 2/2] refactor(preview): package structure Signed-off-by: alperozturk96 --- .../ui/preview/PreviewBitmapScreenshotIT.kt | 1 + .../ui/preview/PreviewMediaActivityIT.kt | 1 + app/src/main/AndroidManifest.xml | 4 ++-- .../nextcloud/client/di/ComponentsModule.kt | 18 +++++++++--------- .../jobs/download/FileDownloadIntents.kt | 4 ++-- .../AppNotificationManagerImpl.kt | 4 ++-- .../client/player/media3/PlaybackService.kt | 2 +- .../systembars/SystemBarBackgroundCallbacks.kt | 2 +- .../datamodel/ThumbnailsCacheManager.java | 2 +- .../android/ui/activity/FileActivity.java | 2 +- .../android/ui/activity/FileDisplayActivity.kt | 10 +++++----- .../filelist/header/OCFileListHeaderBinder.kt | 2 +- .../helper/UploadListAdapterHelper.kt | 2 +- .../android/ui/fragment/ActivitiesFragment.kt | 4 ++-- .../ui/fragment/albums/AlbumItemsFragment.kt | 2 +- .../{ => media}/PreviewMediaActivity.kt | 2 +- .../PreviewMediaDownloadFragment.kt} | 10 +++++----- .../PreviewMediaErrorFragment.kt} | 6 +++--- .../{ => media}/PreviewMediaFilesLoader.kt | 2 +- .../{ => media}/PreviewMediaFragment.kt | 2 +- .../{ => media}/PreviewMediaPagerAdapter.kt | 8 ++++---- .../{ => media}/PreviewPlaybackFragment.kt | 2 +- .../preview/{ => pdf}/PreviewBitmapActivity.kt | 2 +- .../ui/preview/pdf/PreviewPdfFragment.kt | 1 - .../{ => text}/PreviewTextFileFragment.java | 2 +- .../preview/{ => text}/PreviewTextFragment.kt | 2 +- .../{ => text}/PreviewTextStringFragment.kt | 2 +- .../res/layout/activity_preview_bitmap.xml | 2 +- 28 files changed, 52 insertions(+), 51 deletions(-) rename app/src/main/java/com/owncloud/android/ui/preview/{ => media}/PreviewMediaActivity.kt (99%) rename app/src/main/java/com/owncloud/android/ui/preview/{FileDownloadFragment.kt => media/PreviewMediaDownloadFragment.kt} (94%) rename app/src/main/java/com/owncloud/android/ui/preview/{PreviewImageErrorFragment.kt => media/PreviewMediaErrorFragment.kt} (85%) rename app/src/main/java/com/owncloud/android/ui/preview/{ => media}/PreviewMediaFilesLoader.kt (98%) rename app/src/main/java/com/owncloud/android/ui/preview/{ => media}/PreviewMediaFragment.kt (99%) rename app/src/main/java/com/owncloud/android/ui/preview/{ => media}/PreviewMediaPagerAdapter.kt (94%) rename app/src/main/java/com/owncloud/android/ui/preview/{ => media}/PreviewPlaybackFragment.kt (99%) rename app/src/main/java/com/owncloud/android/ui/preview/{ => pdf}/PreviewBitmapActivity.kt (97%) rename app/src/main/java/com/owncloud/android/ui/preview/{ => text}/PreviewTextFileFragment.java (99%) rename app/src/main/java/com/owncloud/android/ui/preview/{ => text}/PreviewTextFragment.kt (99%) rename app/src/main/java/com/owncloud/android/ui/preview/{ => text}/PreviewTextStringFragment.kt (99%) diff --git a/app/src/androidTest/java/com/owncloud/android/ui/preview/PreviewBitmapScreenshotIT.kt b/app/src/androidTest/java/com/owncloud/android/ui/preview/PreviewBitmapScreenshotIT.kt index ceda14fa98da..1e791d8405e8 100644 --- a/app/src/androidTest/java/com/owncloud/android/ui/preview/PreviewBitmapScreenshotIT.kt +++ b/app/src/androidTest/java/com/owncloud/android/ui/preview/PreviewBitmapScreenshotIT.kt @@ -15,6 +15,7 @@ import androidx.test.espresso.assertion.ViewAssertions.matches import androidx.test.espresso.matcher.ViewMatchers.isDisplayed import androidx.test.espresso.matcher.ViewMatchers.isRoot import com.owncloud.android.AbstractIT +import com.owncloud.android.ui.preview.pdf.PreviewBitmapActivity import com.owncloud.android.utils.ScreenshotTest import org.junit.Test diff --git a/app/src/androidTest/java/com/owncloud/android/ui/preview/PreviewMediaActivityIT.kt b/app/src/androidTest/java/com/owncloud/android/ui/preview/PreviewMediaActivityIT.kt index f7053c7f5497..a5965f6474bc 100644 --- a/app/src/androidTest/java/com/owncloud/android/ui/preview/PreviewMediaActivityIT.kt +++ b/app/src/androidTest/java/com/owncloud/android/ui/preview/PreviewMediaActivityIT.kt @@ -30,6 +30,7 @@ import com.owncloud.android.datamodel.OCFile import com.owncloud.android.db.OCUpload import com.owncloud.android.files.services.NameCollisionPolicy import com.owncloud.android.lib.resources.files.ExistenceCheckRemoteOperation +import com.owncloud.android.ui.preview.media.PreviewMediaActivity import com.owncloud.android.utils.FileStorageUtils import org.hamcrest.Matchers.allOf import org.junit.After diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index 410c97c17885..c9a86717fd3b 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -384,7 +384,7 @@ android:exported="false" android:theme="@style/PreferenceTheme" /> * SPDX-License-Identifier: AGPL-3.0-or-later */ -package com.owncloud.android.ui.preview +package com.owncloud.android.ui.preview.media import android.content.BroadcastReceiver import android.content.Context diff --git a/app/src/main/java/com/owncloud/android/ui/preview/FileDownloadFragment.kt b/app/src/main/java/com/owncloud/android/ui/preview/media/PreviewMediaDownloadFragment.kt similarity index 94% rename from app/src/main/java/com/owncloud/android/ui/preview/FileDownloadFragment.kt rename to app/src/main/java/com/owncloud/android/ui/preview/media/PreviewMediaDownloadFragment.kt index b6e4580c7954..98302dc1ffa9 100644 --- a/app/src/main/java/com/owncloud/android/ui/preview/FileDownloadFragment.kt +++ b/app/src/main/java/com/owncloud/android/ui/preview/media/PreviewMediaDownloadFragment.kt @@ -11,7 +11,7 @@ * SPDX-License-Identifier: GPL-2.0-only AND (AGPL-3.0-or-later OR GPL-2.0-only) */ -package com.owncloud.android.ui.preview +package com.owncloud.android.ui.preview.media import android.os.Bundle import android.view.LayoutInflater @@ -30,7 +30,7 @@ import com.owncloud.android.ui.fragment.FileFragment import com.owncloud.android.utils.theme.ViewThemeUtils import javax.inject.Inject -class FileDownloadFragment : +class PreviewMediaDownloadFragment : FileFragment(), View.OnClickListener, Injectable { @@ -133,10 +133,10 @@ class FileDownloadFragment : private const val ARG_FILE = "FILE" private const val ARG_IGNORE_FIRST = "IGNORE_FIRST" private const val ARG_USER = "USER" - private val TAG: String = FileDownloadFragment::class.java.simpleName + private val TAG: String = PreviewMediaDownloadFragment::class.java.simpleName - fun newInstance(file: OCFile?, user: User?, ignoreFirstSavedState: Boolean): FileDownloadFragment = - FileDownloadFragment().apply { + fun newInstance(file: OCFile?, user: User?, ignoreFirstSavedState: Boolean): PreviewMediaDownloadFragment = + PreviewMediaDownloadFragment().apply { arguments = Bundle().apply { putParcelable(ARG_FILE, file) putParcelable(ARG_USER, user) diff --git a/app/src/main/java/com/owncloud/android/ui/preview/PreviewImageErrorFragment.kt b/app/src/main/java/com/owncloud/android/ui/preview/media/PreviewMediaErrorFragment.kt similarity index 85% rename from app/src/main/java/com/owncloud/android/ui/preview/PreviewImageErrorFragment.kt rename to app/src/main/java/com/owncloud/android/ui/preview/media/PreviewMediaErrorFragment.kt index 787977b18431..e1805b94025e 100644 --- a/app/src/main/java/com/owncloud/android/ui/preview/PreviewImageErrorFragment.kt +++ b/app/src/main/java/com/owncloud/android/ui/preview/media/PreviewMediaErrorFragment.kt @@ -4,7 +4,7 @@ * SPDX-FileCopyrightText: 2018 Tobias Kaminsky * SPDX-License-Identifier: AGPL-3.0-or-later OR GPL-2.0-only */ -package com.owncloud.android.ui.preview +package com.owncloud.android.ui.preview.media import android.os.Bundle import android.view.LayoutInflater @@ -17,13 +17,13 @@ import com.owncloud.android.ui.fragment.FileFragment /** * A fragment showing an error message. */ -class PreviewImageErrorFragment : FileFragment() { +class PreviewMediaErrorFragment : FileFragment() { override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?, savedInstanceState: Bundle?): View? = inflater.inflate(R.layout.preview_image_error_fragment, container, false) companion object { fun newInstance(): FileFragment { - val fileFragment: FileFragment = PreviewImageErrorFragment() + val fileFragment: FileFragment = PreviewMediaErrorFragment() val bundle = Bundle() bundle.putParcelable(FileActivity.EXTRA_FILE, null) diff --git a/app/src/main/java/com/owncloud/android/ui/preview/PreviewMediaFilesLoader.kt b/app/src/main/java/com/owncloud/android/ui/preview/media/PreviewMediaFilesLoader.kt similarity index 98% rename from app/src/main/java/com/owncloud/android/ui/preview/PreviewMediaFilesLoader.kt rename to app/src/main/java/com/owncloud/android/ui/preview/media/PreviewMediaFilesLoader.kt index eb64e35fa5e1..3c261df9a7d0 100644 --- a/app/src/main/java/com/owncloud/android/ui/preview/PreviewMediaFilesLoader.kt +++ b/app/src/main/java/com/owncloud/android/ui/preview/media/PreviewMediaFilesLoader.kt @@ -4,7 +4,7 @@ * SPDX-FileCopyrightText: 2026 Alper Ozturk * SPDX-License-Identifier: AGPL-3.0-or-later */ -package com.owncloud.android.ui.preview +package com.owncloud.android.ui.preview.media import com.nextcloud.client.preferences.AppPreferences import com.owncloud.android.datamodel.FileDataStorageManager diff --git a/app/src/main/java/com/owncloud/android/ui/preview/PreviewMediaFragment.kt b/app/src/main/java/com/owncloud/android/ui/preview/media/PreviewMediaFragment.kt similarity index 99% rename from app/src/main/java/com/owncloud/android/ui/preview/PreviewMediaFragment.kt rename to app/src/main/java/com/owncloud/android/ui/preview/media/PreviewMediaFragment.kt index 2ca651501b36..b044c70f6782 100644 --- a/app/src/main/java/com/owncloud/android/ui/preview/PreviewMediaFragment.kt +++ b/app/src/main/java/com/owncloud/android/ui/preview/media/PreviewMediaFragment.kt @@ -11,7 +11,7 @@ * SPDX-FileCopyrightText: 2026 TSI-mc * SPDX-License-Identifier: GPL-2.0-only AND (AGPL-3.0-or-later OR GPL-2.0-only) */ -package com.owncloud.android.ui.preview +package com.owncloud.android.ui.preview.media import android.annotation.SuppressLint import android.app.Activity diff --git a/app/src/main/java/com/owncloud/android/ui/preview/PreviewMediaPagerAdapter.kt b/app/src/main/java/com/owncloud/android/ui/preview/media/PreviewMediaPagerAdapter.kt similarity index 94% rename from app/src/main/java/com/owncloud/android/ui/preview/PreviewMediaPagerAdapter.kt rename to app/src/main/java/com/owncloud/android/ui/preview/media/PreviewMediaPagerAdapter.kt index 788bdb10dcca..68d5db358d76 100644 --- a/app/src/main/java/com/owncloud/android/ui/preview/PreviewMediaPagerAdapter.kt +++ b/app/src/main/java/com/owncloud/android/ui/preview/media/PreviewMediaPagerAdapter.kt @@ -8,7 +8,7 @@ * SPDX-FileCopyrightText: 2013 David A. Velasco * SPDX-License-Identifier: GPL-2.0-only AND (AGPL-3.0-or-later OR GPL-2.0-only) */ -package com.owncloud.android.ui.preview +package com.owncloud.android.ui.preview.media import android.util.SparseArray import androidx.fragment.app.Fragment @@ -73,7 +73,7 @@ class PreviewMediaPagerAdapter( } private fun fragmentFor(file: OCFile?, position: Int, ignoreFirstSavedState: Boolean): Fragment = when { - file == null -> PreviewImageErrorFragment.newInstance() + file == null -> PreviewMediaErrorFragment.newInstance() file.isDown -> fragmentForDownloaded(file, ignoreFirstSavedState) else -> fragmentForNotDownloaded(file, position, ignoreFirstSavedState) } @@ -90,11 +90,11 @@ class PreviewMediaPagerAdapter( return when { downloadErrors.remove(position) -> - FileDownloadFragment.newInstance(file, user, true).apply { setError(true) } + PreviewMediaDownloadFragment.newInstance(file, user, true).apply { setError(true) } // The FileDownloadFragment is used exclusively for encrypted files, as they cannot be previewed // without first being downloaded. - file.isEncrypted -> FileDownloadFragment.newInstance(file, user, ignoreFirstSavedState) + file.isEncrypted -> PreviewMediaDownloadFragment.newInstance(file, user, ignoreFirstSavedState) file.isAudioOrVideo() -> PreviewPlaybackFragment.newInstance(file, playbackCollection, takeAutoplay(file)) diff --git a/app/src/main/java/com/owncloud/android/ui/preview/PreviewPlaybackFragment.kt b/app/src/main/java/com/owncloud/android/ui/preview/media/PreviewPlaybackFragment.kt similarity index 99% rename from app/src/main/java/com/owncloud/android/ui/preview/PreviewPlaybackFragment.kt rename to app/src/main/java/com/owncloud/android/ui/preview/media/PreviewPlaybackFragment.kt index 8b569176d344..1f38e0d939d5 100644 --- a/app/src/main/java/com/owncloud/android/ui/preview/PreviewPlaybackFragment.kt +++ b/app/src/main/java/com/owncloud/android/ui/preview/media/PreviewPlaybackFragment.kt @@ -5,7 +5,7 @@ * SPDX-License-Identifier: AGPL-3.0-or-later */ -package com.owncloud.android.ui.preview +package com.owncloud.android.ui.preview.media import android.os.Bundle import android.view.LayoutInflater diff --git a/app/src/main/java/com/owncloud/android/ui/preview/PreviewBitmapActivity.kt b/app/src/main/java/com/owncloud/android/ui/preview/pdf/PreviewBitmapActivity.kt similarity index 97% rename from app/src/main/java/com/owncloud/android/ui/preview/PreviewBitmapActivity.kt rename to app/src/main/java/com/owncloud/android/ui/preview/pdf/PreviewBitmapActivity.kt index b6c9e86c2d16..a78e0ab14e95 100644 --- a/app/src/main/java/com/owncloud/android/ui/preview/PreviewBitmapActivity.kt +++ b/app/src/main/java/com/owncloud/android/ui/preview/pdf/PreviewBitmapActivity.kt @@ -5,7 +5,7 @@ * SPDX-FileCopyrightText: 2022 Nextcloud GmbH * SPDX-License-Identifier: AGPL-3.0-or-later */ -package com.owncloud.android.ui.preview +package com.owncloud.android.ui.preview.pdf import android.graphics.BitmapFactory import android.os.Bundle diff --git a/app/src/main/java/com/owncloud/android/ui/preview/pdf/PreviewPdfFragment.kt b/app/src/main/java/com/owncloud/android/ui/preview/pdf/PreviewPdfFragment.kt index ec3df1843872..ba293e380e8c 100644 --- a/app/src/main/java/com/owncloud/android/ui/preview/pdf/PreviewPdfFragment.kt +++ b/app/src/main/java/com/owncloud/android/ui/preview/pdf/PreviewPdfFragment.kt @@ -27,7 +27,6 @@ import com.owncloud.android.databinding.PreviewPdfFragmentBinding import com.owncloud.android.datamodel.OCFile import com.owncloud.android.lib.common.utils.Log_OC import com.owncloud.android.ui.activity.FileDisplayActivity -import com.owncloud.android.ui.preview.PreviewBitmapActivity import javax.inject.Inject class PreviewPdfFragment : diff --git a/app/src/main/java/com/owncloud/android/ui/preview/PreviewTextFileFragment.java b/app/src/main/java/com/owncloud/android/ui/preview/text/PreviewTextFileFragment.java similarity index 99% rename from app/src/main/java/com/owncloud/android/ui/preview/PreviewTextFileFragment.java rename to app/src/main/java/com/owncloud/android/ui/preview/text/PreviewTextFileFragment.java index ea17026916ee..845fede2a346 100644 --- a/app/src/main/java/com/owncloud/android/ui/preview/PreviewTextFileFragment.java +++ b/app/src/main/java/com/owncloud/android/ui/preview/text/PreviewTextFileFragment.java @@ -5,7 +5,7 @@ * SPDX-FileCopyrightText: 2019 Nextcloud GmbH * SPDX-License-Identifier: AGPL-3.0-or-later OR GPL-2.0-only */ -package com.owncloud.android.ui.preview; +package com.owncloud.android.ui.preview.text; import android.annotation.SuppressLint; import android.os.AsyncTask; diff --git a/app/src/main/java/com/owncloud/android/ui/preview/PreviewTextFragment.kt b/app/src/main/java/com/owncloud/android/ui/preview/text/PreviewTextFragment.kt similarity index 99% rename from app/src/main/java/com/owncloud/android/ui/preview/PreviewTextFragment.kt rename to app/src/main/java/com/owncloud/android/ui/preview/text/PreviewTextFragment.kt index fc2aaf199874..690d38066648 100644 --- a/app/src/main/java/com/owncloud/android/ui/preview/PreviewTextFragment.kt +++ b/app/src/main/java/com/owncloud/android/ui/preview/text/PreviewTextFragment.kt @@ -9,7 +9,7 @@ * SPDX-FileCopyrightText: 2014 Jorge Antonio Diaz-Benito Soriano * SPDX-License-Identifier: GPL-2.0-only AND (AGPL-3.0-or-later OR GPL-2.0-only) */ -package com.owncloud.android.ui.preview +package com.owncloud.android.ui.preview.text import android.app.Activity import android.graphics.Color diff --git a/app/src/main/java/com/owncloud/android/ui/preview/PreviewTextStringFragment.kt b/app/src/main/java/com/owncloud/android/ui/preview/text/PreviewTextStringFragment.kt similarity index 99% rename from app/src/main/java/com/owncloud/android/ui/preview/PreviewTextStringFragment.kt rename to app/src/main/java/com/owncloud/android/ui/preview/text/PreviewTextStringFragment.kt index ad367f684176..ead48cb8db5f 100644 --- a/app/src/main/java/com/owncloud/android/ui/preview/PreviewTextStringFragment.kt +++ b/app/src/main/java/com/owncloud/android/ui/preview/text/PreviewTextStringFragment.kt @@ -6,7 +6,7 @@ * SPDX-FileCopyrightText: 2019 Nextcloud GmbH * SPDX-License-Identifier: AGPL-3.0-or-later OR GPL-2.0-only */ -package com.owncloud.android.ui.preview +package com.owncloud.android.ui.preview.text import android.os.Bundle import android.os.Handler diff --git a/app/src/main/res/layout/activity_preview_bitmap.xml b/app/src/main/res/layout/activity_preview_bitmap.xml index 832283fe945c..cb62ee731ae1 100644 --- a/app/src/main/res/layout/activity_preview_bitmap.xml +++ b/app/src/main/res/layout/activity_preview_bitmap.xml @@ -12,7 +12,7 @@ android:layout_height="match_parent" xmlns:app="http://schemas.android.com/apk/res-auto" android:paddingTop="?attr/actionBarSize" - tools:context=".ui.preview.PreviewBitmapActivity"> + tools:context=".ui.preview.pdf.PreviewBitmapActivity">