1
0
mirror of https://github.com/jesseduffield/lazygit.git synced 2025-06-17 00:18:05 +02:00

Save and restore the unwrapped description

When preserving the commit message (when cancelling a commit), and later
restoring it, use the unwrapped description.
This commit is contained in:
Stefan Haller
2023-12-20 13:01:41 +01:00
parent cede021400
commit 379a6f1922
3 changed files with 21 additions and 14 deletions

View File

@ -38,10 +38,14 @@ func (gui *Gui) resetHelpersAndControllers() {
getCommitDescription := func() string { getCommitDescription := func() string {
return strings.TrimSpace(gui.Views.CommitDescription.TextArea.GetContent()) return strings.TrimSpace(gui.Views.CommitDescription.TextArea.GetContent())
} }
getUnwrappedCommitDescription := func() string {
return strings.TrimSpace(gui.Views.CommitDescription.TextArea.GetUnwrappedContent())
}
commitsHelper := helpers.NewCommitsHelper(helperCommon, commitsHelper := helpers.NewCommitsHelper(helperCommon,
getCommitSummary, getCommitSummary,
setCommitSummary, setCommitSummary,
getCommitDescription, getCommitDescription,
getUnwrappedCommitDescription,
setCommitDescription, setCommitDescription,
) )

View File

@ -100,7 +100,7 @@ func (self *CommitMessageController) handleCommitIndexChange(value int) error {
self.c.Helpers().Commits.SetMessageAndDescriptionInView(self.context().GetHistoryMessage()) self.c.Helpers().Commits.SetMessageAndDescriptionInView(self.context().GetHistoryMessage())
return nil return nil
} else if currentIndex == context.NoCommitIndex { } else if currentIndex == context.NoCommitIndex {
self.context().SetHistoryMessage(self.c.Helpers().Commits.JoinCommitMessageAndDescription()) self.context().SetHistoryMessage(self.c.Helpers().Commits.JoinCommitMessageAndUnwrappedDescription())
} }
validCommit, err := self.setCommitMessageAtIndex(newIndex) validCommit, err := self.setCommitMessageAtIndex(newIndex)

View File

@ -19,6 +19,7 @@ type CommitsHelper struct {
getCommitSummary func() string getCommitSummary func() string
setCommitSummary func(string) setCommitSummary func(string)
getCommitDescription func() string getCommitDescription func() string
getUnwrappedCommitDescription func() string
setCommitDescription func(string) setCommitDescription func(string)
} }
@ -29,6 +30,7 @@ func NewCommitsHelper(
getCommitSummary func() string, getCommitSummary func() string,
setCommitSummary func(string), setCommitSummary func(string),
getCommitDescription func() string, getCommitDescription func() string,
getUnwrappedCommitDescription func() string,
setCommitDescription func(string), setCommitDescription func(string),
) *CommitsHelper { ) *CommitsHelper {
return &CommitsHelper{ return &CommitsHelper{
@ -36,6 +38,7 @@ func NewCommitsHelper(
getCommitSummary: getCommitSummary, getCommitSummary: getCommitSummary,
setCommitSummary: setCommitSummary, setCommitSummary: setCommitSummary,
getCommitDescription: getCommitDescription, getCommitDescription: getCommitDescription,
getUnwrappedCommitDescription: getUnwrappedCommitDescription,
setCommitDescription: setCommitDescription, setCommitDescription: setCommitDescription,
} }
} }
@ -53,11 +56,11 @@ func (self *CommitsHelper) SetMessageAndDescriptionInView(message string) {
self.c.Contexts().CommitMessage.RenderCommitLength() self.c.Contexts().CommitMessage.RenderCommitLength()
} }
func (self *CommitsHelper) JoinCommitMessageAndDescription() string { func (self *CommitsHelper) JoinCommitMessageAndUnwrappedDescription() string {
if len(self.getCommitDescription()) == 0 { if len(self.getUnwrappedCommitDescription()) == 0 {
return self.getCommitSummary() return self.getCommitSummary()
} }
return self.getCommitSummary() + "\n" + self.getCommitDescription() return self.getCommitSummary() + "\n" + self.getUnwrappedCommitDescription()
} }
func (self *CommitsHelper) SwitchToEditor() error { func (self *CommitsHelper) SwitchToEditor() error {
@ -154,7 +157,7 @@ func (self *CommitsHelper) HandleCommitConfirm() error {
func (self *CommitsHelper) CloseCommitMessagePanel() error { func (self *CommitsHelper) CloseCommitMessagePanel() error {
if self.c.Contexts().CommitMessage.GetPreserveMessage() { if self.c.Contexts().CommitMessage.GetPreserveMessage() {
message := self.JoinCommitMessageAndDescription() message := self.JoinCommitMessageAndUnwrappedDescription()
self.c.Contexts().CommitMessage.SetPreservedMessage(message) self.c.Contexts().CommitMessage.SetPreservedMessage(message)
} else { } else {