SOURCES: kdepim-branch.diff - updated

arekm arekm at pld-linux.org
Sat Mar 31 12:12:11 CEST 2007


Author: arekm                        Date: Sat Mar 31 10:12:11 2007 GMT
Module: SOURCES                       Tag: HEAD
---- Log message:
- updated

---- Files affected:
SOURCES:
   kdepim-branch.diff (1.40 -> 1.41) 

---- Diffs:

================================================================
Index: SOURCES/kdepim-branch.diff
diff -u SOURCES/kdepim-branch.diff:1.40 SOURCES/kdepim-branch.diff:1.41
--- SOURCES/kdepim-branch.diff:1.40	Tue Mar 13 16:09:59 2007
+++ SOURCES/kdepim-branch.diff	Sat Mar 31 12:12:05 2007
@@ -1,7 +1,7 @@
 Index: akregator/ChangeLog
 ===================================================================
---- akregator/ChangeLog	(.../tags/KDE/3.5.6/kdepim)	(wersja 637414)
-+++ akregator/ChangeLog	(.../branches/KDE/3.5/kdepim)	(wersja 637414)
+--- akregator/ChangeLog	(.../tags/KDE/3.5.6/kdepim)	(wersja 648291)
++++ akregator/ChangeLog	(.../branches/KDE/3.5/kdepim)	(wersja 648291)
 @@ -2,6 +2,14 @@
  ===================
  (c) 2004-2006 the Akregator authors.
@@ -17,10 +17,23 @@
  Changes after 1.2.5:
  -----------------------------
  
+Index: akregator/src/feedlist.cpp
+===================================================================
+--- akregator/src/feedlist.cpp	(.../tags/KDE/3.5.6/kdepim)	(wersja 648291)
++++ akregator/src/feedlist.cpp	(.../branches/KDE/3.5/kdepim)	(wersja 648291)
+@@ -112,7 +112,7 @@
+     {
+         QString title = e.hasAttribute("text") ? e.attribute("text") : e.attribute("title");
+ 
+-        if (e.hasAttribute("xmlUrl") || e.hasAttribute("xmlurl"))
++        if (e.hasAttribute("xmlUrl") || e.hasAttribute("xmlurl") || e.hasAttribute("xmlURL") )
+         {
+             Feed* feed = Feed::fromOPML(e);
+             if (feed)
 Index: akregator/src/articleviewer.cpp
 ===================================================================
---- akregator/src/articleviewer.cpp	(.../tags/KDE/3.5.6/kdepim)	(wersja 637414)
-+++ akregator/src/articleviewer.cpp	(.../branches/KDE/3.5/kdepim)	(wersja 637414)
+--- akregator/src/articleviewer.cpp	(.../tags/KDE/3.5.6/kdepim)	(wersja 648291)
++++ akregator/src/articleviewer.cpp	(.../branches/KDE/3.5/kdepim)	(wersja 648291)
 @@ -160,6 +160,10 @@
  ArticleViewer::ArticleViewer(QWidget *parent, const char *name)
      : Viewer(parent, name), m_htmlFooter(), m_currentText(), m_node(0), m_viewMode(NormalView)
@@ -32,11 +45,35 @@
      m_showSummaryVisitor = new ShowSummaryVisitor(this);
      setXMLFile(locate("data", "akregator/articleviewer.rc"), true);
  
+Index: akregator/src/feed.cpp
+===================================================================
+--- akregator/src/feed.cpp	(.../tags/KDE/3.5.6/kdepim)	(wersja 648291)
++++ akregator/src/feed.cpp	(.../branches/KDE/3.5/kdepim)	(wersja 648291)
+@@ -127,11 +127,13 @@
+ 
+     Feed* feed = 0;
+ 
+-    if( e.hasAttribute("xmlUrl") || e.hasAttribute("xmlurl") )
++    if( e.hasAttribute("xmlUrl") || e.hasAttribute("xmlurl") || e.hasAttribute("xmlURL") )
+     {
+         QString title = e.hasAttribute("text") ? e.attribute("text") : e.attribute("title");
+ 
+         QString xmlUrl = e.hasAttribute("xmlUrl") ? e.attribute("xmlUrl") : e.attribute("xmlurl");
++        if (xmlUrl.isEmpty())
++            xmlUrl = e.attribute("xmlURL");
+ 
+         bool useCustomFetchInterval = e.attribute("useCustomFetchInterval") == "true" || e.attribute("autoFetch") == "true"; 
+         // "autoFetch" is used in 3.4
 Index: akregator/src/mk4storage/akregator_mk4storage_plugin.desktop
 ===================================================================
---- akregator/src/mk4storage/akregator_mk4storage_plugin.desktop	(.../tags/KDE/3.5.6/kdepim)	(wersja 637414)
-+++ akregator/src/mk4storage/akregator_mk4storage_plugin.desktop	(.../branches/KDE/3.5/kdepim)	(wersja 637414)
-@@ -23,6 +23,7 @@
+--- akregator/src/mk4storage/akregator_mk4storage_plugin.desktop	(.../tags/KDE/3.5.6/kdepim)	(wersja 648291)
++++ akregator/src/mk4storage/akregator_mk4storage_plugin.desktop	(.../branches/KDE/3.5/kdepim)	(wersja 648291)
+@@ -19,10 +19,12 @@
+ Name[is]=Metakit geymslu bakendi
+ Name[it]=Backend archiviazione metakit
+ Name[ja]=メタキットストレージバックエンド
++Name[kk]=Metakit архивтеу бағдарламасы
+ Name[km]=កម្មវិធី​ខាង​ក្រោយ​សម្រាប់​រក្សាទុក (Metakit)
  Name[ms]=Hujung belakang storan Metakit 
  Name[nb]=Metakit lagringsbakstykke
  Name[nds]=Metakit-Archivmoduul
@@ -44,16 +81,23 @@
  Name[nl]=Metakit-opslagbackend
  Name[nn]=Metakit-lagringsbakstykke
  Name[pl]=System przechowywania Metakit
-@@ -39,6 +40,7 @@
+@@ -39,9 +41,10 @@
  X-KDE-Library=libakregator_mk4storage_plugin
  Comment=Plugin for Akregator
  Comment[af]=Inprop module vir Akregator
 +Comment[be]=Утулка для Akregator
  Comment[bg]=Приставка за Akregator
  Comment[br]=Lugent evit Akregator
- Comment[ca]=Endollable per a Akregator
-@@ -60,9 +62,11 @@
+-Comment[ca]=Endollable per a Akregator
++Comment[ca]=Endollable per a l'Akregator
+ Comment[cs]=Modul pro Akregator
+ Comment[de]=Modul für Akregator
+ Comment[el]=Πρόσθετο για το Akregator
+@@ -58,11 +61,14 @@
+ Comment[is]=Íforrit fyrir Akregator
+ Comment[it]=Plugin per Akregator
  Comment[ja]=Akregator 用プラグイン
++Comment[kk]=Akregator-дың плагин модулі
  Comment[km]=កម្មវិធី​ជំនួយ Akregator
  Comment[lt]=Akregator skirtas priedas
 +Comment[mk]=Приклучок за Akregator
@@ -66,8 +110,8 @@
  Comment[pl]=Wtyczka dla Akregatora
 Index: akregator/src/akregator_part.cpp
 ===================================================================
---- akregator/src/akregator_part.cpp	(.../tags/KDE/3.5.6/kdepim)	(wersja 637414)
-+++ akregator/src/akregator_part.cpp	(.../branches/KDE/3.5/kdepim)	(wersja 637414)
+--- akregator/src/akregator_part.cpp	(.../tags/KDE/3.5.6/kdepim)	(wersja 648291)
++++ akregator/src/akregator_part.cpp	(.../branches/KDE/3.5/kdepim)	(wersja 648291)
 @@ -513,13 +513,21 @@
      {
          if (!factory())
@@ -96,8 +140,8 @@
      }
 Index: akregator/src/akregator_view.h
 ===================================================================
---- akregator/src/akregator_view.h	(.../tags/KDE/3.5.6/kdepim)	(wersja 637414)
-+++ akregator/src/akregator_view.h	(.../branches/KDE/3.5/kdepim)	(wersja 637414)
+--- akregator/src/akregator_view.h	(.../tags/KDE/3.5.6/kdepim)	(wersja 648291)
++++ akregator/src/akregator_view.h	(.../branches/KDE/3.5/kdepim)	(wersja 648291)
 @@ -277,13 +277,9 @@
              void disconnectFromFeedList(FeedList* feedList);
  
@@ -115,8 +159,8 @@
              void setTabIcon(const QPixmap&);
 Index: akregator/src/pageviewer.cpp
 ===================================================================
---- akregator/src/pageviewer.cpp	(.../tags/KDE/3.5.6/kdepim)	(wersja 637414)
-+++ akregator/src/pageviewer.cpp	(.../branches/KDE/3.5/kdepim)	(wersja 637414)
+--- akregator/src/pageviewer.cpp	(.../tags/KDE/3.5.6/kdepim)	(wersja 648291)
++++ akregator/src/pageviewer.cpp	(.../branches/KDE/3.5/kdepim)	(wersja 648291)
 @@ -356,15 +356,22 @@
  
  void PageViewer::urlSelected(const QString &url, int button, int state, const QString &_target, KParts::URLArgs args)
@@ -147,8 +191,8 @@
  
 Index: akregator/src/viewer.cpp
 ===================================================================
---- akregator/src/viewer.cpp	(.../tags/KDE/3.5.6/kdepim)	(wersja 637414)
-+++ akregator/src/viewer.cpp	(.../branches/KDE/3.5/kdepim)	(wersja 637414)
+--- akregator/src/viewer.cpp	(.../tags/KDE/3.5.6/kdepim)	(wersja 648291)
++++ akregator/src/viewer.cpp	(.../branches/KDE/3.5/kdepim)	(wersja 648291)
 @@ -51,10 +51,7 @@
      : KHTMLPart(parent, name), m_url(0)
  {
@@ -162,18 +206,25 @@
      setStatusMessagesEnabled(true);
 Index: akregator/src/akregator_plugin.desktop
 ===================================================================
---- akregator/src/akregator_plugin.desktop	(.../tags/KDE/3.5.6/kdepim)	(wersja 637414)
-+++ akregator/src/akregator_plugin.desktop	(.../branches/KDE/3.5/kdepim)	(wersja 637414)
-@@ -3,6 +3,7 @@
+--- akregator/src/akregator_plugin.desktop	(.../tags/KDE/3.5.6/kdepim)	(wersja 648291)
++++ akregator/src/akregator_plugin.desktop	(.../branches/KDE/3.5/kdepim)	(wersja 648291)
+@@ -3,9 +3,10 @@
  X-KDE-ServiceType=Akregator/Plugin
  Comment=Plugin for Akregator
  Comment[af]=Inprop module vir Akregator
 +Comment[be]=Утулка для Akregator
  Comment[bg]=Приставка за Akregator
  Comment[br]=Lugent evit Akregator
- Comment[ca]=Endollable per a Akregator
-@@ -24,9 +25,11 @@
+-Comment[ca]=Endollable per a Akregator
++Comment[ca]=Endollable per a l'Akregator
+ Comment[cs]=Modul pro Akregator
+ Comment[de]=Modul für Akregator
+ Comment[el]=Πρόσθετο για το Akregator
+@@ -22,11 +23,14 @@
+ Comment[is]=Íforrit fyrir Akregator
+ Comment[it]=Plugin per Akregator
  Comment[ja]=Akregator 用プラグイン
++Comment[kk]=Akregator-дың плагин модулі
  Comment[km]=កម្មវិធី​ជំនួយ Akregator
  Comment[lt]=Akregator skirtas priedas
 +Comment[mk]=Приклучок за Akregator
@@ -186,8 +237,8 @@
  Comment[pl]=Wtyczka dla Akregatora
 Index: akregator/src/akregator.desktop
 ===================================================================
---- akregator/src/akregator.desktop	(.../tags/KDE/3.5.6/kdepim)	(wersja 637414)
-+++ akregator/src/akregator.desktop	(.../branches/KDE/3.5/kdepim)	(wersja 637414)
+--- akregator/src/akregator.desktop	(.../tags/KDE/3.5.6/kdepim)	(wersja 648291)
++++ akregator/src/akregator.desktop	(.../branches/KDE/3.5/kdepim)	(wersja 648291)
 @@ -1,6 +1,7 @@
  [Desktop Entry]
  Encoding=UTF-8
@@ -196,7 +247,13 @@
  Exec=akregator %i %m -caption "%c"
  Icon=akregator
  Type=Application
-@@ -31,6 +32,7 @@
+@@ -26,11 +27,13 @@
+ GenericName[is]=RSS fréttaforrit
+ GenericName[it]=Lettore Fonti RSS
+ GenericName[ja]=RSS ニュースリーダー
++GenericName[kk]=RSS жаңалықтарын оқу
+ GenericName[km]=កម្មវិធី​អាន​មតិព័ត៌មាន RSS
+ GenericName[lt]=RSS kanalų skaityklė
  GenericName[ms]= Pembaca Suapan RSS 
  GenericName[nb]=Leser for RSS-kanal
  GenericName[nds]=Kieker för RSS-Mellenströöm
@@ -204,7 +261,12 @@
  GenericName[nl]=RSS-feedlezer
  GenericName[nn]=RSS-lesar
  GenericName[pl]=Program do przeglądania kanałów RSS
-@@ -72,6 +74,7 @@
+@@ -68,10 +71,12 @@
+ Comment[is]=RSS fréttaforrit fyrir KDE
+ Comment[it]=Un concentratore KDE per RSS
+ Comment[ja]=KDE 用 RSS アグリゲータ
++Comment[kk]=KDE-нің RSS жаңалық агрегаторы
+ Comment[km]=កម្មវិធី​អាន RSS សម្រាប់ KDE
  Comment[ms]=Pengagregat RSS untuk KDE
  Comment[nb]=En RSS-oppsamler for KDE
  Comment[nds]=Tosamensteller för RSS-Mellenströöm vun KDE
@@ -212,10 +274,28 @@
  Comment[nl]=Een RSS-agregator voor KDE
  Comment[nn]=Ein RSS-lesar for KDE
  Comment[pl]=Program podsumowujący kanały RSS dla KDE
+Index: akregator/src/article.h
+===================================================================
+--- akregator/src/article.h	(.../tags/KDE/3.5.6/kdepim)	(wersja 648291)
++++ akregator/src/article.h	(.../branches/KDE/3.5/kdepim)	(wersja 648291)
+@@ -133,7 +133,12 @@
+         private:
+             void initialize(RSS::Article article, Backend::FeedStorage* archive);
+             static QString buildTitle(const QString& description);
+-            
++
++            int statusBits() const; // returns all of the status bits for the article.  this
++                                    // differs from status() which only returns the most relevant
++                                    // status flag.
++                                    
++
+             struct Private;
+             Private *d;
+     };
 Index: akregator/src/eventsrc
 ===================================================================
---- akregator/src/eventsrc	(.../tags/KDE/3.5.6/kdepim)	(wersja 637414)
-+++ akregator/src/eventsrc	(.../branches/KDE/3.5/kdepim)	(wersja 637414)
+--- akregator/src/eventsrc	(.../tags/KDE/3.5.6/kdepim)	(wersja 648291)
++++ akregator/src/eventsrc	(.../branches/KDE/3.5/kdepim)	(wersja 648291)
 @@ -2,6 +2,7 @@
  IconName=akregator
  Comment=Akregator
@@ -224,7 +304,13 @@
  Comment[sv]=aKregator
  
  [feed_added]
-@@ -31,6 +32,7 @@
+@@ -26,11 +27,13 @@
+ Name[is]=Straum bætt við
+ Name[it]=Aggiunta fonte
+ Name[ja]=フィード追加
++Name[kk]=Қор қосылды
+ Name[km]=បាន​បន្ថែម​មតិព័ត៌មាន
+ Name[lt]=Kanalas pridėtas
  Name[ms]=Suapan ditambah
  Name[nb]=Kanal lagt til
  Name[nds]=Narichtenstroom toföögt
@@ -232,7 +318,22 @@
  Name[nl]=Feed toegevoegd
  Name[nn]=Kanal lagd til
  Name[pl]=Kanał dodany
-@@ -73,6 +75,7 @@
+@@ -51,7 +54,7 @@
+ Comment=A new feed was remotely added to Akregator
+ Comment[af]='n Nuwe stroom was vanaf 'n afgeleë ligging by Akregator bygevoeg.
+ Comment[bg]=Отдалечено е добавена нова новина към Akregator
+-Comment[ca]=S'ha afegit remotament un enllaç a Akregator
++Comment[ca]=S'ha afegit remotament un enllaç a l'Akregator
+ Comment[cs]=Byl přidán nový kanál do Akregatoru
+ Comment[da]=En ny kilde blev tilføjet eksternt til Akregator
+ Comment[de]=Eine neue Nachrichtenquelle wurde von extern zu Akregator hinzugefügt
+@@ -68,11 +71,13 @@
+ Comment[is]=Nýjum straum var bætt við Akregator
+ Comment[it]=Una nuova fonte è stata aggiunta ad Akregator da remoto
+ Comment[ja]=新規フィードがリモートで Akregator に追加されました
++Comment[kk]=Akregator-ға қашықтан жаңа қор қосылды
+ Comment[km]=បាន​បន្ថែម​មតិព័ត៌មាន​ថ្មី​មួយ​ពី​ចម្ងាយ​ទៅ Akregator
+ Comment[lt]=Naujas nutolęs naujienų kanalas buvo įdėtas į Akregator
  Comment[ms]=Suapan baru ditambah dari jauh kepada Akregator
  Comment[nb]=En ny kanal ble lagt til Akgregator utenfra 
  Comment[nds]=En nieg Stroom wöör Akregator vun buten toföögt
@@ -240,7 +341,7 @@
  Comment[nl]=Er was extern een nieuwe feed toegevoegd aan Akregator
  Comment[nn]=Ein ny kanal vart lagd til Akregator
  Comment[pl]=Nowy kanał został zdalnie dodany do Akregatora
-@@ -95,6 +98,8 @@
+@@ -95,6 +100,8 @@
  [new_articles]
  Name=New Articles
  Name[af]=Nuwe Artikels
@@ -249,8 +350,11 @@
  Name[bg]=Нови статии
  Name[br]=Pennadoù nevez
  Name[ca]=Nous articles
-@@ -117,9 +122,11 @@
+@@ -115,11 +122,14 @@
+ Name[is]=Nýjar greinar
+ Name[it]=Nuovi articoli
  Name[ja]=新規記事
++Name[kk]=Жаңа мақалалар
  Name[km]=អត្ថបទ​ថ្មី
  Name[lt]=Nauji straipsniai
 +Name[mk]=Нови написи
@@ -261,7 +365,7 @@
  Name[nl]=Nieuwe artikelen
  Name[nn]=Nye artiklar
  Name[pl]=Nowe artykuły
-@@ -140,6 +147,7 @@
+@@ -140,6 +150,7 @@
  Name[zh_TW]=新文章
  Comment=New articles were fetched
  Comment[af]=Nuwe artikels was afgelaai
@@ -269,8 +373,11 @@
  Comment[bg]=Пристигнали са нови статии
  Comment[ca]=S'han obtingut nous articles
  Comment[cs]=Byly staženy nové články
-@@ -161,9 +169,11 @@
+@@ -159,11 +170,14 @@
+ Comment[is]=Nýjar greinar voru sóttar
+ Comment[it]=I nuovi articoli sono stati recuperati
  Comment[ja]=新規記事を取得しました
++Comment[kk]=Жаңа мақалалар қабылданды
  Comment[km]=បាន​ប្រមូល​អត្ថបទ​ថ្មី
  Comment[lt]=Nauji straipsniai parsiųsti
 +Comment[mk]=Беа земени нови написи
@@ -283,8 +390,8 @@
  Comment[pl]=Pobrano nowe artykuły
 Index: akregator/src/akregator_view.cpp
 ===================================================================
---- akregator/src/akregator_view.cpp	(.../tags/KDE/3.5.6/kdepim)	(wersja 637414)
-+++ akregator/src/akregator_view.cpp	(.../branches/KDE/3.5/kdepim)	(wersja 637414)
+--- akregator/src/akregator_view.cpp	(.../tags/KDE/3.5.6/kdepim)	(wersja 648291)
++++ akregator/src/akregator_view.cpp	(.../branches/KDE/3.5/kdepim)	(wersja 648291)
 @@ -367,20 +367,9 @@
      }
  
@@ -316,11 +423,203 @@
      if (f->part() == m_part)
          m_part->mergePart(m_articleViewer);
      else
+Index: akregator/src/article.cpp
+===================================================================
+--- akregator/src/article.cpp	(.../tags/KDE/3.5.6/kdepim)	(wersja 648291)
++++ akregator/src/article.cpp	(.../branches/KDE/3.5/kdepim)	(wersja 648291)
+@@ -57,12 +57,18 @@
+ 
+     enum Status {Deleted=0x01, Trash=0x02, New=0x04, Read=0x08, Keep=0x10};
+ 
+-    int status;
+     QString guid;
+-    uint hash;
+     Backend::FeedStorage* archive;
+-    QDateTime pubDate;
+     Feed* feed;
++
++    // the variables below are initialized to null values in the Article constructor 
++    // and then loaded on demand instead.
++    //
++    // to read their values, you should therefore use the accessor methods of the Article
++    // hash(), pubDate(), statusBits() rather than accessing them directly.
++    uint hash;
++    QDateTime pubDate;  
++    int status;
+ };
+ 
+ Article::Article() : d(new Private)
+@@ -71,18 +77,20 @@
+     d->status = 0;
+     d->feed = 0;
+     d->archive = 0;
+-    d->pubDate.setTime_t(1);
+-
+ }
+ 
+ Article::Article(const QString& guid, Feed* feed) : d(new Private)
+ {
++    // this constructor should be as cheap as possible, so avoid calls to 
++    // read information from the archive in here if possible
++    //
++    // d->hash, d->pubDate and d->status are loaded on-demand by
++    // the hash(), pubDate() and statusBits() methods respectively
++
+     d->feed = feed;
+     d->guid = guid;
+     d->archive = Backend::Storage::getInstance()->archiveFor(feed->xmlUrl());
+-    d->status = d->archive->status(d->guid);
+-    d->pubDate.setTime_t(d->archive->pubDate(d->guid));
+-    d->hash = d->archive->hash(d->guid);
++    d->status = 0;
+ }
+ 
+ void Article::initialize(RSS::Article article, Backend::FeedStorage* archive)
+@@ -106,7 +114,7 @@
+         else
+         { // article is not deleted, let's add it to the archive
+         
+-            d->archive->setHash(d->guid, d->hash);
++            d->archive->setHash(d->guid, hash() );
+             QString title = article.title().isEmpty() ? buildTitle(article.description()) :  article.title();
+             d->archive->setTitle(d->guid, title);
+             d->archive->setDescription(d->guid, article.description());
+@@ -158,10 +166,10 @@
+     {
+         // always update comments count, as it's not used for hash calculation
+         d->archive->setComments(d->guid, article.comments());
+-        if (d->hash != d->archive->hash(d->guid)) //article is in archive, was it modified?
++        if ( hash() != d->archive->hash(d->guid)) //article is in archive, was it modified?
+         { // if yes, update
+             d->pubDate.setTime_t(d->archive->pubDate(d->guid));
+-            d->archive->setHash(d->guid, d->hash);
++            d->archive->setHash(d->guid, hash() );
+             QString title = article.title().isEmpty() ? buildTitle(article.description()) :  article.title();
+             d->archive->setTitle(d->guid, title);
+             d->archive->setDescription(d->guid, article.description());
+@@ -192,7 +200,7 @@
+ 
+ void Article::offsetPubDate(int secs)
+ {
+-   d->pubDate = d->pubDate.addSecs(secs);
++   d->pubDate = pubDate().addSecs(secs);
+    d->archive->setPubDate(d->guid, d->pubDate.toTime_t());
+ 
+ }
+@@ -213,7 +221,7 @@
+ 
+ bool Article::isDeleted() const
+ {
+-    return (d->status & Private::Deleted) != 0;
++    return (statusBits() & Private::Deleted) != 0;
+ }
+ 
+ Article::Article(const Article &other) : d(new Private)
+@@ -269,12 +277,23 @@
+     return d->guid == other.guid();
+ }
+ 
++int Article::statusBits() const
++{
++    // delayed loading of status information from archive
++    if ( d->status == 0 ) 
++    {
++        d->status = d->archive->status(d->guid);
++    }
++
++    return d->status;
++}
++
+ int Article::status() const
+ {
+-    if ((d->status & Private::Read) != 0)
++    if ((statusBits() & Private::Read) != 0)
+         return Read;
+ 
+-    if ((d->status & Private::New) != 0)
++    if ((statusBits() & Private::New) != 0)
+         return New;
+     else
+         return Unread;
+@@ -282,6 +301,8 @@
+ 
+ void Article::setStatus(int stat)
+ {
++    // use status() rather than statusBits() here to filter out status flags that we are not
++    // interested in
+     int oldStatus = status();
+ 
+     if (oldStatus != stat)
+@@ -289,13 +310,13 @@
+         switch (stat)
+         {
+             case Read:
+-                d->status = (d->status | Private::Read) & ~Private::New;
++                d->status = ( d->status | Private::Read) & ~Private::New;
+                 break;
+             case Unread:
+-                d->status = (d->status & ~Private::Read) & ~Private::New;
++                d->status = ( d->status & ~Private::Read) & ~Private::New;
+                 break;
+             case New:
+-                d->status = (d->status | Private::New) & ~Private::Read;
++                d->status = ( d->status | Private::New) & ~Private::Read;
+                 break;
+         }
+         d->archive->setStatus(d->guid, d->status);
+@@ -354,12 +375,18 @@
+ 
+ uint Article::hash() const
+ {
++    // delayed loading of hash from archive
++    if ( d->hash == 0 )
++    {
++        d->hash = d->archive->hash(d->guid);
++    }
++
+     return d->hash;
+ }
+ 
+ bool Article::keep() const
+ {
+-    return (d->status & Private::Keep) != 0;
++    return ( statusBits() & Private::Keep) != 0;
+ }
+ 
+ RSS::Enclosure Article::enclosure() const
+@@ -376,7 +403,7 @@
+ 
+ void Article::setKeep(bool keep)
+ {
+-    d->status = keep ? (d->status | Private::Keep) : (d->status & ~Private::Keep);
++    d->status = keep ? ( statusBits() | Private::Keep) : ( statusBits() & ~Private::Keep);
+     d->archive->setStatus(d->guid, d->status);
+     if (d->feed)
+         d->feed->setArticleChanged(*this);
+@@ -411,6 +438,12 @@
+ 
+ const QDateTime& Article::pubDate() const
+ {
++    // delayed loading of publication date information from archive
++    if ( d->pubDate.isNull() )
++    {
++        d->pubDate.setTime_t(d->archive->pubDate(d->guid));
++    }
++
+     return d->pubDate;
+ }
+ 
 Index: kmobile/libkmobile.desktop
 ===================================================================
---- kmobile/libkmobile.desktop	(.../tags/KDE/3.5.6/kdepim)	(wersja 637414)
-+++ kmobile/libkmobile.desktop	(.../branches/KDE/3.5/kdepim)	(wersja 637414)
-@@ -29,6 +29,7 @@
+--- kmobile/libkmobile.desktop	(.../tags/KDE/3.5.6/kdepim)	(wersja 648291)
++++ kmobile/libkmobile.desktop	(.../branches/KDE/3.5/kdepim)	(wersja 648291)
+@@ -24,11 +24,13 @@
+ Name[is]=Hrár KDE vélbúnaðarrekill fyrir farsíma og lófatölvur
+ Name[it]=KDE driver hardware di basso livello per dispositivi portatili
+ Name[ja]=KDE モバイル機器低レベルハードウェアドライバ
++Name[kk]=KDE-нің қалта құрылғы жабдықтың төмен деңгейлі драйвері
+ Name[km]=កម្មវិធី​បញ្ជា​ផ្នែករឹង​កម្រិត​ទាប​របស់​ឧបករណ៍​ចល័ត KDE
+ Name[lt]=KDE mobiliųjų įrenginių žemo lygmens aparatinės įrangos tvarkyklė
  Name[ms]=Pemacu Perkakasan Tahap Rendah Peranti Mudah Alih KDE 
  Name[nb]=KDE lavnivå maskinvaredriver for mobile enheter
  Name[nds]=Sietstoop-Driever för Mobilreedschappen
@@ -330,8 +629,8 @@
  Name[pl]=Niskopoziomowy sterownik sprzętu urządzenia przenośnego dla KDE
 Index: kmobile/devices/gnokii/libkmobile_gnokii.desktop
 ===================================================================
---- kmobile/devices/gnokii/libkmobile_gnokii.desktop	(.../tags/KDE/3.5.6/kdepim)	(wersja 637414)
-+++ kmobile/devices/gnokii/libkmobile_gnokii.desktop	(.../branches/KDE/3.5/kdepim)	(wersja 637414)
+--- kmobile/devices/gnokii/libkmobile_gnokii.desktop	(.../tags/KDE/3.5.6/kdepim)	(wersja 648291)
++++ kmobile/devices/gnokii/libkmobile_gnokii.desktop	(.../branches/KDE/3.5/kdepim)	(wersja 648291)
 @@ -2,6 +2,7 @@
  Encoding=UTF-8
  Name=Mobile Phone or Organizer (gnokii)
@@ -340,7 +639,13 @@
  Name[be]=Мабільны тэлефон ці арганізатар (gnokii)
  Name[bg]=Мобилни телефони или организатори (gnokii)
  Name[bs]=Mobilni telefon ili organizer (gnokii)
-@@ -31,6 +32,7 @@
+@@ -26,11 +27,13 @@
+ Name[is]=Farsími eða lófatölva (gnokii)
+ Name[it]=Telefono cellulare o organizer (gnokii)
+ Name[ja]=携帯電話またはスケジュール管理 (gnokii)
++Name[kk]=Қалта телефон не Ұйымдастырғыш (gnokii)
+ Name[km]=កម្មវិធី​រៀបចំ​ទូរស័ព្ទ​ចល័ត (gnokii)
+ Name[lt]=Mobilus telefonas ar asmeninės info tvarkyklė (gnokii)
  Name[ms]=Telefon Bimbit atau Penyusun  (gnokii)
  Name[nb]=Mobiltelefon eller PDA (gnokii)
  Name[nds]=Mobiltelefoon oder Handreekner (gnokii)
@@ -348,7 +653,27 @@
  Name[nl]=Mobiele telefoon of Organizer (gnokii)
  Name[nn]=Mobiltelefon eller organisator (gnokii)
  Name[pl]=Telefon komórkowy lub organizer (gnokii)
-@@ -77,6 +79,7 @@
+@@ -51,9 +54,9 @@
+ Name[zh_TW]=行動電話或數位助理(gnokii)
+ Comment=This driver supports many NOKIA and other mobile phones via the gnokii library
+ Comment[af]=Hierdie drywer ondersteun baie Nokia en ander selfone d.m.v. die gnokii biblioteek
+-Comment[bg]=Драйвер за поддръжка на мобилни телефони, предимно Нокия, чрез библиотеката gnokii
++Comment[bg]=Драйвер за поддръжка на мобилни телефони, предимно Нокиа, чрез библиотеката gnokii
+ Comment[bs]=Ovaj drajver podržava mnoge NOKIA i druge mobilne telefone putem gnokii biblioteke
+-Comment[ca]=Aquest controlador acepta molts NOKIA i d'altres telèfons mòbils mitjançant la biblioteca «gnokii»
++Comment[ca]=Aquest controlador accepta molts NOKIA i d'altres telèfons mòbils mitjançant la biblioteca «gnokii»
+ Comment[cs]=Tento ovladač podporuje mnoho mobilních telefonů NOKIA a dalších pomocí knihovny gnokii
+ Comment[cy]=Cynhala'r gyrrydd yma lawer o ffoniau NOKIA a ffoniau symudol eraill drwy'r rhaglengell gnokii
+ Comment[da]=Denne driver understøtter mange NOKIA og andre mobiltelefoner via gnokii-biblioteket
<<Diff was trimmed, longer than 597 lines>>

---- CVS-web:
    http://cvs.pld-linux.org/SOURCES/kdepim-branch.diff?r1=1.40&r2=1.41&f=u



More information about the pld-cvs-commit mailing list