<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1">
</head>
<body bgcolor="#FFFFFF" text="#000000">
Hello,<br>
<br>
Sfiet_Konstantin and I have had another debugging session on IRC
recently with my app.<br>
(<a
href="http://merproject.org/logs/%23sailfishos/%23sailfishos.2013-08-03.log">http://merproject.org/logs/%23sailfishos/%23sailfishos.2013-08-03.log</a>)<br>
<br>
I had defined a handler that would be called when the user accepted
a dialog. However<br>
we saw that the handler was never called. Then I noticed that the
documentation page<br>
on the Silica Reference about the Dialog component has an error in
it. The description part<br>
of the page described that an user can accept a dialog by pushing it
<b>from right<br>
to left</b>.<br>
<br>
But the onAccepted() signal hander description described that the
user could accept a dialog<br>
by pushing it <b>from left to right</b>. Well I tested it in the
emulator and the description of the<br>
Dialog component at the top of the page is correct. However the
description of the onAccepted()<br>
signal handler is incorrect. Instead when you push the dialog <b>from
left to right</b> you <b>reject it</b>!<br>
<br>
So every time I thought I was accepting the dialog, I actually
rejected it! ;) I had only read the wrong part<br>
of the documentation page.<br>
<br>
The onRejected() signal handler description is incorrect too. It
says you can reject a dialog by pushing it<br>
<b>from right to left</b>. Which actually accepts the dialog.<br>
<br>
I hope someone can edit the Silica Reference, so that not more
developers read the wrong part and wonder<br>
why their defined action doesn't occur! ;)<br>
<br>
<br>
Also we noticed that when a dialog is accepted, it isn't popped from
the pageStack. While according to Sfiet_Konstantin<br>
this should happen. This is especially a problem in my app, where
the app has a homescreen where a mode is chosen.<br>
Then when a particular mode is chosen the user is first prompted for
a dialog, to enter information that is required for<br>
that mode to operate. After the user has accepted the dialog, the
mode begins. The user can quit the mode and return<br>
to the homescreen by simply pushing away the "mode page". <br>
<br>
However when the user does that, the dialog is still there and
he/she<br>
will have to reject the dialog too and will then finally return to
the homescreen. Not only does this require another action from the
user,<br>
it can also be confusing to see a dialog with the previously entered
value still in it. Some users will think they need to accept the
dialog.<br>
But if they do, they'll return to the "mode page", not the
homescreen. This can be very confusing.<br>
<br>
This can all be seen in this video: <a
href="http://ubuntuone.com/7MIfo6vKsdqg9PmgSQ9iH4">http://ubuntuone.com/7MIfo6vKsdqg9PmgSQ9iH4</a>
(note: this requires a browser that supports HTML5, otherwise<br>
you'll need to download the video and play it in your local video
player). Unfortunately the video has a very low framerate.
Sfiet_Konstantin and I<br>
don't know whether this is due to my laptop not being particulary
highly spec'd or Wayland causing the low framerate. I can remember
recording<br>
applications and games with another recordmydesktop frontend on a
much lower spec'd computer, so I doubt that computer is too slow.<br>
<br>
The source code of my app can be found at <a
href="http://bitbucket.org/Superpelican/quick_clamshell/src/">http://bitbucket.org/Superpelican/quick_clamshell/src/</a><br>
<br>
I hope this is helpful for the sailors/Jollaians,<br>
<br>
Superpelican<br>
</body>
</html>