[Feature Request] Disable refresh when using sliders in Advanced Filtering
#1
When you try using the Advanced Filter with a large library it can slow things WAY down.
To work around this I usually just type some sort of bogus Title first (like FVX), then move the Rating and Year sliders to where I want them, then remove the bogus Title. (the bogus title sets the number of items in the list to search to 0)
It would be nice if XBMC could just stop updating the media list in the background while the sliders are in focus/use. It can take up to 10 seconds per year on large libraries to move the sliders left and right, same thing with the rating sliders.

I tried to accomplish this with some <onfocus> and SetProperties tricks, but <onfocus> doesn't work with slider controls.
A simple "Disable Refresh" button in the DialogMediaFilter.xml would also solve this.
Using a NUC7PJYHN and a 2820FYKH0 Intel NUC running LibreELEC, and two FireTVs.:)
Reply
#2
There should already be a delay (half a second or something like that) between the time you change a filter and the time it refreshes the list in the background. I can double-check if it applies to sliders or not but I think it does. And everytime you change the filter again it resets the delay so if you move the slider fast enough you shouldn't have that much delay due to background updates.
Always read the online manual (wiki), FAQ (wiki) and search the forum before posting.
Do not e-mail Team Kodi members directly asking for support. Read/follow the forum rules (wiki).
Please read the pages on troubleshooting (wiki) and bug reporting (wiki) before reporting issues.
Reply
#3
I'm using the Gotham Beta 1 build for windows, and an old 12.2 build and neither has a delay, If you hold it down and your list is big, it could take 20 minutes to move a slider to the end (unless you use a bogus title search first to drop the list contents to zero), it does hold the number of presses in the buffer (which is kind of a double edge sword)..
Using a NUC7PJYHN and a 2820FYKH0 Intel NUC running LibreELEC, and two FireTVs.:)
Reply
#4
I just gave it another try and I can single step through the whole range of movie years without the list reloading once in the background as long as my keypress repeat rate is faster than 500ms. As soon as I slow down or stop there's a refresh but otherwise there isn't.

Please provide a Debug log (wiki) where you hold your left/right arrow key down while being in a slider.
Always read the online manual (wiki), FAQ (wiki) and search the forum before posting.
Do not e-mail Team Kodi members directly asking for support. Read/follow the forum rules (wiki).
Please read the pages on troubleshooting (wiki) and bug reporting (wiki) before reporting issues.
Reply
#5
Here is the relevant portion of the logs. As you can see it took almost a minute to go from 1912 to 1924, with me holding the right arrow key down the entire time (I stopped after a minute). I do use an SQL database on a NAS.
This is about all of the log I care to sanitize and post (passwords and IPs and such).

Code:
........
18:45:34 T:8060   DEBUG: Keyboard: scancode: 0x4d, sym: 0x0113, unicode: 0x0000, modifier: 0x0
18:45:34 T:8060   DEBUG: CApplication::OnKey: right (0xf083) pressed, action is Right
18:45:34 T:4464  NOTICE: Thread Timer start, auto delete: false
18:45:35 T:4464   DEBUG: Thread Timer 4464 terminating
18:45:37 T:8060   DEBUG: CVideoDatabase::RunQuery took 2647 ms for *censored* items query: select * from movieview  WHERE (CAST(movieview.c07 as DECIMAL(5,1)) BETWEEN 1912.0 AND 2014.0)
18:45:38 T:172  NOTICE: Thread BackgroundLoader start, auto delete: false
18:45:38 T:8060   DEBUG: Keyboard: scancode: 0x4d, sym: 0x0113, unicode: 0x0000, modifier: 0x0
18:45:38 T:8060   DEBUG: CApplication::OnKey: right (0xf083) pressed, action is Right
18:45:38 T:2944  NOTICE: Thread Timer start, auto delete: false
18:45:38 T:8060   DEBUG: CVideoDatabase::RunQuery took 145 ms for 1 items query: select COUNT(DISTINCT genre.idgenre) from genre join genrelinkmovie on genre.idgenre = genrelinkmovie.idgenre join movieview on genrelinkmovie.idMovie = movieview.idMovie join files on files.idFile = movieview.idFile WHERE (CAST(movieview.c07 as DECIMAL(5,1)) BETWEEN 1913.0 AND 2014.0)
18:45:38 T:8060   DEBUG: CVideoDatabase::GetPeopleNav -  query took 71 ms
18:45:38 T:2944   DEBUG: Thread Timer 2944 terminating
18:45:39 T:8060   DEBUG: CVideoDatabase::GetPeopleNav -  query took 550 ms
18:45:39 T:8060   DEBUG: CVideoDatabase::RunQuery took 64 ms for 1 items query: select COUNT(DISTINCT studio.idstudio) from studio join studiolinkmovie on studio.idstudio = studiolinkmovie.idstudio join movieview on studiolinkmovie.idMovie = movieview.idMovie join files on files.idFile = movieview.idFile WHERE (CAST(movieview.c07 as DECIMAL(5,1)) BETWEEN 1913.0 AND 2014.0)
18:45:39 T:8060   DEBUG: CVideoDatabase::RunQuery took 39 ms for 1 items query: SELECT COUNT(DISTINCT taglinks.idTag) FROM taglinks JOIN tag ON tag.idTag = taglinks.idTag JOIN movieview ON movieview.idMovie = taglinks.idMedia WHERE ((CAST(movieview.c07 as DECIMAL(5,1)) BETWEEN 1913.0 AND 2014.0)) AND (taglinks.media_type = 'movie')
18:45:39 T:8060   DEBUG: Keyboard: scancode: 0x4d, sym: 0x0113, unicode: 0x0000, modifier: 0x0
18:45:39 T:8060   DEBUG: CApplication::OnKey: right (0xf083) pressed, action is Right
18:45:39 T:7976  NOTICE: Thread Timer start, auto delete: false
18:45:39 T:7976   DEBUG: Thread Timer 7976 terminating
18:45:41 T:8060   DEBUG: CVideoDatabase::RunQuery took 2648 ms for *censored* items query: select * from movieview  WHERE (CAST(movieview.c07 as DECIMAL(5,1)) BETWEEN 1914.0 AND 2014.0)
18:45:42 T:172   DEBUG: Thread BackgroundLoader 172 terminating
18:45:42 T:7224  NOTICE: Thread BackgroundLoader start, auto delete: false
18:45:42 T:8060   DEBUG: CVideoDatabase::RunQuery took 152 ms for 1 items query: select COUNT(DISTINCT genre.idgenre) from genre join genrelinkmovie on genre.idgenre = genrelinkmovie.idgenre join movieview on genrelinkmovie.idMovie = movieview.idMovie join files on files.idFile = movieview.idFile WHERE (CAST(movieview.c07 as DECIMAL(5,1)) BETWEEN 1914.0 AND 2014.0)
18:45:42 T:8060   DEBUG: CVideoDatabase::GetPeopleNav -  query took 68 ms
18:45:43 T:8060   DEBUG: CVideoDatabase::GetPeopleNav -  query took 581 ms
18:45:43 T:8060   DEBUG: CVideoDatabase::RunQuery took 60 ms for 1 items query: select COUNT(DISTINCT studio.idstudio) from studio join studiolinkmovie on studio.idstudio = studiolinkmovie.idstudio join movieview on studiolinkmovie.idMovie = movieview.idMovie join files on files.idFile = movieview.idFile WHERE (CAST(movieview.c07 as DECIMAL(5,1)) BETWEEN 1914.0 AND 2014.0)
18:45:43 T:8060   DEBUG: CVideoDatabase::RunQuery took 32 ms for 1 items query: SELECT COUNT(DISTINCT taglinks.idTag) FROM taglinks JOIN tag ON tag.idTag = taglinks.idTag JOIN movieview ON movieview.idMovie = taglinks.idMedia WHERE ((CAST(movieview.c07 as DECIMAL(5,1)) BETWEEN 1914.0 AND 2014.0)) AND (taglinks.media_type = 'movie')
18:45:43 T:8060   DEBUG: Keyboard: scancode: 0x4d, sym: 0x0113, unicode: 0x0000, modifier: 0x0
18:45:43 T:8060   DEBUG: CApplication::OnKey: right (0xf083) pressed, action is Right
18:45:43 T:5928  NOTICE: Thread Timer start, auto delete: false
18:45:43 T:8060   DEBUG: CVideoDatabase::RunQuery took 145 ms for 1 items query: select COUNT(DISTINCT genre.idgenre) from genre join genrelinkmovie on genre.idgenre = genrelinkmovie.idgenre join movieview on genrelinkmovie.idMovie = movieview.idMovie join files on files.idFile = movieview.idFile WHERE (CAST(movieview.c07 as DECIMAL(5,1)) BETWEEN 1915.0 AND 2014.0)
18:45:43 T:8060   DEBUG: CVideoDatabase::GetPeopleNav -  query took 70 ms
18:45:44 T:5928   DEBUG: Thread Timer 5928 terminating
18:45:44 T:8060   DEBUG: CVideoDatabase::GetPeopleNav -  query took 527 ms
18:45:44 T:8060   DEBUG: CVideoDatabase::RunQuery took 67 ms for 1 items query: select COUNT(DISTINCT studio.idstudio) from studio join studiolinkmovie on studio.idstudio = studiolinkmovie.idstudio join movieview on studiolinkmovie.idMovie = movieview.idMovie join files on files.idFile = movieview.idFile WHERE (CAST(movieview.c07 as DECIMAL(5,1)) BETWEEN 1915.0 AND 2014.0)
18:45:44 T:8060   DEBUG: CVideoDatabase::RunQuery took 49 ms for 1 items query: SELECT COUNT(DISTINCT taglinks.idTag) FROM taglinks JOIN tag ON tag.idTag = taglinks.idTag JOIN movieview ON movieview.idMovie = taglinks.idMedia WHERE ((CAST(movieview.c07 as DECIMAL(5,1)) BETWEEN 1915.0 AND 2014.0)) AND (taglinks.media_type = 'movie')
........
18:45:37 T:8060   DEBUG: CVideoDatabase::RunQuery took 2647 ms for *censored* items query: select * from movieview  WHERE (CAST(movieview.c07 as DECIMAL(5,1)) BETWEEN 1912.0 AND 2014.0)
........
18:45:41 T:8060   DEBUG: CVideoDatabase::RunQuery took 2648 ms for *censored* items query: select * from movieview  WHERE (CAST(movieview.c07 as DECIMAL(5,1)) BETWEEN 1914.0 AND 2014.0)
........
18:45:53 T:8060   DEBUG: CVideoDatabase::RunQuery took 4772 ms for *censored* items query: select * from movieview  WHERE (CAST(movieview.c07 as DECIMAL(5,1)) BETWEEN 1916.0 AND 2014.0)
........
18:46:00 T:8060   DEBUG: CVideoDatabase::RunQuery took 4888 ms for *censored* items query: select * from movieview  WHERE (CAST(movieview.c07 as DECIMAL(5,1)) BETWEEN 1918.0 AND 2014.0)
........
18:46:06 T:8060   DEBUG: CVideoDatabase::RunQuery took 5284 ms for *censored* items query: select * from movieview  WHERE (CAST(movieview.c07 as DECIMAL(5,1)) BETWEEN 1919.0 AND 2014.0)
........
18:46:20 T:8060   DEBUG: CVideoDatabase::RunQuery took 4969 ms for *censored* items query: select * from movieview  WHERE (CAST(movieview.c07 as DECIMAL(5,1)) BETWEEN 1922.0 AND 2014.0)
........
18:46:27 T:8060   DEBUG: CVideoDatabase::RunQuery took 4946 ms for *censored* items query: select * from movieview  WHERE (CAST(movieview.c07 as DECIMAL(5,1)) BETWEEN 1923.0 AND 2014.0)
........
18:46:33 T:8060   DEBUG: CVideoDatabase::RunQuery took 4360 ms for *censored* items query: select * from movieview  WHERE (CAST(movieview.c07 as DECIMAL(5,1)) BETWEEN 1924.0 AND 2014.0)
........

As you can see I'm not making it up. My database is fast and loads my full list in 5 seconds, so it's not a speed issue there.
Are local and remote database filtering using the same code for the timeout?
Using a NUC7PJYHN and a 2820FYKH0 Intel NUC running LibreELEC, and two FireTVs.:)
Reply
#6
As you can see in the log there's a timer after every keypress you're doingt. But your key presses are more than 1 second apart (between the first two key presses there are 4 seconds) so the timer expires before your next key press kicks in and it starts reloading everything.

The code for doing the filtering is the same independent of local or remote database. And the timeout has absolutely nothing to do with the database.
Always read the online manual (wiki), FAQ (wiki) and search the forum before posting.
Do not e-mail Team Kodi members directly asking for support. Read/follow the forum rules (wiki).
Please read the pages on troubleshooting (wiki) and bug reporting (wiki) before reporting issues.
Reply
#7
I was holding the right arrow down the entire time. I held it down for a minute straight. Clearly there is a timer, but it doesn't seem to be detecting that the key is still being pressed. If I put a bogus string in the Title filter box (effectively making the list zero items) the sliders behave as you describe, otherwise it's moving at 10 years a minute.
Using a NUC7PJYHN and a 2820FYKH0 Intel NUC running LibreELEC, and two FireTVs.:)
Reply
#8
My log looks like this:
Code:
21:59:19 T:2740   DEBUG: Keyboard: scancode: 0x4b, sym: 0x0114, unicode: 0x0000, modifier: 0x0
21:59:19 T:2740   DEBUG: CApplication::OnKey: left (0xf082) pressed, action is Left
21:59:19 T:2768  NOTICE: Thread Timer start, auto delete: false
21:59:19 T:2768   DEBUG: Thread Timer 2768 terminating
21:59:19 T:2740   DEBUG: CVideoDatabase::RunQuery took 6 ms for 1 items query: select COUNT(DISTINCT genre.idgenre) from genre join genrelinkmovie on genre.idgenre = genrelinkmovie.idgenre join movieview on genrelinkmovie.idMovie = movieview.idMovie join files on files.idFile = movieview.idFile WHERE (CAST(movieview.c07 as DECIMAL(5,1)) BETWEEN 2013.0 AND 2014.0)
21:59:19 T:2740   DEBUG: CVideoDatabase::GetPeopleNav -  query took 6 ms
21:59:19 T:2740   DEBUG: CVideoDatabase::GetPeopleNav -  query took 21 ms
21:59:19 T:2740   DEBUG: CVideoDatabase::RunQuery took 4 ms for 1 items query: select COUNT(DISTINCT studio.idstudio) from studio join studiolinkmovie on studio.idstudio = studiolinkmovie.idstudio join movieview on studiolinkmovie.idMovie = movieview.idMovie join files on files.idFile = movieview.idFile WHERE (CAST(movieview.c07 as DECIMAL(5,1)) BETWEEN 2013.0 AND 2014.0)
21:59:19 T:2740   DEBUG: CVideoDatabase::RunQuery took 0 ms for 1 items query: SELECT COUNT(DISTINCT taglinks.idTag) FROM taglinks JOIN tag ON tag.idTag = taglinks.idTag JOIN movieview ON movieview.idMovie = taglinks.idMedia WHERE ((CAST(movieview.c07 as DECIMAL(5,1)) BETWEEN 2013.0 AND 2014.0)) AND (taglinks.media_type = 'movie')
21:59:19 T:2740   DEBUG: Keyboard: scancode: 0x4b, sym: 0x0114, unicode: 0x0000, modifier: 0x0
21:59:19 T:2740   DEBUG: CApplication::OnKey: left (0xf082) pressed, action is Left
21:59:19 T:4484  NOTICE: Thread Timer start, auto delete: false
21:59:20 T:2740   DEBUG: CVideoDatabase::RunQuery took 6 ms for 178 items query: select * from movieview  WHERE (CAST(movieview.c07 as DECIMAL(5,1)) BETWEEN 2012.0 AND 2014.0)
21:59:20 T:4612  NOTICE: Thread BackgroundLoader start, auto delete: false
21:59:20 T:2740   DEBUG: Keyboard: scancode: 0x4b, sym: 0x0114, unicode: 0x0000, modifier: 0x0
21:59:20 T:2740   DEBUG: CApplication::OnKey: left (0xf082) pressed, action is Left
21:59:20 T:4484   DEBUG: Thread Timer 4484 terminating
21:59:20 T:4268  NOTICE: Thread Timer start, auto delete: false
21:59:20 T:2740   DEBUG: Keyboard: scancode: 0x4b, sym: 0x0114, unicode: 0x0000, modifier: 0x0
21:59:20 T:2740   DEBUG: CApplication::OnKey: left (0xf082) pressed, action is Left
21:59:20 T:4268   DEBUG: Thread Timer 4268 terminating
21:59:20 T:10832  NOTICE: Thread Timer start, auto delete: false
21:59:20 T:2740   DEBUG: Keyboard: scancode: 0x4b, sym: 0x0114, unicode: 0x0000, modifier: 0x0
21:59:20 T:2740   DEBUG: CApplication::OnKey: left (0xf082) pressed, action is Left
21:59:20 T:10832   DEBUG: Thread Timer 10832 terminating
21:59:20 T:8284  NOTICE: Thread Timer start, auto delete: false
21:59:20 T:4612   DEBUG: Thread BackgroundLoader 4612 terminating
21:59:20 T:2740   DEBUG: Keyboard: scancode: 0x4b, sym: 0x0114, unicode: 0x0000, modifier: 0x0
21:59:20 T:2740   DEBUG: CApplication::OnKey: left (0xf082) pressed, action is Left
21:59:20 T:8284   DEBUG: Thread Timer 8284 terminating
21:59:20 T:10984  NOTICE: Thread Timer start, auto delete: false
21:59:20 T:2740   DEBUG: Keyboard: scancode: 0x4b, sym: 0x0114, unicode: 0x0000, modifier: 0x0
21:59:20 T:2740   DEBUG: CApplication::OnKey: left (0xf082) pressed, action is Left
21:59:20 T:10984   DEBUG: Thread Timer 10984 terminating
21:59:20 T:7316  NOTICE: Thread Timer start, auto delete: false
21:59:20 T:2740   DEBUG: Keyboard: scancode: 0x4b, sym: 0x0114, unicode: 0x0000, modifier: 0x0
21:59:20 T:2740   DEBUG: CApplication::OnKey: left (0xf082) pressed, action is Left
21:59:20 T:7316   DEBUG: Thread Timer 7316 terminating
21:59:20 T:8320  NOTICE: Thread Timer start, auto delete: false
21:59:20 T:2740   DEBUG: Keyboard: scancode: 0x4b, sym: 0x0114, unicode: 0x0000, modifier: 0x0
21:59:20 T:2740   DEBUG: CApplication::OnKey: left (0xf082) pressed, action is Left
21:59:20 T:8320   DEBUG: Thread Timer 8320 terminating
21:59:20 T:10632  NOTICE: Thread Timer start, auto delete: false
21:59:20 T:2740   DEBUG: Keyboard: scancode: 0x4b, sym: 0x0114, unicode: 0x0000, modifier: 0x0
21:59:20 T:2740   DEBUG: CApplication::OnKey: left (0xf082) pressed, action is Left
21:59:20 T:10632   DEBUG: Thread Timer 10632 terminating
21:59:20 T:2716  NOTICE: Thread Timer start, auto delete: false
21:59:20 T:2740   DEBUG: Keyboard: scancode: 0x4b, sym: 0x0114, unicode: 0x0000, modifier: 0x0
21:59:20 T:2740   DEBUG: CApplication::OnKey: left (0xf082) pressed, action is Left
21:59:20 T:2716   DEBUG: Thread Timer 2716 terminating
21:59:20 T:10224  NOTICE: Thread Timer start, auto delete: false
21:59:20 T:2740   DEBUG: Keyboard: scancode: 0x4b, sym: 0x0114, unicode: 0x0000, modifier: 0x0
21:59:20 T:2740   DEBUG: CApplication::OnKey: left (0xf082) pressed, action is Left
21:59:20 T:10224   DEBUG: Thread Timer 10224 terminating
21:59:20 T:9700  NOTICE: Thread Timer start, auto delete: false
21:59:20 T:2740   DEBUG: Keyboard: scancode: 0x4b, sym: 0x0114, unicode: 0x0000, modifier: 0x0
21:59:20 T:2740   DEBUG: CApplication::OnKey: left (0xf082) pressed, action is Left
21:59:20 T:9700   DEBUG: Thread Timer 9700 terminating
21:59:20 T:10488  NOTICE: Thread Timer start, auto delete: false
21:59:20 T:2740   DEBUG: Keyboard: scancode: 0x4b, sym: 0x0114, unicode: 0x0000, modifier: 0x0
21:59:20 T:2740   DEBUG: CApplication::OnKey: left (0xf082) pressed, action is Left
21:59:20 T:10488   DEBUG: Thread Timer 10488 terminating
21:59:20 T:5796  NOTICE: Thread Timer start, auto delete: false
21:59:20 T:2740   DEBUG: Keyboard: scancode: 0x4b, sym: 0x0114, unicode: 0x0000, modifier: 0x0
21:59:20 T:2740   DEBUG: CApplication::OnKey: left (0xf082) pressed, action is Left
21:59:20 T:5796   DEBUG: Thread Timer 5796 terminating
21:59:20 T:9524  NOTICE: Thread Timer start, auto delete: false
21:59:20 T:2740   DEBUG: Keyboard: scancode: 0x4b, sym: 0x0114, unicode: 0x0000, modifier: 0x0
21:59:20 T:2740   DEBUG: CApplication::OnKey: left (0xf082) pressed, action is Left
21:59:20 T:9524   DEBUG: Thread Timer 9524 terminating
21:59:20 T:8444  NOTICE: Thread Timer start, auto delete: false
21:59:20 T:2740   DEBUG: Keyboard: scancode: 0x4b, sym: 0x0114, unicode: 0x0000, modifier: 0x0
21:59:20 T:2740   DEBUG: CApplication::OnKey: left (0xf082) pressed, action is Left
21:59:20 T:8444   DEBUG: Thread Timer 8444 terminating
21:59:20 T:11112  NOTICE: Thread Timer start, auto delete: false
21:59:20 T:2740   DEBUG: Keyboard: scancode: 0x4b, sym: 0x0114, unicode: 0x0000, modifier: 0x0
21:59:20 T:2740   DEBUG: CApplication::OnKey: left (0xf082) pressed, action is Left
21:59:20 T:11112   DEBUG: Thread Timer 11112 terminating
21:59:20 T:1084  NOTICE: Thread Timer start, auto delete: false
21:59:20 T:2740   DEBUG: Keyboard: scancode: 0x4b, sym: 0x0114, unicode: 0x0000, modifier: 0x0
21:59:20 T:2740   DEBUG: CApplication::OnKey: left (0xf082) pressed, action is Left
21:59:20 T:1084   DEBUG: Thread Timer 1084 terminating
21:59:20 T:8176  NOTICE: Thread Timer start, auto delete: false
21:59:20 T:2740   DEBUG: Keyboard: scancode: 0x4b, sym: 0x0114, unicode: 0x0000, modifier: 0x0
21:59:20 T:2740   DEBUG: CApplication::OnKey: left (0xf082) pressed, action is Left
21:59:20 T:8176   DEBUG: Thread Timer 8176 terminating
21:59:20 T:10616  NOTICE: Thread Timer start, auto delete: false
21:59:20 T:2740   DEBUG: Keyboard: scancode: 0x4b, sym: 0x0114, unicode: 0x0000, modifier: 0x0
21:59:20 T:2740   DEBUG: CApplication::OnKey: left (0xf082) pressed, action is Left
21:59:20 T:10616   DEBUG: Thread Timer 10616 terminating
21:59:20 T:8448  NOTICE: Thread Timer start, auto delete: false
21:59:20 T:2740   DEBUG: Keyboard: scancode: 0x4b, sym: 0x0114, unicode: 0x0000, modifier: 0x0
21:59:20 T:2740   DEBUG: CApplication::OnKey: left (0xf082) pressed, action is Left
21:59:20 T:8448   DEBUG: Thread Timer 8448 terminating
21:59:20 T:8804  NOTICE: Thread Timer start, auto delete: false
21:59:20 T:2740   DEBUG: Keyboard: scancode: 0x4b, sym: 0x0114, unicode: 0x0000, modifier: 0x0
21:59:20 T:2740   DEBUG: CApplication::OnKey: left (0xf082) pressed, action is Left
21:59:20 T:8804   DEBUG: Thread Timer 8804 terminating
21:59:20 T:8008  NOTICE: Thread Timer start, auto delete: false
21:59:20 T:2740   DEBUG: Keyboard: scancode: 0x4b, sym: 0x0114, unicode: 0x0000, modifier: 0x0
21:59:20 T:2740   DEBUG: CApplication::OnKey: left (0xf082) pressed, action is Left
21:59:20 T:8008   DEBUG: Thread Timer 8008 terminating
21:59:20 T:10496  NOTICE: Thread Timer start, auto delete: false
21:59:20 T:2740   DEBUG: Keyboard: scancode: 0x4b, sym: 0x0114, unicode: 0x0000, modifier: 0x0
21:59:20 T:2740   DEBUG: CApplication::OnKey: left (0xf082) pressed, action is Left
21:59:20 T:10496   DEBUG: Thread Timer 10496 terminating
21:59:20 T:10284  NOTICE: Thread Timer start, auto delete: false
21:59:20 T:2740   DEBUG: Keyboard: scancode: 0x4b, sym: 0x0114, unicode: 0x0000, modifier: 0x0
21:59:20 T:2740   DEBUG: CApplication::OnKey: left (0xf082) pressed, action is Left
21:59:20 T:10284   DEBUG: Thread Timer 10284 terminating
21:59:20 T:11104  NOTICE: Thread Timer start, auto delete: false
21:59:20 T:2740   DEBUG: Keyboard: scancode: 0x4b, sym: 0x0114, unicode: 0x0000, modifier: 0x0
21:59:20 T:2740   DEBUG: CApplication::OnKey: left (0xf082) pressed, action is Left
21:59:20 T:11104   DEBUG: Thread Timer 11104 terminating
21:59:20 T:10992  NOTICE: Thread Timer start, auto delete: false
21:59:20 T:2740   DEBUG: Keyboard: scancode: 0x4b, sym: 0x0114, unicode: 0x0000, modifier: 0x0
21:59:20 T:2740   DEBUG: CApplication::OnKey: left (0xf082) pressed, action is Left
21:59:20 T:10992   DEBUG: Thread Timer 10992 terminating
21:59:20 T:9936  NOTICE: Thread Timer start, auto delete: false
21:59:20 T:2740   DEBUG: Keyboard: scancode: 0x4b, sym: 0x0114, unicode: 0x0000, modifier: 0x0
21:59:20 T:2740   DEBUG: CApplication::OnKey: left (0xf082) pressed, action is Left
21:59:20 T:9936   DEBUG: Thread Timer 9936 terminating
21:59:20 T:10940  NOTICE: Thread Timer start, auto delete: false
21:59:20 T:2740   DEBUG: Keyboard: scancode: 0x4b, sym: 0x0114, unicode: 0x0000, modifier: 0x0
21:59:20 T:2740   DEBUG: CApplication::OnKey: left (0xf082) pressed, action is Left
21:59:20 T:10940   DEBUG: Thread Timer 10940 terminating
21:59:20 T:9136  NOTICE: Thread Timer start, auto delete: false
21:59:20 T:2740   DEBUG: Keyboard: scancode: 0x4b, sym: 0x0114, unicode: 0x0000, modifier: 0x0
21:59:20 T:2740   DEBUG: CApplication::OnKey: left (0xf082) pressed, action is Left
21:59:20 T:9136   DEBUG: Thread Timer 9136 terminating
21:59:20 T:11052  NOTICE: Thread Timer start, auto delete: false
21:59:20 T:2740   DEBUG: Keyboard: scancode: 0x4b, sym: 0x0114, unicode: 0x0000, modifier: 0x0
21:59:20 T:2740   DEBUG: CApplication::OnKey: left (0xf082) pressed, action is Left
21:59:20 T:11052   DEBUG: Thread Timer 11052 terminating
21:59:20 T:10900  NOTICE: Thread Timer start, auto delete: false
21:59:20 T:2740   DEBUG: Keyboard: scancode: 0x4b, sym: 0x0114, unicode: 0x0000, modifier: 0x0
21:59:20 T:2740   DEBUG: CApplication::OnKey: left (0xf082) pressed, action is Left
21:59:20 T:10900   DEBUG: Thread Timer 10900 terminating
21:59:20 T:10776  NOTICE: Thread Timer start, auto delete: false
21:59:21 T:2740   DEBUG: Keyboard: scancode: 0x4b, sym: 0x0114, unicode: 0x0000, modifier: 0x0
21:59:21 T:2740   DEBUG: CApplication::OnKey: left (0xf082) pressed, action is Left
21:59:21 T:10776   DEBUG: Thread Timer 10776 terminating
21:59:21 T:1688  NOTICE: Thread Timer start, auto delete: false
21:59:21 T:2740   DEBUG: Keyboard: scancode: 0x4b, sym: 0x0114, unicode: 0x0000, modifier: 0x0
21:59:21 T:2740   DEBUG: CApplication::OnKey: left (0xf082) pressed, action is Left
21:59:21 T:1688   DEBUG: Thread Timer 1688 terminating
21:59:21 T:1488  NOTICE: Thread Timer start, auto delete: false
21:59:21 T:2740   DEBUG: Keyboard: scancode: 0x4b, sym: 0x0114, unicode: 0x0000, modifier: 0x0
21:59:21 T:2740   DEBUG: CApplication::OnKey: left (0xf082) pressed, action is Left
21:59:21 T:1488   DEBUG: Thread Timer 1488 terminating
21:59:21 T:2696  NOTICE: Thread Timer start, auto delete: false
21:59:21 T:2740   DEBUG: Keyboard: scancode: 0x4b, sym: 0x0114, unicode: 0x0000, modifier: 0x0
21:59:21 T:2740   DEBUG: CApplication::OnKey: left (0xf082) pressed, action is Left
21:59:21 T:2696   DEBUG: Thread Timer 2696 terminating
21:59:21 T:8748  NOTICE: Thread Timer start, auto delete: false
21:59:21 T:2740   DEBUG: Keyboard: scancode: 0x4b, sym: 0x0114, unicode: 0x0000, modifier: 0x0
21:59:21 T:2740   DEBUG: CApplication::OnKey: left (0xf082) pressed, action is Left
21:59:21 T:8748   DEBUG: Thread Timer 8748 terminating
21:59:21 T:1516  NOTICE: Thread Timer start, auto delete: false
21:59:21 T:2740   DEBUG: Keyboard: scancode: 0x4b, sym: 0x0114, unicode: 0x0000, modifier: 0x0
21:59:21 T:2740   DEBUG: CApplication::OnKey: left (0xf082) pressed, action is Left
21:59:21 T:1516   DEBUG: Thread Timer 1516 terminating
21:59:21 T:8864  NOTICE: Thread Timer start, auto delete: false
21:59:21 T:2740   DEBUG: Keyboard: scancode: 0x4b, sym: 0x0114, unicode: 0x0000, modifier: 0x0
21:59:21 T:2740   DEBUG: CApplication::OnKey: left (0xf082) pressed, action is Left
21:59:21 T:8864   DEBUG: Thread Timer 8864 terminating
21:59:21 T:10592  NOTICE: Thread Timer start, auto delete: false
21:59:21 T:2740   DEBUG: Keyboard: scancode: 0x4b, sym: 0x0114, unicode: 0x0000, modifier: 0x0
21:59:21 T:2740   DEBUG: CApplication::OnKey: left (0xf082) pressed, action is Left
21:59:21 T:10592   DEBUG: Thread Timer 10592 terminating
21:59:21 T:572  NOTICE: Thread Timer start, auto delete: false
21:59:21 T:2740   DEBUG: Keyboard: scancode: 0x4b, sym: 0x0114, unicode: 0x0000, modifier: 0x0
21:59:21 T:2740   DEBUG: CApplication::OnKey: left (0xf082) pressed, action is Left
21:59:21 T:572   DEBUG: Thread Timer 572 terminating
21:59:21 T:11200  NOTICE: Thread Timer start, auto delete: false
21:59:21 T:2740   DEBUG: Keyboard: scancode: 0x4b, sym: 0x0114, unicode: 0x0000, modifier: 0x0
21:59:21 T:2740   DEBUG: CApplication::OnKey: left (0xf082) pressed, action is Left
21:59:21 T:11200   DEBUG: Thread Timer 11200 terminating
21:59:21 T:9552  NOTICE: Thread Timer start, auto delete: false
21:59:21 T:2740   DEBUG: Keyboard: scancode: 0x4b, sym: 0x0114, unicode: 0x0000, modifier: 0x0
21:59:21 T:2740   DEBUG: CApplication::OnKey: left (0xf082) pressed, action is Left
21:59:21 T:9552   DEBUG: Thread Timer 9552 terminating
21:59:21 T:10804  NOTICE: Thread Timer start, auto delete: false
21:59:21 T:2740   DEBUG: Keyboard: scancode: 0x4b, sym: 0x0114, unicode: 0x0000, modifier: 0x0
21:59:21 T:2740   DEBUG: CApplication::OnKey: left (0xf082) pressed, action is Left
21:59:21 T:10804   DEBUG: Thread Timer 10804 terminating
21:59:21 T:10232  NOTICE: Thread Timer start, auto delete: false
21:59:21 T:2740   DEBUG: Keyboard: scancode: 0x4b, sym: 0x0114, unicode: 0x0000, modifier: 0x0
21:59:21 T:2740   DEBUG: CApplication::OnKey: left (0xf082) pressed, action is Left
21:59:21 T:10232   DEBUG: Thread Timer 10232 terminating
21:59:21 T:8788  NOTICE: Thread Timer start, auto delete: false
21:59:21 T:2740   DEBUG: Keyboard: scancode: 0x4b, sym: 0x0114, unicode: 0x0000, modifier: 0x0
21:59:21 T:2740   DEBUG: CApplication::OnKey: left (0xf082) pressed, action is Left
21:59:21 T:8788   DEBUG: Thread Timer 8788 terminating
21:59:21 T:9696  NOTICE: Thread Timer start, auto delete: false
21:59:21 T:2740   DEBUG: Keyboard: scancode: 0x4b, sym: 0x0114, unicode: 0x0000, modifier: 0x0
21:59:21 T:2740   DEBUG: CApplication::OnKey: left (0xf082) pressed, action is Left
21:59:21 T:9696   DEBUG: Thread Timer 9696 terminating
21:59:21 T:8204  NOTICE: Thread Timer start, auto delete: false
21:59:21 T:2740   DEBUG: Keyboard: scancode: 0x4b, sym: 0x0114, unicode: 0x0000, modifier: 0x0
21:59:21 T:2740   DEBUG: CApplication::OnKey: left (0xf082) pressed, action is Left
21:59:21 T:8204   DEBUG: Thread Timer 8204 terminating
21:59:21 T:7612  NOTICE: Thread Timer start, auto delete: false
21:59:21 T:2740   DEBUG: Keyboard: scancode: 0x4b, sym: 0x0114, unicode: 0x0000, modifier: 0x0
21:59:21 T:2740   DEBUG: CApplication::OnKey: left (0xf082) pressed, action is Left
21:59:21 T:7612   DEBUG: Thread Timer 7612 terminating
21:59:21 T:1284  NOTICE: Thread Timer start, auto delete: false
21:59:21 T:2740   DEBUG: Keyboard: scancode: 0x4b, sym: 0x0114, unicode: 0x0000, modifier: 0x0
21:59:21 T:2740   DEBUG: CApplication::OnKey: left (0xf082) pressed, action is Left
21:59:21 T:1284   DEBUG: Thread Timer 1284 terminating
21:59:21 T:8344  NOTICE: Thread Timer start, auto delete: false
21:59:21 T:2740   DEBUG: Keyboard: scancode: 0x4b, sym: 0x0114, unicode: 0x0000, modifier: 0x0
21:59:21 T:2740   DEBUG: CApplication::OnKey: left (0xf082) pressed, action is Left
21:59:21 T:8344   DEBUG: Thread Timer 8344 terminating
21:59:21 T:10844  NOTICE: Thread Timer start, auto delete: false
21:59:21 T:2740   DEBUG: Keyboard: scancode: 0x4b, sym: 0x0114, unicode: 0x0000, modifier: 0x0
21:59:21 T:2740   DEBUG: CApplication::OnKey: left (0xf082) pressed, action is Left
21:59:21 T:10844   DEBUG: Thread Timer 10844 terminating
21:59:21 T:7948  NOTICE: Thread Timer start, auto delete: false
21:59:21 T:2740   DEBUG: Keyboard: scancode: 0x4b, sym: 0x0114, unicode: 0x0000, modifier: 0x0
21:59:21 T:2740   DEBUG: CApplication::OnKey: left (0xf082) pressed, action is Left
21:59:21 T:7948   DEBUG: Thread Timer 7948 terminating
21:59:21 T:10152  NOTICE: Thread Timer start, auto delete: false
21:59:21 T:2740   DEBUG: Keyboard: scancode: 0x4b, sym: 0x0114, unicode: 0x0000, modifier: 0x0
21:59:21 T:2740   DEBUG: CApplication::OnKey: left (0xf082) pressed, action is Left
21:59:21 T:10152   DEBUG: Thread Timer 10152 terminating
21:59:21 T:5868  NOTICE: Thread Timer start, auto delete: false
21:59:21 T:2740   DEBUG: Keyboard: scancode: 0x4b, sym: 0x0114, unicode: 0x0000, modifier: 0x0
21:59:21 T:2740   DEBUG: CApplication::OnKey: left (0xf082) pressed, action is Left
21:59:21 T:5868   DEBUG: Thread Timer 5868 terminating
21:59:21 T:2768  NOTICE: Thread Timer start, auto delete: false
21:59:21 T:2740   DEBUG: Keyboard: scancode: 0x4b, sym: 0x0114, unicode: 0x0000, modifier: 0x0
21:59:21 T:2740   DEBUG: CApplication::OnKey: left (0xf082) pressed, action is Left
21:59:21 T:2768   DEBUG: Thread Timer 2768 terminating
21:59:21 T:4484  NOTICE: Thread Timer start, auto delete: false
21:59:21 T:2740   DEBUG: Keyboard: scancode: 0x4b, sym: 0x0114, unicode: 0x0000, modifier: 0x0
21:59:21 T:2740   DEBUG: CApplication::OnKey: left (0xf082) pressed, action is Left
21:59:21 T:4484   DEBUG: Thread Timer 4484 terminating
21:59:21 T:4268  NOTICE: Thread Timer start, auto delete: false
21:59:21 T:2740   DEBUG: Keyboard: scancode: 0x4b, sym: 0x0114, unicode: 0x0000, modifier: 0x0
21:59:21 T:2740   DEBUG: CApplication::OnKey: left (0xf082) pressed, action is Left
21:59:21 T:4268   DEBUG: Thread Timer 4268 terminating
21:59:21 T:10832  NOTICE: Thread Timer start, auto delete: false
21:59:21 T:2740   DEBUG: Keyboard: scancode: 0x4b, sym: 0x0114, unicode: 0x0000, modifier: 0x0
21:59:21 T:2740   DEBUG: CApplication::OnKey: left (0xf082) pressed, action is Left
21:59:21 T:10832   DEBUG: Thread Timer 10832 terminating
21:59:21 T:4612  NOTICE: Thread Timer start, auto delete: false
21:59:21 T:2740   DEBUG: Keyboard: scancode: 0x4b, sym: 0x0114, unicode: 0x0000, modifier: 0x0
21:59:21 T:2740   DEBUG: CApplication::OnKey: left (0xf082) pressed, action is Left
21:59:21 T:4612   DEBUG: Thread Timer 4612 terminating
21:59:21 T:8284  NOTICE: Thread Timer start, auto delete: false
21:59:21 T:2740   DEBUG: Keyboard: scancode: 0x4b, sym: 0x0114, unicode: 0x0000, modifier: 0x0
21:59:21 T:2740   DEBUG: CApplication::OnKey: left (0xf082) pressed, action is Left
21:59:21 T:8284   DEBUG: Thread Timer 8284 terminating
21:59:21 T:560  NOTICE: Thread Timer start, auto delete: false
21:59:21 T:2740   DEBUG: Keyboard: scancode: 0x4b, sym: 0x0114, unicode: 0x0000, modifier: 0x0
21:59:21 T:2740   DEBUG: CApplication::OnKey: left (0xf082) pressed, action is Left
21:59:21 T:560   DEBUG: Thread Timer 560 terminating
21:59:21 T:10268  NOTICE: Thread Timer start, auto delete: false
21:59:22 T:2740   DEBUG: Keyboard: scancode: 0x4b, sym: 0x0114, unicode: 0x0000, modifier: 0x0
21:59:22 T:2740   DEBUG: CApplication::OnKey: left (0xf082) pressed, action is Left
21:59:22 T:10268   DEBUG: Thread Timer 10268 terminating
21:59:22 T:7012  NOTICE: Thread Timer start, auto delete: false
21:59:22 T:2740   DEBUG: Keyboard: scancode: 0x4b, sym: 0x0114, unicode: 0x0000, modifier: 0x0
21:59:22 T:2740   DEBUG: CApplication::OnKey: left (0xf082) pressed, action is Left
21:59:22 T:7012   DEBUG: Thread Timer 7012 terminating
21:59:22 T:5148  NOTICE: Thread Timer start, auto delete: false
21:59:22 T:2740   DEBUG: Keyboard: scancode: 0x4b, sym: 0x0114, unicode: 0x0000, modifier: 0x0
21:59:22 T:2740   DEBUG: CApplication::OnKey: left (0xf082) pressed, action is Left
21:59:22 T:5148   DEBUG: Thread Timer 5148 terminating
21:59:22 T:6356  NOTICE: Thread Timer start, auto delete: false
21:59:22 T:2740   DEBUG: Keyboard: scancode: 0x4b, sym: 0x0114, unicode: 0x0000, modifier: 0x0
21:59:22 T:2740   DEBUG: CApplication::OnKey: left (0xf082) pressed, action is Left
21:59:22 T:6356   DEBUG: Thread Timer 6356 terminating
21:59:22 T:11228  NOTICE: Thread Timer start, auto delete: false
21:59:22 T:2740   DEBUG: Keyboard: scancode: 0x4b, sym: 0x0114, unicode: 0x0000, modifier: 0x0
21:59:22 T:2740   DEBUG: CApplication::OnKey: left (0xf082) pressed, action is Left
21:59:22 T:11228   DEBUG: Thread Timer 11228 terminating
21:59:22 T:10632  NOTICE: Thread Timer start, auto delete: false
21:59:22 T:2740   DEBUG: Keyboard: scancode: 0x4b, sym: 0x0114, unicode: 0x0000, modifier: 0x0
21:59:22 T:2740   DEBUG: CApplication::OnKey: left (0xf082) pressed, action is Left
21:59:22 T:10632   DEBUG: Thread Timer 10632 terminating
21:59:22 T:10636  NOTICE: Thread Timer start, auto delete: false
21:59:22 T:2740   DEBUG: Keyboard: scancode: 0x4b, sym: 0x0114, unicode: 0x0000, modifier: 0x0
21:59:22 T:2740   DEBUG: CApplication::OnKey: left (0xf082) pressed, action is Left
21:59:22 T:10636   DEBUG: Thread Timer 10636 terminating
21:59:22 T:1640  NOTICE: Thread Timer start, auto delete: false
21:59:22 T:2740   DEBUG: Keyboard: scancode: 0x4b, sym: 0x0114, unicode: 0x0000, modifier: 0x0
21:59:22 T:2740   DEBUG: CApplication::OnKey: left (0xf082) pressed, action is Left
21:59:22 T:1640   DEBUG: Thread Timer 1640 terminating
21:59:22 T:2716  NOTICE: Thread Timer start, auto delete: false
21:59:22 T:2740   DEBUG: Keyboard: scancode: 0x4b, sym: 0x0114, unicode: 0x0000, modifier: 0x0
21:59:22 T:2740   DEBUG: CApplication::OnKey: left (0xf082) pressed, action is Left
21:59:22 T:2716   DEBUG: Thread Timer 2716 terminating
21:59:22 T:10224  NOTICE: Thread Timer start, auto delete: false
21:59:22 T:2740   DEBUG: Keyboard: scancode: 0x4b, sym: 0x0114, unicode: 0x0000, modifier: 0x0
21:59:22 T:2740   DEBUG: CApplication::OnKey: left (0xf082) pressed, action is Left
21:59:22 T:10224   DEBUG: Thread Timer 10224 terminating
21:59:22 T:9700  NOTICE: Thread Timer start, auto delete: false
21:59:22 T:2740   DEBUG: Keyboard: scancode: 0x4b, sym: 0x0114, unicode: 0x0000, modifier: 0x0
21:59:22 T:2740   DEBUG: CApplication::OnKey: left (0xf082) pressed, action is Left
21:59:22 T:9700   DEBUG: Thread Timer 9700 terminating
21:59:22 T:10488  NOTICE: Thread Timer start, auto delete: false
21:59:22 T:2740   DEBUG: Keyboard: scancode: 0x4b, sym: 0x0114, unicode: 0x0000, modifier: 0x0
21:59:22 T:2740   DEBUG: CApplication::OnKey: left (0xf082) pressed, action is Left
21:59:22 T:10488   DEBUG: Thread Timer 10488 terminating
21:59:22 T:5796  NOTICE: Thread Timer start, auto delete: false
21:59:22 T:2740   DEBUG: Keyboard: scancode: 0x4b, sym: 0x0114, unicode: 0x0000, modifier: 0x0
21:59:22 T:2740   DEBUG: CApplication::OnKey: left (0xf082) pressed, action is Left
21:59:22 T:5796   DEBUG: Thread Timer 5796 terminating
21:59:22 T:9524  NOTICE: Thread Timer start, auto delete: false
21:59:22 T:2740   DEBUG: Keyboard: scancode: 0x4b, sym: 0x0114, unicode: 0x0000, modifier: 0x0
21:59:22 T:2740   DEBUG: CApplication::OnKey: left (0xf082) pressed, action is Left
21:59:22 T:9524   DEBUG: Thread Timer 9524 terminating
21:59:22 T:8444  NOTICE: Thread Timer start, auto delete: false
21:59:22 T:2740   DEBUG: Keyboard: scancode: 0x4b, sym: 0x0114, unicode: 0x0000, modifier: 0x0
21:59:22 T:2740   DEBUG: CApplication::OnKey: left (0xf082) pressed, action is Left
21:59:22 T:8444   DEBUG: Thread Timer 8444 terminating
21:59:22 T:11052  NOTICE: Thread Timer start, auto delete: false
21:59:22 T:2740   DEBUG: Keyboard: scancode: 0x4b, sym: 0x0114, unicode: 0x0000, modifier: 0x0
21:59:22 T:2740   DEBUG: CApplication::OnKey: left (0xf082) pressed, action is Left
21:59:22 T:11052   DEBUG: Thread Timer 11052 terminating
21:59:22 T:10804  NOTICE: Thread Timer start, auto delete: false
21:59:22 T:2740   DEBUG: Keyboard: scancode: 0x4b, sym: 0x0114, unicode: 0x0000, modifier: 0x0
21:59:22 T:2740   DEBUG: CApplication::OnKey: left (0xf082) pressed, action is Left
21:59:22 T:10804   DEBUG: Thread Timer 10804 terminating
21:59:22 T:9696  NOTICE: Thread Timer start, auto delete: false
21:59:22 T:2740   DEBUG: Keyboard: scancode: 0x4b, sym: 0x0114, unicode: 0x0000, modifier: 0x0
21:59:22 T:2740   DEBUG: CApplication::OnKey: left (0xf082) pressed, action is Left
21:59:22 T:9696   DEBUG: Thread Timer 9696 terminating
21:59:22 T:8204  NOTICE: Thread Timer start, auto delete: false
21:59:22 T:2740   DEBUG: Keyboard: scancode: 0x4b, sym: 0x0114, unicode: 0x0000, modifier: 0x0
21:59:22 T:2740   DEBUG: CApplication::OnKey: left (0xf082) pressed, action is Left
21:59:22 T:8204   DEBUG: Thread Timer 8204 terminating
21:59:22 T:7612  NOTICE: Thread Timer start, auto delete: false
21:59:22 T:2740   DEBUG: Keyboard: scancode: 0x4b, sym: 0x0114, unicode: 0x0000, modifier: 0x0
21:59:22 T:2740   DEBUG: CApplication::OnKey: left (0xf082) pressed, action is Left
21:59:22 T:7612   DEBUG: Thread Timer 7612 terminating
21:59:22 T:1284  NOTICE: Thread Timer start, auto delete: false
21:59:22 T:2740   DEBUG: Keyboard: scancode: 0x4b, sym: 0x0114, unicode: 0x0000, modifier: 0x0
21:59:22 T:2740   DEBUG: CApplication::OnKey: left (0xf082) pressed, action is Left
21:59:22 T:1284   DEBUG: Thread Timer 1284 terminating
21:59:22 T:8344  NOTICE: Thread Timer start, auto delete: false
21:59:22 T:2740   DEBUG: Keyboard: scancode: 0x4b, sym: 0x0114, unicode: 0x0000, modifier: 0x0
21:59:22 T:2740   DEBUG: CApplication::OnKey: left (0xf082) pressed, action is Left
21:59:22 T:8344   DEBUG: Thread Timer 8344 terminating
21:59:22 T:10844  NOTICE: Thread Timer start, auto delete: false
21:59:22 T:2740   DEBUG: Keyboard: scancode: 0x4b, sym: 0x0114, unicode: 0x0000, modifier: 0x0
21:59:22 T:2740   DEBUG: CApplication::OnKey: left (0xf082) pressed, action is Left
21:59:22 T:10844   DEBUG: Thread Timer 10844 terminating
21:59:22 T:7948  NOTICE: Thread Timer start, auto delete: false
21:59:22 T:2740   DEBUG: Keyboard: scancode: 0x4b, sym: 0x0114, unicode: 0x0000, modifier: 0x0
21:59:22 T:2740   DEBUG: CApplication::OnKey: left (0xf082) pressed, action is Left
21:59:22 T:7948   DEBUG: Thread Timer 7948 terminating
21:59:22 T:10152  NOTICE: Thread Timer start, auto delete: false
21:59:22 T:2740   DEBUG: Keyboard: scancode: 0x4b, sym: 0x0114, unicode: 0x0000, modifier: 0x0
21:59:22 T:2740   DEBUG: CApplication::OnKey: left (0xf082) pressed, action is Left
21:59:22 T:10152   DEBUG: Thread Timer 10152 terminating
21:59:22 T:5868  NOTICE: Thread Timer start, auto delete: false
21:59:22 T:2740   DEBUG: Keyboard: scancode: 0x4b, sym: 0x0114, unicode: 0x0000, modifier: 0x0
21:59:22 T:2740   DEBUG: CApplication::OnKey: left (0xf082) pressed, action is Left
21:59:22 T:5868   DEBUG: Thread Timer 5868 terminating
21:59:22 T:2768  NOTICE: Thread Timer start, auto delete: false
21:59:22 T:2740   DEBUG: Keyboard: scancode: 0x4b, sym: 0x0114, unicode: 0x0000, modifier: 0x0
21:59:22 T:2740   DEBUG: CApplication::OnKey: left (0xf082) pressed, action is Left
21:59:22 T:2768   DEBUG: Thread Timer 2768 terminating
21:59:22 T:4484  NOTICE: Thread Timer start, auto delete: false
21:59:22 T:2740   DEBUG: Keyboard: scancode: 0x4b, sym: 0x0114, unicode: 0x0000, modifier: 0x0
21:59:22 T:2740   DEBUG: CApplication::OnKey: left (0xf082) pressed, action is Left
21:59:22 T:4484   DEBUG: Thread Timer 4484 terminating
21:59:22 T:4268  NOTICE: Thread Timer start, auto delete: false
21:59:22 T:2740   DEBUG: Keyboard: scancode: 0x4b, sym: 0x0114, unicode: 0x0000, modifier: 0x0
21:59:22 T:2740   DEBUG: CApplication::OnKey: left (0xf082) pressed, action is Left
21:59:22 T:4268   DEBUG: Thread Timer 4268 terminating
21:59:22 T:10832  NOTICE: Thread Timer start, auto delete: false
21:59:22 T:2740   DEBUG: Keyboard: scancode: 0x4b, sym: 0x0114, unicode: 0x0000, modifier: 0x0
21:59:22 T:2740   DEBUG: CApplication::OnKey: left (0xf082) pressed, action is Left
21:59:22 T:10832   DEBUG: Thread Timer 10832 terminating
21:59:22 T:4612  NOTICE: Thread Timer start, auto delete: false
21:59:23 T:2740   DEBUG: Keyboard: scancode: 0x4b, sym: 0x0114, unicode: 0x0000, modifier: 0x0
21:59:23 T:2740   DEBUG: CApplication::OnKey: left (0xf082) pressed, action is Left
21:59:23 T:4612   DEBUG: Thread Timer 4612 terminating
21:59:23 T:6672  NOTICE: Thread Timer start, auto delete: false
21:59:23 T:2740   DEBUG: Keyboard: scancode: 0x4b, sym: 0x0114, unicode: 0x0000, modifier: 0x0
21:59:23 T:2740   DEBUG: CApplication::OnKey: left (0xf082) pressed, action is Left
21:59:23 T:6672   DEBUG: Thread Timer 6672 terminating
21:59:23 T:7012  NOTICE: Thread Timer start, auto delete: false
21:59:23 T:2740   DEBUG: Keyboard: scancode: 0x4b, sym: 0x0114, unicode: 0x0000, modifier: 0x0
21:59:23 T:2740   DEBUG: CApplication::OnKey: left (0xf082) pressed, action is Left
21:59:23 T:7012   DEBUG: Thread Timer 7012 terminating
21:59:23 T:5148  NOTICE: Thread Timer start, auto delete: false
21:59:23 T:2740   DEBUG: Keyboard: scancode: 0x4b, sym: 0x0114, unicode: 0x0000, modifier: 0x0
21:59:23 T:2740   DEBUG: CApplication::OnKey: left (0xf082) pressed, action is Left
21:59:23 T:5148   DEBUG: Thread Timer 5148 terminating
21:59:23 T:6356  NOTICE: Thread Timer start, auto delete: false
21:59:23 T:2740   DEBUG: Keyboard: scancode: 0x4b, sym: 0x0114, unicode: 0x0000, modifier: 0x0
21:59:23 T:2740   DEBUG: CApplication::OnKey: left (0xf082) pressed, action is Left
21:59:23 T:6356   DEBUG: Thread Timer 6356 terminating
21:59:23 T:7020  NOTICE: Thread Timer start, auto delete: false
21:59:23 T:2740   DEBUG: Keyboard: scancode: 0x4b, sym: 0x0114, unicode: 0x0000, modifier: 0x0
21:59:23 T:2740   DEBUG: CApplication::OnKey: left (0xf082) pressed, action is Left
21:59:23 T:7020   DEBUG: Thread Timer 7020 terminating
21:59:23 T:11228  NOTICE: Thread Timer start, auto delete: false
21:59:23 T:2740   DEBUG: Keyboard: scancode: 0x4b, sym: 0x0114, unicode: 0x0000, modifier: 0x0
21:59:23 T:2740   DEBUG: CApplication::OnKey: left (0xf082) pressed, action is Left
21:59:23 T:11228   DEBUG: Thread Timer 11228 terminating
21:59:23 T:10632  NOTICE: Thread Timer start, auto delete: false
21:59:23 T:10632   DEBUG: Thread Timer 10632 terminating
21:59:23 T:2740   DEBUG: CVideoDatabase::RunQuery took 10 ms for 1 items query: select COUNT(DISTINCT genre.idgenre) from genre join genrelinkmovie on genre.idgenre = genrelinkmovie.idgenre join movieview on genrelinkmovie.idMovie = movieview.idMovie join files on files.idFile = movieview.idFile
21:59:23 T:2740   DEBUG: CVideoDatabase::GetPeopleNav -  query took 7 ms
21:59:23 T:2740   DEBUG: CVideoDatabase::GetPeopleNav -  query took 33 ms
21:59:23 T:2740   DEBUG: CVideoDatabase::RunQuery took 7 ms for 1 items query: select COUNT(DISTINCT studio.idstudio) from studio join studiolinkmovie on studio.idstudio = studiolinkmovie.idstudio join movieview on studiolinkmovie.idMovie = movieview.idMovie join files on files.idFile = movieview.idFile
21:59:23 T:2740   DEBUG: CVideoDatabase::RunQuery took 0 ms for 1 items query: SELECT COUNT(DISTINCT taglinks.idTag) FROM taglinks JOIN tag ON tag.idTag = taglinks.idTag JOIN movieview ON movieview.idMovie = taglinks.idMedia WHERE taglinks.media_type = 'movie'
21:59:23 T:2740   DEBUG: CVideoDatabase::RunQuery took 20 ms for 1206 items query: select * from movieview

I noticed that there's an initial refresh probably because it takes a bit for the input logic to realize that the key is being held down but after that there is no refresh and a lot of key presses until I arrive at the end of the slider.

Maybe the problem in your case is that the refresh takes longer than 500ms because in my case it only takes a few ms. Or maybe the input logic of your operating system (I'm running on Windows right now) behaves differently.
Always read the online manual (wiki), FAQ (wiki) and search the forum before posting.
Do not e-mail Team Kodi members directly asking for support. Read/follow the forum rules (wiki).
Please read the pages on troubleshooting (wiki) and bug reporting (wiki) before reporting issues.
Reply
#9
Does the same thing happen in Confluence? I wonder whether some skin thing is the cause.
Always read the XBMC online-manual, FAQ and search the forum before posting.
Do not e-mail XBMC-Team members directly asking for support. Read/follow the forum rules.
For troubleshooting and bug reporting please make sure you read this first.


Image
Reply
#10
It does it in Windows on an i7, and in Openelec on an Atom. Both 12.2 and 13.1. I have tried it on both Confluence and Metropolis, same thing.
Maybe it only shows up with large SQL based libraries? I'll try it with a new 13.2 in Openelec in the morning.
Using a NUC7PJYHN and a 2820FYKH0 Intel NUC running LibreELEC, and two FireTVs.:)
Reply
#11
Hmm, maybe it's due to the time to do the query. My guess is it goes something like:

1. First click comes in, timer is fired.
2. Timer terminates before key repeat kicks in, fires callback to update the list.
3. Next click comes in, but as the update is done in app thread, it's over 3 seconds to fetch the list.
4. Timer terminates way before the list is fetched, which queues up another firing of the same message.
5. Button repeats never kick in, as app thread is constantly busy fetching the lists.

Perhaps the database query should be fired from the timer thread, so the app thread runs free (it just receives the CFileItemList via the threadmessage and updates).
Always read the XBMC online-manual, FAQ and search the forum before posting.
Do not e-mail XBMC-Team members directly asking for support. Read/follow the forum rules.
For troubleshooting and bug reporting please make sure you read this first.


Image
Reply
#12
Another option would be to choose the timeout of the delay timer larger than the key repeat threshold.
Always read the online manual (wiki), FAQ (wiki) and search the forum before posting.
Do not e-mail Team Kodi members directly asking for support. Read/follow the forum rules (wiki).
Please read the pages on troubleshooting (wiki) and bug reporting (wiki) before reporting issues.
Reply
#13
I don't think that's the issue - the key repeat threshold in this case is determined by the speed at which the app thread can process keys. As soon as you get the situation where you have a threadmessage to process at the same time as a key press and the threadmessage is going to take 4 seconds, you're stuffed.
Always read the XBMC online-manual, FAQ and search the forum before posting.
Do not e-mail XBMC-Team members directly asking for support. Read/follow the forum rules.
For troubleshooting and bug reporting please make sure you read this first.


Image
Reply
#14
Yes but if the timeout of the delay is higher the threadmessage is fired at a later time giving the app thread more time to perform proper input handling.
Always read the online manual (wiki), FAQ (wiki) and search the forum before posting.
Do not e-mail Team Kodi members directly asking for support. Read/follow the forum rules (wiki).
Please read the pages on troubleshooting (wiki) and bug reporting (wiki) before reporting issues.
Reply
#15
Correct - that helps the case where you hold down the button before a threadmessage is fired. If one fires just before you hold down, I think you still end up playing the waiting game?

The best solution would be for the fetch to be done off-thread so app thread is kept free of long waits on the database. Potentially combine this with whatever the key repeat delay is (I thought it was 1sec?)
Always read the XBMC online-manual, FAQ and search the forum before posting.
Do not e-mail XBMC-Team members directly asking for support. Read/follow the forum rules.
For troubleshooting and bug reporting please make sure you read this first.


Image
Reply

Logout Mark Read Team Forum Stats Members Help
[Feature Request] Disable refresh when using sliders in Advanced Filtering0