Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -21,8 +21,8 @@ import com.owncloud.android.lib.common.accounts.AccountUtils
import com.owncloud.android.utils.ScreenshotTest
import org.junit.Test

class TrashbinActivityIT : AbstractIT() {
private val testClassName = "com.owncloud.android.ui.trashbin.TrashbinActivityIT"
class TrashbinFragmentIT : AbstractIT() {
private val testClassName = "com.owncloud.android.ui.trashbin.TrashbinFragmentIT"

enum class TestCase {
ERROR,
Expand All @@ -33,8 +33,8 @@ class TrashbinActivityIT : AbstractIT() {
@Test
@ScreenshotTest
fun error() {
launchActivity<TrashbinActivity>().use { scenario ->
var sut: TrashbinActivity? = null
launchActivity<TrashbinFragment>().use { scenario ->
var sut: TrashbinFragment? = null
scenario.onActivity { activity ->
sut = activity
val trashbinRepository = TrashbinLocalRepository(TestCase.ERROR)
Expand All @@ -54,8 +54,8 @@ class TrashbinActivityIT : AbstractIT() {
@Test
@ScreenshotTest
fun files() {
launchActivity<TrashbinActivity>().use { scenario ->
var sut: TrashbinActivity? = null
launchActivity<TrashbinFragment>().use { scenario ->
var sut: TrashbinFragment? = null
scenario.onActivity { activity ->
sut = activity
val trashbinRepository = TrashbinLocalRepository(TestCase.FILES)
Expand All @@ -75,8 +75,8 @@ class TrashbinActivityIT : AbstractIT() {
@Test
@ScreenshotTest
fun empty() {
launchActivity<TrashbinActivity>().use { scenario ->
var sut: TrashbinActivity? = null
launchActivity<TrashbinFragment>().use { scenario ->
var sut: TrashbinFragment? = null
scenario.onActivity { activity ->
sut = activity
val trashbinRepository = TrashbinLocalRepository(TestCase.EMPTY)
Expand All @@ -96,8 +96,8 @@ class TrashbinActivityIT : AbstractIT() {
@Test
@ScreenshotTest
fun loading() {
launchActivity<TrashbinActivity>().use { scenario ->
var sut: TrashbinActivity? = null
launchActivity<TrashbinFragment>().use { scenario ->
var sut: TrashbinFragment? = null
scenario.onActivity { activity ->
sut = activity
val trashbinRepository = TrashbinLocalRepository(TestCase.EMPTY)
Expand All @@ -114,8 +114,8 @@ class TrashbinActivityIT : AbstractIT() {
@Test
@ScreenshotTest
fun normalUser() {
launchActivity<TrashbinActivity>().use { scenario ->
var sut: TrashbinActivity? = null
launchActivity<TrashbinFragment>().use { scenario ->
var sut: TrashbinFragment? = null
scenario.onActivity { activity ->
sut = activity
val trashbinRepository = TrashbinLocalRepository(TestCase.EMPTY)
Expand All @@ -140,12 +140,12 @@ class TrashbinActivityIT : AbstractIT() {
setUserData(temp, AccountUtils.Constants.KEY_USER_ID, "differentUser")
}

val intent = Intent(targetContext, TrashbinActivity::class.java).apply {
val intent = Intent(targetContext, TrashbinFragment::class.java).apply {
putExtra(Intent.EXTRA_USER, "differentUser@https://nextcloud.localhost")
}

launchActivity<TrashbinActivity>().use { scenario ->
var sut: TrashbinActivity? = null
launchActivity<TrashbinFragment>().use { scenario ->
var sut: TrashbinFragment? = null
scenario.onActivity { activity ->
sut = activity
val trashbinRepository = TrashbinLocalRepository(TestCase.EMPTY)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ import com.owncloud.android.R
import com.owncloud.android.lib.resources.trashbin.model.TrashbinFile
import com.owncloud.android.ui.trashbin.TrashbinRepository.LoadFolderCallback

class TrashbinLocalRepository(private val testCase: TrashbinActivityIT.TestCase) : TrashbinRepository {
class TrashbinLocalRepository(private val testCase: TrashbinFragmentIT.TestCase) : TrashbinRepository {
override fun emptyTrashbin(callback: TrashbinRepository.OperationCallback?) {
TODO("Not yet implemented")
}
Expand All @@ -27,9 +27,9 @@ class TrashbinLocalRepository(private val testCase: TrashbinActivityIT.TestCase)
@Suppress("MagicNumber")
override fun getFolder(remotePath: String?, callback: LoadFolderCallback?) {
when (testCase) {
TrashbinActivityIT.TestCase.ERROR -> callback?.onError(R.string.trashbin_loading_failed)
TrashbinFragmentIT.TestCase.ERROR -> callback?.onError(R.string.trashbin_loading_failed)

TrashbinActivityIT.TestCase.FILES -> {
TrashbinFragmentIT.TestCase.FILES -> {
val files = ArrayList<TrashbinFile>()
files.add(
TrashbinFile(
Expand Down Expand Up @@ -71,7 +71,7 @@ class TrashbinLocalRepository(private val testCase: TrashbinActivityIT.TestCase)
callback?.onSuccess(files)
}

TrashbinActivityIT.TestCase.EMPTY -> callback?.onSuccess(ArrayList<TrashbinFile>())
TrashbinFragmentIT.TestCase.EMPTY -> callback?.onSuccess(ArrayList<TrashbinFile>())
}
}
}
4 changes: 0 additions & 4 deletions app/src/main/AndroidManifest.xml
Original file line number Diff line number Diff line change
Expand Up @@ -592,10 +592,6 @@
<activity
android:name=".ui.activity.UploadListActivity"
android:exported="false" />
<activity
android:name=".ui.trashbin.TrashbinActivity"
android:configChanges="orientation|screenSize|keyboardHidden"
android:exported="true" />
<activity
android:name="com.nextcloud.client.onboarding.WhatsNewActivity"
android:theme="@style/Theme.ownCloud.noActionBar.Login" />
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -129,7 +129,7 @@
import com.owncloud.android.ui.preview.PreviewTextFragment;
import com.owncloud.android.ui.preview.PreviewTextStringFragment;
import com.owncloud.android.ui.preview.pdf.PreviewPdfFragment;
import com.owncloud.android.ui.trashbin.TrashbinActivity;
import com.owncloud.android.ui.trashbin.TrashbinFragment;

import androidx.annotation.OptIn;
import androidx.media3.common.util.UnstableApi;
Expand All @@ -141,6 +141,9 @@
*/
@Module
abstract class ComponentsModule {
@ContributesAndroidInjector
abstract TrashbinFragment trashbinFragment();

@ContributesAndroidInjector
abstract ActivitiesFragment activitiesFragment();

Expand Down Expand Up @@ -225,9 +228,6 @@ abstract class ComponentsModule {
@ContributesAndroidInjector
abstract SyncedFoldersActivity syncedFoldersActivity();

@ContributesAndroidInjector
abstract TrashbinActivity trashbinActivity();

@ContributesAndroidInjector
abstract TrashbinFileActionsBottomSheet trashbinFileActionsBottomSheet();

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -150,7 +150,7 @@ protected void setAccount(Account account, boolean savedAccount) {
sessionMixin.setAccount(account);
}

protected void setUser(User user) {
public void setUser(User user) {
sessionMixin.setUser(user);
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -96,7 +96,7 @@
import com.owncloud.android.ui.fragment.OCFileListFragment;
import com.owncloud.android.ui.navigation.NavigatorActivity;
import com.owncloud.android.ui.navigation.NavigatorScreen;
import com.owncloud.android.ui.trashbin.TrashbinActivity;
import com.owncloud.android.ui.trashbin.TrashbinFragment;
import com.owncloud.android.utils.BitmapUtils;
import com.owncloud.android.utils.DisplayUtils;
import com.owncloud.android.utils.DrawableUtil;
Expand Down Expand Up @@ -603,7 +603,7 @@ private void onNavigationItemClicked(final MenuItem menuItem) {
startActivity(UploadListActivity.class, Intent.FLAG_ACTIVITY_CLEAR_TOP);
} else if (itemId == R.id.nav_trashbin) {
resetOnlyPersonalAndOnDevice();
startActivity(TrashbinActivity.class, Intent.FLAG_ACTIVITY_CLEAR_TOP);
pushFragment(NavigatorScreen.Trashbin.INSTANCE);
} else if (itemId == R.id.nav_activity) {
resetOnlyPersonalAndOnDevice();
pushFragment(NavigatorScreen.Activities.INSTANCE);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -98,7 +98,13 @@ class SortingOrderDialogFragment :
private inner class OnSortOrderClickListener : View.OnClickListener {
override fun onClick(v: View) {
dismissAllowingStateLoss()
(activity as OnSortingOrderListener?)?.onSortingOrderChosen(v.tag as FileSortOrder)

val listener = parentFragment as? OnSortingOrderListener
?: activity as? OnSortingOrderListener
?: requireActivity().supportFragmentManager.fragments
.firstOrNull { it is OnSortingOrderListener } as? OnSortingOrderListener

listener?.onSortingOrderChosen(v.tag as FileSortOrder)
}
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@
import com.owncloud.android.lib.resources.trashbin.model.TrashbinFile;

/**
* Interface for communication between {@link com.owncloud.android.ui.trashbin.TrashbinActivity}
* Interface for communication between {@link com.owncloud.android.ui.trashbin.TrashbinFragment}
* and {@link com.owncloud.android.ui.adapter.TrashbinListAdapter}
*/

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@ import com.owncloud.android.R
import com.owncloud.android.ui.fragment.ActivitiesFragment
import com.owncloud.android.ui.fragment.community.CommunityFragment
import com.owncloud.android.ui.fragment.notifications.NotificationsFragment
import com.owncloud.android.ui.trashbin.TrashbinFragment
import kotlinx.parcelize.Parcelize

sealed class NavigatorScreen(val tag: String, val hasDrawer: Boolean = true) : Parcelable {
Expand All @@ -26,7 +27,11 @@ sealed class NavigatorScreen(val tag: String, val hasDrawer: Boolean = true) : P
@Parcelize
object Notifications : NavigatorScreen(NOTIFICATIONS_TAG, hasDrawer = false)

@Parcelize
object Trashbin: NavigatorScreen(TRASHBIN_TAG)

companion object {
private const val TRASHBIN_TAG = "Trashbin"
private const val ACTIVITIES_TAG = "Activities"
private const val COMMUNITY_TAG = "Community"
private const val NOTIFICATIONS_TAG = "Notifications"
Expand All @@ -42,18 +47,21 @@ sealed class NavigatorScreen(val tag: String, val hasDrawer: Boolean = true) : P
fun menuItemId(): Int = when (this) {
Community -> R.id.nav_community
Activities -> R.id.nav_activity
Trashbin -> R.id.nav_trashbin
Notifications -> -1
}

fun actionBarStyle(): Pair<ActionBarStyle, Int> = when (this) {
Community -> ActionBarStyle.Plain to R.string.drawer_community
Activities -> ActionBarStyle.Plain to R.string.drawer_item_activities
Trashbin -> ActionBarStyle.Plain to R.string.drawer_item_trashbin
Notifications -> ActionBarStyle.Plain to R.string.drawer_item_notifications
}

fun toFragment(): Fragment = when (this) {
Community -> CommunityFragment()
Activities -> ActivitiesFragment()
Notifications -> NotificationsFragment()
Trashbin -> TrashbinFragment()
}
}
Loading
Loading