public override View OnCreateView(LayoutInflater layoutInflater, ViewGroup viewGroup, Bundle bundle) { View view = layoutInflater.Inflate(Resource.Layout.fragment_explorer, viewGroup, false); explorerAdapter = new ExplorerAdapter(Activity, foundTreeNodeChildren, false); ListAdapter = explorerAdapter; return(view); }
private async void UnFavoriteFile(TreeNode selectedItem) { try { popupWindow.Dismiss(); parentActivity.ShowProgressDialog("Bestanden verwijderen uit favorieten"); bool unFavoriteSucceed = await DataLayer.Instance.UnFavoriteFile(selectedItem); if (!unFavoriteSucceed) { Toast.MakeText(Android.App.Application.Context, "Mislukt om bestand uit favorieten te verwijderen", ToastLength.Short).Show(); } else { Toast.MakeText(Android.App.Application.Context, "Bestand succesvol uit favorieten verwijderd", ToastLength.Short).Show(); } parentActivity.HideProgressDialog(); //Refresh listview int numberOfDirectoriesOpened = ExplorerFragment.openedDirectories.Count; if (numberOfDirectoriesOpened >= 1) { if (ExplorerFragment.openedDirectories [numberOfDirectoriesOpened - 1] != null) //Favorite folder niet geopend { RefreshData(); } else { //Favorite folder opened so refresh favorite list List <TreeNode> favorites = DataLayer.Instance.GetFavorites(); explorerAdapter = new ExplorerAdapter(Activity, favorites, false); ListAdapter = explorerAdapter; //UPDATE UI Activity.RunOnUiThread(new Action(() => { explorerAdapter.NotifyDataSetChanged(); explorerListView.InvalidateViews(); })); } } else { RefreshData(); } } catch (Exception ex) { Insights.Report(ex); parentActivity.HideProgressDialog(); Toast.MakeText(Android.App.Application.Context, "Mislukt om bestand uit favorieten te verwijderen", ToastLength.Short).Show(); } }
public async void RefreshData() { parentActivity.HideProgressDialog(); parentActivity.ShowProgressDialog(null); try { //Get current opened directory name int numberOfDirectoriesOpened = ExplorerFragment.openedDirectories.Count; if (numberOfDirectoriesOpened >= 1) { string currentDirectoryName = ExplorerFragment.openedDirectories [numberOfDirectoriesOpened - 1]; foundTreeNodeChildren = new List <TreeNode> (); foundTreeNodeChildren = (await DataLayer.Instance.GetFolder(currentDirectoryName, true)).Children; parentActivity.RunOnUiThread(new Action(() => { //Add favorite list item in root listview of local box if (openedDirectories.Count == 1) { foundTreeNodeChildren.Insert(0, new TreeNode() { Name = "Lokale favorieten", Type = "favorite" }); } explorerAdapter = new ExplorerAdapter(Activity, foundTreeNodeChildren, false); ListAdapter = explorerAdapter; //Update UI explorerAdapter.NotifyDataSetChanged(); explorerListView.InvalidateViews(); })); } parentActivity.HideProgressDialog(); } catch (Exception ex) { Insights.Report(ex); Console.WriteLine(ex.Message); Console.WriteLine(ex.StackTrace); parentActivity.HideProgressDialog(); if (!SslValidator.CertificateErrorRaised) { Toast.MakeText(Android.App.Application.Context, "Data verversen mislukt. Probeer het a.u.b. opnieuw", ToastLength.Short).Show(); } } }
public override View OnCreateView(LayoutInflater layoutInflater, ViewGroup viewGroup, Bundle bundle) { Dialog.SetTitle(treeNodeToMove.Name); View view = layoutInflater.Inflate(Resource.Layout.fragment_move_file, viewGroup, false); //Set color LinearLayout customActionBar = view.FindViewById <LinearLayout> (Resource.Id.custom_actionbar_fragment_move_file); customActionBar.SetBackgroundColor(Color.ParseColor(HomeActivity.colorOfSelectedLocalBox)); buttonMoveFileToSelectedFolder = view.FindViewById <Button> (Resource.Id.button_move_file_to_selected_folder); buttonMoveFileToSelectedFolder.Enabled = false; buttonMoveFileToSelectedFolder.Click += delegate { MoveFileToOpenedFolder(); }; openedDirectories.Add("/"); explorerAdapter = new ExplorerAdapter(Activity, foundDirectoryTreeNodes, true); listViewMoveFile = view.FindViewById <ListView> (Resource.Id.listViewMoveFile); listViewMoveFile.Adapter = explorerAdapter; listViewMoveFile.ItemClick += async(object sender, Android.Widget.AdapterView.ItemClickEventArgs e) => { //List item select event ShowProgressDialog(Activity, null); try{ List <TreeNode> foundDirectories = new List <TreeNode>(); pathOfCurrentOpenedFolder = explorerAdapter.foundTreeNodes[e.Position].Path; TreeNode selectedTreeNode = await DataLayer.Instance.GetFolder(pathOfCurrentOpenedFolder); foreach (TreeNode foundTreeNode in selectedTreeNode.Children) { if (foundTreeNode.IsDirectory) { foundDirectories.Add(foundTreeNode); } } openedDirectories.Add(selectedTreeNode.Path); selectedTreeNodes.Add(selectedTreeNode); buttonBack.Visibility = ViewStates.Visible; //Used to determine folder icon if (openedDirectories.Count == 2) { if (selectedTreeNode.HasKeys) { openedFolderIsUnencrypted = false; } else { openedFolderIsUnencrypted = true; } } explorerAdapter = new ExplorerAdapter(Activity, foundDirectories, true); listViewMoveFile.Adapter = explorerAdapter; Activity.RunOnUiThread(new Action(() => { explorerAdapter.NotifyDataSetChanged(); buttonMoveFileToSelectedFolder.Enabled = true; HideProgressDialog(); Console.WriteLine("Current opened folder; " + pathOfCurrentOpenedFolder); })); } catch (Exception ex) { Insights.Report(ex); HideProgressDialog(); Toast.MakeText(Activity, "Er is iets fout gegaan. Probeer het a.u.b. opnieuw", ToastLength.Short).Show(); } }; buttonBack = view.FindViewById <ImageButton> (Resource.Id.imagebutton_back_move_file); buttonBack.Visibility = ViewStates.Invisible; buttonBack.Click += delegate { int directoriesOpened = selectedTreeNodes.Count; if (directoriesOpened > 0) { selectedTreeNodes.RemoveAt(directoriesOpened - 1); if (selectedTreeNodes.Count == 0) { explorerAdapter = new ExplorerAdapter(Activity, foundDirectoryTreeNodes, true); listViewMoveFile.Adapter = explorerAdapter; buttonBack.Visibility = ViewStates.Invisible; //Set path of destination folder pathOfCurrentOpenedFolder = "/"; buttonMoveFileToSelectedFolder.Enabled = false; } else { List <TreeNode> foundDirectories = new List <TreeNode>(); //Set path of destination folder pathOfCurrentOpenedFolder = selectedTreeNodes[directoriesOpened - 2].Path; foreach (TreeNode foundTreeNode in selectedTreeNodes[directoriesOpened - 2].Children) { if (foundTreeNode.IsDirectory) { foundDirectories.Add(foundTreeNode); } } explorerAdapter = new ExplorerAdapter(Activity, foundDirectories, true); listViewMoveFile.Adapter = explorerAdapter; } } //UPDATE UI Activity.RunOnUiThread(new Action(() => { explorerAdapter.NotifyDataSetChanged(); })); int count = openedDirectories.Count; openedDirectories.RemoveAt(count - 1); }; return(view); }