Parcourir la source

Rebase master

Signed-off-by: alperozturk <alper_ozturk@proton.me>
alperozturk il y a 1 an
Parent
commit
751ef701fd

+ 1 - 1
app/src/androidTest/java/com/owncloud/android/AbstractOnServerIT.java

@@ -112,7 +112,7 @@ public abstract class AbstractOnServerIT extends AbstractIT {
 
     @After
     public void after() {
-        deleteAllFilesOnServer();
+        // deleteAllFilesOnServer();
 
         super.after();
     }

+ 34 - 11
app/src/main/java/com/nextcloud/ui/composeFragment/ComposeFragment.kt

@@ -26,14 +26,24 @@ import android.view.LayoutInflater
 import android.view.View
 import android.view.ViewGroup
 import androidx.compose.runtime.Composable
+import androidx.compose.runtime.LaunchedEffect
+import androidx.compose.runtime.getValue
+import androidx.compose.runtime.mutableStateOf
+import androidx.compose.runtime.remember
+import androidx.compose.runtime.setValue
 import androidx.compose.ui.platform.ViewCompositionStrategy
 import androidx.fragment.app.Fragment
 import com.google.android.material.floatingactionbutton.FloatingActionButton
 import com.nextcloud.client.assistant.AssistantScreen
 import com.nextcloud.client.assistant.AssistantViewModel
+import com.nextcloud.common.NextcloudClient
+import com.nextcloud.common.User
 import com.nextcloud.utils.extensions.getSerializableArgument
 import com.owncloud.android.R
 import com.owncloud.android.databinding.FragmentComposeViewBinding
+import com.owncloud.android.lib.common.OwnCloudClientFactory
+import com.owncloud.android.lib.common.accounts.AccountUtils
+import com.owncloud.android.lib.common.utils.Log_OC
 import com.owncloud.android.ui.fragment.FileFragment
 import kotlinx.coroutines.Dispatchers
 import kotlinx.coroutines.withContext
@@ -71,18 +81,31 @@ class ComposeFragment : FileFragment() {
     @Composable
     private fun Content(destination: ComposeDestinations?) {
         val floatingActionButton: FloatingActionButton = requireActivity().findViewById(R.id.fab_main)
+        var nextcloudClient by remember { mutableStateOf<NextcloudClient?>(null) }
 
-        return when (destination) {
-            ComposeDestinations.AssistantScreen -> {
-                AssistantScreen(
-                    viewModel = AssistantViewModel(
-                        context = requireContext(),
-                        user = containerActivity.storageManager.user
-                    ),
-                    floatingActionButton
-                )
-            }
-            else -> {
+        LaunchedEffect(Unit) {
+            nextcloudClient = getNextcloudClient()
+        }
+
+        return if (destination == ComposeDestinations.AssistantScreen && nextcloudClient != null) {
+            AssistantScreen(
+                viewModel = AssistantViewModel(
+                    client = nextcloudClient!!
+                ),
+                floatingActionButton
+            )
+        } else {
+
+        }
+    }
+
+    private suspend fun getNextcloudClient(): NextcloudClient? {
+        return withContext(Dispatchers.IO) {
+            try {
+                OwnCloudClientFactory.createNextcloudClient(containerActivity.storageManager.user, requireContext())
+            } catch (e: AccountUtils.AccountNotFoundException) {
+                Log_OC.e(this, "Error caught at init of AssistantRepository", e)
+                null
             }
         }
     }

+ 0 - 5
app/src/main/java/com/owncloud/android/ui/activity/FileDisplayActivity.java

@@ -74,14 +74,9 @@ import com.nextcloud.client.network.ClientFactory;
 import com.nextcloud.client.network.ConnectivityService;
 import com.nextcloud.client.preferences.AppPreferences;
 import com.nextcloud.client.utils.IntentUtil;
-import com.nextcloud.common.NextcloudClient;
 import com.nextcloud.java.util.Optional;
 import com.nextcloud.model.WorkerState;
 import com.nextcloud.model.WorkerStateLiveData;
-import com.nextcloud.operations.assistant.AssistantRepository;
-import com.nextcloud.operations.assistant.model.CreatedTask;
-import com.nextcloud.operations.assistant.model.Ocs;
-import com.nextcloud.operations.assistant.model.TaskTypes;
 import com.nextcloud.utils.extensions.BundleExtensionsKt;
 import com.nextcloud.utils.extensions.IntentExtensionsKt;
 import com.nextcloud.utils.view.FastScrollUtils;