munkki84 / SailFreeCell

Free Cell for Sailfish OS
3 stars 6 forks source link

Problems after Sailfish OS upgrade #1

Closed ninepine closed 9 years ago

ninepine commented 10 years ago

This is a great implementation of Freecell but after the opt in OS upgrade there are times when it is impossible to move cards. This is because the moved cards won't remain where they were placed even though the move is valid. This means that the game reaches a point where it can no longer be played. Has anyone else experienced this with OS 1.1.xx?

thebat137 commented 10 years ago

I originally left this as a comment in the Jolla store, since I failed to expand the description and discover the link to here, but I think I know what the bug is.

I was poking around in the QML and I determined that what seems to be happening is if you drag one card over another card that it can't be dropped on (even if you don't try to drop it), the target card gets the signal that a card has been dragged over it but never gets the signal that the dragged card has been removed. As a consequence, it thinks there's still a drag in place and won't accept any new incoming drags, so you can't initiate the process of placing a card that does fit in that spot.

You can see this by dragging a card around and watching closely --- as it passes over each possible wrong target card the outline of the target will turn slightly greyer (indicating a "drag" entry), and then never turn black again no matter what you do (because it doesn't receive the "drag" exit). If you move the cards very carefully, avoiding passing over any other cards en route from source to destination, you can avoid putting any cards in this state and play the game successfully for a while longer, until you inevitably screw it up because your motor control just isn't that perfect.

I think the cause may be this bug in Qt: https://bugreports.qt-project.org/browse/QTBUG-39453

AIUI, the Uitukka update moved Sailfish to Qt5.2 from whatever it was before. The bug is only listed as affecting Qt5.3, but it's not clear whether it might affect earlier versions as well. It seems to fit the described behavior, and the timing is right, so it strikes me as a good candidate. If it is indeed this bug, then probably there's not a lot that can be done from the app author's side except implement a complicated workaround and/or agitate for Jolla to push a bugfix.

I created a Together question on this, so maybe if it gets enough upvotes, the Jolla devs will fix it quickly:

https://together.jolla.com/question/61199/uitukka-seems-to-suffer-from-qtbug-39453-qml-droparea-unable-to-reject-external-drag-enter-events-droparea-broken-after-that/

munkki84 commented 10 years ago

Thanks for the feedback. I haven't updated to Uitukka, so I haven't noticed the bug. I will try to see what I can do using emulator, if I can make a workaround.

munkki84 commented 9 years ago

It's now fixed with new version.

ninepine commented 9 years ago

Hi

Yes the new version certainly fixes the problem. It now plays really well.

Many thanks for a great game for Sailfish.

Mike On 28 Jan 2015 18:09, "munkki84" notifications@github.com wrote:

Closed #1 https://github.com/munkki84/SailFreeCell/issues/1.

— Reply to this email directly or view it on GitHub https://github.com/munkki84/SailFreeCell/issues/1#event-226264288.