Open MawRojas opened 8 years ago
The problem is inside windowsDLG.cpp. The message LVN_KEYDOWN activates the code at line 388. All the relevant information is there but does nothing but select all items upon pressing "ctrl+a."
In order to correct this I suggest comparing the virtual key, that cause the message, to the first letter of the item name and selecting the first item (i) that is equal. Breaking out of the iterative loop to only select the first item.
The only problems would be upon a reactivation of this case will reset the loop and only ever find the first item listed with the correct starting letter.
There may also be a case in which ListView_SetItemState will never deselected values. Perhaps resetting all items each iteration unless "shift" is pressed.
https://github.com/notepad-plus-plus/notepad-plus-plus/issues/2239
Description of the Issue
The list box does not do this when in so many other apps, pressing a letter in a list box jumps between items beginning with that letter. Also, it would be nice if the list were able to be alphabetized by default optionally.
Steps to Reproduce the Issue
Click Window -> Windows... Click in the list of windows Press a letter corresponding to the first letter of one of the open windows. Expected Behavior
List jumps to the next window beginning with the pressed letter.
Actual Behavior
List jumps to the first item.
Debug Information
Notepad++ v6.9.2 Build time : May 18 2016 - 00:34:05 Path : C:\Program Files (x86)\Notepad++\notepad++.exe Admin mode : OFF Local Conf mode : OFF OS : Windows 10 Plugins : ComparePlugin.dll mimeTools.dll NppConverter.dll NppEditorConfig.dll NppExport.dll NppFTP.dll NppTextFX.dll PluginManager.dll SpellChecker.dll TabIndentSpaceAlign.dll XMLTools.dll