Exemplo n.º 1
0
 public async Task GotoArticleDetailPage(Post posts)
 {
     await NavigationHelpers.GotoPageAsync(nameof(PostDetailPage),
                                           new Dictionary <string, object> {
         { "postParam", QueryStringHelpers.GetQueryParam(posts) }
     });
 }
Exemplo n.º 2
0
        private void FileList_ItemTapped(object sender, TappedRoutedEventArgs e)
        {
            var ctrlPressed  = Window.Current.CoreWindow.GetKeyState(VirtualKey.Control).HasFlag(CoreVirtualKeyStates.Down);
            var shiftPressed = Window.Current.CoreWindow.GetKeyState(VirtualKey.Shift).HasFlag(CoreVirtualKeyStates.Down);
            var item         = (e.OriginalSource as FrameworkElement)?.DataContext as ListedItem;

            if (item == null)
            {
                return;
            }
            // Skip code if the control or shift key is pressed or if the user is using multiselect
            if (ctrlPressed || shiftPressed || MainViewModel.MultiselectEnabled)
            {
                return;
            }

            // Check if the setting to open items with a single click is turned on
            if (item != null &&
                ((UserSettingsService.PreferencesSettingsService.OpenFoldersWithOneClick && item.PrimaryItemAttribute == StorageItemTypes.Folder) || (UserSettingsService.PreferencesSettingsService.OpenFilesWithOneClick && item.PrimaryItemAttribute == StorageItemTypes.File)))
            {
                ResetRenameDoubleClick();
                NavigationHelpers.OpenSelectedItems(ParentShellPageInstance, false);
            }
            else
            {
                var clickedItem = e.OriginalSource as FrameworkElement;
                if (clickedItem is TextBlock textBlock && textBlock.Name == "ItemName")
                {
                    CheckRenameDoubleClick(clickedItem?.DataContext);
                }
Exemplo n.º 3
0
        private async void FileList_DoubleTapped(object sender, DoubleTappedRoutedEventArgs e)
        {
            DismissColumn?.Invoke(sender as ListView, EventArgs.Empty);
            await Task.Delay(200);

            if (listViewItem != null)
            {
                listViewItem.Style = (Style)this.Resources["NormalStyle"];
            }
            if ((e.OriginalSource as FrameworkElement)?.DataContext is ListedItem && !AppSettings.OpenItemsWithOneclick)
            {
                if (listViewItem != null)
                {
                    listViewItem.Style = (Style)this.Resources["NormalStyle"];
                }
                var item = (e.OriginalSource as FrameworkElement).DataContext as ListedItem;
                if (item.ItemType == "File folder")
                {
                    if (item.ContainsFilesOrFolders)
                    {
                        listViewItem = (FileList.ContainerFromItem(item) as ListViewItem);

                        ItemInvoked?.Invoke(new ColumnParam {
                            Path = item.ItemPath, ListView = FileList
                        }, EventArgs.Empty);
                    }
                }
                // The delay gives time for the item to be selected
                else
                {
                    NavigationHelpers.OpenSelectedItems(ParentShellPageInstance, false);
                }
            }
        }
Exemplo n.º 4
0
        private async void AllView_ItemPress(object sender, PointerRoutedEventArgs e)
        {
            var ctrlPressed  = Window.Current.CoreWindow.GetKeyState(VirtualKey.Control).HasFlag(CoreVirtualKeyStates.Down);
            var shiftPressed = Window.Current.CoreWindow.GetKeyState(VirtualKey.Shift).HasFlag(CoreVirtualKeyStates.Down);

            var cp = e.GetCurrentPoint((UIElement)sender);

            if (cp.Position.Y <= AllView.ColumnHeaderHeight || // Return if click is on the header
                cp.Properties.IsLeftButtonPressed || // Return if dragging an item
                cp.Properties.IsRightButtonPressed || // Return if the user right clicks an item
                ctrlPressed || shiftPressed)    // Allow for Ctrl+Shift selection
            {
                return;
            }
            if (IsRenamingItem)
            {
                return;
            }

            // Check if the setting to open items with a single click is turned on
            if (AppSettings.OpenItemsWithOneclick)
            {
                tapDebounceTimer.Stop();
                await Task.Delay(200); // The delay gives time for the item to be selected

                NavigationHelpers.OpenSelectedItems(ParentShellPageInstance, false);
            }
        }
        private void FileList_DoubleTapped(object sender, DoubleTappedRoutedEventArgs e)
        {
            if ((e.OriginalSource as FrameworkElement)?.DataContext is ListedItem item &&
                ((!UserSettingsService.FilesAndFoldersSettingsService.OpenFilesWithOneClick && item.PrimaryItemAttribute == StorageItemTypes.File) ||
                 (!UserSettingsService.FilesAndFoldersSettingsService.OpenFoldersWithOneClick && item.PrimaryItemAttribute == StorageItemTypes.Folder)))
            {
                if (item.PrimaryItemAttribute == Windows.Storage.StorageItemTypes.Folder)
                {
                    DismissOtherBlades(sender as ListView);

                    listViewItem = (FileList.ContainerFromItem(item) as ListViewItem);
                    var frame = new Frame();
                    frame.Navigated += Frame_Navigated;
                    var blade = new BladeItem();
                    blade.Content = frame;
                    ColumnHost.Items.Add(blade);

                    frame.Navigate(typeof(ColumnShellPage), new ColumnParam
                    {
                        Column = 1,
                        Path   = item.ItemPath
                    });
                }
                else
                {
                    NavigationHelpers.OpenSelectedItems(ParentShellPageInstance, false);
                }
            }

            ResetRenameDoubleClick();
        }
Exemplo n.º 6
0
 // Update is called once per frame
 void Update()
 {
     if (Input.GetKeyUp(KeyCode.Escape))
     {
         NavigationHelpers.GoBack();
     }
 }
        private async void FileList_ItemTapped(object sender, TappedRoutedEventArgs e)
        {
            if (listViewItem != null)
            {
                //_ = VisualStateManager.GoToState(listViewItem, "CurrentItem", true);
            }
            var ctrlPressed  = Window.Current.CoreWindow.GetKeyState(VirtualKey.Control).HasFlag(CoreVirtualKeyStates.Down);
            var shiftPressed = Window.Current.CoreWindow.GetKeyState(VirtualKey.Shift).HasFlag(CoreVirtualKeyStates.Down);
            var item         = (e.OriginalSource as FrameworkElement)?.DataContext as ListedItem;

            if (ctrlPressed || shiftPressed) // Allow for Ctrl+Shift selection
            {
                return;
            }
            // Check if the setting to open items with a single click is turned on
            if (item != null &&
                ((UserSettingsService.FilesAndFoldersSettingsService.OpenFoldersWithOneClick && item.PrimaryItemAttribute == StorageItemTypes.Folder) || (UserSettingsService.FilesAndFoldersSettingsService.OpenFilesWithOneClick && item.PrimaryItemAttribute == StorageItemTypes.File)))
            {
                ResetRenameDoubleClick();
                if (item.PrimaryItemAttribute == StorageItemTypes.Folder)
                {
                    DismissOtherBlades(sender as ListView);

                    listViewItem = (FileList.ContainerFromItem(item) as ListViewItem);
                    var frame = new Frame();
                    frame.Navigated += Frame_Navigated;
                    var blade = new BladeItem();
                    blade.Content = frame;
                    ColumnHost.Items.Add(blade);

                    frame.Navigate(typeof(ColumnShellPage), new ColumnParam
                    {
                        Column = 1,
                        Path   = item.ItemPath
                    });
                }
                else
                {
                    NavigationHelpers.OpenSelectedItems(ParentShellPageInstance, false);
                }
            }
            else
            {
                var clickedItem = e.OriginalSource as FrameworkElement;
                if (clickedItem is TextBlock && ((TextBlock)clickedItem).Name == "ItemName")
                {
                    CheckRenameDoubleClick(clickedItem?.DataContext);
                }
                else if (IsRenamingItem)
                {
                    ListViewItem listViewItem = FileList.ContainerFromItem(RenamingItem) as ListViewItem;
                    if (listViewItem != null)
                    {
                        var textBox = listViewItem.FindDescendant("ListViewTextBoxItemName") as TextBox;
                        CommitRename(textBox);
                    }
                }
            }
        }
Exemplo n.º 8
0
 private void FileList_DoubleTapped(object sender, DoubleTappedRoutedEventArgs e)
 {
     // Skip opening selected items if the double tap doesn't capture an item
     if ((e.OriginalSource as FrameworkElement)?.DataContext is ListedItem && !AppSettings.OpenItemsWithOneclick)
     {
         NavigationHelpers.OpenSelectedItems(ParentShellPageInstance, false);
     }
 }
Exemplo n.º 9
0
 private async void Button_PointerPressed(object sender, PointerRoutedEventArgs e)
 {
     if (e.GetCurrentPoint(null).Properties.IsMiddleButtonPressed) // check middle click
     {
         string navigationPath = (sender as Button).Tag.ToString();
         await NavigationHelpers.OpenPathInNewTab(navigationPath);
     }
 }
Exemplo n.º 10
0
 /// <summary>
 /// The async task to display the currently selected note
 /// </summary>
 /// <returns>A task to show the edit note page, passing in the SelectedNote</returns>
 private async Task ShowEditNoteAsync()
 {
     if (SelectedNote == null)
     {
         return;
     }
     await NavigationHelpers.PushPageAsync(new EditNotePage(SelectedNote) { });
 }
 /// <summary>
 ///
 /// </summary>
 /// <param name="navigationHelpers"></param>
 /// <param name="renderingContext"></param>
 public NavigationController
 (
     NavigationHelpers navigationHelpers,
     RenderingContext renderingContext
 )
 {
     _navigationHelpers = navigationHelpers;
     _renderingContext  = renderingContext;
 }
Exemplo n.º 12
0
        private async void FileList_DoubleTapped(object sender, DoubleTappedRoutedEventArgs e)
        {
            DismissOtherBlades(sender as ListView);
            await Task.Delay(200);

            if ((e.OriginalSource as FrameworkElement)?.DataContext is ListedItem && !AppSettings.OpenItemsWithOneclick)
            {
                if (listViewItem != null)
                {
                    listViewItem.Style = (Style)this.Resources["NormalStyle"];
                }
                var item = (e.OriginalSource as FrameworkElement).DataContext as ListedItem;
                if (item.PrimaryItemAttribute == Windows.Storage.StorageItemTypes.Folder)
                {
                    //var pane = new ModernShellPage();
                    //pane.FilesystemViewModel = new ItemViewModel(InstanceViewModel?.FolderSettings);
                    //await pane.FilesystemViewModel.SetWorkingDirectoryAsync(item.ItemPath);
                    //pane.IsPageMainPane = false;
                    //pane.NavParams = item.ItemPath;
                    try
                    {
                        while (ColumnHost.ActiveBlades.Count > 1)
                        {
                            ColumnHost.Items.RemoveAt(1);
                            ColumnHost.ActiveBlades.RemoveAt(1);
                        }
                    }
                    catch
                    {
                    }
                    if (item.ContainsFilesOrFolders)
                    {
                        listViewItem = (FileList.ContainerFromItem(item) as ListViewItem);
                        var frame = new Frame();
                        var blade = new BladeItem();
                        blade.Content = frame;
                        ColumnHost.Items.Add(blade);
                        //pane.NavigateWithArguments(typeof(ColumnViewBase), new NavigationArguments()
                        //{
                        //    NavPathParam = item.ItemPath,
                        //    AssociatedTabInstance = ParentShellPageInstance
                        //});

                        frame.Navigate(typeof(ColumnShellPage), new ColumnParam
                        {
                            Column = 1,
                            Path   = item.ItemPath
                        });
                    }
                }
                // The delay gives time for the item to be selected
                else
                {
                    NavigationHelpers.OpenSelectedItems(ParentShellPageInstance, false);
                }
            }
        }
 /// <summary>
 /// create the constructor and assign any fields
 /// </summary>
 /// <param name="navigationHelpers"></param>
 /// <param name="standardHelper"></param>
 public BreadcrumbController
 (
     NavigationHelpers navigationHelpers,
     StandardHelpers standardHelper
 )
 {
     _navigationHelpers = navigationHelpers;
     _standardHelper    = standardHelper;
 }
Exemplo n.º 14
0
 private async Task ViewCartCommandAsync()
 {
     if (Carts.Any())
     {
         await NavigationHelpers.GotoPageAsync(nameof(CartPage),
                                               new Dictionary <string, object> {
             { "cartsParam", QueryStringHelpers.GetQueryParam(Carts) }
         });
     }
 }
Exemplo n.º 15
0
        public static async void OpenThemesFolder()
        {
            Frame rootFrame = Window.Current.Content as Frame;

            // Go back to main page
            if (rootFrame.CanGoBack)
            {
                rootFrame.GoBack();
            }
            await NavigationHelpers.OpenPathInNewTab(App.ExternalResourcesHelper.ThemeFolder.Path);
        }
Exemplo n.º 16
0
        public override void GetBaseProperties()
        {
            if (Item != null)
            {
                ViewModel.ItemName         = Item.ItemName;
                ViewModel.OriginalItemName = Item.ItemName;
                ViewModel.ItemType         = Item.ItemType;
                ViewModel.ItemPath         = (Item as RecycleBinItem)?.ItemOriginalFolder ??
                                             (Path.IsPathRooted(Item.ItemPath) ? Path.GetDirectoryName(Item.ItemPath) : Item.ItemPath);
                ViewModel.ItemModifiedTimestamp = Item.ItemDateModified;
                ViewModel.ItemCreatedTimestamp  = Item.ItemDateCreated;
                ViewModel.LoadFolderGlyph       = Item.LoadFolderGlyph;
                ViewModel.IconData             = Item.CustomIconData;
                ViewModel.LoadUnknownTypeGlyph = Item.LoadUnknownTypeGlyph;
                ViewModel.LoadCustomIcon       = Item.LoadCustomIcon;
                ViewModel.CustomIconSource     = Item.CustomIconSource;
                ViewModel.LoadFileIcon         = Item.LoadFileIcon;

                if (Item.IsShortcutItem)
                {
                    var shortcutItem = (ShortcutItem)Item;

                    var isApplication = !string.IsNullOrWhiteSpace(shortcutItem.TargetPath) &&
                                        (shortcutItem.TargetPath.EndsWith(".exe", StringComparison.OrdinalIgnoreCase) ||
                                         shortcutItem.TargetPath.EndsWith(".msi", StringComparison.OrdinalIgnoreCase) ||
                                         shortcutItem.TargetPath.EndsWith(".bat", StringComparison.OrdinalIgnoreCase));

                    ViewModel.ShortcutItemType = isApplication ? "PropertiesShortcutTypeApplication".GetLocalized() :
                                                 Item.IsLinkItem ? "PropertiesShortcutTypeLink".GetLocalized() : "PropertiesShortcutTypeFile".GetLocalized();
                    ViewModel.ShortcutItemPath                 = shortcutItem.TargetPath;
                    ViewModel.ShortcutItemWorkingDir           = shortcutItem.WorkingDirectory;
                    ViewModel.ShortcutItemWorkingDirVisibility = Item.IsLinkItem ? Visibility.Collapsed : Visibility.Visible;
                    ViewModel.ShortcutItemArguments            = shortcutItem.Arguments;
                    ViewModel.ShortcutItemArgumentsVisibility  = Item.IsLinkItem ? Visibility.Collapsed : Visibility.Visible;
                    ViewModel.IsSelectedItemShortcut           = Item.FileExtension.Equals(".lnk", StringComparison.OrdinalIgnoreCase);
                    ViewModel.ShortcutItemOpenLinkCommand      = new RelayCommand(async() =>
                    {
                        if (Item.IsLinkItem)
                        {
                            var tmpItem = (ShortcutItem)Item;
                            await Win32Helpers.InvokeWin32ComponentAsync(ViewModel.ShortcutItemPath, AppInstance, ViewModel.ShortcutItemArguments, tmpItem.RunAsAdmin, ViewModel.ShortcutItemWorkingDir);
                        }
                        else
                        {
                            await CoreApplication.MainView.DispatcherQueue.EnqueueAsync(
                                () => NavigationHelpers.OpenPathInNewTab(Path.GetDirectoryName(ViewModel.ShortcutItemPath)));
                        }
                    }, () =>
                    {
                        return(!string.IsNullOrWhiteSpace(ViewModel.ShortcutItemPath));
                    });
                }
            }
        }
Exemplo n.º 17
0
 /// <summary>
 /// create the constructor and assing any fields
 /// </summary>
 /// <param name="standardHelpers"></param>
 /// <param name="navigationHelpers"></param>
 /// <param name="languageHelpers"></param>
 public PageHeaderController
 (
     StandardHelpers standardHelpers,
     NavigationHelpers navigationHelpers,
     LanguageHelpers languageHelpers
 )
 {
     _standardHelpers   = standardHelpers;
     _navigationHelpers = navigationHelpers;
     _languageHelpers   = languageHelpers;
 }
Exemplo n.º 18
0
        private async Task HandleErrorMessage(HttpResponseMessage responseMessage, string responseData)
        {
            if (responseMessage.StatusCode == System.Net.HttpStatusCode.Unauthorized)
            {
                await NavigationHelpers.LogoutUser();

                return;
            }

            error = JsonConvert.DeserializeObject <RequestError>(responseData);
        }
Exemplo n.º 19
0
        private void AllView_DoubleTapped(object sender, DoubleTappedRoutedEventArgs e)
        {
            tapDebounceTimer.Stop();

            if (AppSettings.OpenFoldersNewTab)
            {
                NavigationHelpers.OpenPathInNewTab(((e.OriginalSource as FrameworkElement)?.DataContext as ListedItem).ItemPath);
            }
            else
            {
                NavigationHelpers.OpenSelectedItems(ParentShellPageInstance, false);
            }
        }
Exemplo n.º 20
0
        private async void FileList_PreviewKeyDown(object sender, KeyRoutedEventArgs e)
        {
            var ctrlPressed     = Window.Current.CoreWindow.GetKeyState(VirtualKey.Control).HasFlag(CoreVirtualKeyStates.Down);
            var shiftPressed    = Window.Current.CoreWindow.GetKeyState(VirtualKey.Shift).HasFlag(CoreVirtualKeyStates.Down);
            var focusedElement  = FocusManager.GetFocusedElement() as FrameworkElement;
            var isFooterFocused = focusedElement is HyperlinkButton;

            if (e.Key == VirtualKey.Enter && !isFooterFocused && !e.KeyStatus.IsMenuKeyDown)
            {
                if (!IsRenamingItem)
                {
                    NavigationHelpers.OpenSelectedItems(ParentShellPageInstance, false);
                    e.Handled = true;
                }
            }
            else if (e.Key == VirtualKey.Enter && e.KeyStatus.IsMenuKeyDown)
            {
                FilePropertiesHelpers.ShowProperties(ParentShellPageInstance);
                e.Handled = true;
            }
            else if (e.Key == VirtualKey.Space)
            {
                if (!IsRenamingItem && !isFooterFocused && !ParentShellPageInstance.NavToolbarViewModel.IsEditModeEnabled)
                {
                    e.Handled = true;
                    await QuickLookHelpers.ToggleQuickLook(ParentShellPageInstance);
                }
            }
            else if (e.KeyStatus.IsMenuKeyDown && (e.Key == VirtualKey.Left || e.Key == VirtualKey.Right || e.Key == VirtualKey.Up))
            {
                // Unfocus the GridView so keyboard shortcut can be handled
                NavToolbar?.Focus(FocusState.Pointer);
            }
            else if (e.KeyStatus.IsMenuKeyDown && shiftPressed && e.Key == VirtualKey.Add)
            {
                // Unfocus the ListView so keyboard shortcut can be handled (alt + shift + "+")
                NavToolbar?.Focus(FocusState.Pointer);
            }
            else if (e.Key == VirtualKey.Up || e.Key == VirtualKey.Down)
            {
                // If list has only one item, select it on arrow down/up (#5681)
                if (!IsItemSelected)
                {
                    FileList.SelectedIndex = 0;
                    e.Handled = true;
                }
            }
        }
 public virtual void ItemPointerPressed(PointerRoutedEventArgs e)
 {
     if (e.GetCurrentPoint(null).Properties.IsMiddleButtonPressed)
     {
         if ((e.OriginalSource as FrameworkElement)?.DataContext is ListedItem Item && Item.PrimaryItemAttribute == StorageItemTypes.Folder)
         {
             if (Item.IsShortcutItem)
             {
                 NavigationHelpers.OpenPathInNewTab(((e.OriginalSource as FrameworkElement)?.DataContext as ShortcutItem)?.TargetPath ?? Item.ItemPath);
             }
             else
             {
                 NavigationHelpers.OpenPathInNewTab(Item.ItemPath);
             }
         }
     }
 }
Exemplo n.º 22
0
        private void FileList_PreviewKeyDown(object sender, KeyRoutedEventArgs e)
        {
            var ctrlPressed  = Window.Current.CoreWindow.GetKeyState(VirtualKey.Control).HasFlag(CoreVirtualKeyStates.Down);
            var shiftPressed = Window.Current.CoreWindow.GetKeyState(VirtualKey.Shift).HasFlag(CoreVirtualKeyStates.Down);

            if (e.Key == VirtualKey.Enter && !e.KeyStatus.IsMenuKeyDown)
            {
                if (!IsRenamingItem)
                {
                    NavigationHelpers.OpenSelectedItems(ParentShellPageInstance, false);
                    e.Handled = true;
                }
            }
            else if (e.Key == VirtualKey.Enter && e.KeyStatus.IsMenuKeyDown)
            {
                FilePropertiesHelpers.ShowProperties(ParentShellPageInstance);
                e.Handled = true;
            }
            else if (e.Key == VirtualKey.Space)
            {
                if (!IsRenamingItem && !ParentShellPageInstance.NavigationToolbar.IsEditModeEnabled)
                {
                    if (App.MainViewModel.IsQuickLookEnabled)
                    {
                        QuickLookHelpers.ToggleQuickLook(ParentShellPageInstance);
                    }
                    e.Handled = true;
                }
            }
            else if (e.KeyStatus.IsMenuKeyDown && (e.Key == VirtualKey.Left || e.Key == VirtualKey.Right || e.Key == VirtualKey.Up))
            {
                // Unfocus the GridView so keyboard shortcut can be handled
                (ParentShellPageInstance.NavigationToolbar as Control)?.Focus(FocusState.Pointer);
            }
            else if (ctrlPressed && shiftPressed && (e.Key == VirtualKey.Left || e.Key == VirtualKey.Right || e.Key == VirtualKey.W))
            {
                // Unfocus the ListView so keyboard shortcut can be handled (ctrl + shift + W/"->"/"<-")
                (ParentShellPageInstance.NavigationToolbar as Control)?.Focus(FocusState.Pointer);
            }
            else if (e.KeyStatus.IsMenuKeyDown && shiftPressed && e.Key == VirtualKey.Add)
            {
                // Unfocus the ListView so keyboard shortcut can be handled (alt + shift + "+")
                (ParentShellPageInstance.NavigationToolbar as Control)?.Focus(FocusState.Pointer);
            }
        }
Exemplo n.º 23
0
        private async void FileList_ItemClick(object sender, ItemClickEventArgs e)
        {
            DismissColumn?.Invoke(sender as ListView, EventArgs.Empty);
            await Task.Delay(200);

            if (listViewItem != null)
            {
                listViewItem.Style = (Style)this.Resources["NormalStyle"];
            }
            var ctrlPressed  = Window.Current.CoreWindow.GetKeyState(VirtualKey.Control).HasFlag(CoreVirtualKeyStates.Down);
            var shiftPressed = Window.Current.CoreWindow.GetKeyState(VirtualKey.Shift).HasFlag(CoreVirtualKeyStates.Down);

            if (ctrlPressed || shiftPressed) // Allow for Ctrl+Shift selection
            {
                return;
            }
            if (IsRenamingItem)
            {
                return;
            }
            var item = (e.ClickedItem as ListedItem);

            // Check if the setting to open items with a single click is turned on
            if (AppSettings.OpenItemsWithOneclick)
            {
                tapDebounceTimer.Stop();
                await Task.Delay(200);

                if (item.ItemType == "File folder")
                {
                    if (item.ContainsFilesOrFolders)
                    {
                        listViewItem = (FileList.ContainerFromItem(item) as ListViewItem);
                        ItemInvoked?.Invoke(new ColumnParam {
                            Path = item.ItemPath, ListView = FileList
                        }, EventArgs.Empty);
                    }
                }
                // The delay gives time for the item to be selected
                else
                {
                    NavigationHelpers.OpenSelectedItems(ParentShellPageInstance, false);
                }
            }
        }
        private async void TabStrip_TabDroppedOutside(TabView sender, TabViewTabDroppedOutsideEventArgs args)
        {
            if (sender.TabItems.Count == 1)
            {
                return;
            }

            var indexOfTabViewItem       = sender.TabItems.IndexOf(args.Tab);
            var tabViewItemArgs          = (args.Item as TabItem).TabItemArguments;
            var selectedTabViewItemIndex = sender.SelectedIndex;

            CloseTab(args.Item as TabItem);
            if (!await NavigationHelpers.OpenTabInNewWindowAsync(tabViewItemArgs.Serialize()))
            {
                sender.TabItems.Insert(indexOfTabViewItem, args.Tab);
                sender.SelectedIndex = selectedTabViewItemIndex;
            }
        }
Exemplo n.º 25
0
        /// <summary>
        /// The save async method
        /// Saves/updates the note and closes the edit note page
        /// </summary>
        /// <returns>A task to save/update the note and close the edit note page</returns>
        private async Task SaveAsync()
        {
            if (Title.Contains(":"))
            {
                await DisplayPopupHelpers
                .ShowOKDialogAsync("Invalid Title",
                                   "Title cannot include special character ':'");

                return;
            }

            string noteData = Title + ':' + Text;
            string color    = Color.ToHex();

            IOHelpers.SaveNoteData(CurrentNote.Filename, noteData, color);

            await NavigationHelpers.PopCurrentPageAsync();
        }
Exemplo n.º 26
0
        private async void FileList_ItemClick(object sender, ItemClickEventArgs e)
        {
            var ctrlPressed  = Window.Current.CoreWindow.GetKeyState(VirtualKey.Control).HasFlag(CoreVirtualKeyStates.Down);
            var shiftPressed = Window.Current.CoreWindow.GetKeyState(VirtualKey.Shift).HasFlag(CoreVirtualKeyStates.Down);

            // Skip code if the control or shift key is pressed or if the user is using multiselect
            if (ctrlPressed || shiftPressed || InteractionViewModel.MultiselectEnabled)
            {
                return;
            }

            // Check if the setting to open items with a single click is turned on
            if (AppSettings.OpenItemsWithOneclick)
            {
                await Task.Delay(200); // The delay gives time for the item to be selected

                NavigationHelpers.OpenSelectedItems(ParentShellPageInstance, false);
            }
        }
Exemplo n.º 27
0
 public void Initialize(string name, string description, string points, string image)
 {
     Debug.Log("Initialize");
     if (nameTextElement != null)
     {
         nameTextElement.text = name;
     }
     if (descriptionTextElement != null)
     {
         descriptionTextElement.text = description;
     }
     if (pointsTextElement != null)
     {
         pointsTextElement.text = points;
     }
     if (achievementsImage != null)
     {
         StartCoroutine(NavigationHelpers.GetSpriteFromUrl(image, AssignSprite));
     }
 }
        public virtual async void ItemPointerPressed(PointerRoutedEventArgs e)
        {
            if (e.GetCurrentPoint(null).Properties.IsMiddleButtonPressed)
            {
                if ((e.OriginalSource as FrameworkElement)?.DataContext is ListedItem Item && Item.PrimaryItemAttribute == StorageItemTypes.Folder)
                {
                    // If a folder item was clicked, disable middle mouse click to scroll to cancel the mouse scrolling state and re-enable it
                    SlimContentPage.IsMiddleClickToScrollEnabled = false;
                    SlimContentPage.IsMiddleClickToScrollEnabled = true;

                    if (Item.IsShortcutItem)
                    {
                        await NavigationHelpers.OpenPathInNewTab(((e.OriginalSource as FrameworkElement)?.DataContext as ShortcutItem)?.TargetPath ?? Item.ItemPath);
                    }
                    else
                    {
                        await NavigationHelpers.OpenPathInNewTab(Item.ItemPath);
                    }
                }
            }
        }
Exemplo n.º 29
0
        /// <summary>
        /// The delete async method
        /// Deletes the current note following validation and closes the note page
        /// </summary>
        /// <returns>A task to delete the current note following validation and close the note page</returns>
        private async Task DeleteAsync()
        {
            //Bypass the validation check if set by the AppSettings
            if (AppSettings.RequireDeleteCheck)
            {
                string promptResult = await DisplayPopupHelpers
                                      .ShowPromptAsync("Validation",
                                                       "To delete this note, enter it's title");

                if (promptResult == null)
                {
                    return;
                }

                if (promptResult != Title)
                {
                    await DisplayPopupHelpers
                    .ShowOKDialogAsync("Incorrect",
                                       "Your note has not been deleted");

                    return;
                }
            }

            if (IOHelpers.NoteExists(CurrentNote.Filename))
            {
                IOHelpers.DeleteNote(CurrentNote.Filename);
                await DisplayPopupHelpers
                .ShowOKDialogAsync("Deleted",
                                   "Your note has been deleted");
            }
            else
            {
                await DisplayPopupHelpers
                .ShowOKDialogAsync("Error",
                                   "The file could not be found; your note has not been deleted");
            }

            await NavigationHelpers.PopCurrentPageAsync();
        }
Exemplo n.º 30
0
        public override void GetBaseProperties()
        {
            if (Item != null)
            {
                ViewModel.ItemName         = Item.ItemName;
                ViewModel.OriginalItemName = Item.ItemName;
                ViewModel.ItemType         = Item.ItemType;
                ViewModel.ItemPath         = (Item as RecycleBinItem)?.ItemOriginalFolder ??
                                             (Path.IsPathRooted(Item.ItemPath) ? Path.GetDirectoryName(Item.ItemPath) : Item.ItemPath);
                ViewModel.ItemModifiedTimestamp = Item.ItemDateModified;
                ViewModel.ItemCreatedTimestamp  = Item.ItemDateCreated;
                ViewModel.LoadFolderGlyph       = Item.LoadFolderGlyph;
                ViewModel.IconData               = Item.CustomIconData;
                ViewModel.LoadUnknownTypeGlyph   = Item.LoadUnknownTypeGlyph;
                ViewModel.LoadCustomIcon         = Item.LoadCustomIcon;
                ViewModel.CustomIconSource       = Item.CustomIconSource;
                ViewModel.LoadFileIcon           = Item.LoadFileIcon;
                ViewModel.ContainsFilesOrFolders = Item.ContainsFilesOrFolders;

                if (Item.IsShortcutItem)
                {
                    var shortcutItem = (ShortcutItem)Item;
                    ViewModel.ShortcutItemType                 = "PropertiesShortcutTypeFolder".GetLocalized();
                    ViewModel.ShortcutItemPath                 = shortcutItem.TargetPath;
                    ViewModel.ShortcutItemWorkingDir           = shortcutItem.WorkingDirectory;
                    ViewModel.ShortcutItemWorkingDirVisibility = Visibility.Collapsed;
                    ViewModel.ShortcutItemArguments            = shortcutItem.Arguments;
                    ViewModel.ShortcutItemArgumentsVisibility  = Visibility.Collapsed;
                    ViewModel.ShortcutItemOpenLinkCommand      = new RelayCommand(async() =>
                    {
                        await CoreApplication.MainView.DispatcherQueue.EnqueueAsync(
                            () => NavigationHelpers.OpenPathInNewTab(Path.GetDirectoryName(ViewModel.ShortcutItemPath)));
                    }, () =>
                    {
                        return(!string.IsNullOrWhiteSpace(ViewModel.ShortcutItemPath));
                    });
                }
            }
        }