[Pkg-kde-commits] rev 1777 - in branches/kde-3.4.0/packages/kdelibs/debian: . patches

Christopher Martin chrsmrtn at costa.debian.org
Mon Sep 12 14:16:22 UTC 2005


Author: chrsmrtn
Date: 2005-09-12 14:16:21 +0000 (Mon, 12 Sep 2005)
New Revision: 1777

Added:
   branches/kde-3.4.0/packages/kdelibs/debian/patches/01_kdelibs_branch_r458612.diff
   branches/kde-3.4.0/packages/kdelibs/debian/patches/17_kdelibs_rubberband.diff
   branches/kde-3.4.0/packages/kdelibs/debian/patches/23_kfiledialog.diff
Modified:
   branches/kde-3.4.0/packages/kdelibs/debian/changelog
Log:
Add a branch pull for kdelibs.

Also add a patch that cleans up the speedbar for the Open dialog.

And add the kdelibs portion of the Improving KDE patches.


Modified: branches/kde-3.4.0/packages/kdelibs/debian/changelog
===================================================================
--- branches/kde-3.4.0/packages/kdelibs/debian/changelog	2005-09-12 14:15:28 UTC (rev 1776)
+++ branches/kde-3.4.0/packages/kdelibs/debian/changelog	2005-09-12 14:16:21 UTC (rev 1777)
@@ -1,5 +1,7 @@
 kdelibs (4:3.4.2-4) UNRELEASED; urgency=low
 
+  * KDE_3_4_BRANCH update.
+
   +++ Changes by Adeodato Simó:
 
   * Use khtml/html/htmltokenizer.cpp from 3.5 to fix bogus parsing of
@@ -7,6 +9,15 @@
     sometimes ignore blank lines in pre mode, which made this friendly
     maintainer of yours terribly unhappy when visiting bts.turmzimmer.net.
 
+  +++ Changes by Christopher Martin:
+
+  * Add a patch from the "Improving KDE" set that tweaks KDE's default GUI,
+    changing some of the selection and highlight effects.
+
+  * Add a patch that elimiates the floppy ioslave from the default Open dialog
+    toolbar, since the media ioslave is also present by default and handles
+    floppy drives.
+
  -- Debian Qt/KDE Maintainers <debian-qt-kde at lists.debian.org>  Date
 
 kdelibs (4:3.4.2-3) unstable; urgency=low

Added: branches/kde-3.4.0/packages/kdelibs/debian/patches/01_kdelibs_branch_r458612.diff
===================================================================
--- branches/kde-3.4.0/packages/kdelibs/debian/patches/01_kdelibs_branch_r458612.diff	2005-09-12 14:15:28 UTC (rev 1776)
+++ branches/kde-3.4.0/packages/kdelibs/debian/patches/01_kdelibs_branch_r458612.diff	2005-09-12 14:16:21 UTC (rev 1777)
@@ -0,0 +1,801 @@
+#DPATCHLEVEL=0
+--- interfaces/ktexteditor/ktexteditoreditor.desktop	(revision 452165)
++++ interfaces/ktexteditor/ktexteditoreditor.desktop	(revision 458612)
+@@ -48,7 +48,7 @@
+ Comment[nso]=Seripa seo se Robatsegago sa Mofetosi wa Sengwalwana (kantle le Karogano ya Doc/Bona)
+ Comment[pa]=ਸ਼ਾਮਿਲ ਹੋਣਯੋਗ ਪਾਠ ਸੰਪਾਦਕ ਭਾਗ (Doc/ਦਰਿਸ਼ ਵੱਖ ਕਰਨ ਬਿਨਾਂ)
+ Comment[pl]=Składnik edytora tekstu (do osadzania, bez paradygmatu Dokument/Widok)
+-Comment[pt]=Componente Embebível do Editor de Texto (sem Separação entre Documentos)
++Comment[pt]=Componente Incorporado do Editor de Texto (sem Separação entre Documentos)
+ Comment[pt_BR]=Componente de edição de textos integrado (sem separação de Documentação/Visualização)
+ Comment[ro]=Componentă de editare text (fără separare Doc/Vizualizare)
+ Comment[ru]=Встраиваемый элемент редактора текста (без поддержки модели документ/вид)
+--- interfaces/ktexteditor/ktexteditor.desktop	(revision 452165)
++++ interfaces/ktexteditor/ktexteditor.desktop	(revision 458612)
+@@ -48,7 +48,7 @@
+ Comment[nso]=Seripa seo se Robatsegago sa Mofetosi wa Sengwalwana (le Karogano ya Doc/Bona)
+ Comment[pa]=ਸ਼ਾਮਿਲ ਹੋਣਯੋਗ ਪਾਠ ਸੰਪਾਦਕ ਭਾਗ (Doc/ਦਰਿਸ਼ ਵੱਖ ਕਰਨ ਨਾਲ)
+ Comment[pl]=Składnik edytora tekstu (do osadzania, z paradygmatem Dokument/Widok)
+-Comment[pt]=Componente Embebível do Editor de Texto (com Separação entre Documentos)
++Comment[pt]=Componente Incorporado do Editor de Texto (com Separação entre Documentos)
+ Comment[pt_BR]=Componente de edição de textos integrado (com separação de Documentação/Visualização)
+ Comment[ro]=Componentă de editare text (cu separare Doc/Vizualizare)
+ Comment[ru]=Встраиваемый элемент редактора текста (с поддержкой модели документ/вид)
+--- mimetypes/application/x-kde-wallet.desktop	(revision 452165)
++++ mimetypes/application/x-kde-wallet.desktop	(revision 458612)
+@@ -33,7 +33,7 @@
+ Comment[it]=File portafogli di KDE
+ Comment[ja]=KDE ウォレット ファイル
+ Comment[ko]=KDE 지갑 파일
+-Comment[lt]=KDE wallet byla
++Comment[lt]=KDE slaptažodinės byla
+ Comment[mk]=KDE датотека-паричник
+ Comment[mn]=КДЭ Wallet файл
+ Comment[ms]=Fail KDE Wallet
+--- kioslave/http/kcookiejar/kcookiejar.cpp	(revision 452165)
++++ kioslave/http/kcookiejar/kcookiejar.cpp	(revision 458612)
+@@ -773,14 +773,24 @@
+         while ((*cookieStr == ';') || (*cookieStr == ' '))
+         {
+             cookieStr++;
+-            
++
+             // Name-Value pair follows
+             cookieStr = parseNameValue(cookieStr, Name, Value);
+ 
+             QCString cName = Name.lower().latin1();
+             if (cName == "domain")
+             {
+-                lastCookie->mDomain = Value.lower();
++                QString dom = Value.lower();
++                // RFC2965 3.2.2: If an explicitly specified value does not
++                // start with a dot, the user agent supplies a leading dot
++                if(dom.length() && dom[0] != '.')
++                    dom.prepend(".");
++                // remove a trailing dot
++                if(dom.length() > 2 && dom[dom.length()-1] == '.')
++                    dom = dom.left(dom.length()-1);
++
++                if(dom.contains('.') > 1 || dom == ".local")
++                    lastCookie->mDomain = dom;
+             }
+             else if (cName == "max-age")
+             {
+--- kioslave/http/kcookiejar/tests/cookie_rfc.test	(revision 452165)
++++ kioslave/http/kcookiejar/tests/cookie_rfc.test	(revision 458612)
+@@ -38,6 +38,11 @@
+ COOKIE ASK http://w.y.z/ Set-Cookie2: some_value=; Version=1; Path="/"; Max-Age=0
+ CHECK http://w.y.z/ Cookie: $Version=1; some_value2=foobar; $Path="/"
+ CLEAR COOKIES
++## Check if we prepend domain with a dot
++COOKIE ASK http://w.y.z/ Set-Cookie2: some_value=value2; Version=1; Path="/"; Domain=.y.z; Max-Age=3600
++COOKIE ASK http://w.y.z/ Set-Cookie2: some_value=value3; Version=1; Path="/"; Domain=y.z.; Max-Age=3600
++CHECK http://w.y.z/ Cookie: $Version=1; some_value=value3; $Path="/"; $Domain=".y.z"
++CLEAR COOKIES
+ ## Check if multiple cookies on a single line work
+ ## FIXME
+ #COOKIE ASK http://w.y.z/ Set-Cookie2: some_value=value3; Version=1; Path="/"; Max-Age=3600, some_value2=foobar; Version=1; Path="/"; Max-Age=3600
+--- kio/magic	(revision 452165)
++++ kio/magic	(revision 458612)
+@@ -564,9 +564,9 @@
+ 
+ # TIFF and friends
+ #					TIFF file, big-endian
+-0	string		MM		image/tiff
++0	string		MM\x00\x2a		image/tiff
+ #					TIFF file, little-endian
+-0	string		II		image/tiff
++0	string		II\x2a\x00		image/tiff
+ 
+ # GIF
+ 0	string		GIF		image/gif
+--- kio/misc/kntlm/kntlm.cpp	(revision 452165)
++++ kio/misc/kntlm/kntlm.cpp	(revision 458612)
+@@ -35,16 +35,20 @@
+ QString KNTLM::getString( const QByteArray &buf, const SecBuf &secbuf, bool unicode )
+ {
+   //watch for buffer overflows
+-  if ( secbuf.offset > buf.size() ||
+-       secbuf.offset + secbuf.len > buf.size() ) return QString::null;
++  Q_UINT32 offset;
++  Q_UINT16 len;
++  offset = KFromToLittleEndian((Q_UINT32)secbuf.offset);
++  len = KFromToLittleEndian(secbuf.len);
++  if ( offset > buf.size() ||
++       offset + len > buf.size() ) return QString::null;
+ 
+   QString str;
+-  const char *c = buf.data() + secbuf.offset;
++  const char *c = buf.data() + offset;
+   
+   if ( unicode ) {
+-    str = UnicodeLE2QString( (QChar*) c, secbuf.len >> 1 );
++    str = UnicodeLE2QString( (QChar*) c, len >> 1 );
+   } else {
+-    str = QString::fromLatin1( c, secbuf.len );
++    str = QString::fromLatin1( c, len );
+   }
+   return str;
+ }
+@@ -52,10 +56,14 @@
+ QByteArray KNTLM::getBuf( const QByteArray &buf, const SecBuf &secbuf )
+ {
+   QByteArray ret;
++  Q_UINT32 offset;
++  Q_UINT16 len;
++  offset = KFromToLittleEndian((Q_UINT32)secbuf.offset);
++  len = KFromToLittleEndian(secbuf.len);
+   //watch for buffer overflows
+-  if ( secbuf.offset > buf.size() ||
+-       secbuf.offset + secbuf.len > buf.size() ) return ret;
+-  ret.duplicate( buf.data() + secbuf.offset, buf.size() );
++  if ( offset > buf.size() ||
++       offset + len > buf.size() ) return ret;
++  ret.duplicate( buf.data() + offset, buf.size() );
+   return ret;
+ }
+ 
+@@ -77,11 +85,17 @@
+ 
+ void KNTLM::addBuf( QByteArray &buf, SecBuf &secbuf, QByteArray &data )
+ {
+-  secbuf.offset = (buf.size() + 1) & 0xfffffffe;
+-  secbuf.len = data.size();
+-  secbuf.maxlen = data.size();
+-  buf.resize( secbuf.offset + data.size() );
+-  memcpy( buf.data() + secbuf.offset, data.data(), data.size() );
++  Q_UINT32 offset;
++  Q_UINT16 len, maxlen;
++  offset = (buf.size() + 1) & 0xfffffffe;
++  len = data.size();
++  maxlen = data.size();
++  
++  secbuf.offset = KFromToLittleEndian((Q_UINT32)offset);
++  secbuf.len = KFromToLittleEndian(len);
++  secbuf.maxlen = KFromToLittleEndian(maxlen);
++  buf.resize( offset + len );
++  memcpy( buf.data() + offset, data.data(), data.size() );
+ }
+ 
+ bool KNTLM::getNegotiate( QByteArray &negotiate, const QString &domain, const QString &workstation, Q_UINT32 flags )
+@@ -118,7 +132,7 @@
+   //challenge structure too small
+   if ( chsize < 32 ) return false;
+ 
+-  unicode = ch->flags & Negotiate_Unicode;
++  unicode = KFromToLittleEndian(ch->flags) & Negotiate_Unicode;
+   if ( domain.isEmpty() )
+     dom = getString( challenge, ch->targetName, unicode );
+   else
+@@ -130,20 +144,21 @@
+   ((Auth*) rbuf.data())->flags = ch->flags;
+   QByteArray targetInfo = getBuf( challenge, ch->targetInfo );
+ 
+-  if ( forceNTLMv2 || (!targetInfo.isEmpty() && (ch->flags & Negotiate_Target_Info)) /* may support NTLMv2 */ ) {
+-    if ( ch->flags & Negotiate_NTLM ) {
+-      if ( targetInfo.isEmpty() ) return false;
+-      response = getNTLMv2Response( dom, user, password, targetInfo, ch->challengeData );
+-      addBuf( rbuf, ((Auth*) rbuf.data())->ntResponse, response );
+-    } else {
+-      if ( !forceNTLM ) {
+-        response = getLMv2Response( dom, user, password, ch->challengeData );
+-        addBuf( rbuf, ((Auth*) rbuf.data())->lmResponse, response );
+-      } else 
+-        return false;
+-    }
+-  } else { //if no targetinfo structure and NTLMv2 or LMv2 not forced, try the older methods
+-    if ( ch->flags & Negotiate_NTLM ) {
++//  if ( forceNTLMv2 || (!targetInfo.isEmpty() && (KFromToLittleEndian(ch->flags) & Negotiate_Target_Info)) /* may support NTLMv2 */ ) {
++//    if ( KFromToLittleEndian(ch->flags) & Negotiate_NTLM ) {
++//      if ( targetInfo.isEmpty() ) return false;
++//      response = getNTLMv2Response( dom, user, password, targetInfo, ch->challengeData );
++//      addBuf( rbuf, ((Auth*) rbuf.data())->ntResponse, response );
++//    } else {
++//      if ( !forceNTLM ) {
++//        response = getLMv2Response( dom, user, password, ch->challengeData );
++//        addBuf( rbuf, ((Auth*) rbuf.data())->lmResponse, response );
++//      } else 
++//        return false;
++//    }
++//  } else { //if no targetinfo structure and NTLMv2 or LMv2 not forced, try the older methods
++
++    if ( KFromToLittleEndian(ch->flags) & Negotiate_NTLM ) {
+       response = getNTLMResponse( password, ch->challengeData );
+       addBuf( rbuf, ((Auth*) rbuf.data())->ntResponse, response );
+     } else {
+@@ -153,7 +168,7 @@
+       } else
+         return false;
+     }
+-  }
++//  }
+   if ( !dom.isEmpty() )
+     addString( rbuf, ((Auth*) rbuf.data())->domain, dom, unicode );
+   addString( rbuf, ((Auth*) rbuf.data())->user, user, unicode );
+--- kio/misc/kwalletd/kwalletd.desktop	(revision 452165)
++++ kio/misc/kwalletd/kwalletd.desktop	(revision 458612)
+@@ -37,7 +37,7 @@
+ Name[it]=Modulo demone KWallet
+ Name[ja]=KWallet デーモンモジュール
+ Name[ko]=K지갑 데몬 모듈
+-Name[lt]=KWallet tarnybos modulis
++Name[lt]=KDE slaptažodinių tarnybos modulis
+ Name[mn]=KWallet Daemon Модул
+ Name[ms]=Modul Daemon KWallet
+ Name[nb]=KWallet nisseprogramtillegg
+@@ -87,7 +87,7 @@
+ Comment[is]=KWallet þjónseining fyrir KDED
+ Comment[it]=Modulo demone KWallet per KDED
+ Comment[ja]=KDED用のKWallet デーモンモジュール
+-Comment[lt]=KWallet tarnybos modulis skirtas KDED
++Comment[lt]=KDE slaptažodinių tarnybos modulis skirtas KDED
+ Comment[mk]=KWallet даемон модул за KDED
+ Comment[ms]=Modul Daemon KWallet untuk KDED
+ Comment[nb]=KWallet nissemodul for KDED
+--- kio/tests/dummymeta.desktop	(revision 452165)
++++ kio/tests/dummymeta.desktop	(revision 458612)
+@@ -14,6 +14,7 @@
+ Name[fa]=فوق احمق
+ Name[fi]=Tyhjä meta
+ Name[fr]=Données factices
++Name[ga]=Meitea Caoch
+ Name[hi]=डमी मेटा
+ Name[hr]=Ogledna meta
+ Name[hu]=Üres (dummy) metaadat
+--- kcert/kcertpart.desktop	(revision 452165)
++++ kcert/kcertpart.desktop	(revision 458612)
+@@ -46,7 +46,7 @@
+ Comment[nso]=Molaodi yo a Robatsegago wa Kgonthisiso ya Botho
+ Comment[pa]=ਨਿੱਜੀ ਸਰਟੀਫਕੇਟ ਪ੍ਰਬੰਧਕ ਸ਼ਾਮਿਲ ਹੋਣਯੋਗ
+ Comment[pl]=Osobisty menedżer certyfikatów
+-Comment[pt]=Gestor de Certificados Pessoais Embebível
++Comment[pt]=Gestor de Certificados Pessoais Incorporado
+ Comment[pt_BR]=Gerenciador embutido de Certificados Pessoais
+ Comment[ro]=Componentă manager de certificate personale
+ Comment[ru]=Встраиваемый персональный менеджер сертификатов
+--- knewstuff/downloaddialog.cpp	(revision 452165)
++++ knewstuff/downloaddialog.cpp	(revision 458612)
+@@ -50,6 +50,7 @@
+ {
+     QString m_providerlist;
+     QWidget *m_page;
++    KListView *m_lvtmp_r, *m_lvtmp_d, *m_lvtmp_l;
+ };
+ 
+ class NumSortListViewItem : public KListViewItem
+@@ -206,7 +207,6 @@
+   KTabCtl *ctl;
+   QWidget *w_d, *w_r, *w_l;
+   QWidget *w2;
+-  KListView *lvtmp_r, *lvtmp_d, *lvtmp_l;
+   QTextBrowser *rt;
+   QString tmp;
+   int ret;
+@@ -244,27 +244,27 @@
+   QHBoxLayout *box = new QHBoxLayout(frame);
+   box->add(ctl);
+ 
+-  lvtmp_r = new KListView(w_r);
+-  lvtmp_r->addColumn(i18n("Name"));
+-  lvtmp_r->addColumn(i18n("Version"));
+-  lvtmp_r->addColumn(i18n("Rating"));
+-  lvtmp_r->setSorting(2, false);
++  d->m_lvtmp_r = new KListView(w_r);
++  d->m_lvtmp_r->addColumn(i18n("Name"));
++  d->m_lvtmp_r->addColumn(i18n("Version"));
++  d->m_lvtmp_r->addColumn(i18n("Rating"));
++  d->m_lvtmp_r->setSorting(2, false);
+ 
+-  lvtmp_d = new KListView(w_d);
+-  lvtmp_d->addColumn(i18n("Name"));
+-  lvtmp_d->addColumn(i18n("Version"));
+-  lvtmp_d->addColumn(i18n("Downloads"));
+-  lvtmp_d->setSorting(2, false);
++  d->m_lvtmp_d = new KListView(w_d);
++  d->m_lvtmp_d->addColumn(i18n("Name"));
++  d->m_lvtmp_d->addColumn(i18n("Version"));
++  d->m_lvtmp_d->addColumn(i18n("Downloads"));
++  d->m_lvtmp_d->setSorting(2, false);
+ 
+-  lvtmp_l = new KListView(w_l);
+-  lvtmp_l->addColumn(i18n("Name"));
+-  lvtmp_l->addColumn(i18n("Version"));
+-  lvtmp_l->addColumn(i18n("Release Date"));
+-  lvtmp_l->setSorting(2, false);
++  d->m_lvtmp_l = new KListView(w_l);
++  d->m_lvtmp_l->addColumn(i18n("Name"));
++  d->m_lvtmp_l->addColumn(i18n("Version"));
++  d->m_lvtmp_l->addColumn(i18n("Release Date"));
++  d->m_lvtmp_l->setSorting(2, false);
+ 
+-  connect(lvtmp_r, SIGNAL(selectionChanged()), SLOT(slotSelected()));
+-  connect(lvtmp_d, SIGNAL(selectionChanged()), SLOT(slotSelected()));
+-  connect(lvtmp_l, SIGNAL(selectionChanged()), SLOT(slotSelected()));
++  connect(d->m_lvtmp_r, SIGNAL(selectionChanged()), SLOT(slotSelected()));
++  connect(d->m_lvtmp_d, SIGNAL(selectionChanged()), SLOT(slotSelected()));
++  connect(d->m_lvtmp_l, SIGNAL(selectionChanged()), SLOT(slotSelected()));
+ 
+   rt = new QTextBrowser(frame);
+   rt->setMinimumWidth(150);
+@@ -285,14 +285,14 @@
+   connect(de, SIGNAL(clicked()), SLOT(slotDetails()));
+ 
+   QVBoxLayout *box2 = new QVBoxLayout(w_r);
+-  box2->add(lvtmp_r);
++  box2->add(d->m_lvtmp_r);
+   QVBoxLayout *box3 = new QVBoxLayout(w_d);
+-  box3->add(lvtmp_d);
++  box3->add(d->m_lvtmp_d);
+   QVBoxLayout *box4 = new QVBoxLayout(w_l);
+-  box4->add(lvtmp_l);
++  box4->add(d->m_lvtmp_l);
+ 
+   QValueList<KListView*> *v = new QValueList<KListView*>;
+-  *v << lvtmp_r << lvtmp_d << lvtmp_l;
++  *v << d->m_lvtmp_r << d->m_lvtmp_d << d->m_lvtmp_l;
+   m_map[frame] = v;
+   m_rts[frame] = rt;
+   QValueList<QPushButton*> *vb = new QValueList<QPushButton*>;
+@@ -300,7 +300,7 @@
+   m_buttons[frame] = vb;
+   m_providers[frame] = p;
+ 
+-  kdDebug() << "addProvider()/end; lvtmp_r = " << lvtmp_r << endl;
++  kdDebug() << "addProvider()/end; d->m_lvtmp_r = " << d->m_lvtmp_r << endl;
+ 
+   if(m_engine) slotPage(frame);
+ 
+@@ -353,7 +353,7 @@
+   QDate date;
+   QString datestring;
+   int installed;
+- 
++
+   kapp->config()->setGroup("KNewStuffStatus");
+   datestring = kapp->config()->readEntry(entry->name());
+   if(datestring.isNull()) installed = 0;
+@@ -456,6 +456,9 @@
+ {
+   Entry *e = getEntry();
+   if(!e) return;
++  d->m_lvtmp_r->setEnabled( false );
++  d->m_lvtmp_l->setEnabled( false );
++  d->m_lvtmp_d->setEnabled( false );
+ 
+   kdDebug() << "download entry now" << endl;
+ 
+@@ -467,9 +470,7 @@
+   else
+   {
+     m_s = new KNewStuffGeneric(e->type(), this);
+-
+     m_entry = e;
+-
+     KURL source = e->payload();
+     KURL dest = KURL(m_s->downloadDestination(e));
+ 
+@@ -492,7 +493,7 @@
+   m_entryitem = lv_l->findItem(m_entryname, 0);
+   if(m_entryitem) m_entryitem->setPixmap(0, pix);
+ 
+- 
++
+   QPushButton *in;
+   in = *(m_buttons[d->m_page]->at(0));
+   if(in) in->setEnabled(false);
+@@ -502,7 +503,6 @@
+ {
+   bool ret = (job->error() == 0);
+   KIO::FileCopyJob *cjob;
+-
+   if(ret)
+   {
+     cjob = static_cast<KIO::FileCopyJob*>(job);
+@@ -520,6 +520,9 @@
+     KMessageBox::information(this, i18n("Installation successful."), i18n("Installation"));
+   }
+   else KMessageBox::error(this, i18n("Installation failed."), i18n("Installation"));
++  d->m_lvtmp_r->setEnabled( true );
++  d->m_lvtmp_l->setEnabled( true );
++  d->m_lvtmp_d->setEnabled( true );
+ 
+   delete m_s;
+ }
+--- kdecore/all_languages.desktop	(revision 452165)
++++ kdecore/all_languages.desktop	(revision 458612)
+@@ -586,7 +586,7 @@
+ Name[nso]=Se-Belarusian
+ Name[pa]=ਬੇਲਾਰੂਸ
+ Name[pl]=Białoruski
+-Name[pt]=Bielorusso
++Name[pt]=Bielorrusso
+ Name[pt_BR]=Bielo-Russo
+ Name[ro]=Belarusă
+ Name[ru]=Белорусский
+@@ -2336,7 +2336,7 @@
+ Name[nso]=Se-Fijian
+ Name[pa]=ਫਿਜੀਨ
+ Name[pl]=z Fiji
+-Name[pt]=Fijiano
++Name[pt]=Fidjiano
+ Name[ro]=Fijiană
+ Name[ru]=Фиджи
+ Name[se]=Fižigiella
+@@ -4424,7 +4424,7 @@
+ Name[nso]=Se-Kirghiz
+ Name[pa]=ਕਿਰਘੀਜ਼
+ Name[pl]=Kirgiski
+-Name[pt]=Quirguízio
++Name[pt]=Quirguistanês
+ Name[ro]=Chirghiză
+ Name[ru]=Киргизский
+ Name[se]=Kirgisiagiella
+@@ -4814,7 +4814,7 @@
+ Name[nso]=Se-Latvian
+ Name[pa]=ਲਾਟਵੀਨ
+ Name[pl]=Łotewski
+-Name[pt]=Letónio
++Name[pt]=Letão
+ Name[pt_BR]=Latvia
+ Name[ro]=Latviană
+ Name[ru]=Латышский
+@@ -4871,7 +4871,7 @@
+ Name[nso]=Se-Malagasy
+ Name[pa]=ਮਾਲਾਗਾਸਆ
+ Name[pl]=Madagaskarski
+-Name[pt]=Malgache
++Name[pt]=Malgaxe
+ Name[ro]=Malgaşă
+ Name[ru]=Мальгашский
+ Name[se]=Malagasigiella
+@@ -6162,7 +6162,7 @@
+ Name[oc]=Occitàn
+ Name[pa]=ਓਸੀਟਾਨ
+ Name[pl]=Okcytański
+-Name[pt]=Ocitão
++Name[pt]=Occitano
+ Name[ro]=Occitană
+ Name[ru]=Французский (диалект Occitan)
+ Name[se]=Oksitánagiella
+@@ -6292,6 +6292,7 @@
+ Name[nso]=Se-Ossetian
+ Name[pa]=ਓਸੀਟੀਅਨ
+ Name[pl]=Osetański
++Name[pt]=Osseta
+ Name[ro]=Osetiană
+ Name[ru]=Осетинский
+ Name[se]=Ossetiagiella
+@@ -7476,7 +7477,6 @@
+ Name[nso]=Se-Somali
+ Name[pa]=ਸੋਮਾਲੀ
+ Name[pl]=Somalijski
+-Name[pt]=Somálio
+ Name[ro]=Somaleză
+ Name[ru]=Сомалийский
+ Name[se]=Somálagiella
+@@ -8213,7 +8213,7 @@
+ Name[nso]=Se-Turkmen
+ Name[pa]=ਤੁਰਕਮੀਨ
+ Name[pl]=Turkmeński
+-Name[pt]=Turquemeno
++Name[pt]=Turquemenistanês
+ Name[pt_BR]=Turco
+ Name[ro]=Turcmenă
+ Name[ru]=Туркменский
+@@ -8754,7 +8754,7 @@
+ Name[nso]=Se-Uzbek
+ Name[pa]=ਊਜੇਬਕ
+ Name[pl]=Uzbecki
+-Name[pt]=Usbeque
++Name[pt]=Usbequistanês
+ Name[ro]=Uzbecă
+ Name[ru]=Узбекский
+ Name[se]=Uzbehkagiella
+--- khtml/khtml.desktop	(revision 452165)
++++ khtml/khtml.desktop	(revision 458612)
+@@ -48,7 +48,7 @@
+ Comment[oc]=Component visualizador d'HTML encastable
+ Comment[pa]=ਸ਼ਾਮਿਲ HTML ਵੇਖਣਯੋਗ ਹਿੱਸਾ
+ Comment[pl]=Składnik do przeglądania plików HTML
+-Comment[pt]=Componente embebível para visualizar HTML
++Comment[pt]=Componente incorporada para visualizar HTML
+ Comment[pt_BR]=Componente integrado de visualização HTML
+ Comment[ro]=Componentă înglobată de vizualizare HTML
+ Comment[ru]=Встраиваемый компонент просмотра HTML
+--- khtml/khtmlimage.desktop	(revision 452165)
++++ khtml/khtmlimage.desktop	(revision 458612)
+@@ -47,7 +47,7 @@
+ Comment[nso]=Seripa seo se Robatsegsgo sa Pono ya Ponagalo
+ Comment[pa]=ਸ਼ਾਮਿਲਯੋਗ ਚਿੱਤਰ ਦਰਸ਼ਕ ਹਿੱਸਾ
+ Comment[pl]=Składnik do przeglądania obrazów
+-Comment[pt]=Componente embebível para visualizar imagens
++Comment[pt]=Componente incorporada para visualizar imagens
+ Comment[pt_BR]=Componente integrado de visualização de imagens
+ Comment[ro]=Componentă înglobată de vizualizare imagini
+ Comment[ru]=Встраиваемый модуль просмотра изображений
+--- kjs/regexp.cpp	(revision 452165)
++++ kjs/regexp.cpp	(revision 458612)
+@@ -114,10 +114,15 @@
+   //    ;
+   // Note: the Global flag is already handled by RegExpProtoFunc::execute
+ 
+-  if (regcomp(&preg, intern.ascii(), regflags) == 0)
+-    regcomp(&preg, "", regflags);
+-  else
++  int errorCode = regcomp(&preg, intern.ascii(), regflags);
++  if (errorCode != 0) {
++#ifndef NDEBUG
++    char errorMessage[80];
++    regerror(errorCode, &preg, errorMessage, sizeof errorMessage);
++    fprintf(stderr, "KJS: regcomp failed with '%s'", errorMessage);
++#endif
+     valid = false;
++  }
+ #endif
+ }
+ 
+--- kdoctools/customization/pl/entities/underGPL.docbook	(revision 452165)
++++ kdoctools/customization/pl/entities/underGPL.docbook	(revision 458612)
+@@ -1,2 +1,2 @@
+-<para>This program is licensed under the terms of the <ulink
+-url="common/gpl-translated.html">GNU General Public License</ulink>.</para>
++<para>Ten program jest rozprowadzany na zasadach <ulink
++url="common/gpl-translated.html">Licencji GNU General Public License</ulink>.</para>
+--- kdoctools/customization/pl/entities/gpl-notice.docbook	(revision 452165)
++++ kdoctools/customization/pl/entities/gpl-notice.docbook	(revision 458612)
+@@ -1,15 +1,16 @@
+-<para>This program is free software; you can redistribute it and/or
+-modify it under the terms of the GNU General Public License as
+-published by the Free Software Foundation; either version 2 of the
+-License, or (at your option) any later version.</para>
++<para>Ten program jest wolnym oprogramowaniem, możesz go rozprowadzać 
++i/lub modyfikować na zasadach licencji GNU General Public License, 
++opublikowanej przez Free Software Foundation, w wersji 2 lub 
++(według Twojego uznania) dowolnej późniejszej wersji.</para>
+ 
+-<para>This program is distributed in the hope that it will be
+-useful, but WITHOUT ANY WARRANTY; without even the implied warranty
+-of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+-General Public License for more details.</para>
++<para>Ten program jest udostępniany w nadziei, że będzie 
++użyteczny, ale BEZ ŻADNEJ GWARANCJI, nawet bez 
++domyślnej gwarancji CO DO PRZYDATNOŚCI HANDLOWEJ i 
++PRZYDATNOŚCI DO OKREŚLONYCH ZASTOSOWAŃ. 
++Szczegóły można znaleźć w licencji GNU General Public License.</para>
+ 
+-<para>You should have received a copy of the GNU General Public
+-License along with this program; if not, write to the Free Software
++<para>Do tego programu powinna zostać dołączona kopia licencji 
++GNU General Public License. Jeśli nie została, napisz  do: Free Software 
+ Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.</para>
+ <!--
+ Local variables:
+--- kdoctools/customization/pl/entities/underArtisticLicense.docbook	(revision 452165)
++++ kdoctools/customization/pl/entities/underArtisticLicense.docbook	(revision 458612)
+@@ -1,2 +1,2 @@
+-<para>This program is licensed under the terms of the <ulink
+-url="common/artistic-license.html">Artistic License</ulink>.</para>
++<para>Ten program jest rozprowadzany na zasadach <ulink
++url="common/artistic-license.html">Licencji Artystycznej</ulink>.</para>
+--- kdoctools/customization/pl/entities/underFDL.docbook	(revision 452165)
++++ kdoctools/customization/pl/entities/underFDL.docbook	(revision 458612)
+@@ -1,3 +1,3 @@
+-<para id="gnu-fdl" xreflabel="the section entitled &quot;GNU Free Documentation License&quot;">This documentation is licensed under the terms of the <ulink
+-url="common/fdl-license.html">GNU Free Documentation
++<para id="gnu-fdl" xreflabel="sekcji zatytułowanej &quot;GNU Free Documentation License&quot;">Ten program jest rozprowadzany na zasadach <ulink
++url="common/fdl-license.html">Licencji GNU Free Documentation
+ License</ulink>.</para>
+--- kdoctools/customization/pl/entities/fdl-notice.docbook	(revision 452165)
++++ kdoctools/customization/pl/entities/fdl-notice.docbook	(revision 458612)
+@@ -1,8 +1,8 @@
+-<para>Permission is granted to copy, distribute and/or modify this
+-document under the terms of the GNU Free Documentation License,
+-Version 1.1 or any later version published by the Free Software
+-Foundation; with &FDLInvariantSections;, with &FDLFrontCoverText;, and
+-with &FDLBackCoverText;.  A copy of the license is included in <xref linkend="gnu-fdl"/>.</para>
++<para>Dozwolone jest kopiowanie, dystrybucja i/lub modyfikacja
++tego dokumentu na zasadach licencji GNU Free Documentation License,
++w wersji 1.1 lub dowolnej późniejszej wersji, opublikowanej 
++przez Free Software Foundation; &FDLInvariantSections;, &FDLFrontCoverText; i 
++z &FDLBackCoverText;.  Kopia tej licencji znajduje się w <xref linkend="gnu-fdl"/>.</para>
+ <!--
+ Local variables:
+ mode: sgml
+--- kdoctools/customization/pl/entities/underBSDLicense.docbook	(revision 452165)
++++ kdoctools/customization/pl/entities/underBSDLicense.docbook	(revision 458612)
+@@ -1,2 +1,2 @@
+-<para>This program is licensed under the terms of the <ulink
+-url="common/bsd-license.html">BSD License</ulink>.</para>
++<para>Ten program jest rozprowadzany na zasadach <ulink
++url="common/bsd-license.html">Licencji BSD</ulink>.</para>
+--- kdoctools/customization/pl/entities/help-menu.docbook	(revision 452165)
++++ kdoctools/customization/pl/entities/help-menu.docbook	(revision 458612)
+@@ -5,12 +5,12 @@
+ <shortcut>
+ <keycombo action="simul"><keycap>F1</keycap></keycombo>
+ </shortcut>
+-<guimenu>Help</guimenu>
+-<guimenuitem>Contents...</guimenuitem>
++<guimenu>Pomoc</guimenu>
++<guimenuitem>Podręcznik &kappname;</guimenuitem>
+ </menuchoice>
+ </term>
+-<listitem><para><action>Invokes the KDE Help system</action> starting at the
+-&kappname; help pages. (this document).</para></listitem>
++<listitem><para><action>Uruchamia System pomocy KDE</action> 
++na stronie pomocy programu &kappname; (czyli na tym dokumencie).</para></listitem>
+ </varlistentry>
+ 
+ <varlistentry>
+@@ -18,41 +18,38 @@
+ <shortcut>
+ <keycombo action="simul">&Shift;<keycap>F1</keycap></keycombo>
+ </shortcut>
+-<guimenu>Help</guimenu>
+-<guimenuitem>What's This?</guimenuitem>
++<guimenu>Pomoc</guimenu>
++<guimenuitem>Co to jest?</guimenuitem>
+ </menuchoice>
+ </term>
+-<listitem><para><action>Changes the mouse cursor to a combination arrow and
+-question mark.</action>  Clicking on items within &kappname; will open a help
+-window (if one exists for the particular item) explaining the item's
+-function.</para></listitem>
++<listitem><para><action>Zmienia kursor myszy w strzałkę ze znakiem zapytania
++.</action> Kliknięcie na elemencie programu spowoduje otworzenie okna pomocy 
++objaśniającego funkcję tego elementu (o ile taka pomoc istnieje).</para></listitem>
+ </varlistentry>
+ 
+ 
+ <varlistentry>
+ <term><menuchoice>
+ <guimenu>Help</guimenu>
+-<guimenuitem>Report Bug...</guimenuitem>
++<guimenuitem>Raport o błędzie...</guimenuitem>
+ </menuchoice></term>
+-<listitem><para><action>Opens the Bug report dialog</action> where you can
+-report a bug or request a <quote>wishlist</quote> feature.</para></listitem>
++<listitem><para><action>Otwiera okienko zgłoszenia błędu</action>, w którym
++możesz zgłosić błąd lub prośbę o dodanie nowej funkcji.</para></listitem>
+ </varlistentry>
+ 
+ <varlistentry>
+ <term><menuchoice>
+-<guimenu>Help</guimenu>
+-<guimenuitem>About &kappname;</guimenuitem>
++<guimenu>Pomoc</guimenu>
++<guimenuitem>O programie &kappname;</guimenuitem>
+ </menuchoice></term>
+-<listitem><para><action>This will display version and author
+-information.</action></para></listitem>
++<listitem><para><action>Wyświetla informację o autorach i wersji programu.</action></para></listitem>
+ </varlistentry>
+ 
+ <varlistentry>
+ <term><menuchoice>
+-<guimenu>Help</guimenu>
+-<guimenuitem>About KDE</guimenuitem>
++<guimenu>Pomoc</guimenu>
++<guimenuitem>Informacje o KDE</guimenuitem>
+ </menuchoice></term>
+-<listitem><para><action>This displays the KDE version and other basic
+-information.</action></para></listitem>
++<listitem><para><action>Wyświetla informację o wersji KDE i inne podstawowe informacje.</action></para></listitem>
+ </varlistentry>
+ </variablelist>
+--- kdoctools/customization/pl/entities/underX11License.docbook	(revision 452165)
++++ kdoctools/customization/pl/entities/underX11License.docbook	(revision 458612)
+@@ -1,2 +1,2 @@
+-<para>This program is licensed under the terms of the <ulink
+-url="common/x11-license.html">X11 License</ulink>.</para>
++<para>Ten program jest rozprowadzany na zasadach <ulink
++url="common/x11-license.html">Licencji X11</ulink>.</para>
+--- kdoctools/customization/pl/entities/install-compile.docbook	(revision 452165)
++++ kdoctools/customization/pl/entities/install-compile.docbook	(revision 458612)
+@@ -1,12 +1,12 @@
+-<para>In order to compile and install &kappname; on your system, type the
+-following in the base directory of the &kappname; distribution:</para>
++<para>Aby skompilować i zainstalować program &kappname; w Twoim systemie,
++uruchom następujące polecenia w katalogu głównym dystrybucji programu &kappname;:</para>
+ 
+ <screen><prompt>%</prompt> <userinput><command>./configure</command></userinput>
+ <prompt>%</prompt> <userinput><command>make</command></userinput>
+ <prompt>%</prompt> <userinput><command>make</command> install</userinput>
+ </screen>
+ 
+-<para>Since &kappname; uses <command>autoconf</command> and
+-<command>automake</command> you should have no trouble compiling it. Should you
+-run into problems please report them to the &kde; mailing lists.</para>
++<para>Ponieważ program &kappname; używa <command>autoconf</command> i 
++<command>automake</command>, nie powinno być problemów ze skompilowaniem go. 
++Jeśli napotkasz problemy, proszę je zgłosić na listach e-mailowych &kde;.</para>
+ 
+--- kdoctools/customization/pl/entities/lgpl-notice.docbook	(revision 452165)
++++ kdoctools/customization/pl/entities/lgpl-notice.docbook	(revision 458612)
+@@ -1,15 +1,19 @@
+-<para>This library is free software; you can redistribute it and/or
+-modify it under the terms of the GNU Lesser General Public License
+-as published by the Free Software Foundation; either version 2 of
+-the License, or (at your option) any later version.</para>
++<para>
++Ta biblioteka jest wolnym oprogramowaniem, możesz go rozprowadzać 
++i/lub modyfikować na zasadach licencji GNU Lesser General Public License, 
++opublikowanej przez Free Software Foundation, w wersji 2 lub
++(według Twojego uznania) dowolnej późniejszej wersji.</para>
+ 
+-<para>This library is distributed in the hope that it will be
+-useful, but WITHOUT ANY WARRANTY; without even the implied warranty
+-of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+-Lesser General Public License for more details.</para>
++<para>
++Ta biblioteka jest udostępniana w nadziei, że będzie 
++użyteczna, ale BEZ ŻADNEJ GWARANCJI, nawet bez 
++domyślnej gwarancji CO DO PRZYDATNOŚCI HANDLOWEJ i 
++PRZYDATNOŚCI DO OKREŚLONYCH ZASTOSOWAŃ. 
++Szczegóły można znaleźć w licencji GNU
++Lesser General Public License.</para>
+ 
+-<para>You should have received a copy of the GNU Lesser General
+-Public License along with this library; if not, write to the Free
++<para>Do tej biblioteki powinna zostać dołączona kopia licencji GNU Lesser General
++Public License. Jeśli nie została, napisz  do: Free
+ Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+ 02111-1307 USA</para>
+ <!--
+--- kdoctools/customization/pl/entities/install-intro.docbook	(revision 452165)
++++ kdoctools/customization/pl/entities/install-intro.docbook	(revision 458612)
+@@ -1,6 +1,5 @@
+ <!-- requires that packagename is defined in the documentation prologue -->
+-<para>&kappname; is part of the &kde; project &kde-http;.</para>
++<para>&kappname; jest częścią projektu &kde; (&kde-http;).</para>
+ 
+-<para>&kappname; can be found in the &package; package on 
+-&kde-ftp;, the main &FTP; site of the &kde;
+-project.</para>
++<para>&kappname; znajduje się w pakiecie &package; na 
++&kde-ftp;, głównym serwerze &FTP; projektu &kde;.</para>
+--- kdoctools/customization/pl/strings.entities	(revision 452165)
++++ kdoctools/customization/pl/strings.entities	(revision 458612)
+@@ -3,21 +3,21 @@
+      Translate everything between quotes, except names of general 
+      entities (&...;). -->
+ 
+-<!ENTITY kappname "this application">
++<!ENTITY kappname "ten program">
+ <!-- Entities to fill in slots in docbook version of FDL notice.
+      The default values of the parameter entities is IGNORE. -->
+ <![%FDLIS;[
+-<!ENTITY FDLISTitles "LIST THEIR TITLES"><!-- keep capitals -->
+-<!ENTITY FDLInvariantSections "the Invariant Sections being &FDLISTitles;">
++<!ENTITY FDLISTitles "PODAĆ TYTUŁY"><!-- keep capitals -->
++<!ENTITY FDLInvariantSections "z Sekcjami Niezmiennymi &FDLISTitles;">
+  ]]>
+-<!ENTITY FDLInvariantSections "no Invariant Sections">
++<!ENTITY FDLInvariantSections "bez Sekcji Niezmiennych">
+ <![%FDLFCT;[
+-<!ENTITY FDLFCTTitles "LIST"><!-- keep capitals -->
+-<!ENTITY FDLFrontCoverText "the Front-Cover Texts being &FDLFCTTitles;">
++<!ENTITY FDLFCTTitles "LISTA"><!-- keep capitals -->
++<!ENTITY FDLFrontCoverText "z Tekstem Początkowym: &FDLFCTTitles;">
+  ]]>
+-<!ENTITY FDLFrontCoverText "no Front-Cover Texts">
++<!ENTITY FDLFrontCoverText "bez Tekstu Początkowego">
+ <![%FDLBCT;[
+-<!ENTITY FDLBCTTitles "LIST THEIR TITLES"><!-- keep capitals -->
+-<!ENTITY FDLBackCoverText "the Back-Cover Texts being &FDLBCTTitles;">
++<!ENTITY FDLBCTTitles "PODAĆ TYTUŁY"><!-- keep capitals -->
++<!ENTITY FDLBackCoverText "z Tekstem Końcowym: &FDLBCTTitles;">
+  ]]>
+-<!ENTITY FDLBackCoverText "no Back-Cover Texts">
++<!ENTITY FDLBackCoverText "bez tekstu Końcowego">
+--- kdeui/kpushbutton.cpp	(revision 452165)
++++ kdeui/kpushbutton.cpp	(revision 458612)
+@@ -125,6 +125,8 @@
+     // set the GUI items text or check the state of the icon set
+     QPushButton::setText( d->item.text() );
+     setIconSet( d->item.iconSet() );
++    QToolTip::add( this, d->item.toolTip() ); 
++    QWhatsThis::add( this, d->item.whatsThis() );
+ }
+ 
+ void KPushButton::setGuiItem( KStdGuiItem::StdItem item )

Added: branches/kde-3.4.0/packages/kdelibs/debian/patches/17_kdelibs_rubberband.diff
===================================================================
--- branches/kde-3.4.0/packages/kdelibs/debian/patches/17_kdelibs_rubberband.diff	2005-09-12 14:15:28 UTC (rev 1776)
+++ branches/kde-3.4.0/packages/kdelibs/debian/patches/17_kdelibs_rubberband.diff	2005-09-12 14:16:21 UTC (rev 1777)
@@ -0,0 +1,371 @@
+--- kde.orig/kdefx/kstyle.cpp
++++ kde.patched/kdefx/kstyle.cpp
+@@ -154,6 +154,7 @@
+ 	bool  menuAltKeyNavigation     : 1;
+ 	bool  menuDropShadow           : 1;
+ 	bool  sloppySubMenus           : 1;
++	bool  semiTransparentRubberband : 1;
+ 	int   popupMenuDelay;
+ 	float menuOpacity;
+ 
+@@ -187,6 +188,7 @@
+ 	d->menuAltKeyNavigation = settings.readBoolEntry("/KStyle/Settings/MenuAltKeyNavigation", true);
+ 	d->scrollablePopupmenus = settings.readBoolEntry("/KStyle/Settings/ScrollablePopupMenus", false);
+ 	d->menuDropShadow       = settings.readBoolEntry("/KStyle/Settings/MenuDropShadow", false);
++	d->semiTransparentRubberband = settings.readBoolEntry("/KStyle/Settings/SemiTransparentRubberband", false);
+ 	d->menuHandler = NULL;
+ 
+ 	if (useMenuTransparency) {
+@@ -553,7 +555,57 @@
+ 		else
+ 			// General handle, probably a kicker applet handle.
+ 			drawKStylePrimitive( KPE_GeneralHandle, p, widget, r, cg, flags, opt );
++#if QT_VERSION >= 0x030300
++#ifdef HAVE_XRENDER
++	} else if ( d->semiTransparentRubberband && pe == QStyle::PE_RubberBand ) {
++			QRect rect = r.normalize();
++			QPoint point;
++			point = p->xForm( point );
++	
++			static XRenderColor clr = { 0, 0, 0, 0 };
++			static unsigned long fillColor = 0;
++			if ( fillColor != cg.highlight().rgb() ) {
++				fillColor = cg.highlight().rgb();
++				
++				unsigned long color = fillColor << 8 | 0x40;
+ 
++				int red = (color >> 24) & 0xff;
++				int green = (color >> 16) & 0xff;
++				int blue = (color >> 8) & 0xff;
++				int alpha = (color >> 0) & 0xff;
++
++				red = red * alpha / 255;
++				green = green * alpha / 255;
++				blue = blue * alpha / 255;
++
++				clr.red = (red << 8) + red;
++				clr.green = (green << 8) + green;
++				clr.blue = (blue << 8) + blue;
++				clr.alpha = (alpha << 8) + alpha;
++			}
++		
++			XRenderFillRectangle(
++					p->device()->x11Display(),
++					PictOpOver,
++					p->device()->x11RenderHandle(),
++					&clr,
++					rect.x() + point.x(),
++					rect.y() + point.y(),
++					rect.width(),
++					rect.height() );
++
++			p->save();
++			p->setRasterOp( Qt::CopyROP );
++			p->setPen( QPen( cg.highlight().dark( 160 ), 1 ) );
++			p->setBrush( NoBrush );
++			p->drawRect(
++					rect.x() + point.x(),
++					rect.y() + point.y(),
++					rect.width(),
++					rect.height() );
++			p->restore();
++#endif
++#endif
+ 	} else
+ 		QCommonStyle::drawPrimitive( pe, p, r, cg, flags, opt );
+ }
+--- kde.orig/kdeui/kiconview.cpp
++++ kde.patched/kdeui/kiconview.cpp
+@@ -545,7 +545,7 @@
+     r = m_wordWrap->boundingRect();
+ 
+     int realWidth = QMAX( QMIN( r.width() + 4, tw ), fm->width( "X" ) );
+-    itemTextRect.setWidth( realWidth );
++    itemTextRect.setWidth( realWidth + 4 );
+     itemTextRect.setHeight( r.height() );
+ 
+     int w = 0;    int h = 0;    int y = 0;
+@@ -696,11 +696,13 @@
+ 
+ void KIconViewItem::paintText( QPainter *p, const QColorGroup &cg )
+ {
+-    int textX = textRect( false ).x() + 2;
++    int textX = textRect( false ).x() + 4;
+     int textY = textRect( false ).y();
+ 
+     if ( isSelected() ) {
+-        p->fillRect( textRect( false ), cg.highlight() );
++	p->setBrush(QBrush(cg.highlight()));
++	p->setPen(QPen(cg.highlight()));
++	p->drawRoundRect( textRect( false ) ,1000/textRect(false).width(),1000/textRect(false).height() );		
+         p->setPen( QPen( cg.highlightedText() ) );
+     } else {
+         if ( iconView()->itemTextBackground() != NoBrush )
+--- kde.orig/kdeui/kjanuswidget.cpp
++++ kde.patched/kdeui/kjanuswidget.cpp
+@@ -49,16 +49,19 @@
+ {
+   public:
+     IconListItem( QListBox *listbox, const QPixmap &pixmap,
+-		   const QString &text );
++                  const QString &text );
+     virtual int height( const QListBox *lb ) const;
+     virtual int width( const QListBox *lb ) const;
+     int expandMinimumWidth( int width );
++    void highlight( bool erase );        
+ 
+   protected:
+     const QPixmap &defaultPixmap();
+     void paint( QPainter *painter );
+-
++    
+   private:
++    void paintContents( QPainter *painter );  
++  
+     QPixmap mPixmap;
+     int mMinimumWidth;
+ };
+@@ -142,6 +145,8 @@
+ 
+       mIconList->verticalScrollBar()->installEventFilter( this );
+       connect( mIconList, SIGNAL(selectionChanged()), SLOT(slotShowPage()));
++      connect( mIconList, SIGNAL(onItem(QListBoxItem *)), SLOT(slotOnItem(QListBoxItem *)));
++
+       hbox->addSpacing( KDialog::marginHint() );
+       page = new QFrame( this );
+       hbox->addWidget( page, 10 );
+@@ -260,7 +265,7 @@
+ }
+ 
+ QFrame *KJanusWidget::addPage( const QString &itemName, const QString &header,
+-			       const QPixmap &pixmap )
++          const QPixmap &pixmap )
+ {
+   QStringList items;
+   items << itemName;
+@@ -270,8 +275,8 @@
+ 
+ 
+ QVBox *KJanusWidget::addVBoxPage( const QStringList &items,
+-				  const QString &header,
+-				  const QPixmap &pixmap )
++          const QString &header,
++          const QPixmap &pixmap )
+ {
+   if( !mValid )
+   {
+@@ -722,6 +727,12 @@
+     it->setOpen(!it->isOpen());
+ }
+ 
++// hack because qt does not support Q_OBJECT in nested classes
++void KJanusWidget::slotOnItem(QListBoxItem *qitem)
++{
++  mIconList->slotOnItem( qitem );
++}  
++
+ void KJanusWidget::setFocus()
+ {
+   if( !mValid ) { return; }
+@@ -930,11 +941,11 @@
+ KJanusWidget::IconListBox::IconListBox( QWidget *parent, const char *name,
+ 					WFlags f )
+   :KListBox( parent, name, f ), mShowAll(false), mHeightValid(false),
+-   mWidthValid(false)
++   mWidthValid(false),
++   mOldItem(0) 
+ {
+ }
+ 
+-
+ void KJanusWidget::IconListBox::updateMinimumHeight()
+ {
+   if( mShowAll && !mHeightValid )
+@@ -996,6 +1007,45 @@
+ }
+ 
+ 
++void KJanusWidget::IconListBox::leaveEvent( QEvent *ev )
++{
++  KListBox::leaveEvent( ev ); 
++
++  if ( mOldItem && !mOldItem->isSelected() )
++  {
++    ((KJanusWidget::IconListItem *) mOldItem)->highlight( true );
++    mOldItem = 0;
++  }
++} 
++
++// hack because qt does not support Q_OBJECT in nested classes
++void KJanusWidget::IconListBox::slotOnItem(QListBoxItem *qitem)
++{
++  KListBox::slotOnItem( qitem );
++
++  if ( qitem == mOldItem )
++  {
++    return;
++  }
++ 
++  if ( mOldItem && !mOldItem->isSelected() )
++  {
++    ((KJanusWidget::IconListItem *) mOldItem)->highlight( true );
++  }
++
++  KJanusWidget::IconListItem *item = dynamic_cast< KJanusWidget::IconListItem * >( qitem );
++  if ( item && !item->isSelected() )
++  {      
++    item->highlight( false );
++    mOldItem = item;
++  }
++  else
++  {
++    mOldItem = 0;
++  }
++}  
++
++
+ 
+ KJanusWidget::IconListItem::IconListItem( QListBox *listbox, const QPixmap &pixmap,
+                                           const QString &text )
+@@ -1007,6 +1057,7 @@
+     mPixmap = defaultPixmap();
+   }
+   setText( text );
++  setCustomHighlighting( true );
+   mMinimumWidth = 0;
+ }
+ 
+@@ -1018,6 +1069,36 @@
+ }
+ 
+ 
++void KJanusWidget::IconListItem::highlight( bool erase )
++{   
++   QRect r = listBox()->itemRect( this );
++   r.addCoords( 1, 1, -1, -1 );  
++   
++   QPainter p( listBox()->viewport() );
++   p.setClipRegion( r );
++   
++   const QColorGroup &cg = listBox()->colorGroup();
++   if ( erase )
++   {
++      p.setPen( cg.base() );
++      p.setBrush( cg.base() );
++      p.drawRect( r );
++   }
++   else
++   {
++      p.setBrush( cg.highlight().light( 120 ) );
++      p.drawRect( r );
++
++      p.setPen( cg.highlight().dark( 140 ) );
++      p.drawRect( r ); 
++   }
++      
++   p.setPen( cg.foreground() );
++   p.translate( r.x() - 1, r.y() - 1 );
++   paintContents( &p );
++}
++
++
+ const QPixmap &KJanusWidget::IconListItem::defaultPixmap()
+ {
+   static QPixmap *pix=0;
+@@ -1045,15 +1126,34 @@
+ 
+ void KJanusWidget::IconListItem::paint( QPainter *painter )
+ {
++  QRect itemPaintRegion( listBox()->itemRect( this ) );
++  QRect r( 1, 1, itemPaintRegion.width() - 2, itemPaintRegion.height() - 2);
++
++  if ( isSelected() )
++  {
++    painter->eraseRect( r );
++
++    painter->save();
++    painter->setPen( listBox()->colorGroup().highlight().dark( 160 ) );
++    painter->drawRect( r );
++    painter->restore();
++  }
++
++  paintContents( painter );
++}
++
++
++void KJanusWidget::IconListItem::paintContents( QPainter *painter )
++{
+   QFontMetrics fm = painter->fontMetrics();
+   int ht = fm.boundingRect( 0, 0, 0, 0, Qt::AlignCenter, text() ).height();
+   int wp = mPixmap.width();
+   int hp = mPixmap.height();
++  painter->drawPixmap( (mMinimumWidth - wp) / 2, 5, mPixmap );
+ 
+-  painter->drawPixmap( (mMinimumWidth-wp)/2, 5, mPixmap );
+   if( !text().isEmpty() )
+   {
+-    painter->drawText( 0, hp+7, mMinimumWidth, ht, Qt::AlignCenter, text() );
++    painter->drawText( 1, hp + 7, mMinimumWidth - 2, ht, Qt::AlignCenter, text() );
+   }
+ }
+ 
+@@ -1083,6 +1183,7 @@
+ void KJanusWidget::virtual_hook( int, void* )
+ { /*BASE::virtual_hook( id, data );*/ }
+ 
++
+ // TODO: In TreeList, if the last child of a node is removed, and there is no corrsponding widget for that node, allow the caller to
+ // delete the node.
+ void KJanusWidget::removePage( QWidget *page )
+@@ -1130,6 +1231,7 @@
+   }
+ }
+ 
++
+ QString KJanusWidget::pageTitle(int index) const
+ {
+   if (!d || !d->mIntToTitle.contains(index))
+@@ -1138,6 +1240,7 @@
+     return d->mIntToTitle[index];
+ }
+ 
++
+ QWidget *KJanusWidget::pageWidget(int index) const
+ {
+   if (!d || !d->mIntToPage.contains(index))
+--- kde.orig/kdeui/kjanuswidget.h
++++ kde.patched/kdeui/kjanuswidget.h
+@@ -71,6 +71,8 @@
+   private:
+     class IconListBox : public KListBox
+     {
++      friend class KJanusWidget;
++
+       public:
+         IconListBox( QWidget *parent=0, const char *name=0, WFlags f=0 );
+ 	void updateMinimumHeight();
+@@ -79,10 +81,15 @@
+ 	void invalidateWidth();
+ 	void setShowAll( bool showAll );
+ 
++      protected:
++    	void slotOnItem( QListBoxItem *item );
++	virtual void leaveEvent( QEvent * );
++    
+       private:
+ 	bool mShowAll;
+ 	bool mHeightValid;
+ 	bool mWidthValid;
++	QListBoxItem *mOldItem;	
+     };
+ 
+   public:
+@@ -558,6 +565,8 @@
+   private slots:
+     bool slotShowPage();
+     void slotFontChanged();
++
++    void slotOnItem(QListBoxItem *item);
+     void slotItemClicked(QListViewItem *it);
+     void pageGone(QObject *obj); // signal from the added page's "destroyed" signal
+     void slotReopen(QListViewItem *item);

Added: branches/kde-3.4.0/packages/kdelibs/debian/patches/23_kfiledialog.diff
===================================================================
--- branches/kde-3.4.0/packages/kdelibs/debian/patches/23_kfiledialog.diff	2005-09-12 14:15:28 UTC (rev 1776)
+++ branches/kde-3.4.0/packages/kdelibs/debian/patches/23_kfiledialog.diff	2005-09-12 14:16:21 UTC (rev 1777)
@@ -0,0 +1,13 @@
+--- kde.orig/kio/kfile/kfilespeedbar.cpp
++++ kde.patched/kio/kfile/kfilespeedbar.cpp
+@@ -57,10 +57,6 @@
+         insertItem( u, i18n("Home Folder"), false,
+                                "folder_home" );
+ 
+-        u = "floppy:/";
+-        if ( KProtocolInfo::isKnownProtocol( u ) )
+-            insertItem( u, i18n("Floppy"), false,
+-                                   KProtocolInfo::icon( "floppy" ) );
+         u = "media:/";
+         if ( KProtocolInfo::isKnownProtocol( u ) )
+             insertItem( u, i18n("Storage Media"), false,




More information about the pkg-kde-commits mailing list