1
0
mirror of https://github.com/fadden/6502bench.git synced 2024-07-08 14:28:55 +00:00
6502bench/CommonWPF
Andy McFadden 1044b9d479 Improve restoration of top position
The ListView control provides a ScrollIntoView() method that ensures
the specified item is on screen, scrolling the ListView if needed.
Unfortunately this method is very slow (50-100 ms) and sometimes
fails entirely on larger lists.  (Yay WPF.)

Because the ListView is scrolling by fixed-height item, it's possible
to use the underlying ScrollViewer to move the list instantaneously
and reliably.  So now we do that.

Also, fixed a bug with select-all, where we weren't clearing the
previous selection before calling SelectAll(), leading to a mismatch
with the secondary data structure that we maintain because WPF
ListViews can't deal with large selections efficiently.  (Yay WPF.)

There's still some weird behavior, e.g. sometimes hitting F5 clears
the current selection and sometimes it doesn't.  I think it's related
to which item has focus and the fact you're hitting a key; using the
debug menu item doesn't cause the behavior.

Also, increased MAX_SEL_COUNT from 2000 to 5000.  That takes about
200ms to restore to a ListView on my 5-year-old system.
2019-07-17 17:59:24 -07:00
..
Properties Add multi-key combo handling for hints 2019-06-04 16:10:55 -07:00
CommonWPF.csproj Implemented the first ("Code View") tab of settings 2019-06-26 17:11:58 -07:00
Helper.cs Improve save & restore of top line 2019-07-17 14:08:53 -07:00
InverseBooleanConverter.cs Add multi-key combo handling for hints 2019-06-04 16:10:55 -07:00
MultiKeyInputGesture.cs Fix multi-multi-key inputs 2019-06-07 13:10:52 -07:00
WindowPlacement.cs Save and restore grid column widths 2019-06-20 15:10:35 -07:00
WPFExtensions.cs Improve restoration of top position 2019-07-17 17:59:24 -07:00