Summary | Mobile view (smart phone): Delete not working |
Queue | IMP |
Queue Version | Git develop |
Type | Bug |
State | Resolved |
Priority | 1. Low |
Owners | slusarz (at) horde (dot) org |
Requester | thomas.jarosch (at) intra2net (dot) com |
Created | 08/18/2012 (4718 days ago) |
Due | |
Updated | 10/15/2012 (4660 days ago) |
Assigned | 10/10/2012 (4665 days ago) |
Resolved | 10/15/2012 (4660 days ago) |
Github Issue Link | |
Github Pull Request | |
Milestone | |
Patch | No |
commit 895e88d35bb0bacba6df6a36f727cc4cd0bf88de
Author: Michael M Slusarz <slusarz@horde.org>
Date: Sun Oct 14 23:24:08 2012 -0600
[mms] Catch deleted flag changes in smartmobile view when not
using CONDSTORE-enabled IMAP server (
Bug #11362).imp/js/smartmobile.js | 38 +++++++++++++++++++-------------------
1 files changed, 19 insertions(+), 19 deletions(-)
http://git.horde.org/horde-git/-/commit/895e88d35bb0bacba6df6a36f727cc4cd0bf88de
commit 5f02fa9b1948d2c95e654be7e90dc8de17df8360
Author: Michael M Slusarz <slusarz@horde.org>
Date: Sun Oct 14 23:23:28 2012 -0600
[mms] Correctly send deleted flag information to browser cache
when using dynamic/smartmobile view (
Bug #11362).imp/docs/CHANGES | 2 ++
imp/lib/Message.php | 3 +++
imp/package.xml | 2 ++
3 files changed, 7 insertions(+), 0 deletions(-)
http://git.horde.org/horde-git/-/commit/5f02fa9b1948d2c95e654be7e90dc8de17df8360
commit fb837364f9d130945aa5973579a9f8b8efcaf819
Author: Michael M Slusarz <slusarz@horde.org>
Date: Mon Oct 8 12:16:06 2012 -0600
Revert "Set deleted flag after deleting messages (
Bug #11362)."This reverts commit 0f2825e310ac49283d08a35c2d19d199af5452e5.
Can't do this, since it does not correctly update the mailbox cache value.
Regardless, flags should never be set on the browser-side - we need
confirmation from the IMAP server that it has been set on the server or
else it is a usability nightmare (flag setting MUST be an atomic
operation from the POV of the user).
imp/js/smartmobile.js | 7 +------
1 files changed, 1 insertions(+), 6 deletions(-)
http://git.horde.org/horde-git/-/commit/fb837364f9d130945aa5973579a9f8b8efcaf819
commit 0f2825e310ac49283d08a35c2d19d199af5452e5
Author: Jan Schneider <jan@horde.org>
Date: Mon Oct 8 18:13:01 2012 +0200
Set deleted flag after deleting messages (
Bug #11362).imp/js/smartmobile.js | 7 ++++++-
1 files changed, 6 insertions(+), 1 deletions(-)
http://git.horde.org/horde-git/-/commit/0f2825e310ac49283d08a35c2d19d199af5452e5
State ⇒ Resolved
AJAX tasks when doing a delete (without Trash). So that was fixed.
With that fixed, and similar to the way we handle folder updates, we
will assume that any flag change sent by the server in an AJAX
'imp:flag' task is a valid reason to refresh the mailbox view. This
will fix the delete flagging.
Without CONDSTORE we are still unable to catch delete flag changes
made by other clients, but that is a known limitation.
commit 895e88d35bb0bacba6df6a36f727cc4cd0bf88de
Author: Michael M Slusarz <slusarz@horde.org>
Date: Sun Oct 14 23:24:08 2012 -0600
[mms] Catch deleted flag changes in smartmobile view when not
using CONDSTORE-enabled IMAP server (
Bug #11362).imp/js/smartmobile.js | 38 +++++++++++++++++++-------------------
1 files changed, 19 insertions(+), 19 deletions(-)
http://git.horde.org/horde-git/-/commit/895e88d35bb0bacba6df6a36f727cc4cd0bf88de
commit 5f02fa9b1948d2c95e654be7e90dc8de17df8360
Author: Michael M Slusarz <slusarz@horde.org>
Date: Sun Oct 14 23:23:28 2012 -0600
[mms] Correctly send deleted flag information to browser cache
when using dynamic/smartmobile view (
Bug #11362).imp/docs/CHANGES | 2 ++
imp/lib/Message.php | 3 +++
imp/package.xml | 2 ++
3 files changed, 7 insertions(+), 0 deletions(-)
http://git.horde.org/horde-git/-/commit/5f02fa9b1948d2c95e654be7e90dc8de17df8360
including the proper delete state?
show any new messages/remove deleted messages since the last mailbox
poll. We send the current cached state of the mailbox to the
server, and the server only returns data if that cached state has
changed.
the message is not deleted.
May be I'm thinking here in too simple terms: When mark a message as
\Deleted on the server, can't we just mark it as deleted on the client
if we get a positive response from the IMAP server?
There must be a way to refresh this specific message only.
Besides that, I gave the smartphone view a good torture testing
for the final beta and everything else seems to work :)
Thomas
including the proper delete state?
any new messages/remove deleted messages since the last mailbox poll.
We send the current cached state of the mailbox to the server, and the
server only returns data if that cached state has changed.
force mailbox refreshes every time the mailbox is viewed, because
that is a potential resource usage issue. And the availability of
CONDSTORE/QRESYNC is supposed to be transparent within the Imap
object, so we should not be sending flags to the server to change
refresh behavior on this basis.
including the proper delete state?
something... yes, that's the problem. Your IMAP server does not
support CONDSTORE/QRESYNC.
As indicated in docs/PERFORMANCE, we can't accurately determine that a
mailbox's flags have changed on the server side without these
extensions (i.e. we need the MODSEQ value).
This is going to be a PITA to workaround. I really don't want to
force mailbox refreshes every time the mailbox is viewed, because that
is a potential resource usage issue. And the availability of
CONDSTORE/QRESYNC is supposed to be transparent within the Imap
object, so we should not be sending flags to the server to change
refresh behavior on this basis.
but I am running out of ideas).
May be it happens because I use a small test account with only a few messages?
I've recorded a short demo of the problem:
http://forum.intra2net.com/h5_smartphone_delete_problem.ogv
The link will be up for a few days only. Also you need to save the
file, the webserver doesn't seem to send the proper mime type for .ogv.
Hope it helps.
Thomas
State ⇒ Feedback
but I am running out of ideas).
commit e81a3717583e7c7ad3912a9679d3e4420781a1af
Author: Michael M Slusarz <slusarz@horde.org>
Date: Tue Oct 9 10:07:18 2012 -0600
Fix updating rowlist when deleting a message.
Since smartmobile view currently only stores one page worth of rowlist
information, we need to update this information anytime a message is
deleted to ensure that current rowlist is correct (and page buffer is
full).
imp/js/smartmobile.js | 24 ++++++++++++++----------
imp/lib/Ajax/Application.php | 13 ++++++++++---
2 files changed, 24 insertions(+), 13 deletions(-)
http://git.horde.org/horde-git/-/commit/e81a3717583e7c7ad3912a9679d3e4420781a1af
commit fb837364f9d130945aa5973579a9f8b8efcaf819
Author: Michael M Slusarz <slusarz@horde.org>
Date: Mon Oct 8 12:16:06 2012 -0600
Revert "Set deleted flag after deleting messages (
Bug #11362)."This reverts commit 0f2825e310ac49283d08a35c2d19d199af5452e5.
Can't do this, since it does not correctly update the mailbox cache value.
Regardless, flags should never be set on the browser-side - we need
confirmation from the IMAP server that it has been set on the server or
else it is a usability nightmare (flag setting MUST be an atomic
operation from the POV of the user).
imp/js/smartmobile.js | 7 +------
1 files changed, 1 insertions(+), 6 deletions(-)
http://git.horde.org/horde-git/-/commit/fb837364f9d130945aa5973579a9f8b8efcaf819
State ⇒ Assigned
aren't picked up when going back to the mailbox.
commit 0f2825e310ac49283d08a35c2d19d199af5452e5
Author: Jan Schneider <jan@horde.org>
Date: Mon Oct 8 18:13:01 2012 +0200
Set deleted flag after deleting messages (
Bug #11362).imp/js/smartmobile.js | 7 ++++++-
1 files changed, 6 insertions(+), 1 deletions(-)
http://git.horde.org/horde-git/-/commit/0f2825e310ac49283d08a35c2d19d199af5452e5
Here's what I do in detail:
- Click on a message in the INBOX to open it
- Press the "Delete" button. I get redirected to the INBOX folder again
- Message shows up normal, no strike-through.
No matter how often I press the "Refresh" on the lower button bar
button, the message is still shown normal.
Then I press the "Search" button and search for this exact message.
In the search results it turns up as deleted (marked strike-through).
When I go back to the INBOX folder, it's shown normal again.
I'm testing with Firefox 15.0.1 in Linux / Fedora 17.
To make sure it's not some kind of funny Firefox+JQM business, I've
also tested with Opera on Linux. -> Same result.
Caching problem? Is there some kind of cache I could inspect/dump?
State ⇒ Feedback
changes in CSS files.
are current.
For a different test I resetted my complete browser (rm -rf .mozilla),
so there should be no client side caching.
Does it work for you?
changes in CSS files.
State ⇒ Assigned
When I delete a message, the message is flagged as deleted on the server.
The smartphone view doesn't show it as deleted though.
When I log out and re-enter the smartphone view, it is correctly shown
as deleted (strike through).
-> It looks like some caching issue to me.
commit f0fde33f87b3bc55838c647c8b62698b1f9a6582
Author: Michael M Slusarz <slusarz@horde.org>
Date: Fri Aug 24 22:56:03 2012 -0600
[mms] Indicate deleted messages with strikethrough in smartmobile
mailbox listing (
Request #11362).imp/docs/CHANGES | 2 ++
imp/js/smartmobile.js | 4 ++++
imp/package.xml | 2 ++
imp/templates/smartmobile/javascript_defs.php | 1 +
imp/themes/default/smartmobile/screen.css | 4 ++++
5 files changed, 13 insertions(+), 0 deletions(-)
http://git.horde.org/horde-git/-/commit/f0fde33f87b3bc55838c647c8b62698b1f9a6582
State ⇒ Resolved
commit f0fde33f87b3bc55838c647c8b62698b1f9a6582
Author: Michael M Slusarz <slusarz@horde.org>
Date: Fri Aug 24 22:56:03 2012 -0600
[mms] Indicate deleted messages with strikethrough in smartmobile
mailbox listing (
Request #11362).imp/docs/CHANGES | 2 ++
imp/js/smartmobile.js | 4 ++++
imp/package.xml | 2 ++
imp/templates/smartmobile/javascript_defs.php | 1 +
imp/themes/default/smartmobile/screen.css | 4 ++++
5 files changed, 13 insertions(+), 0 deletions(-)
http://git.horde.org/horde-git/-/commit/f0fde33f87b3bc55838c647c8b62698b1f9a6582
For non-techy users without the trash mailbox this will look like a
malfunction
since there is no way to tell the deleted worked at all. Even
surprised me and I'm techy :)
flag except for seen/unseen. So deleted messages, if trash mailbox is
not used, will continue to remain in the INBOX.
And these messages *shouldn't* be hidden since this is not the default
behavior in the other views. We are not going to add a 'hide deleted'
option in smartmobile either since that interface needs to be as
simple as possible.
view: It jumps back to the overview but the message stays in the
folder. "Copy" and "Move" work fine.
is slow (or no update if the response from the server is either
never received or is broken), so not sure if this is what you have
run into.
Here's a tcpdump of a message delete + a refresh of the INBOX.
*** Delete command ***
3 UID FETCH 10 (ENVELOPE)
* 1 FETCH (UID 10 ENVELOPE ("Mon, 30 Jul 2012 09:02:50 +0200 (CEST)"
"Postmaster Warning: Delayed Mail" (("Mail Delivery System" NIL
"MAILER-DAEMON" "intranator.net.lan")) (("Mail Delivery System" NIL
"MAILER-DAEMON" "intranator.net.lan")) (("Mail Delivery System" NIL
"MAILER-DAEMON" "intranator.net.lan")) ((NIL NIL "postmaster"
"intranator.net.lan")) NIL NIL NIL
"<20120730070250.9DB4A17769@intranator.net.lan>"))
3 OK Completed (0.000 sec)
4 UID STORE 10 +FLAGS.SILENT \deleted
4 OK Completed
*** Refresh of INBOX (logout + login) ***
...
5 UID FETCH 28,26,18,17,16,15,14,13,12,11,10,27 (ENVELOPE FLAGS
RFC822.SIZE BODY.PEEK[HEADER.FIELDS (IMPORTANCE LIST-POST X-PRIORITY)])
...
* 10 FETCH (FLAGS (\Deleted \Seen) UID 26 RFC822.SIZE 1305 ENVELOPE
("Sat, 18 Aug 2012 18:23:27 +0200" "" (("Thomas Jarosch" NIL
"thomas.jarosch" "intra2net.com")) (("Thomas Jarosch" NIL
"thomas.jarosch" "intra2net.com")) (("Thomas Jarosch" NIL
"thomas.jarosch" "intra2net.com")) ((NIL NIL "admin"
"intranator.net.lan")) NIL NIL NIL
"<20120818182327.Horde.VnBhMQhKP71QL8F-w5gRAFA@intranator.net.lan>")
BODY[HEADER.FIELDS (IMPORTANCE LIST-POST X-PRIORITY)] {2}
Should it mark deleted messages in a special way?
I would expect them to be hidden since there is no way to expunge them, too.
Enabling/disabling session cookies doesn't make a difference,
just to be on the safe side this time.
which is the back button of the jquery UI. So this is working as expected.
Thomas
State ⇒ Feedback
view: It jumps back to the overview but the message stays in the
folder. "Copy" and "Move" work fine.
slow (or no update if the response from the server is either never
received or is broken), so not sure if this is what you have run into.
message and hit the back button and then go to "New message", it
will show the previous content of the last action. I think this is
nice behavior and I hope it's by design ;)
button (I assume you mean the *browser* back button, not the jquery ui
back button), that means I don't care about the contents of that
message. I really don't want to have to be clearing fields with
various finger swipes on a (potentially small) mobile screen when/if I
create a new message.
Priority ⇒ 1. Low
State ⇒ Unconfirmed
Patch ⇒ No
Milestone ⇒
Summary ⇒ Mobile view (smart phone): Delete not working
Type ⇒ Bug
Queue ⇒ IMP
I just noticed the "Delete" button is not working in the smartphone
view: It jumps back to the overview but the message stays in the
folder. "Copy" and "Move" work fine.
btw: Something different: When you reply / forward / "edit as new" a
message and hit the back button and then go to "New message", it will
show the previous content of the last action. I think this is nice
behavior and I hope it's by design ;)
Thomas