From: Jeffrey Altman Date: Mon, 1 Oct 2007 05:31:02 +0000 (+0000) Subject: When Network Identity Manager starts, the credentials display X-Git-Tag: krb5-1.7-alpha1~828 X-Git-Url: http://git.tremily.us/?a=commitdiff_plain;h=4a19954fd2ae6e371080ffcb1f6de1f6eac6c5e0;p=krb5.git When Network Identity Manager starts, the credentials display enumerates known identities and displays them if necessary. However, as plug-ins load and the list of known identities, their properties and credentials change, the order of the displayed list will also change. The existing code does not deal well in respect to tracking the current selection when the list of identities and credentials change. This results in inconsistent behavior where the identity that was originally at the top of the list maintains its selection state while the identity at the top of the list after all the plug-ins have loaded will receive focus. This patch fixes this problem by explicitly setting focus and selection to the identity or credential at the current cursor location following a change in the credentials list. ticket: 5782 git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@20033 dc483132-0cff-0310-8789-dd5450dbe970 --- diff --git a/src/windows/identity/ui/credwnd.c b/src/windows/identity/ui/credwnd.c index 5b275eb1c..5e9740ecd 100644 --- a/src/windows/identity/ui/credwnd.c +++ b/src/windows/identity/ui/credwnd.c @@ -3562,7 +3562,7 @@ cw_kmq_wm_dispatch(HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam) cw_update_outline(tbl); cw_update_extents(tbl, TRUE); cw_update_selection_state(tbl); - cw_set_row_context(tbl, tbl->cursor_row); + cw_select_row(tbl, tbl->cursor_row, 0); InvalidateRect(hwnd, NULL, FALSE); break;