Summary: | Random wallpaper order: Non-ideal solution for avoiding a duplicate item when slideshow restarts | ||
---|---|---|---|
Product: | [Plasma] plasmashell | Reporter: | bastimeyer123 |
Component: | Image & Slideshow wallpaper plugins | Assignee: | Plasma Bugs List <plasma-bugs-null> |
Status: | RESOLVED INTENTIONAL | ||
Severity: | wishlist | CC: | kde, kdedev, nate, notmart, qydwhotmail |
Priority: | NOR | ||
Version First Reported In: | 6.4.90 | ||
Target Milestone: | 1.0 | ||
Platform: | Other | ||
OS: | Linux | ||
Latest Commit: | Version Fixed In: | 6.5.0 | |
Sentry Crash Report: |
Description
bastimeyer123
2025-09-20 13:03:20 UTC
Is it a real problem? C will shown in the next round (In reply to David Redondo from comment #1) > Is it a real problem? C will shown in the next round No, it's a very minor issue, but I think that this still deserves a fix, if it's trivial to fix. Skipping an item in the queue means that the queue size is reduced by one, so if a user expects their wallpaper slideshow to repeat in strict cycles, even though the order of items is randomized, then this cycle shifts over time, which can be annoying. (Yes, I do actually notice this from time to time, otherwise I wouldn't have posted this) So, as said, if it's trivial to fix by swapping items in the `SlideFilterModel : QSortFilterProxyModel` instead of increasing the index by one, or maybe just reversing the random order, then there's no reason not to do that. If I was more familiar with the code, I'd submit a MR, but unfortunately, I am not. Thanks for your consideration. Sending along for consideration The code for random wallpaper slideshows is already very complex; surprisingly so, even. I think adding additional complexity for something quite minor is unfortunately not worth the risk. Thanks for the idea anyway, though! (In reply to Nate Graham from comment #4) > The code for random wallpaper slideshows is already very complex; > surprisingly so, even. I think adding additional complexity for something > quite minor is unfortunately not worth the risk. Thanks for the idea anyway, > though! Would you still accept a merge request which adds a very simple `SlideFilterModel::reverse()` for reversing the `QList<int> m_randomOrder` instead of the `m_currentSlide += 1` increment? I don't think this is very complex at all. $ git diff --shortstat wallpapers/ 3 files changed, 9 insertions(+), 1 deletion(-) I tested this with added debug log messages and it's working fine. If you don't want a MR for this, then I can keep this patch in my own plasma-workspace builds, but I don't see a reason not to upstream this. (In reply to bastimeyer123 from comment #5) > Would you still accept a merge request which adds a very simple > `SlideFilterModel::reverse()` for reversing the `QList<int> m_randomOrder` > instead of the `m_currentSlide += 1` increment? I don't think this is very > complex at all. The best thing to do would be to create the MR and let the development community review it. They don't read individual bug reports for patch suggestions. The worst that can happen is it isn't accepted. Since it's a small change, they might be open to it. If you have a simple patch that you think doesn't present risk, I'd agree that you can go ahead and submit it, and we'll see where it goes. Make sure to put "BUG: 509711" on its own line somewhere in the commit message, so this bug report changes from RESOLVED INTENTIONAL to RESOLVED FIXED if and when the patch gets merged. |