Commit graph

1851 commits

Author SHA1 Message Date
Art V c53752a5f9 [#2258] hide options panel when showBottom line is disabled 2022-11-14 01:04:56 +03:00
Art V dc163bfc4d [#2258] show bottom line when having status 2022-11-14 00:53:55 +03:00
Andrew Hynes 3c436b3457 lint: delete unused argument from handleStashSave 2022-11-13 11:02:06 -03:30
Jesse Duffield a905a28e41 better hiding of underscores 2022-11-13 14:46:13 +11:00
Jesse Duffield 5964472ec1 hide underscores more 2022-11-13 14:41:43 +11:00
Jesse Duffield d26350502c stop switching focus to commits view when resetting 2022-11-13 03:26:50 +00:00
Jesse Duffield 863a65cf94 disable underscores in vscode while we wait for underscore glitch to be fixed 2022-11-13 13:41:49 +11:00
Jesse Duffield 91f83c6be7 use better colour defaults 2022-11-12 18:09:16 -03:30
Jesse Duffield 97ced9e14f fix could-not-access error 2022-11-12 18:09:15 -03:30
Jesse Duffield 1ac3ae1ad1 use better colour defaults 2022-11-12 14:59:15 +11:00
Jesse Duffield e8b97c9fe2 fix could-not-access error 2022-11-11 12:30:14 +11:00
Andrew Hynes a47e72892a
Merge branch 'master' into stash-untracked-changes 2022-11-01 16:08:34 -02:30
Ryooooooga 14ec0cd92e
feat: allow null in keybindings 2022-10-18 22:20:03 +09:00
Ryooooooga 3103398e31
chore: refactor rename stash 2022-10-16 09:30:04 +09:00
Ryooooooga eceb3a5aa6
chore: refactor rename stash 2022-10-16 09:12:43 +09:00
Ryooooooga 11316b7a48
feat: add rename stash 2022-10-16 09:12:42 +09:00
Ryooooooga 0c3eab4059
fix: fix initial origin of commit message panel 2022-10-15 20:09:23 +09:00
Ryooooooga d90fedfbf8
feat: add stash icon 2022-10-14 21:58:58 +09:00
Jesse Duffield dba0edb998 use boxlayout from lazycore 2022-10-09 08:31:14 -07:00
Andrew Hynes 8c46a0110d
Merge branch 'master' into stash-untracked-changes 2022-10-06 22:59:06 -02:30
Ryooooooga e436922eb6
feat(editors.go): move by words 2022-10-05 22:29:55 +09:00
Jesse Duffield ed98b60078 use thread safe map 2022-10-02 20:57:44 -07:00
Jesse Duffield e76fa5a6cb fix glitchy render of stale data when flicking through files and directories 2022-10-02 20:41:24 -07:00
Jesse Duffield c953871ec7 use lowercase 'quote' for consistency with existing custom command template functions 2022-10-02 18:43:25 -07:00
Ryooooooga 19df238b77
feat: allow OSCommand.Quote to be invoked within a custom command 2022-09-30 21:16:45 +09:00
Jesse Duffield 90feb4bae6
Merge pull request #1636 from kawaemon/partially-fix-1629 2022-09-24 10:15:23 -07:00
Jesse Duffield 1d40bd1707
Merge pull request #2104 from LiamKearn/feat-emacs-char-nav 2022-09-24 10:08:13 -07:00
kawaemon 17df42e517 fix: scan to buffer to empty character input in stdin 2022-09-23 23:42:45 -07:00
Jesse Duffield fd66499c8f
Merge pull request #2167 from xiaoliwang/remove_deprecated 2022-09-23 23:01:40 -07:00
Ryooooooga 212e19f598
feat: add support for emacs keybindings 2022-09-24 00:00:30 +09:00
jiepeng bc8050d8ac typo 2022-09-17 15:10:41 -07:00
jiepeng b8900baf1a remove deprecated calls 2022-09-17 15:10:41 -07:00
Mihai22125 7e9dffe1b9 Add Key field to CustomCommandPrompt struct
Add Form field to CustomCommandObjects struct

Write user prompts responses to Form field

Ensure that map keys exists

Add form prompts integration test

Remove redundant index
2022-09-17 14:58:44 -07:00
Jesse Duffield a92f0f7c89 increase recording leeway 2022-09-17 10:50:04 -07:00
Jesse Duffield 74acb3e86a add integration tests for cherry picking 2022-09-16 22:15:16 -07:00
Jesse Duffield 7af7af27c6 various changes to improve integration tests 2022-09-16 08:42:39 -07:00
Andrew Hynes e189546acb refactor: move checks for clean working tree 2022-09-15 21:48:49 -02:30
Andrew Hynes c7733aa5e5 refactor: rename method to StashIncludeUntrackedChanges 2022-09-15 21:48:49 -02:30
Andrew Hynes 50cf7ac5bc refactor: change command order 2022-09-15 21:48:49 -02:30
Andrew Hynes c7fd218308 fix: add condition to if statement 2022-09-15 21:48:49 -02:30
Andrew Hynes 7ddb80a13e feat: add stash option to include untracked changes 2022-09-15 21:48:48 -02:30
Jesse Duffield 010f430d1f add bisect integration test 2022-09-09 20:55:47 -07:00
Ryooooooga eb9fbb0a33
fix(confirmation_panel.go): fix initial origin of editor box 2022-09-01 19:44:17 +09:00
Jesse Duffield 448ff80d7d
Merge pull request #2123 from Ryooooooga/feature/edit-initial-scroll 2022-08-31 22:43:06 -07:00
Ryooooooga 3ada4dde12
fix: fix initial scroll position of edit box 2022-08-18 23:39:15 +09:00
nullishamy 21a4522a51
Merge branch 'master' into feat/detect-bare-repo 2022-08-15 14:00:34 +01:00
nullishamy 154bd975a6
Apply refactoring suggestions 2022-08-15 13:59:34 +01:00
Jesse Duffield 53979f7cec a more complex custom command test 2022-08-14 20:49:20 +10:00
Jesse Duffield 39e9266089
Merge pull request #2110 from mark2185/fix-ignore-or-exclude-file-menu 2022-08-14 17:35:35 +10:00
Jesse Duffield 304d74370e refactor to ensure code doesn't depend on integration code 2022-08-13 13:56:50 +10:00
Jesse Duffield faed509bfd fix CI 2022-08-13 13:56:50 +10:00
Jesse Duffield ba96baee32 move code from main into app package to allow test to be injected 2022-08-13 13:55:08 +10:00
Jesse Duffield d890238c7b move input and assert into integration tests package 2022-08-13 13:52:13 +10:00
Jesse Duffield 46ae55f91e introduce gui adapter 2022-08-13 13:51:56 +10:00
Luka Markušić 0ff5b74d80 IgnoreOrExclude should be a menu 2022-08-11 14:23:02 +02:00
Jesse Duffield 225c563c63 another integration test 2022-08-11 21:24:16 +10:00
Jesse Duffield 77881a9c7d add new integration test pattern 2022-08-11 21:24:15 +10:00
lkearn 6422b399e7 Feat: Add emacs character navigation, because I'm weird like that :) 2022-08-09 17:58:43 +10:00
Jesse Duffield e4e04cfa8f fix hidden suggestions 2022-08-07 19:20:02 +10:00
Jesse Duffield d73a236d7c allow rendering to main panels from anywhere 2022-08-07 12:05:51 +10:00
Jesse Duffield 755ae0ef84 add deadlock mutex package
write to deadlock stderr after closing gocui

more deadlock checking
2022-08-07 11:16:14 +10:00
Jesse Duffield 7410acd1aa move merge conflicts code into controller 2022-08-07 11:16:03 +10:00
Jesse Duffield 445a625b56 rename merging context to mergeConflicts 2022-08-06 18:05:00 +10:00
Jesse Duffield 54fb73080a use ptmx map so that we can have multiple ptmx's stored for resizing 2022-08-06 13:49:11 +10:00
Jesse Duffield 524bf83a4a refactor to only have one context per view 2022-08-06 13:49:11 +10:00
Jesse Duffield c1c6e2fac2 make exception for searching from menu 2022-08-02 09:16:01 +10:00
Jesse Duffield 3ee2ad511e prevent crash when opening recent repos panel if no recent repos are present 2022-08-01 22:10:08 +10:00
Jesse Duffield debc58b6c5 fix popup focus issue 2022-08-01 22:09:48 +10:00
Jesse Duffield fab2e14b55 fix issue caused by opening a menu over a prompt 2022-08-01 21:38:57 +10:00
Jesse Duffield 95426c5e46 handle nil properly with file nodes 2022-08-01 20:32:01 +10:00
Jesse Duffield 682be18507 refactor to use generics for file nodes
use less generic names
2022-07-31 19:43:14 +10:00
Jesse Duffield 2ca2acaca5
Merge pull request #2072 from jesseduffield/optimistic-file-rendering 2022-07-31 19:31:23 +10:00
Jesse Duffield 5f4c29d7b5
Merge pull request #2005 from mark2185/feature/recent-repos-path
Show active branch for recent repo
2022-07-31 19:30:30 +10:00
Luka Markušić 44de380c2b Add i18n for unknown branch 2022-07-31 08:57:57 +02:00
Luka Markušić 37bdbd9a21 Display short SHA when in detached HEAD state 2022-07-31 08:51:27 +02:00
Luka Markušić 767ef31661 Use filepath.Join instead of manual concat 2022-07-31 08:43:31 +02:00
Jesse Duffield c81c046615
Merge pull request #2059 from sportshead/master 2022-07-31 16:19:59 +10:00
Jesse Duffield 7077ea428f add optimistic rendering for staging and unstaging files 2022-07-31 14:34:57 +10:00
sportshead f2880ecb46 Add empty output message and refreshing to showOutput 2022-07-31 12:04:40 +08:00
Luka Markušić 966733240c Refactor a bit, enable worktrees 2022-07-30 19:02:19 +02:00
Luka Markušić 25ddac0d8f Gotta go fast 2022-07-30 17:42:15 +02:00
Luka Markušić 7c09ce3871 Parallelize fetching current branch 2022-07-30 17:05:17 +02:00
Luka Markušić e6e4513f45 Show active branch for recent repo
Split recent repo menu into three columns
2022-07-30 17:05:17 +02:00
Luka Markušić 9c6239df3d Worktrees should not be filtered out
But non-git directories should
2022-07-30 17:03:30 +02:00
Jesse Duffield ab5a8091f5 add better support for OpensMenu option when creating a menu 2022-07-30 20:27:51 +10:00
Jesse Duffield 95678b1b43
Merge pull request #2065 from jesseduffield/fix-rewording-merge-commit-with-editor
Fix rewording a merge commit with editor
2022-07-30 19:51:59 +10:00
Luka Markušić cc377b5c49 Fix rewording a merge commit with editor 2022-07-30 08:43:42 +02:00
Luka Markušić 1f482e585e Fix github linter errors 2022-07-30 08:10:29 +02:00
sportshead e1f41b653c Add showOutput option to custom commands (#1163) 2022-07-28 18:40:30 +08:00
Jesse Duffield c087dca60a
Merge pull request #2027 from jesseduffield/gozes-jesse
Attempt at fixing CI
2022-07-05 19:37:09 +10:00
Juan Sanchez Montalvo 11d766053e Allow adding a file to the .git/info/exclude file 2022-07-05 19:33:44 +10:00
Michael Mead 9d304098bb feat: add confirm prompt for custom keybindings
- Supports configuring a custom confirmation prompt via `config.yml` for
  custom keybindings. A new `CustomCommandPrompt.Body` field is
  used to store the immutable body text of the confirmation popup.
- Adds a sample 'confirm' prompt to the example `config.yml`.
- Updates the `Prompts` section of the documentation to include
  'confirm' prompt type and also describe which fields pertain to it
  (i.e. `initialValue`).

Closes: https://github.com/jesseduffield/lazygit/issues/1858

Signed-off-by: Michael Mead <mmead.developer@gmail.com>
2022-07-04 11:36:13 -07:00
Jesse Duffield 02c5559704 run integration tests in parallel and properly cache windows build 2022-06-11 13:06:29 +10:00
Jesse Duffield 32c0b39dbd
Merge pull request #1950 from HiromasaNojima/add_subcommand_into_specific_layout_directly 2022-06-11 11:51:14 +10:00
Jesse Duffield b1e4968d0b allow opening lazygit to a specific panel 2022-06-11 11:23:56 +10:00
Luka Markušić a955dbcfd7 Validate recent repo before blindly opening it 2022-06-11 09:42:51 +10:00
Jesse Duffield de3114edc3
Merge pull request #1972 from lei4519/feature/display-whole-graph-by-default 2022-06-09 20:17:25 +10:00
Jesse Duffield cdec70cc06
Merge pull request #1975 from mark2185/fix-unmatching-remote-branch-name 2022-06-09 20:12:56 +10:00
Jesse Duffield 9591cc381a support setting the author of a commit
update copy
2022-06-09 19:12:20 +10:00
Luka Markušić 55a941d5dc Fetch the correct remote branch 2022-06-01 20:35:09 +02:00
Lay 684ea284af fix: lint error 2022-05-30 23:19:48 +08:00
Lay 666180cfd0 Add config param that displays the whole git graph by default 2022-05-30 13:52:39 +08:00
Jesse Duffield 8fd9dea641
Merge pull request #1936 from Ryooooooga/feature/tab-i18n 2022-05-18 22:24:45 +10:00
Jesse Duffield e1e16a34da
Merge pull request #1948 from Ryooooooga/feature/time-format 2022-05-18 22:20:51 +10:00
Ryooooooga bfefef92a6
chore(i18n): move InitialViewTabContextMap to gui package 2022-05-18 21:09:48 +09:00
Ryooooooga 5275161a88
chore(i18n): localize panel titles 2022-05-18 20:55:42 +09:00
Ryooooooga e57931f56d
test: fix timezone for time format tests 2022-05-18 20:55:29 +09:00
Ryooooooga 1f1d871837
feat: add ability to customize time format 2022-05-18 20:55:27 +09:00
Ryooooooga 9693afd671
fix: fix lint error 2022-05-18 20:34:35 +09:00
Jesse Duffield f31dcd3091
Merge pull request #1930 from mark2185/feature/discard-staged-only 2022-05-15 20:33:25 +10:00
Luka Markušić 241d182da7 Make tooltip i18n-able 2022-05-15 12:16:20 +02:00
Jesse Duffield 8e7f6822fc
Merge pull request #1944 from Ryooooooga/feature/fix-ambiguous-refname 2022-05-15 19:45:30 +10:00
Jesse Duffield 73491fed25
Merge pull request #1927 from HiromasaNojima/option_always_show_unstaged_staged_panels 2022-05-15 19:24:56 +10:00
Jesse Duffield d72ffdc4a7 refactor 2022-05-15 19:10:04 +10:00
Ryooooooga 61970a4439
fix: fix ambiguous refname 2022-05-13 21:05:51 +09:00
Luka Markušić ca191159f5 Discard staged changes only 2022-05-08 14:24:28 +02:00
HiromasaNojima 1ef585969f add option to always show unstaged/staged panels 2022-05-08 17:24:55 +09:00
Jesse Duffield e67fef776b add author email to commits 2022-05-08 14:26:18 +10:00
Jesse Duffield 6f8063217d rename displayString to label for menu items 2022-05-08 14:26:18 +10:00
Jens Pfeifle 7c573a5bea Add command to reset the commit author from the commits panel. 2022-05-08 13:29:56 +10:00
Jesse Duffield 22d98249fe better popup resizing logic 2022-05-08 13:24:36 +10:00
Jesse Duffield f257740ea7 add tooltip view for showing menu item descriptions 2022-05-08 13:24:36 +10:00
Jesse Duffield 517e9445df refactor view definitions 2022-05-08 11:41:13 +10:00
Ryooooooga 540d2e379a
fix: fix collision of Donate and Ask Question 2022-05-07 18:02:09 +09:00
Ryooooooga 04babdfb82
fix: fix the appStatus width calculation 2022-05-07 17:37:53 +09:00
Ryooooooga 265e6d8360
fix: fix the prompt height calculation 2022-05-07 16:36:20 +09:00
Jesse Duffield 3bf0c9ef44 more documentation 2022-05-07 16:02:04 +10:00
Ryooooooga b07e0ea032
fix: fix context of edit hunk 2022-05-06 21:58:40 +09:00
Ryooooooga d458e78d95
feat: add ability to edit hunk 2022-05-06 21:53:00 +09:00
Jesse Duffield 0940e0182b
Merge pull request #1870 from mark2185/feature/stash-unstaged 2022-05-06 20:17:33 +10:00
Jesse Duffield f7fae0b82e
Merge pull request #1869 from mark2185/feature/unset-upstream 2022-05-06 20:14:13 +10:00
Ryooooooga 2eb866fc62
fix: fix a crash when pressing enter in empty commits, reflog, or stash panel 2022-05-05 21:41:44 +09:00
Jesse Duffield 4dd09ee0d5 allow copying commit author to clipboard 2022-05-01 14:14:29 +10:00
Ryooooooga db3568e4f2
chore(gui): remove todo 2022-04-29 17:53:43 +09:00
Ryooooooga 86af186683
feat(file_icons.go): add Cargo.toml icons 2022-04-24 18:23:14 +09:00
Ryooooooga f972d6ae68
feat(gui): show remote icons 2022-04-23 12:25:42 +09:00
Ryooooooga 11d0e7e17d
feat(gui): show branch icons 2022-04-23 12:25:41 +09:00
Ryooooooga cb13fe7f46
feat(gui): show commit icons 2022-04-23 12:25:41 +09:00
Ryooooooga b07aeda5a6
feat(gui): show file icons 2022-04-23 12:25:40 +09:00
Jesse Duffield dfb293c985 better upstream changes presentation 2022-04-18 11:03:28 +10:00
Jesse Duffield 9b947b74a2 allow hiding bottom line 2022-04-18 09:58:36 +10:00
Jesse Duffield 3477cbc81f better weight distribution in window arrangement 2022-04-17 12:48:04 +10:00
Jesse Duffield 2fa6d8037c always show list counts 2022-04-16 17:29:17 +10:00
Jesse Duffield d3b6acf096 restore highlighting of popup messages 2022-04-16 17:29:17 +10:00
Jesse Duffield e68093fe99 add scrollbars 2022-04-16 17:29:17 +10:00
Jesse Duffield b838b74801 do not highlight line if there are no items to display 2022-04-16 15:19:32 +10:00
Jesse Duffield 00afa30ebf better appearance for reverse attribute 2022-04-16 15:19:32 +10:00
Mukhlis Akbarrudin 21336d3aa2 refactor: explicitly add alternative keybinding 2022-04-15 08:23:27 +10:00
Luka Markušić 1ae2dc9941 The four horsemen of stashing 2022-04-14 21:45:55 +02:00
Luka Markušić e114b5b5e8 Refresh BRANCHES and COMMITS after (un)staging upstream 2022-04-13 15:54:32 +02:00
Luka Markušić c4b958e3fd There's gotta be a better way for initial content 2022-04-13 15:21:01 +02:00
Luka Markušić f83308c8df Add option to (un)set upstream for a local branch 2022-04-11 14:04:06 +02:00
Luka Markušić 6f7038c827 Add option to stash only unstaged files 2022-04-10 09:35:59 +02:00
casswedson b7928042f0 chore: typo hunting ft. codespell 2022-04-06 08:52:41 +10:00
Ryooooooga 3b5a019e1a feat(merge_panel): Add open/edit files in merge conflict panel 2022-04-06 08:27:03 +10:00
Ryooooooga 53257db99d fix: fix diff of renamed files 2022-04-06 08:26:13 +10:00
Ryooooooga 954d1a8147 fix commit description 2022-04-02 17:04:42 +11:00
Ryooooooga 09d24ebd1d fix test 2022-04-02 17:04:42 +11:00
Ryooooooga 4835fc00b8 introduce Ref interface 2022-04-02 17:04:42 +11:00
Ryooooooga 86c259623c feat: fix permission problem of temp dirs 2022-04-02 08:48:38 +11:00
Moritz Haase e35ab3c5fe pkg/gui: Use 'alert' popups instead of 'confirm' popups where appropriate
Invocations of 'IPopupHandler::Confirm()' that use neither 'HandleConfirm' nor
'HandleClose' can be replaced by 'Alert()'.
2022-03-30 20:13:43 +11:00
Moritz Haase 8fb2acc224 pkg/gui: Rename IPopupHandler::Ask() to Confirm()
Follow the JavaScript naming scheme for user interaction (alert, prompt,
confirm) as discussed in #1832.
2022-03-30 20:13:43 +11:00
Moritz Haase f2fb6453a1 pkg/gui: Show notification popup when update was successful
Show a proper notification popup once an update has been installed successfully
so the user knows we're done (so far a popup is only shown if an error occurred).
The popup also reminds him to restart lazygit for the changes to take effect.
2022-03-28 09:13:34 +11:00
Moritz Haase b7079634ee i18n: Make user-facing strings in the updater translatable
Convert a number of static (english) user-facing string in the updater code to
translatable ones.
2022-03-28 09:13:34 +11:00
Moritz Haase 9bccc20888 pkg/gui: Add support for 'notification' popups
Add a new 'Notification()' method to 'IPopupHandler' that makes it easier to
show a modal info message to the user. This is simply a convenience wrapper
around 'Ask()', so the popup can be closed using both 'Enter' and 'ESC'.
2022-03-28 09:13:34 +11:00
Jesse Duffield b3636a537b reduce glitchiness of patch building mode 2022-03-27 19:18:07 +11:00
Jesse Duffield 7c3d14ee19 allow amending and reverting commits when filtering by file 2022-03-27 18:50:29 +11:00
Jesse Duffield 897c4402a4 better colour 2022-03-27 18:16:16 +11:00
Jesse Duffield 860d1e0145 fix copy for merge confirmation 2022-03-27 18:16:16 +11:00
Jesse Duffield e011acbab2 better logging for stash flow 2022-03-27 18:16:16 +11:00
Jesse Duffield 3e5d4b2c74 add menu keybindings for various things 2022-03-27 18:16:16 +11:00
Jesse Duffield e94312b664 use colour 2022-03-27 18:16:16 +11:00
Jesse Duffield 9c226eed37 allow menu to store keybindings for quick menu navigation 2022-03-27 18:16:16 +11:00
Jesse Duffield e43ce23642 require hitting escape to exit menu panel 2022-03-27 18:16:16 +11:00
Jesse Duffield 0dfb7c08b7 remove controllers struct 2022-03-27 18:16:16 +11:00
Jesse Duffield f0a4dcfdc3 refactor menu context 2022-03-27 18:16:16 +11:00
Jesse Duffield 98e7ec0905 add type alias for Key 2022-03-27 18:16:16 +11:00
Jesse Duffield 2b3d457aa4 honour push.default matching config value 2022-03-27 14:58:20 +11:00
Moritz Haase 4abd80e2c4 pkg/gui: Fix crash if auto-fetch interval is non-positive
Check whether the auto-fetch interval configured is actually positive before
starting the background fetcher. If it is not, an error is logged. Also improve
the config option documentation a bit to make it easier to understand how to
disable auto-fetch.
2022-03-27 10:14:33 +11:00
Moritz Haase 240483953f config: Add option 'git.autoRefresh' to en-/disable auto-refresh
Adds a new 'autoRefresh' option to the 'git' config section that allows user to
disable auto-refresh (defaults to on). If auto-refresh is enabled, the
refreshInterval is now checked before starting the timer to prevent crashes when
it is non-positive.

Fixes #1417
2022-03-27 10:14:33 +11:00
Jesse Duffield 51baa8c17d update cheatsheet 2022-03-26 18:00:46 +11:00
Jesse Duffield 102c33433b remove dead code 2022-03-26 18:00:46 +11:00
Jesse Duffield fe87114074 don't hide transient views upon losing focus 2022-03-26 18:00:46 +11:00
Jesse Duffield ad7703df65 show namesake for child views 2022-03-26 18:00:46 +11:00
Jesse Duffield 13b90ac37f support viewing commits of reflog entry and show better view title 2022-03-26 18:00:46 +11:00
Jesse Duffield e039429885 better wording again 2022-03-26 17:22:42 +11:00
Jesse Duffield e0b05f4464 fix cherry picking bug 2022-03-26 17:22:42 +11:00
Jesse Duffield 077b6eb8a3 refactor to make code clearer 2022-03-26 17:22:42 +11:00
Jesse Duffield 45dab51214 add basic commits controller for handling actions that apply to all commit contexts 2022-03-26 17:22:42 +11:00
Luka Markušić 540edb0bf4 Add copy commit attributes option 2022-03-26 17:22:42 +11:00
Jesse Duffield cb26c7a1f2 more things 2022-03-24 20:14:41 +11:00
Jesse Duffield e392b9f86a no more filterThenMap 2022-03-24 20:14:41 +11:00
Jesse Duffield 67a76523fb rename 2022-03-24 20:14:41 +11:00
Jesse Duffield 94a53484a1 would you believe that I'm adding even more generics 2022-03-24 20:14:41 +11:00
Jesse Duffield 1b75ed3740 many more generics 2022-03-24 20:14:41 +11:00
Jesse Duffield bf4f06ab4e more generics 2022-03-24 20:14:41 +11:00
Jesse Duffield eda8f4a5d4 lots more generics 2022-03-24 20:14:41 +11:00
Jesse Duffield c7a629c440 make more use of generics 2022-03-24 20:14:41 +11:00
Jesse Duffield dde30fa104 add gone branches status 2022-03-24 17:50:25 +11:00
Jesse Duffield f113ff21bf add confirmation before performing undo or redo action 2022-03-24 09:45:27 +11:00
Jesse Duffield 12ecd665c8 safe reword 2022-03-23 23:43:21 +11:00
Jesse Duffield cc5d13c833 allow adding whole diff to patch
this was causing a panic

add integration test for toggling all commit files
2022-03-23 23:36:58 +11:00
Jesse Duffield 5ded030a88 diff colour for reflog commits 2022-03-23 18:53:29 +11:00
Jesse Duffield a34bdf1a04 update linters 2022-03-19 12:12:57 +11:00
Jesse Duffield d93fef4c61 use generics to DRY up context code 2022-03-19 12:12:57 +11:00
Jesse Duffield 31ab43d0c5 add host helper 2022-03-17 19:13:40 +11:00
Jesse Duffield fb3752c11f clean up keybindings menu 2022-03-17 19:13:40 +11:00
Jesse Duffield 36c149836a softcode keybinding 2022-03-17 19:13:40 +11:00
Jesse Duffield ea503633aa move keybindings 2022-03-17 19:13:40 +11:00
Jesse Duffield 59d4df2a44 fix click handling 2022-03-17 19:13:40 +11:00
Jesse Duffield cf00949b85 fix integration tests 2022-03-17 19:13:40 +11:00
Jesse Duffield c7b03bd3c2 rename handlers 2022-03-17 19:13:40 +11:00
Jesse Duffield 8fd6338527 move workspace reset menu into controller 2022-03-17 19:13:40 +11:00
Jesse Duffield ee1337b931 add remote branches controller 2022-03-17 19:13:40 +11:00
Jesse Duffield d59c0e2725 remove dead code 2022-03-17 19:13:40 +11:00
Jesse Duffield 675510ba53 fix integration test 2022-03-17 19:13:40 +11:00
Jesse Duffield 4805db7d97 use correct context 2022-03-17 19:13:40 +11:00
Jesse Duffield ef7c4c9ca9 refactor custom commands
more custom command refactoring
2022-03-17 19:13:40 +11:00
Jesse Duffield 952a4f3f23 prevent interrupting confirmation panel 2022-03-17 19:13:40 +11:00
Jesse Duffield 46e9946854 refactor credential handling 2022-03-17 19:13:40 +11:00
Jesse Duffield d0805616e4 move function 2022-03-17 19:13:40 +11:00
Jesse Duffield bff5351ab3 better naming 2022-03-17 19:13:40 +11:00
Jesse Duffield d991d74b06 add commit message controller 2022-03-17 19:13:40 +11:00
Jesse Duffield 120078f011 use PopContext 2022-03-17 19:13:40 +11:00
Jesse Duffield ecaff7fc6c add commit files controller 2022-03-17 19:13:40 +11:00
Jesse Duffield 85f2319897 refactor custom commands panel 2022-03-17 19:13:40 +11:00
Jesse Duffield c685a413c9 stash controller 2022-03-17 19:13:40 +11:00
Jesse Duffield a643957f89 include stash in commitish controller 2022-03-17 19:13:40 +11:00
Jesse Duffield e842d1bc9e move git flow 2022-03-17 19:13:40 +11:00
Jesse Duffield 8a555dd62e refactor 2022-03-17 19:13:40 +11:00
Jesse Duffield bef26b9634 add common commit controller 2022-03-17 19:13:40 +11:00
Jesse Duffield 574c5ca0de add subcommits controller 2022-03-17 19:13:40 +11:00
Jesse Duffield 1253100431 cleanup 2022-03-17 19:13:40 +11:00
Jesse Duffield eab00de273 reflog controller 2022-03-17 19:13:40 +11:00
Jesse Duffield 371b8d638b more consistent naming 2022-03-17 19:13:40 +11:00
Jesse Duffield 55af07a1bb fix CI 2022-03-17 19:13:40 +11:00
Jesse Duffield 33a223e981 remove dead code 2022-03-17 19:13:40 +11:00
Jesse Duffield 943a8e83da ensure we retain state when returning to submodule parent 2022-03-17 19:13:40 +11:00
Jesse Duffield 94d66b267d defend against view not yet having a context defined against it 2022-03-17 19:13:40 +11:00
Jesse Duffield 41527270ed appease linter 2022-03-17 19:13:40 +11:00
Jesse Duffield 3188526ecb fix cheatsheet crash 2022-03-17 19:13:40 +11:00
Jesse Duffield 722410aded refactor controllers 2022-03-17 19:13:40 +11:00
Jesse Duffield b93b8cc00a controller for viewing sub commits 2022-03-17 19:13:40 +11:00
Jesse Duffield cd31a762b9 rename OSCommand field to os 2022-03-17 19:13:40 +11:00
Jesse Duffield d82f175e79 refactor contexts 2022-03-17 19:13:40 +11:00
Jesse Duffield 145c69d9ae working again 2022-03-17 19:13:40 +11:00
Jesse Duffield 482bdc4f1e more refactoring 2022-03-17 19:13:40 +11:00
Jesse Duffield 8e3484d8e9 add global controller 2022-03-17 19:13:40 +11:00
Jesse Duffield 226985bf76 refactor keybindings 2022-03-17 19:13:40 +11:00
Jesse Duffield 2db4636815 no more indirection 2022-03-17 19:13:40 +11:00
Jesse Duffield 2a1e3faa0c resetting controllers on new repo 2022-03-17 19:13:40 +11:00
Jesse Duffield c703cd8f88 fix suggestions panel 2022-03-17 19:13:40 +11:00
Jesse Duffield 0a8cff6ab6 some more refactoring 2022-03-17 19:13:40 +11:00
Jesse Duffield e2f5fe1016 pretty sure we can rely on our views existing before our contexts do 2022-03-17 19:13:40 +11:00
Jesse Duffield 182c999ee0 fix linting 2022-03-17 19:13:40 +11:00
Jesse Duffield b5515da00b move commit files context into new structure 2022-03-17 19:13:40 +11:00
Jesse Duffield c084abb378 move more view model logic into the files view model 2022-03-17 19:13:40 +11:00
Jesse Duffield 8ea7b7a62e migrate files context to new structure 2022-03-17 19:13:40 +11:00
Jesse Duffield 09dc160da9 cleaning up 2022-03-17 19:13:40 +11:00
Jesse Duffield e187293456 moving more into controllers package 2022-03-17 19:13:40 +11:00
Jesse Duffield b04038d08f no need to invoke sync controller here 2022-03-17 19:13:40 +11:00
Jesse Duffield 55b393c929 always fast forward 2022-03-17 19:13:40 +11:00
Jesse Duffield f0c81ea6dc remove redundant popup checks 2022-03-17 19:13:40 +11:00
Jesse Duffield f97de692e3 move helpers into their own struct 2022-03-17 19:13:40 +11:00
Jesse Duffield 2692637fbe standardise naming 2022-03-17 19:13:40 +11:00
Jesse Duffield 77d0732fa8 add actions abstraction 2022-03-17 19:13:40 +11:00
Jesse Duffield 51547e3822 move all refresh code into the one file 2022-03-17 19:13:40 +11:00
Jesse Duffield e363606fb6 move context keys into context package 2022-03-17 19:13:40 +11:00
Jesse Duffield 138be04e65 refactor contexts code 2022-03-17 19:13:40 +11:00
Jesse Duffield 1a74ed3214 avoid deadlock 2022-03-17 19:13:40 +11:00
Jesse Duffield cb0d3a480a use type switch instead of type key 2022-03-17 19:13:40 +11:00
Jesse Duffield a2318d75b5 fix some things 2022-03-17 19:13:40 +11:00
Jesse Duffield 1dd7307fde start moving commit panel handlers into controller
more

and more

move rebase commit refreshing into existing abstraction

and more

and more

WIP

and more

handling clicks

properly fix merge conflicts

update cheatsheet

lots more preparation to start moving things into controllers

WIP

better typing

expand on remotes controller

moving more code into controllers
2022-03-17 19:13:40 +11:00
Jesse Duffield a90b6efded start refactoring gui 2022-03-17 19:13:40 +11:00
Jesse Duffield fa8571e1f4 rename field 2022-03-17 19:01:28 +11:00
David Roman d8d0d4686d Only read env once when recording dirs 2022-03-17 19:01:28 +11:00
David Roman b8fc829f86 Record current directory on switch 2022-03-17 19:01:28 +11:00
Ram Bhosale 7be25a105d allow skipping confirmation prompt after opening subprocess 2022-03-17 17:52:31 +11:00
Francisco Miamoto ca8180e1b7 Use editFileAtLine method for line by line panel 2022-03-16 20:43:53 +11:00
Daniel Kiss f5a5b7f966 Add unstagedChangesColor config option 2022-03-16 19:21:39 +11:00
Matt Cles 9adf4a1908 Add shared function for loading map of custom colors 2022-02-01 18:55:45 +11:00
Matt Cles 4df7646654 Add configurable colors for branch prefixes
Branches can now be colored based on their prefix, if it matches
a user defined prefix in the config file. If no user defined
prefix matches, then it will fallback to the defaults: green for
'feature', yellow for 'bugfix', and red for 'hotfix'. All
remaining branches will be set to the default text color.
2022-02-01 18:55:45 +11:00
Jesse Duffield 1b09674ce8 simplify submodule remove 2022-01-29 00:17:32 +11:00
Jesse Duffield d13a648132 ensure stash panel refreshes 2022-01-28 20:07:30 +11:00
Jesse Duffield 84a1992055 better locking of merge panel state 2022-01-27 21:25:04 +11:00
Jesse Duffield fa2e7ae1e7 show only merge conflict files when there are merge conflicts 2022-01-26 20:28:32 +11:00
Jesse Duffield 5a3f81d1f7 select current bisect commit even if bisect was started on another branch 2022-01-26 19:29:17 +11:00
Jesse Duffield ebbdf829e7 fix panic on rebase 2022-01-26 17:20:58 +11:00
Jesse Duffield 5e9cfab283 better rendering of bisect markets in commits panel 2022-01-26 16:52:20 +11:00
Jesse Duffield ca7cfc3232 only show commits from start ref if bad commit is reachable from there 2022-01-26 16:52:20 +11:00
Jesse Duffield c8cc18920f improve merge conflict flow 2022-01-26 14:50:47 +11:00
glendsoza eb57e3ead0 Fixed the issue with linting 2022-01-26 09:04:12 +11:00
glendsoza 0caa391c4d Changes as per review 2022-01-26 09:04:12 +11:00
glendsoza 0c6bdac2f7 Changes as per review 2022-01-26 09:04:12 +11:00
glendsoza 257e222f8d ISSUE 1706: Ask confirmation before reverting a commit 2022-01-26 09:04:12 +11:00
Jesse Duffield 58bdcbf1dd always refresh after stash action 2022-01-24 19:18:09 +11:00
Jesse Duffield 61ccc1efd2 exclude interactive rebase TODO commits from commit graph 2022-01-22 15:12:24 +11:00
Jesse Duffield 5b7dd9e43c properly resolve cyclic dependency 2022-01-22 10:48:51 +11:00
Jesse Duffield 4ab5e54139 add support for git bisect 2022-01-22 10:48:51 +11:00
Birger Skogeng Pedersen ab84410b41 check returned error (if any) from UpdateWindowTitle 2022-01-21 23:13:39 +11:00