Without further investigation, the following patch fixes 3 of the 4 failures (I haven’t checked whether it doesn’t break other things in the UITK though):
=== modified file 'src/Ubuntu/Components/plugin/privates/listviewextensions.cpp' --- src/Ubuntu/Components/plugin/privates/listviewextensions.cpp 2016-03-01 15:08:08 +0000 +++ src/Ubuntu/Components/plugin/privates/listviewextensions.cpp 2016-03-08 09:55:06 +0000 @@ -141,11 +141,12 @@ int currentIndex = this->currentIndex(); int count = this->count();
+ int oldIndex = currentIndex; if (currentIndex >= 0 && count > 0) { currentIndex = qBound<int>(0, forwards ? currentIndex - 1 : currentIndex + 1, count - 1); setCurrentIndex(currentIndex); setKeyNavigationForListView(true); }
- return true; + return (oldIndex != currentIndex); }
Without further investigation, the following patch fixes 3 of the 4 failures (I haven’t checked whether it doesn’t break other things in the UITK though):
=== modified file 'src/Ubuntu/ Components/ plugin/ privates/ listviewextensi ons.cpp' Components/ plugin/ privates/ listviewextensi ons.cpp 2016-03-01 15:08:08 +0000 Components/ plugin/ privates/ listviewextensi ons.cpp 2016-03-08 09:55:06 +0000 dex();
--- src/Ubuntu/
+++ src/Ubuntu/
@@ -141,11 +141,12 @@
int currentIndex = this->currentIn
int count = this->count();
+ int oldIndex = currentIndex;
currentIndex = qBound<int>(0, forwards ? currentIndex - 1 : currentIndex + 1, count - 1);
setCurrentInd ex(currentIndex );
setKeyNavigat ionForListView( true);
if (currentIndex >= 0 && count > 0) {
}
- return true;
+ return (oldIndex != currentIndex);
}