Launchpad has imported 13 comments from the remote bug at
https://bugs.kde.org/show_bug.cgi?id=114997.
If you reply to an imported comment from within Launchpad, your comment
will be sent to the remote bug automatically. Read more about
Launchpad's inter-bugtracker facilities at
https://help.launchpad.net/InterBugTracking.
On 2005-10-24T14:30:47+00:00 Fpylin wrote:
Version:(using KDE KDE 3.4.92)
Installed from:Slackware Packages
OS:Linux
Ok ... this bug did *not* exist in KDE 3.4.3 ... someone must have
broken something in the new 1.2 ;)
What happened:
1. Switch to normal view and choose any feed, preferably a feed with a long
list.
2. Try to scroll through the articles with left/right keys and occassionally:
a) the left/right key will get stuck/not jump to the next/prev article
b) it jumps to a random article (i.e. not in order shown in the list)
3. Duplicated articles are shown twice at least
4. If you click on an unread title, another title in the list
(unrelated) will change its name to the article you just clicked. The
article that has its name changed is lost afterwards.
I do not have full source in hand, but I suspect some of the ?new
duplication detection mechanism was not working the way it should be.
Cheers,
Frank
Reply at:
https://bugs.launchpad.net/ubuntu/+source/kdepim/+bug/137409/comments/0
On 2005-12-15T04:45:08+00:00 Fpylin wrote:
Created attachment 13924
Example of the bug (screenshot series in .tar.gz format)
A picture is better than 1000+ words. Here I post a series of screenshots
describing this bug.
Reply at:
https://bugs.launchpad.net/ubuntu/+source/kdepim/+bug/137409/comments/1
On 2005-12-15T08:07:54+00:00 Osterfeld wrote:
I confirm 2a). Sometimes, the prev/next actions get stuck.
I've seen 3 and 4, too. But this is only "visual", i.e. if you switch to
another feed and back, all should be fine again, right?
It's not about dupe detection, it has to do with the list items (which are
created per article). Thus, when switching to another feed and back, the items
are cleared and recreated properly.
Reply at:
https://bugs.launchpad.net/ubuntu/+source/kdepim/+bug/137409/comments/2
On 2005-12-15T13:42:19+00:00 Fpylin wrote:
> I've seen 3 and 4, too. But this is only "visual", i.e. if you switch to
> another feed and back, all should be fine again, right?
That is correct.
> It's not about dupe detection, it has to do with the list items (which are
> created per article).
Thanks -- sounds very logical. The reason I suspected "dupe detection"
originally was that it only happens with new (red) and unread (blue) items. The
read items (black) items does not seem to be affected.
> Thus, when switching to another feed and back, the items are cleared and
> recreated properly.
Yes. That is also correct.
Reply at:
https://bugs.launchpad.net/ubuntu/+source/kdepim/+bug/137409/comments/3
On 2006-01-08T13:02:01+00:00 Osterfeld wrote:
*** Bug 119669 has been marked as a duplicate of this bug. ***
Reply at:
https://bugs.launchpad.net/ubuntu/+source/kdepim/+bug/137409/comments/4
On 2006-01-08T13:09:03+00:00 Osterfeld wrote:
SVN commit 495480 by osterfeld:
Fix comparison operators of Article, such as < and <=.
This fixes problems with QMap and articles having identical pubdate (operator<
just compared pubdates, and QMap consideres
articles as equal when items are not comparable).
Fixes 114997 navigation problems and prevents creation of a new item when
selecting an unread dupe article. (a new item was
created as map lookup failed).
BUG: 114997
M +6 -4 article.cpp
--- branches/KDE/3.5/kdepim/akregator/src/article.cpp #495479:495480
@@ -241,22 +241,24 @@
bool Article::operator<(const Article &other) const
{
-return pubDate() > other.pubDate();
+return pubDate() > other.pubDate() ||
+(pubDate() == other.pubDate() && guid() < other.guid() );
}
bool Article::operator<=(const Article &other) const
{
-return pubDate() >= other.pubDate();
+return (pubDate() > other.pubDate() || *this == other);
}
bool Article::operator>(const Article &other) const
{
-return pubDate() < other.pubDate();
+return pubDate() < other.pubDate() ||
+(pubDate() == other.pubDate() && guid() > other.guid() );
}
bool Article::operator>=(const Article &other) const
{
-return pubDate() <= other.pubDate();
+return (pubDate() > other.pubDate() || *this == other);
}
bool Article::operator==(const Article &other) const
Reply at:
https://bugs.laun