diff --git a/clientgui/BOINCListCtrl.h b/clientgui/BOINCListCtrl.h index ba6ac0d70c..c65cfb02ba 100644 --- a/clientgui/BOINCListCtrl.h +++ b/clientgui/BOINCListCtrl.h @@ -31,12 +31,15 @@ // Virtual wxListCtrl does not reliably generate selection and // deselection events, so we must check for these differently. -#ifdef __WXMAC__ -// On Mac, check for selection / deselection on EVT_LEFT_DOWN. -#define USE_LIST_CACHE_HINT 0 -#else +// We get more events than we need using EVT_LIST_CACHE_HINT, +// so testing on mouse events is more efficient, but it doesn't +// work on Windows. +#ifdef __WXMSW__ // On Windows, check for selection / deselection on EVT_LIST_CACHE_HINT. #define USE_LIST_CACHE_HINT 1 +#else +// On Mac & Linux, check for selection / deselection on EVT_LEFT_DOWN. +#define USE_LIST_CACHE_HINT 0 #endif #if USE_NATIVE_LISTCONTROL