Jesse Duffield
7b4a0f20b2
add submodules context
2020-10-02 08:09:42 +10:00
Jesse Duffield
3b93b5dde4
make it easier to add a tab to a view
2020-10-02 08:09:42 +10:00
Jesse Duffield
c12752cf53
add mutex to views array
2020-10-01 07:01:39 +10:00
Jesse Duffield
a09bb5d4d8
better validation messages
2020-09-27 09:49:30 +10:00
Jesse Duffield
266d8bf0d5
minor fixup
2020-09-27 09:49:30 +10:00
Jesse Duffield
92183de29e
more lenient handling of views not existing
2020-09-26 19:33:22 +10:00
Jesse Duffield
077f113618
add in-built logging support for a better dev experience
2020-09-26 11:00:50 +10:00
Jesse Duffield
f172f20219
Return whether the context has a parent or not along with that parent
...
There has got to be a better way around this but if we're returning a Context
from a function (Context is an interface, not a concrete type), even if we
return nil, on the calling end it won't be equal to nil because an interface
value is a tuple of the type and the value meaning it's never itself nil,
unless both values in the tuple are nil.
So we're explicitly returning whether or not the underlying concrete type is nil.
2020-08-23 22:30:32 +00:00
Jesse Duffield
bd66162972
fix up patch manager
2020-08-23 14:29:18 +10:00
Jesse Duffield
a95fd581fd
fix logic for entering merging panel
2020-08-23 14:29:18 +10:00
Jesse Duffield
fda9f4ea7a
centralise logic for rendering options map
2020-08-23 14:29:18 +10:00
Jesse Duffield
f876d8fdc8
use constants
2020-08-23 14:29:18 +10:00
Jesse Duffield
4198bbae6c
ensure there is always a current context
2020-08-23 14:29:18 +10:00
Jesse Duffield
ade54b38c1
cleanup
2020-08-23 14:29:18 +10:00
Jesse Duffield
2c3f5be093
comment these things out because we're not using them yet
2020-08-23 14:29:18 +10:00
Jesse Duffield
5874529f43
deal with the fact that a nil wrapped in an interface is not equal to nil
2020-08-23 14:29:18 +10:00
Jesse Duffield
438abd6003
centralise code for copying to clipboard
2020-08-23 14:29:18 +10:00
Jesse Duffield
f63ec38aae
genericise creating new branches off things
2020-08-23 14:29:18 +10:00
Jesse Duffield
0ac402792b
allow getting the current item generically
2020-08-23 14:29:18 +10:00
Jesse Duffield
974c6510b8
add sub commit context
2020-08-23 14:29:18 +10:00
Jesse Duffield
2d90e1e8ee
commit files kind of generalised
2020-08-23 14:29:18 +10:00
Jesse Duffield
ddf25e14af
allowing commit files to be viewed in reflog as well
2020-08-23 14:29:18 +10:00
Jesse Duffield
48f1adad49
stop logging stack
2020-08-23 14:29:18 +10:00
Jesse Duffield
379d37a255
remove unnecessary function
2020-08-23 14:29:18 +10:00
Jesse Duffield
a59ac064d2
statically define context keys
2020-08-23 14:29:18 +10:00
Jesse Duffield
433d54fcec
WIP constants for context keys
2020-08-23 14:29:18 +10:00
Jesse Duffield
99707a527d
WIP
2020-08-23 14:29:18 +10:00
Jesse Duffield
bc410d8e4a
use camelCase
2020-08-23 14:29:18 +10:00
Jesse Duffield
dbf6bb5f27
some more things
2020-08-23 14:29:18 +10:00
Jesse Duffield
2fac2f9f1f
WIP
2020-08-23 14:29:18 +10:00
Jesse Duffield
2b812b01e9
more standardisation of rendering
2020-08-23 14:29:18 +10:00
Jesse Duffield
2f5d5034db
good progress
2020-08-23 14:29:18 +10:00
Jesse Duffield
a32947e7a7
prepare for OnRender prop
2020-08-23 14:29:18 +10:00
Jesse Duffield
2fdadd383a
introduce new approach to handling tab states
2020-08-23 14:29:18 +10:00
Jesse Duffield
9a2dc3fe15
stop crash due to context stack not being initialized
2020-08-23 14:29:18 +10:00
Jesse Duffield
f0c3d3fc4d
centralise setting of main views context
2020-08-23 14:29:18 +10:00
Jesse Duffield
2488e0044d
concurrent-safe handling of context state
2020-08-23 14:29:18 +10:00
Jesse Duffield
a12d18146c
better logic for taking focus away from popup panels
2020-08-23 14:29:18 +10:00
Jesse Duffield
119d5be1a4
move into list context file
2020-08-23 14:29:18 +10:00
Jesse Duffield
4f4df8f9cc
move context specific keybindings into context file
2020-08-23 14:29:18 +10:00
Jesse Duffield
c730271e09
minor update
2020-08-23 14:29:18 +10:00
Jesse Duffield
ac0eedda91
lots more stuff
2020-08-23 14:29:18 +10:00
Jesse Duffield
dc183c0d82
no need to set views on top anymore
2020-08-23 14:29:18 +10:00
Jesse Duffield
fd8a455aff
small things
...
WIP
2020-08-23 14:29:18 +10:00
Jesse Duffield
c9ae54a8c8
remove previous view
2020-08-23 14:29:18 +10:00
Jesse Duffield
6fb83b740b
WIP
2020-08-23 14:29:18 +10:00
Jesse Duffield
7f89113245
WIP
2020-08-23 14:29:18 +10:00
Jesse Duffield
0ea0c48631
WIP
2020-08-23 14:29:18 +10:00
Jesse Duffield
e47ad846c4
big golangci-lint cleanup
2020-03-09 12:23:13 +11:00
Jesse Duffield
64782a433e
fix segfault on line by line panel
...
The state object is sometimes undefined in the onclick method of the
line by line panel. Because we set it to nil in a bunch of places,
I've decided to just change the main context to 'normal' before setting
it to nil anywhere. That way the keybindings for the line by line panel
won't get executed and we won't get a segfault.
2020-01-31 08:27:49 +11:00