SUMMARY When searching in the Overview effect, the Calculator will sometimes show "aborted" on some or all displays. This typically only happens with the first entered calculation of that session, and cannot be reproduced until a reboot. Since the search results are reflected on all displays, the calculation result will show up on all displays. But usually the calculation will only display properly on the screen the search was entered on; that is, all but the screen where you entered the calculation on will display it correctly. However this is still inconsistent, and sometimes "aborted" will display on *all* screens. This can be replicated with a simple sum, like "1 + 1". Clearing the search term, or adjusting the calculation (i.e. following the above, entering " + 1" on the end) will correctly display the sum, and all following sums will be displayed correctly. STEPS TO REPRODUCE 1. Open Overview effect on a fresh login. 2. Enter a sum, such as "1 + 1". 3. Some or all screens will display "aborted", although the current screen will usually display the sum correctly. OBSERVED RESULT Calculation shows "aborted" in Overview effect on some or all screens. EXPECTED RESULT Calculation shows correctly on all screens (or search terms only appear on the currently active screen, to avoid visual overload when using 4+ displays) SOFTWARE/OS VERSIONS Linux/KDE Plasma: 6.7.8 Linux Zen KDE Plasma Version: 6.0.1 KDE Frameworks Version: 6.0.0 Qt Version: 6.6.2
Does the issue ever happen with only a single screen? I wonder if we could be running into a libqalculate threading issue here.
I have a patch locally that should fix it lying around for some weeks now :D I will need to give it some proper multi-monitor testing. >I wonder if we could be running into a libqalculate threading issue here. That is correct. We have two RunnerManagers and thus plugins we feed at the /exact/ same time with the query string.
A possibly relevant merge request was started @ https://invent.kde.org/frameworks/krunner/-/merge_requests/178
A possibly relevant merge request was started @ https://invent.kde.org/plasma/kwin/-/merge_requests/5707
Git commit 0b406dcc0179642e70d9acb5b73a8b408a97847e by Alexander Lohnau. Committed on 26/11/2024 at 20:25. Pushed by alex into branch 'master'. Allow to set RunnerManager instance in model from outside This allows for reusing the manager instances or keeping them separate from the lifecycle of the model. A usecase if KWin, where we want to have the Milou.ResultView on different screens, but still want to keep the query and thus datasource in sync. Otherwise, we would do the exact same queries twice and in case of the calculator get slight issues with the global mutex. M +9 -0 src/model/resultsmodel.cpp M +5 -1 src/model/resultsmodel.h M +11 -4 src/model/runnerresultsmodel.cpp M +4 -1 src/model/runnerresultsmodel_p.h https://invent.kde.org/frameworks/krunner/-/commit/0b406dcc0179642e70d9acb5b73a8b408a97847e