From 87de417389bf594729c6a4523787978d9be532e7 Mon Sep 17 00:00:00 2001 From: Sven Strickroth Date: Mon, 19 Sep 2022 14:12:44 +0200 Subject: [PATCH] Fixed issue #3956: Sometimes rebase contains wrong list of files Signed-off-by: Sven Strickroth --- Languages/Tortoise.pot | 8 ++--- src/Changelog.txt | 1 + src/Resources/TortoiseProcENG.rc | 36 +++++++++++----------- src/TortoiseProc/CheckForUpdatesDlg.cpp | 1 + src/TortoiseProc/CommitDlg.cpp | 26 +++++++++++++--- src/TortoiseProc/CreateBranchTagDlg.cpp | 6 ++-- src/TortoiseProc/DeleteConflictDlg.cpp | 12 ++++++++ src/TortoiseProc/FirstStartWizardGit.cpp | 3 ++ src/TortoiseProc/GitProgressDlg.cpp | 1 + src/TortoiseProc/LogDlg.cpp | 3 +- src/TortoiseProc/ProgressDlg.cpp | 2 ++ src/TortoiseProc/PromptDlg.cpp | 1 + src/TortoiseProc/PullFetchDlg.cpp | 2 ++ src/TortoiseProc/RebaseDlg.cpp | 8 ++++- src/TortoiseProc/RefLogDlg.cpp | 3 ++ src/TortoiseProc/Settings/SettingGitConfig.cpp | 4 +++ src/TortoiseProc/Settings/SettingGitCredential.cpp | 1 + src/TortoiseProc/SubmoduleDiffDlg.cpp | 1 + src/TortoiseProc/SyncDlg.cpp | 5 +++ src/TortoiseShell/GITPropertyPage.cpp | 6 ++++ 20 files changed, 100 insertions(+), 30 deletions(-) diff --git a/Languages/Tortoise.pot b/Languages/Tortoise.pot index 911545624..4b7cb257e 100644 --- a/Languages/Tortoise.pot +++ b/Languages/Tortoise.pot @@ -532,10 +532,6 @@ msgstr "" msgid "&Do the same for the rest" msgstr "" -#. Resource IDs: (Dialog IDD_CHECKFORUPDATES: Control id 1032) -msgid "&Don't ask me again" -msgstr "" - #. Resource IDs: (IDS_HOOKS_APPROVE_TASK4) msgid "&Don't run\nDo not run the script" msgstr "" @@ -3846,6 +3842,10 @@ msgstr "" msgid "Document :" msgstr "" +#. Resource IDs: (Dialog IDD_CHECKFORUPDATES: Control id 1032) +msgid "Don't ask me &again" +msgstr "" + #. Resource IDs: (IDS_PROC_SYNC_PUSH_UNKNOWNBRANCH) #, c-format msgid "Don't know what will push because unknown branch \"%s\"" diff --git a/src/Changelog.txt b/src/Changelog.txt index c912ff41d..deea2d2a2 100644 --- a/src/Changelog.txt +++ b/src/Changelog.txt @@ -46,6 +46,7 @@ Released: unreleased * Fixed issue #3953: Disabling ShowListFullPathTooltip doesn't hide tooltips in Changed Files dialog * Fixed issue #3945: "Combine to one commit" sometimes broken * Fixed issue #3663: Wrong window has focus after pull + * Fixed issue #3956: Sometimes rebase contains wrong list of files = Release 2.13.0.1 = Released: 2022-02-06 diff --git a/src/Resources/TortoiseProcENG.rc b/src/Resources/TortoiseProcENG.rc index fcf4b1b1e..d3e543284 100644 --- a/src/Resources/TortoiseProcENG.rc +++ b/src/Resources/TortoiseProcENG.rc @@ -243,11 +243,11 @@ BEGIN EDITTEXT IDC_BUGID,294,3,49,14,ES_AUTOHSCROLL CONTROL "Scintilla",IDC_LOGMESSAGE,"Scintilla",WS_TABSTOP,13,32,331,72,WS_EX_STATICEDGE CONTROL "Amend &Last Commit",IDC_COMMIT_AMEND,"Button",BS_AUTOCHECKBOX | WS_DISABLED | WS_TABSTOP,14,111,135,10 - CONTROL "Show diff to last commit",IDC_COMMIT_AMENDDIFF,"Button",BS_AUTOCHECKBOX | NOT WS_VISIBLE | WS_TABSTOP,212,110,132,10 + CONTROL "Show diff to last commit",IDC_COMMIT_AMENDDIFF,"Button",BS_AUTOCHECKBOX | NOT WS_VISIBLE | WS_DISABLED | WS_TABSTOP,212,110,132,10 CONTROL "Set author &date",IDC_COMMIT_SETDATETIME,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,14,125,102,10 CONTROL "",IDC_COMMIT_DATEPICKER,"SysDateTimePick32",DTS_RIGHTALIGN | NOT WS_VISIBLE | WS_TABSTOP,123,123,66,13,WS_EX_RIGHT CONTROL "",IDC_COMMIT_TIMEPICKER,"SysDateTimePick32",DTS_RIGHTALIGN | DTS_UPDOWN | NOT WS_VISIBLE | WS_TABSTOP | 0x8,193,123,61,13 - CONTROL "Reset",IDC_COMMIT_AS_COMMIT_DATE,"Button",BS_AUTOCHECKBOX | NOT WS_VISIBLE | WS_TABSTOP,259,125,85,10 + CONTROL "Reset",IDC_COMMIT_AS_COMMIT_DATE,"Button",BS_AUTOCHECKBOX | NOT WS_VISIBLE | WS_DISABLED | WS_TABSTOP,259,125,85,10 CONTROL "Set au&thor",IDC_COMMIT_SETAUTHOR,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,14,139,102,10 EDITTEXT IDC_COMMIT_AUTHORDATA,123,137,119,13,ES_AUTOHSCROLL | NOT WS_VISIBLE PUSHBUTTON "Add &Signed-off-by",IDC_SIGNOFF,258,137,86,13 @@ -267,8 +267,8 @@ BEGIN "Button",BS_AUTOCHECKBOX | WS_TABSTOP,14,252,180,10 CONTROL "Show &Unversioned Files",IDC_SHOWUNVERSIONED,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,14,263,135,10 LTEXT "",IDC_STATISTICS,149,247,195,8,0,WS_EX_RIGHT - RTEXT "Partial Staging>>",IDC_PARTIAL_STAGING,259,268,76,8,NOT WS_VISIBLE - RTEXT "Partial Unstaging>>",IDC_PARTIAL_UNSTAGING,259,276,76,8,NOT WS_VISIBLE + RTEXT "Partial Staging>>",IDC_PARTIAL_STAGING,259,268,76,8,NOT WS_VISIBLE | WS_DISABLED + RTEXT "Partial Unstaging>>",IDC_PARTIAL_UNSTAGING,259,276,76,8,NOT WS_VISIBLE | WS_DISABLED CONTROL "Do not autoselect submodules",IDC_NOAUTOSELECTSUBMODULES, "Button",BS_AUTOCHECKBOX | WS_TABSTOP,14,274,147,10 RTEXT "View Patch>>",IDC_VIEW_PATCH,259,260,76,8 @@ -455,7 +455,7 @@ CAPTION "Progress" FONT 9, "Segoe UI", 400, 0, 0x1 BEGIN CONTROL "",IDC_SVNPROGRESS,"SysListView32",LVS_REPORT | LVS_ALIGNLEFT | LVS_OWNERDATA | WS_BORDER | WS_TABSTOP,7,7,420,113 - PUSHBUTTON "Show &log...",IDC_LOGBUTTON,237,143,79,14,NOT WS_VISIBLE + PUSHBUTTON "Show &log...",IDC_LOGBUTTON,237,143,79,14,NOT WS_VISIBLE | WS_DISABLED DEFPUSHBUTTON "OK",IDOK,322,143,50,14 PUSHBUTTON "Cancel",IDCANCEL,377,143,50,14 EDITTEXT IDC_INFOTEXT,7,135,227,22,ES_MULTILINE | ES_READONLY | NOT WS_BORDER @@ -549,7 +549,7 @@ BEGIN CONTROL "",IDC_PROGRESSBAR,"msctls_progress32",NOT WS_VISIBLE | WS_BORDER,14,272,385,14 PUSHBUTTON "&Download",IDC_BUTTON_UPDATE,409,272,75,14,WS_DISABLED DEFPUSHBUTTON "&Close",IDOK,220,299,50,14 - PUSHBUTTON "&Don't ask me again",IDC_DONOTASKAGAIN,122,299,106,14,NOT WS_VISIBLE + PUSHBUTTON "Don't ask me &again",IDC_DONOTASKAGAIN,122,299,106,14,NOT WS_VISIBLE | WS_DISABLED END IDD_REVERT DIALOGEX 0, 0, 279, 232 @@ -1293,7 +1293,7 @@ BEGIN CONTROL "Trac&k",IDC_CHECK_TRACK,"Button",BS_AUTO3STATE | WS_TABSTOP,19,127,70,10 CONTROL "&Force",IDC_CHECK_FORCE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,92,127,66,10 CONTROL "&Switch to new branch",IDC_CHECK_SWITCH,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,163,127,118,10 - CONTROL "Si&gn",IDC_CHECK_SIGN,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,186,127,96,10 + CONTROL "Si&gn",IDC_CHECK_SIGN,"Button",BS_AUTOCHECKBOX | WS_DISABLED | WS_TABSTOP,186,127,96,10 GROUPBOX "&Message",IDC_GROUP_MESSAGE,7,146,282,42 EDITTEXT IDC_EDIT_MESSAGE,21,157,257,23,ES_MULTILINE | ES_AUTOVSCROLL | ES_AUTOHSCROLL | ES_WANTRETURN | WS_VSCROLL DEFPUSHBUTTON "OK",IDOK,123,191,50,14 @@ -1505,11 +1505,11 @@ BEGIN PUSHBUTTON "Dumy Group For locat TabCtr",IDC_REBASE_DUMY_TAB,7,137,402,64,NOT WS_VISIBLE CONTROL "",IDC_REBASE_PROGRESS,"msctls_progress32",WS_BORDER,7,204,402,7 LTEXT "",IDC_STATUS_STATIC,7,215,201,8 - CONTROL "&Edit/Split commit",IDC_REBASE_SPLIT_COMMIT,"Button",BS_AUTOCHECKBOX | NOT WS_VISIBLE | WS_TABSTOP,122,219,91,10 + CONTROL "&Edit/Split commit",IDC_REBASE_SPLIT_COMMIT,"Button",BS_AUTOCHECKBOX | NOT WS_VISIBLE | WS_DISABLED | WS_TABSTOP,122,219,91,10 DEFPUSHBUTTON "Continue",IDC_REBASE_CONTINUE,213,217,63,14 PUSHBUTTON "Abort",IDC_REBASE_ABORT,285,217,57,14 PUSHBUTTON "Help",IDHELP,351,217,58,14 - PUSHBUTTON "Button3",IDC_REBASE_POST_BUTTON,6,217,75,14,NOT WS_VISIBLE + PUSHBUTTON "Button3",IDC_REBASE_POST_BUTTON,6,217,75,14,NOT WS_VISIBLE | WS_DISABLED END IDD_RESOLVE_CONFLICT DIALOGEX 0, 0, 315, 129 @@ -1522,11 +1522,11 @@ BEGIN LTEXT "Static",IDC_LOCAL_STATUS,22,50,167,8 EDITTEXT IDC_FROMHASH,19,35,188,12,ES_AUTOHSCROLL | ES_READONLY | NOT WS_BORDER,WS_EX_CLIENTEDGE PUSHBUTTON "Show log",IDC_LOG,218,35,79,12 - PUSHBUTTON "Show &changes",IDC_SHOWDIFF,218,50,79,12,NOT WS_VISIBLE + PUSHBUTTON "Show &changes",IDC_SHOWDIFF,218,50,79,12,NOT WS_VISIBLE | WS_DISABLED LTEXT "Static",IDC_REMOTE_STATUS,22,84,164,8 EDITTEXT IDC_TOHASH,19,69,188,12,ES_AUTOHSCROLL | ES_READONLY | NOT WS_BORDER,WS_EX_CLIENTEDGE PUSHBUTTON "Show log",IDC_LOG2,218,69,79,12 - PUSHBUTTON "Show &changes",IDC_SHOWDIFF2,218,84,79,12,NOT WS_VISIBLE + PUSHBUTTON "Show &changes",IDC_SHOWDIFF2,218,84,79,12,NOT WS_VISIBLE | WS_DISABLED PUSHBUTTON "OK",IDC_MODIFY,65,108,50,14 PUSHBUTTON "Delete",IDC_DELETE,126,108,50,14 DEFPUSHBUTTON "Abort",IDCANCEL,187,108,50,14 @@ -1542,7 +1542,7 @@ BEGIN CONTROL "",IDC_COMBOBOXEX_REF,"ComboBoxEx32",CBS_DROPDOWNLIST | CBS_SORT | WS_VSCROLL | WS_TABSTOP,55,7,294,160 CONTROL "",IDC_REFLOG_LIST,"SysListView32",LVS_REPORT | LVS_SHOWSELALWAYS | LVS_ALIGNLEFT | LVS_OWNERDATA | WS_BORDER | WS_TABSTOP,7,27,342,138 PUSHBUTTON "&Search...",IDC_SEARCH,7,175,65,14 - PUSHBUTTON "&Clear stash",IDC_REFLOG_BUTTONCLEARSTASH,80,175,79,14,NOT WS_VISIBLE + PUSHBUTTON "&Clear stash",IDC_REFLOG_BUTTONCLEARSTASH,80,175,79,14,NOT WS_VISIBLE | WS_DISABLED DEFPUSHBUTTON "OK",IDOK,184,175,50,14 PUSHBUTTON "Cancel",IDCANCEL,241,175,50,14 PUSHBUTTON "Help",IDHELP,299,175,50,14 @@ -1607,9 +1607,9 @@ BEGIN PUSHBUTTON "Edit .tgitconfig",IDC_EDITTGITCONFIG,14,196,90,14 PUSHBUTTON "&View effective config",IDC_VIEWEFFECTIVEGITCONFIG,14,214,90,14 PUSHBUTTON "Edit gl&obal .gitconfig",IDC_EDITGLOBALGITCONFIG,109,178,90,14 - PUSHBUTTON "Edit global &XDG git/config",IDC_EDITGLOBALXDGGITCONFIG,109,196,90,14,NOT WS_VISIBLE + PUSHBUTTON "Edit global &XDG git/config",IDC_EDITGLOBALXDGGITCONFIG,109,196,90,14,NOT WS_VISIBLE | WS_DISABLED PUSHBUTTON "Edit s&ystemwide gitconfig",IDC_EDITSYSTEMGITCONFIG,203,178,90,14 - PUSHBUTTON "View system&wide gitconfig",IDC_VIEWSYSTEMGITCONFIG,203,196,90,14,NOT WS_VISIBLE + PUSHBUTTON "View system&wide gitconfig",IDC_VIEWSYSTEMGITCONFIG,203,196,90,14,NOT WS_VISIBLE | WS_DISABLED END IDD_SETTINREMOTE DIALOGEX 0, 0, 300, 217 @@ -1980,7 +1980,7 @@ CAPTION "Credential" FONT 9, "Segoe UI", 400, 0, 0x1 BEGIN LTEXT "All or some options are limited. In order to change all these settings, you need Administrator rights.",IDC_STATICELEVATIONNEEDED,169,126,124,43,SS_SUNKEN | NOT WS_VISIBLE - PUSHBUTTON "Open &settings",IDC_OPENSETTINGSELEVATED,169,174,124,14,NOT WS_VISIBLE + PUSHBUTTON "Open &settings",IDC_OPENSETTINGSELEVATED,169,174,124,14,NOT WS_VISIBLE | WS_DISABLED LTEXT "Credential helper:",IDC_STATIC,7,7,58,8 COMBOBOX IDC_COMBO_SIMPLECREDENTIAL,97,7,196,12,CBS_DROPDOWNLIST | WS_TABSTOP LTEXT "Helpers:",IDC_STATIC,7,24,76,8 @@ -2220,10 +2220,10 @@ BEGIN LTEXT "Recommended: Git for Windows",IDC_STATIC,17,110,289,9 LTEXT "",IDC_LINK,17,121,289,10 CONTROL "I don't use Git for Windows and need special workarounds",IDC_WORKAROUNDS, - "Button",BS_AUTOCHECKBOX | NOT WS_VISIBLE | WS_TABSTOP,17,136,289,11 + "Button",BS_AUTOCHECKBOX | NOT WS_VISIBLE | WS_DISABLED | WS_TABSTOP,17,136,289,11 CONTROL "Enable special hack for Cygwin git",IDC_GITHACKS1, - "Button",BS_AUTORADIOBUTTON | NOT WS_VISIBLE,17,150,289,11 - CONTROL "Enable special hack for Msys2 git",IDC_GITHACKS2,"Button",BS_AUTORADIOBUTTON | NOT WS_VISIBLE,17,164,289,11 + "Button",BS_AUTORADIOBUTTON | NOT WS_VISIBLE | WS_DISABLED,17,150,289,11 + CONTROL "Enable special hack for Msys2 git",IDC_GITHACKS2,"Button",BS_AUTORADIOBUTTON | NOT WS_VISIBLE | WS_DISABLED,17,164,289,11 END IDD_FIRSTSTARTWIZARD_AUTHENTICATION DIALOGEX 0, 0, 322, 191 diff --git a/src/TortoiseProc/CheckForUpdatesDlg.cpp b/src/TortoiseProc/CheckForUpdatesDlg.cpp index 4edfb608e..27d64431d 100644 --- a/src/TortoiseProc/CheckForUpdatesDlg.cpp +++ b/src/TortoiseProc/CheckForUpdatesDlg.cpp @@ -348,6 +348,7 @@ UINT CCheckForUpdatesDlg::CheckThread() rectDoNotAskAgainButton.top = rectOKButton.top; rectDoNotAskAgainButton.bottom = rectOKButton.bottom; GetDlgItem(IDC_DONOTASKAGAIN)->MoveWindow(&rectDoNotAskAgainButton); + GetDlgItem(IDC_DONOTASKAGAIN)->EnableWindow(TRUE); GetDlgItem(IDC_DONOTASKAGAIN)->ShowWindow(SW_SHOW); rectOKButton.left += CDPIAware::Instance().ScaleX(60); temp.LoadString(IDS_REMINDMELATER); diff --git a/src/TortoiseProc/CommitDlg.cpp b/src/TortoiseProc/CommitDlg.cpp index 463ac84e2..a30b64f81 100644 --- a/src/TortoiseProc/CommitDlg.cpp +++ b/src/TortoiseProc/CommitDlg.cpp @@ -461,7 +461,10 @@ BOOL CCommitDlg::OnInitDialog() SetSplitterRange(); if (m_bForceCommitAmend || m_bCommitAmend) + { + DialogEnableWindow(IDC_COMMIT_AMENDDIFF, TRUE); GetDlgItem(IDC_COMMIT_AMENDDIFF)->ShowWindow(SW_SHOW); + } // add all directories to the watcher /* @@ -1053,9 +1056,11 @@ void CCommitDlg::OnOK() m_AmendStr.Empty(); m_bCommitAmend = FALSE; GetDlgItem(IDC_COMMIT_AMENDDIFF)->ShowWindow(SW_HIDE); + DialogEnableWindow(IDC_COMMIT_AMENDDIFF, FALSE); m_bSetCommitDateTime = FALSE; m_AsCommitDateCtrl.ShowWindow(SW_HIDE); m_AsCommitDateCtrl.SetCheck(FALSE); + m_AsCommitDateCtrl.EnableWindow(FALSE); GetDlgItem(IDC_COMMIT_DATEPICKER)->ShowWindow(SW_HIDE); GetDlgItem(IDC_COMMIT_TIMEPICKER)->ShowWindow(SW_HIDE); m_bSetAuthor = FALSE; @@ -1398,6 +1403,7 @@ UINT CCommitDlg::StatusThread() if (repoRoot.IsCherryPickActive()) { GetDlgItem(IDC_COMMIT_AMENDDIFF)->ShowWindow(SW_HIDE); + DialogEnableWindow(IDC_COMMIT_AMENDDIFF, FALSE); m_bCommitAmend = FALSE; SendMessage(WM_UPDATEDATAFALSE); } @@ -2723,22 +2729,25 @@ void CCommitDlg::OnBnClickedCommitAmend() { this->m_NoAmendStr=this->m_cLogMessage.GetText(); m_cLogMessage.SetText(m_AmendStr); + DialogEnableWindow(IDC_COMMIT_AMENDDIFF, m_bStagingSupport); GetDlgItem(IDC_COMMIT_AMENDDIFF)->ShowWindow(SW_SHOW); if (m_bStagingSupport) - { - UpdateData(false); - DialogEnableWindow(IDC_COMMIT_AMENDDIFF, false); - } + UpdateData(FALSE); if (m_bSetCommitDateTime) + { + m_AsCommitDateCtrl.EnableWindow(TRUE); m_AsCommitDateCtrl.ShowWindow(SW_SHOW); + } } else { this->m_AmendStr=this->m_cLogMessage.GetText(); m_cLogMessage.SetText(m_NoAmendStr); GetDlgItem(IDC_COMMIT_AMENDDIFF)->ShowWindow(SW_HIDE); + DialogEnableWindow(IDC_COMMIT_AMENDDIFF, FALSE); m_AsCommitDateCtrl.ShowWindow(SW_HIDE); m_AsCommitDateCtrl.SetCheck(FALSE); + m_AsCommitDateCtrl.EnableWindow(FALSE); OnBnClickedCommitAsCommitDate(); } @@ -2890,6 +2899,7 @@ void CCommitDlg::DestroyPatchViewDlgIfOpen() { g_Git.SetConfigValue(L"tgit.commitshowpatch", L"false"); m_patchViewdlg.ShowWindow(SW_HIDE); + m_patchViewdlg.EnableWindow(FALSE); m_patchViewdlg.DestroyWindow(); } } @@ -2956,6 +2966,7 @@ void CCommitDlg::OnBnClickedCommitSetDateTime() if (headRevision.GetCommit(L"HEAD")) MessageBox(headRevision.GetLastErr(), L"TortoiseGit", MB_ICONERROR); authordate = headRevision.GetAuthorDate(); + m_AsCommitDateCtrl.EnableWindow(TRUE); m_AsCommitDateCtrl.ShowWindow(SW_SHOW); } @@ -2970,6 +2981,7 @@ void CCommitDlg::OnBnClickedCommitSetDateTime() GetDlgItem(IDC_COMMIT_DATEPICKER)->ShowWindow(SW_HIDE); GetDlgItem(IDC_COMMIT_TIMEPICKER)->ShowWindow(SW_HIDE); m_AsCommitDateCtrl.ShowWindow(SW_HIDE); + m_AsCommitDateCtrl.EnableWindow(FALSE); m_AsCommitDateCtrl.SetCheck(FALSE); OnBnClickedCommitAsCommitDate(); } @@ -3073,17 +3085,23 @@ void CCommitDlg::PrepareStagingSupport() } CMessageBox::ShowCheck(GetSafeHwnd(), IDS_TIPSTAGINGMODE, IDS_APPNAME, MB_ICONINFORMATION | MB_OK, L"HintStagingMode", IDS_MSGBOX_DONOTSHOWAGAIN); GetDlgItem(IDC_VIEW_PATCH)->ShowWindow(SW_HIDE); + DialogEnableWindow(IDC_VIEW_PATCH, FALSE); ShowPartialStagingTextAndUpdateDisplayState(true); + DialogEnableWindow(IDC_PARTIAL_STAGING, TRUE); GetDlgItem(IDC_PARTIAL_STAGING)->ShowWindow(SW_SHOW); ShowPartialUnstagingTextAndUpdateDisplayState(true); + DialogEnableWindow(IDC_PARTIAL_UNSTAGING, TRUE); GetDlgItem(IDC_PARTIAL_UNSTAGING)->ShowWindow(SW_SHOW); } else { ShowViewPatchText(true); + DialogEnableWindow(IDC_VIEW_PATCH, TRUE); GetDlgItem(IDC_VIEW_PATCH)->ShowWindow(SW_SHOW); GetDlgItem(IDC_PARTIAL_STAGING)->ShowWindow(SW_HIDE); + DialogEnableWindow(IDC_PARTIAL_STAGING, FALSE); GetDlgItem(IDC_PARTIAL_UNSTAGING)->ShowWindow(SW_HIDE); + DialogEnableWindow(IDC_PARTIAL_UNSTAGING, FALSE); } } diff --git a/src/TortoiseProc/CreateBranchTagDlg.cpp b/src/TortoiseProc/CreateBranchTagDlg.cpp index c352c52a5..bee5d3aa7 100644 --- a/src/TortoiseProc/CreateBranchTagDlg.cpp +++ b/src/TortoiseProc/CreateBranchTagDlg.cpp @@ -91,7 +91,7 @@ BOOL CCreateBranchTagDlg::OnInitDialog() { sWindowTitle = CString(MAKEINTRESOURCE(IDS_PROGS_TITLE_CREATEBRANCH)); this->GetDlgItem(IDC_LABEL_BRANCH)->SetWindowText(CString(MAKEINTRESOURCE(IDS_PROC_BRANCH))); - this->GetDlgItem(IDC_CHECK_SIGN)->ShowWindow(SW_HIDE); + GetDlgItem(IDC_CHECK_SIGN)->ShowWindow(SW_HIDE); // deactivated by default GetDlgItem(IDC_GROUP_MESSAGE)->SetWindowText(CString(MAKEINTRESOURCE(IDS_DESCRIPTION))); if (!!m_regNewBranch) { @@ -103,7 +103,9 @@ BOOL CCreateBranchTagDlg::OnInitDialog() CAppUtils::SetWindowTitle(m_hWnd, g_Git.m_CurrentDir, sWindowTitle); // show the switch checkbox if we are a create branch dialog - this->GetDlgItem(IDC_CHECK_SWITCH)->ShowWindow(!m_bIsTag && !GitAdminDir::IsBareRepo(g_Git.m_CurrentDir)); + bool canSwitch = !m_bIsTag && !GitAdminDir::IsBareRepo(g_Git.m_CurrentDir); + GetDlgItem(IDC_CHECK_SWITCH)->ShowWindow(canSwitch ? SW_SHOW : SW_HIDE); + DialogEnableWindow(IDC_CHECK_SWITCH, canSwitch); CWnd* pHead = GetDlgItem(IDC_RADIO_HEAD); CString HeadText; pHead->GetWindowText( HeadText ); diff --git a/src/TortoiseProc/DeleteConflictDlg.cpp b/src/TortoiseProc/DeleteConflictDlg.cpp index 469a2e2d2..27cea9e70 100644 --- a/src/TortoiseProc/DeleteConflictDlg.cpp +++ b/src/TortoiseProc/DeleteConflictDlg.cpp @@ -71,16 +71,28 @@ BOOL CDeleteConflictDlg::OnInitDialog() { this->GetDlgItem(IDC_MODIFY)->SetWindowText(CString(MAKEINTRESOURCE(IDS_SVNACTION_MODIFIED))); if (m_bDiffMine) + { + DialogEnableWindow(IDC_SHOWDIFF, TRUE); GetDlgItem(IDC_SHOWDIFF)->ShowWindow(SW_SHOW); + } else + { + DialogEnableWindow(IDC_SHOWDIFF2, TRUE); GetDlgItem(IDC_SHOWDIFF2)->ShowWindow(SW_SHOW); + } } else this->GetDlgItem(IDC_MODIFY)->SetWindowText(CString(MAKEINTRESOURCE(IDS_PROC_CREATED))); if (m_LocalRef.IsEmpty()) + { GetDlgItem(IDC_LOG)->ShowWindow(SW_HIDE); + DialogEnableWindow(IDC_LOG, FALSE); + } if (m_RemoteRef.IsEmpty()) + { GetDlgItem(IDC_LOG2)->ShowWindow(SW_HIDE); + DialogEnableWindow(IDC_LOG2, FALSE); + } CString sWindowTitle; GetWindowText(sWindowTitle); diff --git a/src/TortoiseProc/FirstStartWizardGit.cpp b/src/TortoiseProc/FirstStartWizardGit.cpp index b106c3010..b102c5a77 100644 --- a/src/TortoiseProc/FirstStartWizardGit.cpp +++ b/src/TortoiseProc/FirstStartWizardGit.cpp @@ -115,9 +115,12 @@ void CFirstStartWizardGit::ShowWorkarounds(bool show) if (!(CGit::ms_bCygwinGit || CGit::ms_bMsys2Git || show)) return; + GetDlgItem(IDC_WORKAROUNDS)->EnableWindow(TRUE); GetDlgItem(IDC_WORKAROUNDS)->ShowWindow(SW_SHOW); + GetDlgItem(IDC_GITHACKS1)->EnableWindow(m_bEnableHacks); GetDlgItem(IDC_GITHACKS1)->ShowWindow(m_bEnableHacks ? SW_SHOW : SW_HIDE); + GetDlgItem(IDC_GITHACKS2)->EnableWindow(m_bEnableHacks); GetDlgItem(IDC_GITHACKS2)->ShowWindow(m_bEnableHacks ? SW_SHOW : SW_HIDE); if (CGit::ms_bCygwinGit) diff --git a/src/TortoiseProc/GitProgressDlg.cpp b/src/TortoiseProc/GitProgressDlg.cpp index 3ff63b814..96abe6754 100644 --- a/src/TortoiseProc/GitProgressDlg.cpp +++ b/src/TortoiseProc/GitProgressDlg.cpp @@ -300,6 +300,7 @@ LRESULT CGitProgressDlg::OnCmdEnd(WPARAM /*wParam*/, LPARAM /*lParam*/) } m_hAccel = CreateAcceleratorTable(lpaccelNew, static_cast(m_accellerators.size())); } + m_cMenuButton.EnableWindow(TRUE); m_cMenuButton.ShowWindow(SW_SHOW); } diff --git a/src/TortoiseProc/LogDlg.cpp b/src/TortoiseProc/LogDlg.cpp index d5b8ab59b..53ae35507 100644 --- a/src/TortoiseProc/LogDlg.cpp +++ b/src/TortoiseProc/LogDlg.cpp @@ -457,6 +457,7 @@ BOOL CLogDlg::OnInitDialog() GetDlgItemText(IDOK, temp); SetDlgItemText(IDCANCEL, temp); GetDlgItem(IDOK)->ShowWindow(SW_HIDE); + DialogEnableWindow(IDOK, FALSE); } // first start a thread to obtain the log messages without @@ -560,7 +561,7 @@ LRESULT CLogDlg::OnLogListLoading(WPARAM wParam, LPARAM /*lParam*/) GetDlgItem(IDC_WALKBEHAVIOUR)->ShowWindow(SW_HIDE); GetDlgItem(IDC_VIEW)->ShowWindow(SW_HIDE); GetDlgItem(IDC_STATBUTTON)->ShowWindow(SW_HIDE); - GetDlgItem(IDC_PROGRESS)->ShowWindow(TRUE); + GetDlgItem(IDC_PROGRESS)->ShowWindow(SW_SHOW); DialogEnableWindow(IDC_WALKBEHAVIOUR, FALSE); DialogEnableWindow(IDC_STATBUTTON, FALSE); diff --git a/src/TortoiseProc/ProgressDlg.cpp b/src/TortoiseProc/ProgressDlg.cpp index f8e0f2a73..22d13f0fb 100644 --- a/src/TortoiseProc/ProgressDlg.cpp +++ b/src/TortoiseProc/ProgressDlg.cpp @@ -132,6 +132,7 @@ BOOL CProgressDlg::OnInitDialog() AddAnchor(IDC_CURRENT, TOP_LEFT); this->GetDlgItem(IDC_PROGRESS_BUTTON1)->ShowWindow(SW_HIDE); + DialogEnableWindow(IDC_PROGRESS_BUTTON1, FALSE); m_Animate.Open(IDR_DOWNLOAD); SetupLogMessageViewControl(); @@ -482,6 +483,7 @@ LRESULT CProgressDlg::OnProgressUpdateUI(WPARAM wParam, LPARAM lParam) } m_hAccel = CreateAcceleratorTable(lpaccelNew, static_cast(m_accellerators.size())); } + DialogEnableWindow(IDC_PROGRESS_BUTTON1, TRUE); GetDlgItem(IDC_PROGRESS_BUTTON1)->ShowWindow(SW_SHOW); } } diff --git a/src/TortoiseProc/PromptDlg.cpp b/src/TortoiseProc/PromptDlg.cpp index 252807f08..f458d3e07 100644 --- a/src/TortoiseProc/PromptDlg.cpp +++ b/src/TortoiseProc/PromptDlg.cpp @@ -66,6 +66,7 @@ BOOL CPromptDlg::OnInitDialog() { m_pass.SetPasswordChar('\0'); GetDlgItem(IDC_SAVECHECK)->ShowWindow(SW_HIDE); + DialogEnableWindow(IDC_SAVECHECK, FALSE); } m_pass.SetFocus(); diff --git a/src/TortoiseProc/PullFetchDlg.cpp b/src/TortoiseProc/PullFetchDlg.cpp index a41323a18..1e1685182 100644 --- a/src/TortoiseProc/PullFetchDlg.cpp +++ b/src/TortoiseProc/PullFetchDlg.cpp @@ -238,7 +238,9 @@ BOOL CPullFetchDlg::OnInitDialog() else { GetDlgItem(IDC_CHECK_DEPTH)->ShowWindow(SW_HIDE); + DialogEnableWindow(IDC_CHECK_DEPTH, FALSE); GetDlgItem(IDC_EDIT_DEPTH)->ShowWindow(SW_HIDE); + DialogEnableWindow(IDC_EDIT_DEPTH, FALSE); } OnBnClickedCheckDepth(); diff --git a/src/TortoiseProc/RebaseDlg.cpp b/src/TortoiseProc/RebaseDlg.cpp index 2d8d116b9..69a012132 100644 --- a/src/TortoiseProc/RebaseDlg.cpp +++ b/src/TortoiseProc/RebaseDlg.cpp @@ -317,7 +317,9 @@ BOOL CRebaseDlg::OnInitDialog() this->m_BranchCtrl.SetCurSel(-1); this->m_BranchCtrl.EnableWindow(FALSE); GetDlgItem(IDC_REBASE_CHECK_FORCE)->ShowWindow(SW_HIDE); + GetDlgItem(IDC_REBASE_CHECK_FORCE)->EnableWindow(FALSE); GetDlgItem(IDC_REBASE_CHECK_PRESERVEMERGES)->ShowWindow(SW_HIDE); + GetDlgItem(IDC_REBASE_CHECK_PRESERVEMERGES)->EnableWindow(FALSE); GetDlgItem(IDC_BUTTON_BROWSE)->EnableWindow(FALSE); GetDlgItem(IDC_BUTTON_REVERSE)->EnableWindow(FALSE); GetDlgItem(IDC_BUTTON_ONTO)->EnableWindow(FALSE); @@ -335,6 +337,7 @@ BOOL CRebaseDlg::OnInitDialog() { static_cast(GetDlgItem(IDC_BUTTON_ONTO))->SetCheck(m_Onto.IsEmpty() ? BST_UNCHECKED : BST_CHECKED); GetDlgItem(IDC_CHECK_CHERRYPICKED_FROM)->ShowWindow(SW_HIDE); + GetDlgItem(IDC_CHECK_CHERRYPICKED_FROM)->EnableWindow(FALSE); int iconWidth = GetSystemMetrics(SM_CXSMICON); int iconHeight = GetSystemMetrics(SM_CYSMICON); static_cast(GetDlgItem(IDC_BUTTON_REVERSE))->SetIcon(CCommonAppUtils::LoadIconEx(IDI_SWITCHLEFTRIGHT, iconWidth, iconHeight)); @@ -1834,6 +1837,7 @@ void CRebaseDlg::SetControlEnable() if( m_RebaseStage == REBASE_DONE && (this->m_PostButtonTexts.GetCount() != 0) ) { this->GetDlgItem(IDC_STATUS_STATIC)->ShowWindow(SW_HIDE); + GetDlgItem(IDC_REBASE_POST_BUTTON)->EnableWindow(TRUE); this->GetDlgItem(IDC_REBASE_POST_BUTTON)->ShowWindow(SW_SHOWNORMAL); this->m_PostButton.RemoveAll(); this->m_PostButton.AddEntries(m_PostButtonTexts); @@ -1842,7 +1846,9 @@ void CRebaseDlg::SetControlEnable() break; } - GetDlgItem(IDC_REBASE_SPLIT_COMMIT)->ShowWindow((m_RebaseStage == REBASE_EDIT || m_RebaseStage == REBASE_SQUASH_EDIT) ? SW_SHOW : SW_HIDE); + bool canSplitCommit = m_RebaseStage == REBASE_EDIT || m_RebaseStage == REBASE_SQUASH_EDIT; + GetDlgItem(IDC_REBASE_SPLIT_COMMIT)->ShowWindow(canSplitCommit ? SW_SHOW : SW_HIDE); + GetDlgItem(IDC_REBASE_SPLIT_COMMIT)->EnableWindow(canSplitCommit); if(m_bThreadRunning) { diff --git a/src/TortoiseProc/RefLogDlg.cpp b/src/TortoiseProc/RefLogDlg.cpp index 534d24c45..b9ad6e70a 100644 --- a/src/TortoiseProc/RefLogDlg.cpp +++ b/src/TortoiseProc/RefLogDlg.cpp @@ -176,7 +176,10 @@ void CRefLogDlg::OnCbnSelchangeRef() GetDlgItem(IDOK)->SetFocus(); } else + { GetDlgItem(IDC_REFLOG_BUTTONCLEARSTASH)->ShowWindow(SW_HIDE); + GetDlgItem(IDC_REFLOG_BUTTONCLEARSTASH)->EnableWindow(FALSE); + } } BOOL CRefLogDlg::PreTranslateMessage(MSG* pMsg) diff --git a/src/TortoiseProc/Settings/SettingGitConfig.cpp b/src/TortoiseProc/Settings/SettingGitConfig.cpp index 7745dee81..a3a1f8877 100644 --- a/src/TortoiseProc/Settings/SettingGitConfig.cpp +++ b/src/TortoiseProc/Settings/SettingGitConfig.cpp @@ -124,11 +124,15 @@ BOOL CSettingGitConfig::OnInitDialog() if (!CAppUtils::IsAdminLogin()) { static_cast(this->GetDlgItem(IDC_EDITSYSTEMGITCONFIG))->SetShield(TRUE); + GetDlgItem(IDC_VIEWSYSTEMGITCONFIG)->EnableWindow(TRUE); this->GetDlgItem(IDC_VIEWSYSTEMGITCONFIG)->ShowWindow(SW_SHOW); } if (PathIsDirectory(g_Git.GetGitGlobalXDGConfigPath())) + { + GetDlgItem(IDC_EDITGLOBALXDGGITCONFIG)->EnableWindow(TRUE); this->GetDlgItem(IDC_EDITGLOBALXDGGITCONFIG)->ShowWindow(SW_SHOW); + } this->UpdateData(FALSE); diff --git a/src/TortoiseProc/Settings/SettingGitCredential.cpp b/src/TortoiseProc/Settings/SettingGitCredential.cpp index 4905542de..a65e25cb1 100644 --- a/src/TortoiseProc/Settings/SettingGitCredential.cpp +++ b/src/TortoiseProc/Settings/SettingGitCredential.cpp @@ -151,6 +151,7 @@ BOOL CSettingGitCredential::OnInitDialog() if (!CAppUtils::IsAdminLogin()) { reinterpret_cast(GetDlgItem(IDC_OPENSETTINGSELEVATED))->SetShield(TRUE); + GetDlgItem(IDC_OPENSETTINGSELEVATED)->EnableWindow(TRUE); GetDlgItem(IDC_OPENSETTINGSELEVATED)->ShowWindow(SW_SHOW); GetDlgItem(IDC_STATICELEVATIONNEEDED)->ShowWindow(SW_SHOW); } diff --git a/src/TortoiseProc/SubmoduleDiffDlg.cpp b/src/TortoiseProc/SubmoduleDiffDlg.cpp index 201f8c93b..05bb04286 100644 --- a/src/TortoiseProc/SubmoduleDiffDlg.cpp +++ b/src/TortoiseProc/SubmoduleDiffDlg.cpp @@ -128,6 +128,7 @@ BOOL CSubmoduleDiffDlg::OnInitDialog() } GetDlgItem(IDC_BUTTON_UPDATE)->ShowWindow(!m_bFromOK || !m_bToOK || m_bToIsWorkingCopy ? SW_SHOW : SW_HIDE); + DialogEnableWindow(IDC_BUTTON_UPDATE, !m_bFromOK || !m_bToOK || m_bToIsWorkingCopy); return FALSE; } diff --git a/src/TortoiseProc/SyncDlg.cpp b/src/TortoiseProc/SyncDlg.cpp index 568da7d5d..28f78f6f0 100644 --- a/src/TortoiseProc/SyncDlg.cpp +++ b/src/TortoiseProc/SyncDlg.cpp @@ -879,12 +879,17 @@ void CSyncDlg::ShowInputCtrl(bool bShow) this->m_ctrlURL.ShowWindow(b); this->m_ctrlLocalBranch.ShowWindow(b); this->m_ctrlRemoteBranch.ShowWindow(b); + GetDlgItem(IDC_BUTTON_LOCAL_BRANCH)->EnableWindow(bShow); this->GetDlgItem(IDC_BUTTON_LOCAL_BRANCH)->ShowWindow(b); + GetDlgItem(IDC_BUTTON_REMOTE_BRANCH)->EnableWindow(bShow); this->GetDlgItem(IDC_BUTTON_REMOTE_BRANCH)->ShowWindow(b); this->GetDlgItem(IDC_STATIC_LOCAL_BRANCH)->ShowWindow(b); this->GetDlgItem(IDC_STATIC_REMOTE_BRANCH)->ShowWindow(b); + GetDlgItem(IDC_BUTTON_MANAGE)->EnableWindow(bShow); this->GetDlgItem(IDC_BUTTON_MANAGE)->ShowWindow(b); + GetDlgItem(IDC_CHECK_PUTTY_KEY)->EnableWindow(bShow); this->GetDlgItem(IDC_CHECK_PUTTY_KEY)->ShowWindow(b); + GetDlgItem(IDC_CHECK_FORCE)->EnableWindow(bShow); this->GetDlgItem(IDC_CHECK_FORCE)->ShowWindow(b); this->GetDlgItem(IDC_STATIC_REMOTE_URL)->ShowWindow(b); } diff --git a/src/TortoiseShell/GITPropertyPage.cpp b/src/TortoiseShell/GITPropertyPage.cpp index 6557e8659..72afafd4b 100644 --- a/src/TortoiseShell/GITPropertyPage.cpp +++ b/src/TortoiseShell/GITPropertyPage.cpp @@ -684,6 +684,8 @@ void CGitPropertyPage::InitWorkfileView() { ShowWindow(GetDlgItem(m_hwnd, IDC_EXECUTABLE), SW_HIDE); ShowWindow(GetDlgItem(m_hwnd, IDC_SYMLINK), SW_HIDE); + EnableWindow(GetDlgItem(m_hwnd, IDC_EXECUTABLE), FALSE); + EnableWindow(GetDlgItem(m_hwnd, IDC_EXECUTABLE), FALSE); } } else @@ -693,6 +695,10 @@ void CGitPropertyPage::InitWorkfileView() ShowWindow(GetDlgItem(m_hwnd, IDC_SKIPWORKTREE), SW_HIDE); ShowWindow(GetDlgItem(m_hwnd, IDC_EXECUTABLE), SW_HIDE); ShowWindow(GetDlgItem(m_hwnd, IDC_SYMLINK), SW_HIDE); + EnableWindow(GetDlgItem(m_hwnd, IDC_ASSUMEVALID), FALSE); + EnableWindow(GetDlgItem(m_hwnd, IDC_SKIPWORKTREE), FALSE); + EnableWindow(GetDlgItem(m_hwnd, IDC_EXECUTABLE), FALSE); + EnableWindow(GetDlgItem(m_hwnd, IDC_EXECUTABLE), FALSE); } if (filenames.size() == 1 && m_fileStats.allAreVersionedItems) -- 2.11.4.GIT