mirror of
https://github.com/reactos/reactos.git
synced 2025-02-23 00:45:24 +00:00
[BROWSEUI] Reduce IAutoComplete failures (#3590)
- Delete OnEditUpdate method. - Improve the expand condition. CORE-9281
This commit is contained in:
parent
4214c2bf3c
commit
2fd058dce6
2 changed files with 12 additions and 16 deletions
|
@ -291,7 +291,7 @@ LRESULT CAutoComplete::EditWndProc(HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM l
|
||||||
return OnEditChar(wParam, lParam);
|
return OnEditChar(wParam, lParam);
|
||||||
case WM_CUT: case WM_PASTE: case WM_CLEAR:
|
case WM_CUT: case WM_PASTE: case WM_CLEAR:
|
||||||
ret = ::DefSubclassProc(hwnd, uMsg, wParam, lParam); // do default
|
ret = ::DefSubclassProc(hwnd, uMsg, wParam, lParam); // do default
|
||||||
OnEditUpdate(TRUE);
|
UpdateCompletion(TRUE);
|
||||||
return ret;
|
return ret;
|
||||||
case WM_GETDLGCODE:
|
case WM_GETDLGCODE:
|
||||||
ret = ::DefSubclassProc(hwnd, uMsg, wParam, lParam); // do default
|
ret = ::DefSubclassProc(hwnd, uMsg, wParam, lParam); // do default
|
||||||
|
@ -950,7 +950,7 @@ BOOL CAutoComplete::OnEditKeyDown(WPARAM wParam, LPARAM lParam)
|
||||||
if (!CanAutoSuggest())
|
if (!CanAutoSuggest())
|
||||||
return FALSE; // do default
|
return FALSE; // do default
|
||||||
::DefSubclassProc(m_hwndEdit, WM_KEYDOWN, VK_DELETE, 0); // do default
|
::DefSubclassProc(m_hwndEdit, WM_KEYDOWN, VK_DELETE, 0); // do default
|
||||||
OnEditUpdate(FALSE);
|
UpdateCompletion(FALSE);
|
||||||
return TRUE; // eat
|
return TRUE; // eat
|
||||||
}
|
}
|
||||||
case VK_BACK:
|
case VK_BACK:
|
||||||
|
@ -973,21 +973,10 @@ LRESULT CAutoComplete::OnEditChar(WPARAM wParam, LPARAM lParam)
|
||||||
return 0; // eat
|
return 0; // eat
|
||||||
LRESULT ret = ::DefSubclassProc(m_hwndEdit, WM_CHAR, wParam, lParam); // do default
|
LRESULT ret = ::DefSubclassProc(m_hwndEdit, WM_CHAR, wParam, lParam); // do default
|
||||||
if (CanAutoSuggest() || CanAutoAppend())
|
if (CanAutoSuggest() || CanAutoAppend())
|
||||||
OnEditUpdate(wParam != VK_BACK);
|
UpdateCompletion(wParam != VK_BACK);
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
VOID CAutoComplete::OnEditUpdate(BOOL bAppendOK)
|
|
||||||
{
|
|
||||||
CStringW strText = GetEditText();
|
|
||||||
if (m_strText.CompareNoCase(strText) == 0)
|
|
||||||
{
|
|
||||||
// no change
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
UpdateCompletion(bAppendOK);
|
|
||||||
}
|
|
||||||
|
|
||||||
VOID CAutoComplete::OnListSelChange()
|
VOID CAutoComplete::OnListSelChange()
|
||||||
{
|
{
|
||||||
// update EDIT text
|
// update EDIT text
|
||||||
|
@ -1508,7 +1497,8 @@ INT CAutoComplete::UpdateInnerList()
|
||||||
if (m_strStemText.CompareNoCase(strStemText) != 0)
|
if (m_strStemText.CompareNoCase(strStemText) != 0)
|
||||||
{
|
{
|
||||||
m_strStemText = strStemText;
|
m_strStemText = strStemText;
|
||||||
bExpand = bReset = TRUE;
|
bReset = TRUE;
|
||||||
|
bExpand = !m_strStemText.IsEmpty();
|
||||||
}
|
}
|
||||||
|
|
||||||
// reset if necessary
|
// reset if necessary
|
||||||
|
@ -1580,6 +1570,13 @@ VOID CAutoComplete::UpdateCompletion(BOOL bAppendOK)
|
||||||
{
|
{
|
||||||
TRACE("CAutoComplete::UpdateCompletion(%p, %d)\n", this, bAppendOK);
|
TRACE("CAutoComplete::UpdateCompletion(%p, %d)\n", this, bAppendOK);
|
||||||
|
|
||||||
|
CStringW strText = GetEditText();
|
||||||
|
if (m_strText.CompareNoCase(strText) == 0)
|
||||||
|
{
|
||||||
|
// no change
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
// update inner list
|
// update inner list
|
||||||
UINT cItems = UpdateInnerList();
|
UINT cItems = UpdateInnerList();
|
||||||
if (cItems == 0) // no items
|
if (cItems == 0) // no items
|
||||||
|
|
|
@ -163,7 +163,6 @@ public:
|
||||||
LRESULT EditWndProc(HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam);
|
LRESULT EditWndProc(HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam);
|
||||||
LRESULT OnEditChar(WPARAM wParam, LPARAM lParam);
|
LRESULT OnEditChar(WPARAM wParam, LPARAM lParam);
|
||||||
BOOL OnEditKeyDown(WPARAM wParam, LPARAM lParam);
|
BOOL OnEditKeyDown(WPARAM wParam, LPARAM lParam);
|
||||||
VOID OnEditUpdate(BOOL bAppendOK);
|
|
||||||
VOID OnListSelChange();
|
VOID OnListSelChange();
|
||||||
BOOL OnListUpDown(UINT vk);
|
BOOL OnListUpDown(UINT vk);
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue