Example #1
0
        private async void MoveNext()
        {
            if (!_navSemaphore.Wait(0))
            {
                return;
            }
            var clock = new WallClockMeasurement();

            if (await _collectionNavigator.MoveNext())
            {
                clock.Report(200, "MOVE NEXT: Navigation");
                UpdateViewToCurrentCollection();
                clock.Report(200, "MOVE NEXT: Update UI");
            }
            _navSemaphore.Release();
        }
Example #2
0
        public static async Task <List <StorageFolder> > GetSubfolders(StorageFolder parent)
        {
            List <StorageFolder> subfolders = new List <StorageFolder>();

            if (parent == null)
            {
                return(subfolders);
            }
            await FileErrorHelper.RunMethodAsync(async delegate(String path)
            {
                var clock                 = new WallClockMeasurement();
                var folderOptions         = new QueryOptions(CommonFolderQuery.DefaultQuery);
                folderOptions.FolderDepth = FolderDepth.Deep;
                var folderQuery           = parent.CreateFolderQueryWithOptions(folderOptions);
                var unsortedFolders       = await folderQuery.GetFoldersAsync();
                subfolders                = unsortedFolders.OrderBy(f => f.Path).ToList();
                clock.Report(0, "Querying " + subfolders.Count() + " subfolders of " + parent.Path);
            }, parent.Path);

            return(subfolders);
        }