Hello community, here is the log from the commit of package kdegraphics4 for openSUSE:Factory checked in at Wed Jun 10 18:30:05 CEST 2009. -------- --- KDE/kdegraphics4/kdegraphics4.changes 2009-05-27 22:10:38.000000000 +0200 +++ /mounts/work_src_done/STABLE/kdegraphics4/kdegraphics4.changes 2009-06-03 18:27:31.000000000 +0200 @@ -1,0 +2,5 @@ +Wed Jun 3 18:27:22 CEST 2009 - dmueller@suse.de + +- update to 4.2.90 + +------------------------------------------------------------------- calling whatdependson for head-i586 Old: ---- kdegraphics-4.2.88svn973768.tar.bz2 New: ---- kdegraphics-4.2.90.tar.bz2 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ kdegraphics4.spec ++++++ --- /var/tmp/diff_new_pack.XP4849/_old 2009-06-10 18:29:51.000000000 +0200 +++ /var/tmp/diff_new_pack.XP4849/_new 2009-06-10 18:29:51.000000000 +0200 @@ -1,5 +1,5 @@ # -# spec file for package kdegraphics4 (Version 4.2.88svn973768) +# spec file for package kdegraphics4 (Version 4.2.90) # # Copyright (c) 2009 SUSE LINUX Products GmbH, Nuernberg, Germany. # @@ -33,7 +33,7 @@ Group: Productivity/Graphics/Other Summary: kdegraphics base package Url: http://www.kde.org -Version: 4.2.88svn973768 +Version: 4.2.90 Release: 1 Source0: kdegraphics-%version.tar.bz2 Patch0: 4_3_BRANCH.diff @@ -574,6 +574,8 @@ %_kde_share_dir/services/ksane_scan_service.desktop %changelog +* Wed Jun 03 2009 dmueller@suse.de +- update to 4.2.90 * Wed May 27 2009 dmueller@suse.de - update to 4.2.88svn973768 * Tue May 19 2009 dmueller@suse.de ++++++ kdegraphics-4.2.88svn973768.tar.bz2 -> kdegraphics-4.2.90.tar.bz2 ++++++ Files old/kdegraphics-4.2.88svn973768/doc/gwenview/index.cache.bz2 and new/kdegraphics-4.2.90/doc/gwenview/index.cache.bz2 differ Files old/kdegraphics-4.2.88svn973768/doc/kcontrol/kamera/index.cache.bz2 and new/kdegraphics-4.2.90/doc/kcontrol/kamera/index.cache.bz2 differ Files old/kdegraphics-4.2.88svn973768/doc/kgamma/index.cache.bz2 and new/kdegraphics-4.2.90/doc/kgamma/index.cache.bz2 differ Files old/kdegraphics-4.2.88svn973768/doc/kolourpaint/index.cache.bz2 and new/kdegraphics-4.2.90/doc/kolourpaint/index.cache.bz2 differ Files old/kdegraphics-4.2.88svn973768/doc/kruler/index.cache.bz2 and new/kdegraphics-4.2.90/doc/kruler/index.cache.bz2 differ Files old/kdegraphics-4.2.88svn973768/doc/ksnapshot/index.cache.bz2 and new/kdegraphics-4.2.90/doc/ksnapshot/index.cache.bz2 differ Files old/kdegraphics-4.2.88svn973768/doc/okular/index.cache.bz2 and new/kdegraphics-4.2.90/doc/okular/index.cache.bz2 differ diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/kdegraphics-4.2.88svn973768/gwenview/app/documentpanel.cpp new/kdegraphics-4.2.90/gwenview/app/documentpanel.cpp --- old/kdegraphics-4.2.88svn973768/gwenview/app/documentpanel.cpp 2009-05-27 21:53:09.000000000 +0200 +++ new/kdegraphics-4.2.90/gwenview/app/documentpanel.cpp 2009-06-03 13:54:08.000000000 +0200 @@ -188,8 +188,8 @@ layout->addWidget(mStatusBarContainer); } - void setupDocumentView() { - mDocumentView = new DocumentView(0, mActionCollection); + void setupDocumentView(SlideShow* slideShow) { + mDocumentView = new DocumentView(0, slideShow, mActionCollection); // Connect context menu mDocumentView->setContextMenuPolicy(Qt::CustomContextMenu); @@ -262,7 +262,7 @@ }; -DocumentPanel::DocumentPanel(QWidget* parent, KActionCollection* actionCollection) +DocumentPanel::DocumentPanel(QWidget* parent, SlideShow* slideShow, KActionCollection* actionCollection) : QWidget(parent) , d(new DocumentPanelPrivate) { @@ -278,7 +278,7 @@ toggleFullScreenShortcut->setKey(Qt::Key_Return); connect(toggleFullScreenShortcut, SIGNAL(activated()), SIGNAL(toggleFullScreenRequested()) ); - d->setupDocumentView(); + d->setupDocumentView(slideShow); d->setupStatusBar(); @@ -371,6 +371,11 @@ } +bool DocumentPanel::isFullScreenMode() const { + return d->mFullScreenMode; +} + + ThumbnailBarView* DocumentPanel::thumbnailBar() const { return d->mThumbnailBar; } diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/kdegraphics-4.2.88svn973768/gwenview/app/documentpanel.h new/kdegraphics-4.2.90/gwenview/app/documentpanel.h --- old/kdegraphics-4.2.88svn973768/gwenview/app/documentpanel.h 2009-05-14 19:26:08.000000000 +0200 +++ new/kdegraphics-4.2.90/gwenview/app/documentpanel.h 2009-06-03 13:54:08.000000000 +0200 @@ -33,18 +33,20 @@ namespace Gwenview { -struct DocumentPanelPrivate; class DocumentView; class ImageView; +class SlideShow; class ThumbnailBarView; +struct DocumentPanelPrivate; + /** * Holds the active document view and associated widgetry. */ class DocumentPanel : public QWidget { Q_OBJECT public: - DocumentPanel(QWidget* parent, KActionCollection*); + DocumentPanel(QWidget* parent, SlideShow*, KActionCollection*); ~DocumentPanel(); ThumbnailBarView* thumbnailBar() const; @@ -60,6 +62,8 @@ void setFullScreenMode(bool fullScreen); + bool isFullScreenMode() const; + void setNormalPalette(const QPalette&); int statusBarHeight() const; diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/kdegraphics-4.2.88svn973768/gwenview/app/mainwindow.cpp new/kdegraphics-4.2.90/gwenview/app/mainwindow.cpp --- old/kdegraphics-4.2.88svn973768/gwenview/app/mainwindow.cpp 2009-05-27 21:53:09.000000000 +0200 +++ new/kdegraphics-4.2.90/gwenview/app/mainwindow.cpp 2009-06-03 13:54:08.000000000 +0200 @@ -118,8 +118,7 @@ enum PageId { StartPageId, BrowsePageId, - ViewPageId, - FullScreenPageId + ViewPageId }; struct MainWindowState { @@ -197,6 +196,9 @@ mSideBarCollapser = new SplitterCollapser(mCentralSplitter, mSideBar); + mStartSlideShowWhenDirListerCompleted = false; + mSlideShow = new SlideShow(mWindow); + setupThumbnailView(mViewStackedWidget); setupDocumentPanel(mViewStackedWidget); setupStartPage(mViewStackedWidget); @@ -208,9 +210,6 @@ mCentralSplitter->setStretchFactor(0, 0); mCentralSplitter->setStretchFactor(1, 1); - mStartSlideShowWhenDirListerCompleted = false; - mSlideShow = new SlideShow(mWindow); - connect(mSaveBar, SIGNAL(requestSaveAll()), mGvCore, SLOT(saveAll()) ); connect(mSaveBar, SIGNAL(goToUrl(const KUrl&)), @@ -258,7 +257,7 @@ } void setupDocumentPanel(QWidget* parent) { - mDocumentPanel = new DocumentPanel(parent, mWindow->actionCollection()); + mDocumentPanel = new DocumentPanel(parent, mSlideShow, mWindow->actionCollection()); connect(mDocumentPanel, SIGNAL(captionUpdateRequested(const QString&)), mWindow, SLOT(setCaption(const QString&)) ); connect(mDocumentPanel, SIGNAL(completed()), @@ -668,10 +667,9 @@ name = BROWSE_MODE_SIDE_BAR_GROUP; break; case ViewPageId: - name = VIEW_MODE_SIDE_BAR_GROUP; - break; - case FullScreenPageId: - name = FULLSCREEN_MODE_SIDE_BAR_GROUP; + name = mDocumentPanel->isFullScreenMode() + ? FULLSCREEN_MODE_SIDE_BAR_GROUP + : VIEW_MODE_SIDE_BAR_GROUP; break; } return name; @@ -1137,9 +1135,7 @@ d->mStateBeforeFullScreen.mWindowState = windowState(); // Go full screen - d->mCurrentPageId = FullScreenPageId; d->mViewAction->trigger(); - d->loadSideBarConfig(); setWindowState(windowState() | Qt::WindowFullScreen); menuBar()->hide(); @@ -1147,6 +1143,11 @@ d->mDocumentPanel->setFullScreenMode(true); d->mSaveBar->setFullScreenMode(true); d->updateDistractionsState(); + + // HACK: Only load sidebar config now, because it looks at + // DocumentPanel fullScreenMode property to determine the sidebar + // config group. + d->loadSideBarConfig(); } else { setAutoSaveSettings(); @@ -1155,7 +1156,6 @@ if (d->mCurrentPageId == BrowsePageId) { d->mBrowseAction->trigger(); } - d->loadSideBarConfig(); d->mDocumentPanel->setFullScreenMode(false); d->mSlideShow->stop(); @@ -1166,6 +1166,10 @@ d->updateDistractionsState(); + // Keep this after mDocumentPanel->setFullScreenMode(false). + // See call to loadSideBarConfig() above. + d->loadSideBarConfig(); + // See resizeEvent d->mFullScreenLeftAt = QDateTime::currentDateTime(); } @@ -1227,8 +1231,14 @@ QModelIndex index = d->mDirModel->index(pos, 0); KFileItem item = d->mDirModel->itemForIndex(index); MimeTypeUtils::Kind kind = MimeTypeUtils::fileItemKind(item); - if (kind == MimeTypeUtils::KIND_FILE || kind == MimeTypeUtils::KIND_RASTER_IMAGE) { + switch (kind) { + case MimeTypeUtils::KIND_SVG_IMAGE: + case MimeTypeUtils::KIND_RASTER_IMAGE: + case MimeTypeUtils::KIND_VIDEO: list << item.url(); + break; + default: + break; } } d->mSlideShow->start(list); @@ -1260,9 +1270,7 @@ bool MainWindow::queryClose() { saveConfig(); - if (!d->mFullScreenAction->isChecked()) { - d->saveSideBarConfig(); - } + d->saveSideBarConfig(); QList<KUrl> list = DocumentFactory::instance()->modifiedDocumentList(); if (list.size() == 0) { return true; diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/kdegraphics-4.2.88svn973768/gwenview/fullscreenthemes/blackglass/style.css new/kdegraphics-4.2.90/gwenview/fullscreenthemes/blackglass/style.css --- old/kdegraphics-4.2.88svn973768/gwenview/fullscreenthemes/blackglass/style.css 2009-05-14 19:26:10.000000000 +0200 +++ new/kdegraphics-4.2.90/gwenview/fullscreenthemes/blackglass/style.css 2009-06-03 13:54:09.000000000 +0200 @@ -159,6 +159,7 @@ background-color: black; border: 1px solid black; border-radius: 2px; + padding: 0px; } #thumbnailBarView::item { diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/kdegraphics-4.2.88svn973768/gwenview/lib/documentview/documentview.cpp new/kdegraphics-4.2.90/gwenview/lib/documentview/documentview.cpp --- old/kdegraphics-4.2.88svn973768/gwenview/lib/documentview/documentview.cpp 2009-05-14 19:26:08.000000000 +0200 +++ new/kdegraphics-4.2.90/gwenview/lib/documentview/documentview.cpp 2009-06-03 13:54:09.000000000 +0200 @@ -47,6 +47,7 @@ #include <lib/imagesequencecontroller.h> #include <lib/mimetypeutils.h> #include <lib/signalblocker.h> +#include <lib/slideshow.h> #include <lib/widgetfloater.h> #include <lib/zoomwidget.h> @@ -67,6 +68,7 @@ struct DocumentViewPrivate { DocumentView* that; + SlideShow* mSlideShow; KActionCollection* mActionCollection; ZoomWidget* mZoomWidget; KAction* mZoomToFitAction; @@ -279,10 +281,11 @@ }; -DocumentView::DocumentView(QWidget* parent, KActionCollection* actionCollection) +DocumentView::DocumentView(QWidget* parent, SlideShow* slideShow, KActionCollection* actionCollection) : QWidget(parent) , d(new DocumentViewPrivate) { d->that = this; + d->mSlideShow = slideShow; d->mActionCollection = actionCollection; d->mLoadingIndicator = 0; QVBoxLayout* layout = new QVBoxLayout(this); @@ -336,6 +339,10 @@ break; case MimeTypeUtils::KIND_VIDEO: adapter = new VideoViewAdapter(this); + if (d->mSlideShow) { + connect(adapter, SIGNAL(videoFinished()), + d->mSlideShow, SLOT(resumeAndGoToNextUrl())); + } break; case MimeTypeUtils::KIND_UNKNOWN: adapter = new MessageViewAdapter(this); diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/kdegraphics-4.2.88svn973768/gwenview/lib/documentview/documentview.h new/kdegraphics-4.2.90/gwenview/lib/documentview/documentview.h --- old/kdegraphics-4.2.88svn973768/gwenview/lib/documentview/documentview.h 2009-05-14 19:26:08.000000000 +0200 +++ new/kdegraphics-4.2.90/gwenview/lib/documentview/documentview.h 2009-06-03 13:54:09.000000000 +0200 @@ -36,6 +36,7 @@ namespace Gwenview { class AbstractDocumentViewAdapter; +class SlideShow; class ZoomWidget; class DocumentViewPrivate; @@ -47,7 +48,7 @@ class GWENVIEWLIB_EXPORT DocumentView : public QWidget { Q_OBJECT public: - DocumentView(QWidget* parent, KActionCollection*); + DocumentView(QWidget* parent, SlideShow*, KActionCollection*); ~DocumentView(); void setZoomWidgetVisible(bool); diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/kdegraphics-4.2.88svn973768/gwenview/lib/documentview/videoviewadapter.cpp new/kdegraphics-4.2.90/gwenview/lib/documentview/videoviewadapter.cpp --- old/kdegraphics-4.2.88svn973768/gwenview/lib/documentview/videoviewadapter.cpp 2009-05-14 19:26:08.000000000 +0200 +++ new/kdegraphics-4.2.90/gwenview/lib/documentview/videoviewadapter.cpp 2009-06-03 13:54:09.000000000 +0200 @@ -54,7 +54,6 @@ QToolButton* mPlayPauseButton; Document::Ptr mDocument; - bool mDocumentHasNeverBeenStarted; void setupHud(QWidget* parent) { // Create hud content @@ -108,11 +107,6 @@ void updateHudVisibility(int yPos) { - // Keep hud visible until document has been started at least once - if (mDocumentHasNeverBeenStarted) { - return; - } - const int floaterY = mVideoWidget->height() - mFloater->verticalMargin() - mHud->sizeHint().height() * 3 / 2; if (mHud->isVisible() && yPos < floaterY) { mHud->hide(); @@ -128,6 +122,7 @@ , d(new VideoViewAdapterPrivate) { d->q = this; d->mMediaObject = new Phonon::MediaObject(this); + connect(d->mMediaObject, SIGNAL(finished()), SIGNAL(videoFinished())); d->mVideoWidget = new Phonon::VideoWidget(parent); d->mVideoWidget->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding); @@ -155,10 +150,10 @@ void VideoViewAdapter::setDocument(Document::Ptr doc) { - d->mDocumentHasNeverBeenStarted = true; d->mHud->show(); d->mDocument = doc; d->mMediaObject->setCurrentSource(d->mDocument->url()); + d->mMediaObject->play(); } @@ -171,7 +166,6 @@ if (d->isPlaying()) { d->mMediaObject->pause(); } else { - d->mDocumentHasNeverBeenStarted = false; d->mMediaObject->play(); } } diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/kdegraphics-4.2.88svn973768/gwenview/lib/documentview/videoviewadapter.h new/kdegraphics-4.2.90/gwenview/lib/documentview/videoviewadapter.h --- old/kdegraphics-4.2.88svn973768/gwenview/lib/documentview/videoviewadapter.h 2009-05-14 19:26:08.000000000 +0200 +++ new/kdegraphics-4.2.90/gwenview/lib/documentview/videoviewadapter.h 2009-06-03 13:54:09.000000000 +0200 @@ -48,6 +48,9 @@ virtual void setDocument(Document::Ptr); +Q_SIGNALS: + void videoFinished(); + protected: bool eventFilter(QObject*, QEvent*); diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/kdegraphics-4.2.88svn973768/gwenview/lib/slideshow.cpp new/kdegraphics-4.2.90/gwenview/lib/slideshow.cpp --- old/kdegraphics-4.2.88svn973768/gwenview/lib/slideshow.cpp 2009-05-14 19:26:10.000000000 +0200 +++ new/kdegraphics-4.2.90/gwenview/lib/slideshow.cpp 2009-06-03 13:54:09.000000000 +0200 @@ -46,9 +46,15 @@ #define LOG(x) ; #endif +enum State { + Stopped, + Started, + WaitForEndOfUrl +}; + struct SlideShowPrivate { QTimer* mTimer; - bool mStarted; + State mState; QVector<KUrl> mUrls; QVector<KUrl> mShuffledUrls; QVector<KUrl>::ConstIterator mStartIt; @@ -120,6 +126,20 @@ void updateTimerInterval() { mTimer->setInterval(int(GwenviewConfig::interval() * 1000)); } + + + void doStart() { + if (MimeTypeUtils::urlKind(mCurrentUrl) == MimeTypeUtils::KIND_VIDEO) { + LOG("mState = WaitForEndOfUrl"); + // Just in case + mTimer->stop(); + mState = WaitForEndOfUrl; + } else { + LOG("mState = Started"); + mTimer->start(); + mState = Started; + } + } }; @@ -128,11 +148,11 @@ SlideShow::SlideShow(QObject* parent) : QObject(parent) , d(new SlideShowPrivate) { - d->mStarted = false; + d->mState = Stopped; d->mTimer = new QTimer(this); connect(d->mTimer, SIGNAL(timeout()), - this, SLOT(slotTimeout()) ); + this, SLOT(goToNextUrl()) ); d->mLoopAction = new QAction(this); d->mLoopAction->setText(i18nc("@item:inmenu toggle loop in slideshow", "Loop")); @@ -182,8 +202,7 @@ d->updateTimerInterval(); d->mTimer->setSingleShot(false); - d->mTimer->start(); - d->mStarted=true; + d->doStart(); stateChanged(true); } @@ -195,13 +214,22 @@ void SlideShow::stop() { + LOG("Stopping timer"); d->mTimer->stop(); - d->mStarted=false; + d->mState = Stopped; stateChanged(false); } -void SlideShow::slotTimeout() { +void SlideShow::resumeAndGoToNextUrl() { + LOG(""); + if (d->mState == WaitForEndOfUrl) { + goToNextUrl(); + } +} + + +void SlideShow::goToNextUrl() { LOG(""); KUrl url = d->findNextUrl(); LOG("url:" << url); @@ -214,17 +242,21 @@ void SlideShow::setCurrentUrl(const KUrl& url) { + LOG(url); + if (d->mCurrentUrl == url) { + return; + } d->mCurrentUrl = url; // Restart timer to avoid showing new url for the remaining time of the old // url - if (d->mStarted) { - d->mTimer->start(); + if (d->mState != Stopped) { + d->doStart(); } } bool SlideShow::isRunning() const { - return d->mStarted; + return d->mState != Stopped; } @@ -235,7 +267,7 @@ void SlideShow::slotRandomActionToggled(bool on) { - if (on && d->mStarted) { + if (on && d->mState != Stopped) { d->initShuffledUrls(); } } diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/kdegraphics-4.2.88svn973768/gwenview/lib/slideshow.h new/kdegraphics-4.2.90/gwenview/lib/slideshow.h --- old/kdegraphics-4.2.88svn973768/gwenview/lib/slideshow.h 2009-05-14 19:26:10.000000000 +0200 +++ new/kdegraphics-4.2.90/gwenview/lib/slideshow.h 2009-06-03 13:54:09.000000000 +0200 @@ -54,6 +54,11 @@ public Q_SLOTS: void setInterval(int); + /** + * Resume slideshow and go to next url. + */ + void resumeAndGoToNextUrl(); + Q_SIGNALS: void goToUrl( const KUrl& ); /** @@ -62,7 +67,7 @@ void stateChanged(bool running); private Q_SLOTS: - void slotTimeout(); + void goToNextUrl(); void updateConfig(); void slotRandomActionToggled(bool on); diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/kdegraphics-4.2.88svn973768/gwenview/lib/thumbnailview/previewitemdelegate.cpp new/kdegraphics-4.2.90/gwenview/lib/thumbnailview/previewitemdelegate.cpp --- old/kdegraphics-4.2.88svn973768/gwenview/lib/thumbnailview/previewitemdelegate.cpp 2009-05-14 19:26:08.000000000 +0200 +++ new/kdegraphics-4.2.90/gwenview/lib/thumbnailview/previewitemdelegate.cpp 2009-06-03 13:54:09.000000000 +0200 @@ -215,13 +215,6 @@ // Necessary otherwise we won't see the save button itself mSaveButton->adjustSize(); - // This is hackish. - // Show/hide the frame to make sure mSaveButton->render produces - // something coherent. - mSaveButton->show(); - mSaveButton->repaint(); - mSaveButton->hide(); - mSaveButtonPixmap = QPixmap(mSaveButton->sizeHint()); mSaveButtonPixmap.fill(Qt::transparent); mSaveButton->render(&mSaveButtonPixmap, QPoint(), QRegion(), QWidget::DrawChildren); diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/kdegraphics-4.2.88svn973768/gwenview/NEWS new/kdegraphics-4.2.90/gwenview/NEWS --- old/kdegraphics-4.2.88svn973768/gwenview/NEWS 2009-05-14 19:26:10.000000000 +0200 +++ new/kdegraphics-4.2.90/gwenview/NEWS 2009-06-03 13:54:09.000000000 +0200 @@ -6,7 +6,7 @@ ## Improvements - New crop interface: less intrusive and with the ability to crop to screen ratio. -- The thumbnail bar can now be shown vertically. +- The thumbnail bar can now be shown vertically and show multiple rows/columns. - Gwenview now remembers visited urls. - History can now be disabled. - Added file operations and "open with" menu to image view context menu. Patch @@ -18,10 +18,13 @@ - Scroll when dragging files to the top or bottom of the thumbnail view (bug #189510). -# 2.2.4 +# 2.2.5 ## Improvements - Show compressed SVG files. +## Fixes +- Do not crash when clicking a rotate button from the thumbnail view speedbar. + # 2.2.3 ## Fixes - Handle gif files containing one frame and a graphic control extension as diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/kdegraphics-4.2.88svn973768/gwenview/part/gvpart.cpp new/kdegraphics-4.2.90/gwenview/part/gvpart.cpp --- old/kdegraphics-4.2.88svn973768/gwenview/part/gvpart.cpp 2009-05-14 19:26:10.000000000 +0200 +++ new/kdegraphics-4.2.90/gwenview/part/gvpart.cpp 2009-06-03 13:54:09.000000000 +0200 @@ -55,7 +55,7 @@ GVPart::GVPart(QWidget* parentWidget, QObject* parent, const QStringList& /*args*/) : KParts::ReadOnlyPart(parent) { - mDocumentView = new DocumentView(parentWidget, actionCollection()); + mDocumentView = new DocumentView(parentWidget, 0 /* slideShow */, actionCollection()); mDocumentView->setZoomWidgetVisible(false); setWidget(mDocumentView); diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/kdegraphics-4.2.88svn973768/libs/libkdcraw/libkdcraw/dcrawsettingswidget.cpp new/kdegraphics-4.2.90/libs/libkdcraw/libkdcraw/dcrawsettingswidget.cpp --- old/kdegraphics-4.2.88svn973768/libs/libkdcraw/libkdcraw/dcrawsettingswidget.cpp 2009-04-28 15:45:57.000000000 +0200 +++ new/kdegraphics-4.2.90/libs/libkdcraw/libkdcraw/dcrawsettingswidget.cpp 2009-06-03 13:54:08.000000000 +0200 @@ -273,6 +273,7 @@ "interpolation to Red-Green and Blue-Green channels.")); demosaicingLayout->addWidget(d->medianFilterPassesLabel, line, 0, 1, 1); demosaicingLayout->addWidget(d->medianFilterPassesSpinBox, line, 1, 1, 2); + demosaicingLayout->setRowStretch(line + 1, 10); insertItem(DEMOSAICING, d->demosaicingSettings, i18n("Demosaicing")); @@ -318,7 +319,7 @@ d->unclipColorComboBox = new RComboBox(d->whiteBalanceSettings); d->unclipColorComboBox->insertItem(0, i18n("Solid white")); d->unclipColorComboBox->insertItem(1, i18n("Unclip")); - d->unclipColorComboBox->insertItem(2, i18n("Blend")); + d->unclipColorComboBox->insertItem(2, i18n("Blend")); d->unclipColorComboBox->insertItem(3, i18n("Rebuild")); d->unclipColorComboBox->setDefaultIndex(0); d->unclipColorComboBox->setWhatsThis(i18n("<p><b>Highlights</b><p>" @@ -408,6 +409,7 @@ whiteBalanceLayout->addWidget(d->blackPointSpinBox, 7, 1, 1, 2); whiteBalanceLayout->addWidget(d->whitePointCheckBox, 8, 0, 1, 1); whiteBalanceLayout->addWidget(d->whitePointSpinBox, 8, 1, 1, 2); + whiteBalanceLayout->setRowStretch(9, 10); whiteBalanceLayout->setSpacing(KDialog::spacingHint()); whiteBalanceLayout->setMargin(KDialog::spacingHint()); diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/kdegraphics-4.2.88svn973768/libs/libksane/libksane/ksane_device_dialog.cpp new/kdegraphics-4.2.90/libs/libksane/libksane/ksane_device_dialog.cpp --- old/kdegraphics-4.2.88svn973768/libs/libksane/libksane/ksane_device_dialog.cpp 2009-03-27 15:46:14.000000000 +0100 +++ new/kdegraphics-4.2.90/libs/libksane/libksane/ksane_device_dialog.cpp 2009-06-03 13:54:08.000000000 +0200 @@ -6,6 +6,7 @@ * Description : Sane interface for KDE * * Copyright (C) 2007-2008 by Kare Sars <kare dot sars at iki dot fi> + * Copyright (C) 2009 by Grzegorz Kurtyka <grzegorz dot kurtyka at gmail dot com> * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -40,6 +41,7 @@ // KDE includes. #include <KDebug> +#include <KPushButton> namespace KSaneIface { @@ -93,6 +95,10 @@ void KSaneDeviceDialog::reloadDevicesList() { if(!find_devices_thread->isRunning()) { + while (!btn_group->buttons().isEmpty()) { + delete btn_group->buttons().takeFirst(); + } + setAvailable(false); find_devices_thread->start(); btn_box->setEnabled(false); @@ -133,8 +139,6 @@ bool KSaneDeviceDialog::setDevicesList(const QMap<QString, QString>& items) { - QRadioButton *b; - while (!btn_group->buttons().isEmpty()) { delete btn_group->buttons().takeFirst(); } @@ -144,23 +148,35 @@ return false; } + delete btn_layout; + btn_layout = new QVBoxLayout(); + btn_layout->setDirection(QBoxLayout::TopToBottom); + btn_box->setLayout(btn_layout); + btn_box->setTitle( i18n("Found devices:") ); QMapIterator<QString, QString> itr(items); while (itr.hasNext()) { + bool first = !itr.hasPrevious(); itr.next(); - b = new QRadioButton(itr.value(), this ); + QRadioButton *b = new QRadioButton(itr.value(), this ); b->setObjectName(itr.key()); b->setToolTip( itr.key() ); btn_layout->addWidget(b); btn_group->addButton(b); connect(b, SIGNAL(clicked(bool)), this, SLOT(setAvailable(bool)) ); - if(itr.key() == m_selected_device) { + if(first || itr.key() == m_selected_device) { b->setChecked(true); setAvailable(true); } } + btn_layout->addStretch(); adjustSize(); + + if(items.size() == 1) { + button(KDialog::Ok)->animateClick(); + } + return true; } diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/kdegraphics-4.2.88svn973768/libs/libksane/libksane/ksane_device_dialog.h new/kdegraphics-4.2.90/libs/libksane/libksane/ksane_device_dialog.h --- old/kdegraphics-4.2.88svn973768/libs/libksane/libksane/ksane_device_dialog.h 2009-03-27 15:46:14.000000000 +0100 +++ new/kdegraphics-4.2.90/libs/libksane/libksane/ksane_device_dialog.h 2009-06-03 13:54:08.000000000 +0200 @@ -6,6 +6,7 @@ * Description : Sane interface for KDE * * Copyright (C) 2007-2008 by Kare Sars <kare dot sars at iki dot fi> + * Copyright (C) 2009 by Grzegorz Kurtyka <grzegorz dot kurtyka at gmail dot com> * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/kdegraphics-4.2.88svn973768/libs/libksane/libksane/ksane_find_devices_thread.cpp new/kdegraphics-4.2.90/libs/libksane/libksane/ksane_find_devices_thread.cpp --- old/kdegraphics-4.2.88svn973768/libs/libksane/libksane/ksane_find_devices_thread.cpp 2009-03-27 15:46:14.000000000 +0100 +++ new/kdegraphics-4.2.90/libs/libksane/libksane/ksane_find_devices_thread.cpp 2009-06-03 13:54:08.000000000 +0200 @@ -52,11 +52,12 @@ status = sane_get_devices(&dev_list, SANE_FALSE); + devices_map.clear(); while(dev_list[i] != 0) { tmp = QString(dev_list[i]->vendor); tmp += " : " + QString(dev_list[i]->model); tmp += "\n " + QString(dev_list[i]->name); -// kDebug(51004) << "FindSaneDevicesThread::found device: " << dev_list[i]->name; + //kDebug(51004) << "FindSaneDevicesThread::found device: " << dev_list[i]->name; devices_map.insert( dev_list[i]->name, tmp ); i++; } @@ -66,4 +67,4 @@ devices_list = devices_map; } -} \ No newline at end of file +} diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/kdegraphics-4.2.88svn973768/okular/generators/mobipocket/libokularGenerator_mobi.desktop new/kdegraphics-4.2.90/okular/generators/mobipocket/libokularGenerator_mobi.desktop --- old/kdegraphics-4.2.88svn973768/okular/generators/mobipocket/libokularGenerator_mobi.desktop 2009-05-27 21:53:12.000000000 +0200 +++ new/kdegraphics-4.2.90/okular/generators/mobipocket/libokularGenerator_mobi.desktop 2009-06-03 13:54:09.000000000 +0200 @@ -1,6 +1,7 @@ [Desktop Entry] Type=Service Name=Mobipocket document +Name[ca]=Document Mobipocket Name[da]=Mobipocket-dokument Name[de]=Mobipocket-Dokument Name[el]=Έγγραφο Mobipocket @@ -12,6 +13,7 @@ Name[ja]=Mobipocket 文書 Name[km]=ឯកសារ Mobipocket Name[ko]=Mobipocket 문서 +Name[lv]=Mobipocket dokuments Name[nb]=Mobipocket-dokument Name[nds]=Mobipocket-Dokment Name[pt]=Documento do Mobipocket @@ -25,6 +27,7 @@ Name[zh_CN]=Mobipocket 文档 Name[zh_TW]=Mobipocket 文件 Comment=Mobipocket backend for Okular +Comment[ca]=Dorsal de Mobipocket per a l'Okular Comment[da]=Mobipocket-motor til Okular Comment[de]=Ein Anzeigemodul für Mobipocket-Dateien in Okular Comment[el]=Σύστημα υποστήριξης Mobipocket για το Okular @@ -36,6 +39,7 @@ Comment[ja]=Okular の Mobipocket 用バックエンド Comment[km]=កម្មវិធីខាងក្រោយសម្រាប់ Mobipocket សម្រាប់ Okular Comment[ko]=Okular의 Mobipocket 백엔드 +Comment[lv]=Mobipocket Okular aizmugure Comment[nb]=Mobipocket-motor for okular Comment[nds]=Mobipocket-Hülppropgramm för Okular Comment[pt]=Infra-estrutura do Mobipocket para o Okular diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/kdegraphics-4.2.88svn973768/okular/generators/ooo/libokularGenerator_ooo.desktop new/kdegraphics-4.2.90/okular/generators/ooo/libokularGenerator_ooo.desktop --- old/kdegraphics-4.2.88svn973768/okular/generators/ooo/libokularGenerator_ooo.desktop 2009-05-27 21:53:11.000000000 +0200 +++ new/kdegraphics-4.2.90/okular/generators/ooo/libokularGenerator_ooo.desktop 2009-06-03 13:54:09.000000000 +0200 @@ -27,7 +27,7 @@ Name[ku]=Teşeya OpenDocument Name[lt]=OpenDocument formatas Name[lv]=OpenDocument formāts -Name[nb]=OpenDocument-formathttps://www.dnbnor.no/seg-person/betaling/betaling.view.7ndw08du.jhtml?_DARG... +Name[nb]=OpenDocument-format Name[nds]=OpenDocument-Formaat Name[ne]=खुला कागजात ढाँचा Name[nl]=OpenDocument-formaat diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/kdegraphics-4.2.88svn973768/okular/generators/poppler/generator_pdf.cpp new/kdegraphics-4.2.90/okular/generators/poppler/generator_pdf.cpp --- old/kdegraphics-4.2.88svn973768/okular/generators/poppler/generator_pdf.cpp 2009-05-14 19:26:11.000000000 +0200 +++ new/kdegraphics-4.2.90/okular/generators/poppler/generator_pdf.cpp 2009-06-03 17:56:45.000000000 +0200 @@ -849,6 +849,7 @@ bool PDFGenerator::print( QPrinter& printer ) { +#if DUMMY_QPRINTER_COPY // Get the real page size to pass to the ps generator QPrinter dummy( QPrinter::PrinterResolution ); dummy.setFullPage( true ); @@ -857,6 +858,10 @@ dummy.setPaperSize( printer.paperSize( QPrinter::Millimeter ), QPrinter::Millimeter ); int width = dummy.width(); int height = dummy.height(); +#else + int width = printer.width(); + int height = printer.height(); +#endif // Create the tempfile to send to FilePrinter, which will manage the deletion KTemporaryFile tf; diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/kdegraphics-4.2.88svn973768/okular/part.cpp new/kdegraphics-4.2.90/okular/part.cpp --- old/kdegraphics-4.2.88svn973768/okular/part.cpp 2009-05-27 21:53:12.000000000 +0200 +++ new/kdegraphics-4.2.90/okular/part.cpp 2009-06-03 13:54:09.000000000 +0200 @@ -835,6 +835,24 @@ } +QString Part::documentMetaData( const QString &metaData ) const +{ + const Okular::DocumentInfo * info = m_document->documentInfo(); + if ( info ) + { + QDomElement docElement = info->documentElement(); + for ( QDomNode node = docElement.firstChild(); !node.isNull(); node = node.nextSibling() ) + { + const QDomElement element = node.toElement(); + if ( metaData.compare( element.tagName(), Qt::CaseInsensitive ) == 0 ) + return element.attribute( "value" ); + } + } + + return QString(); +} + + bool Part::slotImportPSFile() { QString app = KStandardDirs::findExe( "ps2pdf" ); diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/kdegraphics-4.2.88svn973768/okular/part.h new/kdegraphics-4.2.90/okular/part.h --- old/kdegraphics-4.2.88svn973768/okular/part.h 2009-03-27 15:46:18.000000000 +0100 +++ new/kdegraphics-4.2.90/okular/part.h 2009-06-03 13:54:09.000000000 +0200 @@ -111,6 +111,7 @@ Q_SCRIPTABLE uint pages(); Q_SCRIPTABLE uint currentPage(); Q_SCRIPTABLE QString currentDocument(); + Q_SCRIPTABLE QString documentMetaData( const QString &metaData ) const; Q_SCRIPTABLE void slotPreferences(); Q_SCRIPTABLE void slotFind(); Q_SCRIPTABLE void slotPrintPreview(); diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/kdegraphics-4.2.88svn973768/thumbnailers/mobi/mobithumbnail.desktop new/kdegraphics-4.2.90/thumbnailers/mobi/mobithumbnail.desktop --- old/kdegraphics-4.2.88svn973768/thumbnailers/mobi/mobithumbnail.desktop 2009-05-27 21:53:13.000000000 +0200 +++ new/kdegraphics-4.2.90/thumbnailers/mobi/mobithumbnail.desktop 2009-06-03 13:54:09.000000000 +0200 @@ -1,6 +1,7 @@ [Desktop Entry] Type=Service Name=Mobipocket thumbnailer +Name[ca]=Miniaturitzador de Mobipocket Name[da]=Mobipocket-miniaturer Name[de]=M Name[el]=Δημιουργία εικόνων επισκόπησης Mobipocket @@ -11,6 +12,7 @@ Name[is]=Mobipocket smámyndagerð Name[km]=កម្មវិធីបង្កើតរូបភាពតូចៗរបស់ Mobipocket Name[ko]=Mobipocket 미리 보기 생성기 +Name[lv]=Mobipocket sīktēlu veidotājs Name[nb]=Mobipocket minibilder Name[nds]=Mobipocket-Vöransichten Name[pt]=Miniaturas para o Mobipocket diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/kdegraphics-4.2.88svn973768/thumbnailers/raw/rawthumbnail.desktop new/kdegraphics-4.2.90/thumbnailers/raw/rawthumbnail.desktop --- old/kdegraphics-4.2.88svn973768/thumbnailers/raw/rawthumbnail.desktop 2009-05-27 21:53:13.000000000 +0200 +++ new/kdegraphics-4.2.90/thumbnailers/raw/rawthumbnail.desktop 2009-06-03 13:54:09.000000000 +0200 @@ -1,12 +1,15 @@ [Desktop Entry] Type=Service Name=RAW Photo Camera files +Name[ca]=Fitxers RAW de càmera de fotos Name[da]=RAW kamera-filer Name[de]=RAW-Fotokamera-Dateien Name[es]=Archivos RAW de cámara fotográfica Name[et]=Kaamera toorfailid Name[is]=RAW myndavélaskrár Name[km]=ឯកសារម៉ាស៊ីនថតរូបដើម +Name[ko]=RAW 사진 카메라 파일 +Name[lv]=RAW fotogrāfiju faili Name[nb]=RAW foto kamerafiler Name[nds]=RAW-Fotokamera-Dateien Name[pt]=Ficheiros de máquinas fotográficas RAW ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Remember to have fun... -- To unsubscribe, e-mail: opensuse-commit+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-commit+help@opensuse.org