Hello community, here is the log from the commit of package kdesdk4 for openSUSE:Factory checked in at Tue May 18 01:20:08 CEST 2010. -------- --- KDE/kdesdk4/kdesdk4.changes 2010-04-29 22:42:06.000000000 +0200 +++ kdesdk4/kdesdk4.changes 2010-05-17 15:14:17.000000000 +0200 @@ -1,0 +2,5 @@ +Mon May 17 13:14:07 UTC 2010 - llunak@novell.com + +- update 4_4_BRANCH.diff: various fixes, translation updates + +------------------------------------------------------------------- calling whatdependson for head-i586 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ kdesdk4.spec ++++++ --- /var/tmp/diff_new_pack.bjSQ5z/_old 2010-05-18 01:17:47.000000000 +0200 +++ /var/tmp/diff_new_pack.bjSQ5z/_new 2010-05-18 01:17:47.000000000 +0200 @@ -28,7 +28,7 @@ Summary: KDE SDK Package Url: http://www.kde.org/ Version: 4.4.3 -Release: 1 +Release: 2 Source0: kdesdk-%version.tar.bz2 Patch: 4_4_BRANCH.diff Patch2: desktop-files.diff ++++++ 4_4_BRANCH.diff ++++++ --- /var/tmp/diff_new_pack.bjSQ5z/_old 2010-05-18 01:17:47.000000000 +0200 +++ /var/tmp/diff_new_pack.bjSQ5z/_new 2010-05-18 01:17:47.000000000 +0200 @@ -1,7 +1,316 @@ -package: kdesdk-4.3.1.tar.bz2 +package: kdesdk-4.4.3.tar.bz2 kdemod: kdesdk --- BRANCH_STATUS +++ BRANCH_STATUS @@ -0,0 +1,2 @@ -+current HEAD: 1027747 -+svn di between //tags/KDE/4.3.1/kdesdk and //branches/KDE/4.3/kdesdk ++current HEAD: 1127686 ++svn di between //tags/KDE/4.4.3/kdesdk and //branches/KDE/4.4/kdesdk +--- kate/app/kateviewmanager.cpp ++++ kate/app/kateviewmanager.cpp +@@ -647,6 +647,7 @@ + // save current splitter size, as the removal of currentSplitter looses the info + QList<int> parentSizes = parentSplitter->sizes(); + parentSplitter->insertWidget (index, currentSplitter->widget (0)); ++ currentSplitter->hide(); // see bug #232140 + delete currentSplitter; + // now restore the sizes again + parentSplitter->setSizes(parentSizes); +--- kate/plugins/filebrowser/katefilebrowserconfig.cpp ++++ kate/plugins/filebrowser/katefilebrowserconfig.cpp +@@ -63,7 +63,7 @@ + //BEGIN KateFileBrowserConfigPage + KateFileBrowserConfigPage::KateFileBrowserConfigPage( QWidget *parent, const char *, KateFileBrowser *kfb ) + : Kate::PluginConfigPage( parent ), +- fileBrowser( kfb ), ++ fileBrowser( kfb ), // NOTE: fileBrowser might be 0, if createView was not called for the plugin yet... + m_changed( false ) + { + QVBoxLayout *lo = new QVBoxLayout( this ); +@@ -110,7 +110,8 @@ + l << aItem->idstring(); + } + config.writeEntry( "toolbar actions", l ); +- fileBrowser->setupToolbar(); ++ if (fileBrowser) ++ fileBrowser->setupToolbar(); + } + + void KateFileBrowserConfigPage::reset() +@@ -137,15 +138,17 @@ + << "show hidden" /*<< "view menu" << "properties"*/ + << "bookmarks" << "sync_dir" << "configure"; + QRegExp re("&(?=[^&])"); +- QAction *ac; ++ QAction *ac = 0; + QListWidget *lb; + for ( QStringList::Iterator it = allActions.begin(); it != allActions.end(); ++it ) + { + lb = l.contains( *it ) ? acSel->selectedListWidget() : acSel->availableListWidget(); +- if ( *it == "bookmarks" || *it == "sync_dir" || *it == "configure" ) +- ac = fileBrowser->actionCollection()->action( (*it).toLatin1().constData() ); +- else +- ac = fileBrowser->dirOperator()->actionCollection()->action( (*it).toLatin1().constData() ); ++ if (fileBrowser) { ++ if ( *it == "bookmarks" || *it == "sync_dir" || *it == "configure" ) ++ ac = fileBrowser->actionCollection()->action( (*it).toLatin1().constData() ); ++ else ++ ac = fileBrowser->dirOperator()->actionCollection()->action( (*it).toLatin1().constData() ); ++ } + if ( ac ) + { + QString text = ac->text().remove( re ); +--- kate/plugins/filebrowser/katefilebrowserplugin.cpp ++++ kate/plugins/filebrowser/katefilebrowserplugin.cpp +@@ -39,6 +39,7 @@ + //BEGIN KateFileBrowserPlugin + KateFileBrowserPlugin::KateFileBrowserPlugin(QObject* parent, const QList<QVariant>&) + : Kate::Plugin ((Kate::Application*)parent) ++ , m_fileBrowser(0) + { + } + +--- kate/plugins/filebrowser/katefilebrowser.cpp ++++ kate/plugins/filebrowser/katefilebrowser.cpp +@@ -74,7 +74,7 @@ + setFocusProxy(m_dirOperator); + connect(m_dirOperator, SIGNAL(viewChanged(QAbstractItemView *)), + this, SLOT(selectorViewChanged(QAbstractItemView *))); +- connect(m_urlNavigator, SIGNAL(urlChanged(const KUrl&)), ++ connect(m_urlNavigator, SIGNAL(returnPressed()), + m_dirOperator, SLOT(setFocus())); + // now all actions exist in dir operator and we can use them in the toolbar + setupActions(); +--- kapptemplate/templates/Python/pykde4app/pykde4app.kdevtemplate ++++ kapptemplate/templates/Python/pykde4app/pykde4app.kdevtemplate +@@ -44,7 +44,7 @@ + Comment[ca]=Plantilla PyKDE4 - necessita el PyKDE4 + Comment[ca@valencia]=Plantilla PyKDE4 - necessita el PyKDE4 + Comment[da]=PyKDE4-skabelon - kræver PyKDE4 +-Comment[de]=Vorlage für PyKDE4 - benötigt PyKDE4 ++Comment[de]=Vorlage für PyKDE4 – benötigt PyKDE4 + Comment[el]=Πρότυπο του PyKDE4 - απαιτείται το PyKDE4 + Comment[en_GB]=PyKDE4 template - needs PyKDE4 + Comment[es]=Plantilla PyKDE4 (necesita PyKDE4) +--- kapptemplate/templates/Python/pyqt4app/pyqt4app.kdevtemplate ++++ kapptemplate/templates/Python/pyqt4app/pyqt4app.kdevtemplate +@@ -44,7 +44,7 @@ + Comment[ca]=Plantilla PyQt que usa un fitxer de Designer - necessita el PyQt4 + Comment[ca@valencia]=Plantilla PyQt que usa un fitxer de Designer - necessita el PyQt4 + Comment[da]=PyQt-skabelon som bruger en Designer-fil - kræver PyQt4 +-Comment[de]=Vorlage für PyQt mit Qt-Designer-Datei - benötigt PyQt4 ++Comment[de]=Vorlage für PyQt mit Qt-Designer-Datei – benötigt PyQt4 + Comment[el]=Πρότυπο της PyQt4 που χρησιμοποιεί αρχείο του Designer - απαιτείται η PyQt4 + Comment[en_GB]=PyQt template using a Designer file - needs PyQt4 + Comment[es]=Plantilla PyQt que usa un archivo de Designer (necesita PyQt4) +--- kapptemplate/templates/ruby/kderubyapp/kderubyapp.kdevtemplate ++++ kapptemplate/templates/ruby/kderubyapp/kderubyapp.kdevtemplate +@@ -42,7 +42,7 @@ + Comment[ca]=Plantilla ruby senzilla del KDE4, hereva del XMLGuiWindow - necessita el «korundum4» + Comment[ca@valencia]=Plantilla ruby senzilla del KDE4, hereva del XMLGuiWindow - necessita el «korundum4» + Comment[da]=Simpel Ruby-skabelon til KDE 4. Den efterfølger XMLGuiWindows - kræver korundum4 +-Comment[de]=Vorlage für einfache KDE-4-Ruby-Anwendung. Abgeleitet von XMLGuiWindow - benötigt Korundum 4 ++Comment[de]=Vorlage für einfache KDE-4-Ruby-Anwendung. Abgeleitet von XMLGuiWindow – benötigt Korundum 4 + Comment[el]=Απλό πρότυπο του KDE4 Ruby που προέρχεται από το XMLGuiWindow - απαιτείται το korundum4 + Comment[en_GB]=KDE4 simple ruby template, inherits from XMLGuiWindow - needs korundum4 + Comment[es]=Sencilla plantilla Ruby para KDE4, que hereda de XMLGuiWindow (necesita korundum4) +--- lokalize/src/editortab.cpp ++++ lokalize/src/editortab.cpp +@@ -310,13 +310,13 @@ + TM::TMView* _tmView = new TM::TMView(this,m_catalog,tmactions); + addDockWidget(Qt::BottomDockWidgetArea, _tmView); + tm->addAction( QLatin1String("showtmqueryview_action"), _tmView->toggleViewAction() ); +- connect (this,SIGNAL(signalNewEntryDisplayed(DocPosition)),_tmView,SLOT(slotNewEntryDisplayed(DocPosition))); + connect (_tmView,SIGNAL(refreshRequested()),m_view,SLOT(gotoEntry()),Qt::QueuedConnection); + connect (_tmView,SIGNAL(refreshRequested()),this,SLOT(msgStrChanged()),Qt::QueuedConnection); + connect (_tmView,SIGNAL(textInsertRequested(QString)),m_view,SLOT(insertTerm(QString))); + connect (_tmView,SIGNAL(fileOpenRequested(KUrl,QString,QString)),this,SIGNAL(fileOpenRequested(KUrl,QString,QString))); + connect (this,SIGNAL(fileAboutToBeClosed()),m_catalog,SLOT(flushUpdateDBBuffer())); + connect (this,SIGNAL(signalNewEntryDisplayed(DocPosition)),m_catalog,SLOT(flushUpdateDBBuffer())); ++ connect (this,SIGNAL(signalNewEntryDisplayed(DocPosition)),_tmView,SLOT(slotNewEntryDisplayed(DocPosition))); //do this after flushUpdateDBBuffer + + QVector<KAction*> gactions(GLOSSARY_SHORTCUTS); + Qt::Key glist[GLOSSARY_SHORTCUTS]= +--- lokalize/src/xlifftextedit.h ++++ lokalize/src/xlifftextedit.h +@@ -90,6 +90,7 @@ + //for Undo/Redo tracking + void contentsChanged(int position,int charsRemoved,int charsAdded); + void completionActivated(const QString&); ++ void projectConfigChanged(); + + signals: + void toggleApprovementRequested(); +--- lokalize/src/lokalizemainwindow.cpp ++++ lokalize/src/lokalizemainwindow.cpp +@@ -458,7 +458,9 @@ + m_openRecentProjectAction=new KRecentFilesAction(i18nc("@action:inmenu","Open recent project"),this); + action = proj->addAction("project_open_recent",m_openRecentProjectAction); + connect(m_openRecentProjectAction,SIGNAL(urlSelected(KUrl)),this,SLOT(openProject(KUrl))); +- connect(Project::instance(),SIGNAL(loaded()), this,SLOT(projectLoaded())); ++ ++ //Qt::QueuedConnection: defer until event loop is running to eliminate QWidgetPrivate::showChildren(bool) startup crash ++ connect(Project::instance(),SIGNAL(loaded()), this,SLOT(projectLoaded()), Qt::QueuedConnection); + + setupGUI(Default,"lokalizemainwindowui.rc"); + +@@ -528,7 +530,7 @@ + while (--i>=0) + { + //if (editors.at(i)==m_projectSubWindow) +- if (!qobject_cast<EditorTab*>(editors.at(i)->widget())) ++ if (!editors.at(i) || !qobject_cast<EditorTab*>(editors.at(i)->widget())) + continue; + if (editors.at(i)==activeSW) + activeSWIndex=files.size(); +@@ -580,7 +582,11 @@ + + QString path=stateGroup.readEntry("Project",QString()); + if (Project::instance()->isLoaded() || path.isEmpty()) +- projectLoaded(); //we weren't existing yet when the signal was emitted ++ { ++ //1. we weren't existing yet when the signal was emitted ++ //2. defer until event loop is running to eliminate QWidgetPrivate::showChildren(bool) startup crash ++ QTimer::singleShot(0, this, SLOT(projectLoaded())); ++ } + else + Project::instance()->load(path); + } +--- lokalize/src/cataloglistview/cataloglistview.cpp ++++ lokalize/src/cataloglistview/cataloglistview.cpp +@@ -101,6 +101,7 @@ + m_browser->setSortingEnabled(true); + m_browser->sortByColumn(0, Qt::AscendingOrder); + m_browser->setWordWrap(true); ++ m_browser->setVerticalScrollMode(QAbstractItemView::ScrollPerPixel); + + + KConfig config; +@@ -123,7 +124,9 @@ + + void CatalogView::slotNewEntryDisplayed(const DocPosition& pos) + { +- m_browser->setCurrentIndex(m_proxyModel->mapFromSource(m_model->index(pos.entry,0))); ++ QModelIndex item=m_proxyModel->mapFromSource(m_model->index(pos.entry,0)); ++ m_browser->setCurrentIndex(item); ++ m_browser->scrollTo(item/*,QAbstractItemView::PositionAtCenter*/); + } + + void CatalogView::setFilterRegExp() +--- lokalize/src/xlifftextedit.cpp ++++ lokalize/src/xlifftextedit.cpp +@@ -8,7 +8,7 @@ + published by the Free Software Foundation; either version 2 of + the License or (at your option) version 3 or any later version + accepted by the membership of KDE e.V. (or its successor approved +- by the membership of KDE e.V.), which shall act as a proxy ++ by the membership of KDE e.V.), which shall act as a proxy + defined in Section 14 of version 3 of the license. + + This program is distributed in the hope that it will be useful, +@@ -80,7 +80,7 @@ + public: + MyCompletionBox(QWidget* p):KCompletionBox(p){} + QSize sizeHint() const; +- ++ + bool eventFilter(QObject* , QEvent* ); //reimplemented to deliver more keypresses to XliffTextEdit + }; + +@@ -154,15 +154,33 @@ + { + connect (document(), SIGNAL(contentsChange(int,int,int)), this, SLOT(contentsChanged(int,int,int))); + connect (this,SIGNAL(cursorPositionChanged()), this, SLOT(emitCursorPositionChanged())); +- m_highlighter->setCurrentLanguage(Project::instance()->targetLangCode()); + } +- else +- m_highlighter->setCurrentLanguage(Project::instance()->sourceLangCode()); ++ projectConfigChanged(); ++ connect (Project::instance(),SIGNAL(configChanged()), this, SLOT(projectConfigChanged())); + + setSpellInterface(new XliffTextEditSpellInterface(m_highlighter)); + setHighlighter(m_highlighter); + } + ++void XliffTextEdit::projectConfigChanged() ++{ ++ if (m_part==DocPosition::Target) ++ { ++ m_highlighter->setCurrentLanguage(Project::instance()->targetLangCode()); ++ ++ //"i use an english locale while translating kde pot files from english to hebrew" ++ QLocale targetLocale(Project::instance()->targetLangCode()); ++ Qt::LayoutDirection targetLanguageDirection=Qt::LeftToRight; ++ if (targetLocale.language()==QLocale::Arabic || targetLocale.language()==QLocale::Hebrew ++ || targetLocale.language()==QLocale::Urdu || targetLocale.language()==QLocale::Persian ++ || targetLocale.language()==QLocale::Pashto) ++ targetLanguageDirection=Qt::RightToLeft; ++ ++ setLayoutDirection(targetLanguageDirection); ++ } ++ else ++ m_highlighter->setCurrentLanguage(Project::instance()->sourceLangCode()); ++} + + void XliffTextEdit::reflectApprovementState() + { +@@ -228,7 +246,7 @@ + else + setContent(catalogString,refStr.string.isEmpty()?m_catalog->sourceWithTags(docPosition):refStr); + connect (document(), SIGNAL(contentsChange(int,int,int)), this, SLOT(contentsChanged(int,int,int))); +- ++ + _oldMsgstrAscii=document()->toPlainText(); + + //BEGIN pos +@@ -470,7 +488,7 @@ + //kWarning()<<"char"<<editText[offset].unicode(); + if (charsAdded) + m_catalog->push(new InsTextCmd(m_catalog,pos,addedText)); +- ++ + } + + /* TODO +@@ -486,7 +504,7 @@ + // for mergecatalog (remove entry from index) + // and for statusbar + emit contentsModified(m_currentPos); +- ++ + if (charsAdded==1) + doCompletion(offset+1); + +@@ -910,7 +928,7 @@ + // //try harder + // if (--pos>=0 && str.string.at(pos)==TAGRANGE_IMAGE_SYMBOL) + // { +-// ++// + // } + + return -1; +@@ -1054,7 +1072,7 @@ + const QStringList& suggestions=m_highlighter->suggestionsForWord(wordSelectCursor.selectedText()); + if (suggestions.isEmpty()) + return; +- ++ + m_catalog->beginMacro(i18nc("@item Undo action item","Replace text")); + wordSelectCursor.insertText(suggestions.first()); + m_catalog->endMacro(); +@@ -1260,7 +1278,7 @@ + } + + QStringList s=CompletionStorage::instance()->makeCompletion(target.mid(sp+1,len)); +- ++ + if (!m_completionBox) + { + m_completionBox=new MyCompletionBox(this); + +Property changes on: . +___________________________________________________________________ +Added: svn:externals + + + + ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Remember to have fun... -- To unsubscribe, e-mail: opensuse-commit+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-commit+help@opensuse.org