Summary: | kpat has a problem with redo and undo. Does not refresh the situation or does refresh with large delay. | ||
---|---|---|---|
Product: | [Applications] kpat | Reporter: | stakanov |
Component: | general | Assignee: | Stephan Kulow <coolo> |
Status: | RESOLVED FIXED | ||
Severity: | minor | CC: | kde-games-bugs, tomi.leppanen |
Priority: | NOR | ||
Version: | 3.6 | ||
Target Milestone: | --- | ||
Platform: | openSUSE | ||
OS: | Linux | ||
Latest Commit: | Version Fixed In: | ||
Sentry Crash Report: |
Description
stakanov
2015-10-18 21:48:22 UTC
I can reproduce this. I think this is easiest to reproduce with Spider solitaire. Do some moves then undo some and redo them. Should be clearly visible. I can't take a screenshot since the problem disappears if I try to do that. My system: Fedora 25, KPatience 3.6. I tried also git master, seems to work the same. I already figured out that adding just a tiny bit of duration to the animation (from 0 to 1) makes this work, but it won't look very nice when the card just quickly flashes. There is probably a way to tell it to update that part of the screen or the whole game, but I haven't yet figured that out. Or maybe the animation code needs to be fixed. If someone wants to try the workaround I mentioned, here is a quick patch: diff --git a/dealer.cpp b/dealer.cpp index dfee5e4..eb263c8 100644 --- a/dealer.cpp +++ b/dealer.cpp @@ -1219,7 +1219,7 @@ void DealerScene::undoOrRedo( bool undo ) p->swapCards( i, index ); } - updatePileLayout( p, 0 ); + updatePileLayout( p, 1 ); } emit updateMoves( moveCount() ); I didn't make a real patch since it I don't think this is proper way to fix this, but it might provide some ideas to fix this properly. For what I know this bug does not occur any more. |