private void UpdateWindowStateFromSettings()
        {
            if (!Settings.Default.Size.IsEmpty)
            {
                this.Size = Settings.Default.Size;
                this.CenterToScreen();
            }

            if (_createdAtPoint is Point p)
            {
                this.StartPosition = FormStartPosition.Manual;

                Rectangle formBounds = this.Bounds;
                Rectangle tabBounds  = LogTabs.RectangleToScreen(LogTabs.GetTabRect(0));
                int       tabX       = tabBounds.Left - formBounds.Left;
                int       tabY       = tabBounds.Top - formBounds.Top;

                int x = p.X - tabX - tabBounds.Width / 2;
                int y = p.Y - tabY - tabBounds.Height / 2;
                this.Location = new Point(x, y);
            }

            if (Settings.Default.Maximized)
            {
                this.WindowState = FormWindowState.Maximized;
            }
        }
        internal async void HandleKeyboardShortcut(KeyboardShortcuts keyboardShortcut)
        {
            LOG.Debug($"{nameof( HandleKeyboardShortcut )} - KeyboardShortcut: {keyboardShortcut}");

            if (keyboardShortcut == KeyboardShortcuts.NewTab)
            {
                await FindRepo();
            }
            else if (keyboardShortcut == KeyboardShortcuts.NextTab)
            {
                LogTabs.NextTab();
            }
            else if (keyboardShortcut == KeyboardShortcuts.PreviousTab)
            {
                LogTabs.PreviousTab();
            }
            else if (keyboardShortcut == KeyboardShortcuts.DuplicateTab)
            {
                if (LogTabs.SelectedTab is Tab selectedTab)
                {
                    await DuplicateTab(selectedTab);
                }
            }
            else if (keyboardShortcut == KeyboardShortcuts.CloseTab)
            {
                if (LogTabs.SelectedTab is Tab selectedTab)
                {
                    CloseTab(selectedTab);
                }
            }
            else if (keyboardShortcut == KeyboardShortcuts.ReopenClosedTab)
            {
                if (_closedRepos.Count > 0)
                {
                    String repo = _closedRepos.Pop();

                    LOG.Debug($"HotKey - Reopen Closed Tab - Reopening: {repo}");

                    await OpenLog(repo);
                }
            }
            else if (keyboardShortcut == KeyboardShortcuts.ToggleReferencesDisplay)
            {
                SplitLayout.Panel1Collapsed = !SplitLayout.Panel1Collapsed;
            }
            else if (KEYBOARD_SHORTCUT_ACTIONS.ContainsKey(keyboardShortcut))
            {
                if (LogTabs.SelectedTab?.Controller() is TabControllerTag tag)
                {
                    GitActionFunc gitActionFunc = KEYBOARD_SHORTCUT_ACTIONS[keyboardShortcut];

                    await RunGitAction(tag, gitActionFunc);
                }
            }
            else
            {
                LOG.Error($"Unhandled keyboard shortcut - KeyboardShortcut: {keyboardShortcut}");
            }
        }
Exemplo n.º 3
0
        private void SwitchTabToPreviousAction()
        {
            if (LogTabs.Count < 2)
            {
                return;
            }
            int i = LogTabs.IndexOf(CurrentTab);

            if (i == -1)
            {
                return;
            }
            i--;
            if (i < 0)
            {
                i = LogTabs.Count - 1;
            }
            CurrentTab = LogTabs[i];
        }
Exemplo n.º 4
0
        private void SwitchTabToNextAction()
        {
            if (LogTabs.Count < 2)
            {
                return;
            }
            int i = LogTabs.IndexOf(CurrentTab);

            if (i == -1)
            {
                return;
            }
            i++;
            if (i >= LogTabs.Count)
            {
                i = 0;
            }
            CurrentTab = LogTabs[i];
        }