Skip to content

Commit 8c01464

Browse files
committed
Set view titles in configureViewProperties rather than createAllViews
This ensures that they are updated to the new language when changing the language in the config while lazygit is running.
1 parent 1213e87 commit 8c01464

File tree

2 files changed

+32
-44
lines changed

2 files changed

+32
-44
lines changed

pkg/gui/gui.go

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -424,6 +424,15 @@ func (gui *Gui) onUserConfigLoaded() error {
424424
userConfig := gui.Config.GetUserConfig()
425425
gui.Common.SetUserConfig(userConfig)
426426

427+
if gui.previousLanguageConfig != userConfig.Gui.Language {
428+
tr, err := i18n.NewTranslationSetFromConfig(gui.Log, userConfig.Gui.Language)
429+
if err != nil {
430+
return err
431+
}
432+
gui.c.Tr = tr
433+
gui.previousLanguageConfig = userConfig.Gui.Language
434+
}
435+
427436
gui.setColorScheme()
428437
gui.configureViewProperties()
429438

@@ -435,15 +444,6 @@ func (gui *Gui) onUserConfigLoaded() error {
435444

436445
gui.g.Mouse = userConfig.Gui.MouseEvents
437446

438-
if gui.previousLanguageConfig != userConfig.Gui.Language {
439-
tr, err := i18n.NewTranslationSetFromConfig(gui.Log, userConfig.Gui.Language)
440-
if err != nil {
441-
return err
442-
}
443-
gui.c.Tr = tr
444-
gui.previousLanguageConfig = userConfig.Gui.Language
445-
}
446-
447447
// originally we could only hide the command log permanently via the config
448448
// but now we do it via state. So we need to still support the config for the
449449
// sake of backwards compatibility. We're making use of short circuiting here

pkg/gui/views.go

Lines changed: 23 additions & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -86,7 +86,6 @@ func (gui *Gui) createAllViews() error {
8686
gui.Views.SearchPrefix.BgColor = gocui.ColorDefault
8787
gui.Views.SearchPrefix.FgColor = gocui.ColorCyan
8888
gui.Views.SearchPrefix.Frame = false
89-
gui.c.SetViewContent(gui.Views.SearchPrefix, gui.c.Tr.SearchPrefix)
9089

9190
gui.Views.StatusSpacer1.Frame = false
9291
gui.Views.StatusSpacer2.Frame = false
@@ -97,62 +96,30 @@ func (gui *Gui) createAllViews() error {
9796
gui.Views.Search.Frame = false
9897
gui.Views.Search.Editor = gocui.EditorFunc(gui.searchEditor)
9998

100-
gui.Views.Stash.Title = gui.c.Tr.StashTitle
101-
102-
gui.Views.Commits.Title = gui.c.Tr.CommitsTitle
103-
104-
gui.Views.CommitFiles.Title = gui.c.Tr.CommitFiles
105-
106-
gui.Views.Branches.Title = gui.c.Tr.BranchesTitle
107-
108-
gui.Views.Remotes.Title = gui.c.Tr.RemotesTitle
109-
110-
gui.Views.Worktrees.Title = gui.c.Tr.WorktreesTitle
111-
112-
gui.Views.Tags.Title = gui.c.Tr.TagsTitle
113-
114-
gui.Views.Files.Title = gui.c.Tr.FilesTitle
115-
11699
for _, view := range []*gocui.View{gui.Views.Main, gui.Views.Secondary, gui.Views.Staging, gui.Views.StagingSecondary, gui.Views.PatchBuilding, gui.Views.PatchBuildingSecondary, gui.Views.MergeConflicts} {
117-
view.Title = gui.c.Tr.DiffTitle
118100
view.Wrap = true
119101
view.IgnoreCarriageReturns = true
120102
view.UnderlineHyperLinksOnlyOnHover = true
121103
view.AutoRenderHyperLinks = true
122104
}
123105

124-
gui.Views.Staging.Title = gui.c.Tr.UnstagedChanges
125106
gui.Views.Staging.Wrap = true
126-
127-
gui.Views.StagingSecondary.Title = gui.c.Tr.StagedChanges
128107
gui.Views.StagingSecondary.Wrap = true
129-
130-
gui.Views.PatchBuilding.Title = gui.c.Tr.Patch
131108
gui.Views.PatchBuilding.Wrap = true
132-
133-
gui.Views.PatchBuildingSecondary.Title = gui.c.Tr.CustomPatch
134109
gui.Views.PatchBuildingSecondary.Wrap = true
135-
136-
gui.Views.MergeConflicts.Title = gui.c.Tr.MergeConflictsTitle
137110
gui.Views.MergeConflicts.Wrap = false
138-
139-
gui.Views.Limit.Title = gui.c.Tr.NotEnoughSpace
140111
gui.Views.Limit.Wrap = true
141112

142-
gui.Views.Status.Title = gui.c.Tr.StatusTitle
143-
144113
gui.Views.AppStatus.BgColor = gocui.ColorDefault
145114
gui.Views.AppStatus.FgColor = gocui.ColorCyan
146115
gui.Views.AppStatus.Visible = false
147116
gui.Views.AppStatus.Frame = false
148117

149118
gui.Views.CommitMessage.Visible = false
150-
gui.Views.CommitMessage.Title = gui.c.Tr.CommitSummary
151119
gui.Views.CommitMessage.Editable = true
152120
gui.Views.CommitMessage.Editor = gocui.EditorFunc(gui.commitMessageEditor)
153121

154122
gui.Views.CommitDescription.Visible = false
155-
gui.Views.CommitDescription.Title = gui.c.Tr.CommitDescriptionTitle
156123
gui.Views.CommitDescription.Editable = true
157124
gui.Views.CommitDescription.Editor = gocui.EditorFunc(gui.commitDescriptionEditor)
158125

@@ -170,12 +137,10 @@ func (gui *Gui) createAllViews() error {
170137
gui.Views.Information.FgColor = gocui.ColorGreen
171138
gui.Views.Information.Frame = false
172139

173-
gui.Views.Extras.Title = gui.c.Tr.CommandLog
174140
gui.Views.Extras.Autoscroll = true
175141
gui.Views.Extras.Wrap = true
176142
gui.Views.Extras.AutoRenderHyperLinks = true
177143

178-
gui.Views.Snake.Title = gui.c.Tr.SnakeTitle
179144
gui.Views.Snake.FgColor = gocui.ColorGreen
180145

181146
return nil
@@ -201,7 +166,30 @@ func (gui *Gui) configureViewProperties() {
201166
(*mapping.viewPtr).InactiveViewSelBgColor = theme.GocuiInactiveViewSelectedLineBgColor
202167
}
203168

169+
gui.c.SetViewContent(gui.Views.SearchPrefix, gui.c.Tr.SearchPrefix)
170+
171+
gui.Views.Stash.Title = gui.c.Tr.StashTitle
172+
gui.Views.Commits.Title = gui.c.Tr.CommitsTitle
173+
gui.Views.CommitFiles.Title = gui.c.Tr.CommitFiles
174+
gui.Views.Branches.Title = gui.c.Tr.BranchesTitle
175+
gui.Views.Remotes.Title = gui.c.Tr.RemotesTitle
176+
gui.Views.Worktrees.Title = gui.c.Tr.WorktreesTitle
177+
gui.Views.Tags.Title = gui.c.Tr.TagsTitle
178+
gui.Views.Files.Title = gui.c.Tr.FilesTitle
179+
gui.Views.PatchBuilding.Title = gui.c.Tr.Patch
180+
gui.Views.PatchBuildingSecondary.Title = gui.c.Tr.CustomPatch
181+
gui.Views.MergeConflicts.Title = gui.c.Tr.MergeConflictsTitle
182+
gui.Views.Limit.Title = gui.c.Tr.NotEnoughSpace
183+
gui.Views.Status.Title = gui.c.Tr.StatusTitle
184+
gui.Views.Staging.Title = gui.c.Tr.UnstagedChanges
185+
gui.Views.StagingSecondary.Title = gui.c.Tr.StagedChanges
186+
gui.Views.CommitMessage.Title = gui.c.Tr.CommitSummary
187+
gui.Views.CommitDescription.Title = gui.c.Tr.CommitDescriptionTitle
188+
gui.Views.Extras.Title = gui.c.Tr.CommandLog
189+
gui.Views.Snake.Title = gui.c.Tr.SnakeTitle
190+
204191
for _, view := range []*gocui.View{gui.Views.Main, gui.Views.Secondary, gui.Views.Staging, gui.Views.StagingSecondary, gui.Views.PatchBuilding, gui.Views.PatchBuildingSecondary, gui.Views.MergeConflicts} {
192+
view.Title = gui.c.Tr.DiffTitle
205193
view.CanScrollPastBottom = gui.c.UserConfig().Gui.ScrollPastBottom
206194
view.TabWidth = gui.c.UserConfig().Gui.TabWidth
207195
}

0 commit comments

Comments
 (0)