diff --git a/app/electron/main.js b/app/electron/main.js index d619cb288..032403cd6 100644 --- a/app/electron/main.js +++ b/app/electron/main.js @@ -441,6 +441,24 @@ const boot = () => { resetTrayMenu() } + const setWndTopMenu = { + label: trayMenu.cancelWindowTop, + click: () => { + setCancelWndTop() + }, + } + const setCancelWndTop = () => { + if (!mainWindow.isAlwaysOnTop()) { + mainWindow.setAlwaysOnTop(true) + setWndTopMenu.label = trayMenu.cancelWindowTop + } else { + mainWindow.setAlwaysOnTop(false) + setWndTopMenu.label = trayMenu.setWindowTop + } + + resetTrayMenu() + } + const buildTrayMenuTemplate = () => { let ret = [ @@ -477,13 +495,7 @@ const boot = () => { let changeWndTop = { label: trayMenu.setWindowTop, click: () => { - if (!mainWindow.isAlwaysOnTop()) { - mainWindow.setAlwaysOnTop(true) - changeWndTop.label = trayMenu.cancelWindowTop - } else { - mainWindow.setAlwaysOnTop(false) - changeWndTop.label = trayMenu.setWindowTop - } + }, }; ret.splice(1, 0, changeWndTop) diff --git a/kernel/model/repository.go b/kernel/model/repository.go index 346538ba8..3620edad4 100644 --- a/kernel/model/repository.go +++ b/kernel/model/repository.go @@ -169,6 +169,9 @@ func DiffRepoSnapshots(left, right string) (ret *LeftRightDiff, err error) { Title: title, }) } + if 1 > len(ret.AddsLeft) { + ret.AddsLeft = []*DiffFile{} + } for _, updateLeft := range diff.UpdatesLeft { title, err := parseTitleInSnapshot(updateLeft.ID, repo, luteEngine) @@ -182,6 +185,9 @@ func DiffRepoSnapshots(left, right string) (ret *LeftRightDiff, err error) { Title: title, }) } + if 1 > len(ret.UpdatesLeft) { + ret.UpdatesLeft = []*DiffFile{} + } for _, updateRight := range diff.UpdatesRight { title, err := parseTitleInSnapshot(updateRight.ID, repo, luteEngine) @@ -195,6 +201,9 @@ func DiffRepoSnapshots(left, right string) (ret *LeftRightDiff, err error) { Title: title, }) } + if 1 > len(ret.UpdatesRight) { + ret.UpdatesRight = []*DiffFile{} + } for _, removeRight := range diff.RemovesRight { title, err := parseTitleInSnapshot(removeRight.ID, repo, luteEngine) @@ -208,6 +217,9 @@ func DiffRepoSnapshots(left, right string) (ret *LeftRightDiff, err error) { Title: title, }) } + if 1 > len(ret.RemovesRight) { + ret.RemovesRight = []*DiffFile{} + } return }