From 2fcf84315b2ecc7a48f56e6b8223bdaf9a27b60b Mon Sep 17 00:00:00 2001 From: Claudio Valerio Date: Mon, 23 Jan 2012 15:30:18 +0100 Subject: [PATCH 1/2] fixed video issue on linux --- src/core/UBDisplayManager.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/core/UBDisplayManager.cpp b/src/core/UBDisplayManager.cpp index 6ecdc679..96c25059 100644 --- a/src/core/UBDisplayManager.cpp +++ b/src/core/UBDisplayManager.cpp @@ -48,7 +48,7 @@ UBDisplayManager::UBDisplayManager(QObject *parent) void UBDisplayManager::initScreenIndexes() { - int screenCount = numScreens(); + int screenCount = 1;//= numScreens(); mScreenIndexesRoles.clear(); From 95380fc88125a04f23b6446f2939406f5ec60e1f Mon Sep 17 00:00:00 2001 From: Claudio Valerio Date: Mon, 23 Jan 2012 15:30:30 +0100 Subject: [PATCH 2/2] fixed video issue on linux --- src/adaptors/UBImportDocument.cpp | 3 +- src/adaptors/UBImportImage.cpp | 1 - src/adaptors/UBImportPDF.cpp | 1 - src/customWidgets/UBMediaWidget.cpp | 29 +++++++++++--- src/customWidgets/UBMediaWidget.h | 1 + src/document/UBDocumentController.cpp | 2 - src/gui/UBTBPageEditWidget.cpp | 8 +++- src/gui/UBTeacherBarPreviewWidget.cpp | 56 +++++++++++++-------------- src/gui/UBTeacherBarPreviewWidget.h | 2 +- 9 files changed, 60 insertions(+), 43 deletions(-) diff --git a/src/adaptors/UBImportDocument.cpp b/src/adaptors/UBImportDocument.cpp index 17251ae5..f441b980 100644 --- a/src/adaptors/UBImportDocument.cpp +++ b/src/adaptors/UBImportDocument.cpp @@ -14,7 +14,6 @@ */ #include "UBImportDocument.h" -#include "UBMetadataDcSubsetAdaptor.h" #include "document/UBDocumentProxy.h" #include "frameworks/UBFileSystemUtils.h" @@ -49,7 +48,7 @@ QStringList UBImportDocument::supportedExtentions() QString UBImportDocument::importFileFilter() { - return tr("Sankore 3.1 (*.ubz)"); + return tr("Open-Sankore (*.ubz)"); } diff --git a/src/adaptors/UBImportImage.cpp b/src/adaptors/UBImportImage.cpp index 5418b1da..f2829dd6 100644 --- a/src/adaptors/UBImportImage.cpp +++ b/src/adaptors/UBImportImage.cpp @@ -14,7 +14,6 @@ */ #include "UBImportImage.h" -#include "UBMetadataDcSubsetAdaptor.h" #include "UBSvgSubsetAdaptor.h" #include "document/UBDocumentProxy.h" diff --git a/src/adaptors/UBImportPDF.cpp b/src/adaptors/UBImportPDF.cpp index b178b154..c8769996 100644 --- a/src/adaptors/UBImportPDF.cpp +++ b/src/adaptors/UBImportPDF.cpp @@ -14,7 +14,6 @@ */ #include "UBImportPDF.h" -#include "UBMetadataDcSubsetAdaptor.h" #include "UBSvgSubsetAdaptor.h" #include "document/UBDocumentProxy.h" diff --git a/src/customWidgets/UBMediaWidget.cpp b/src/customWidgets/UBMediaWidget.cpp index 572db702..c1809d93 100644 --- a/src/customWidgets/UBMediaWidget.cpp +++ b/src/customWidgets/UBMediaWidget.cpp @@ -103,6 +103,21 @@ eMediaType UBMediaWidget::mediaType() return mType; } +void UBMediaWidget::showEvent(QShowEvent* event) +{ + if(!mpVideoWidget){ + mpVideoWidget = new Phonon::VideoWidget(this); + mMediaLayout.addStretch(1); + mMediaLayout.addWidget(mpVideoWidget, 0); + mMediaLayout.addStretch(1); + Phonon::createPath(mpMediaObject, mpVideoWidget); + adaptSizeToVideo(); + mpMediaObject->play(); + mpMediaObject->stop(); + } + QWidget::showEvent(event); +} + /** * \brief Create the media player */ @@ -114,12 +129,14 @@ void UBMediaWidget::createMediaPlayer() if(eMediaType_Video == mType){ mMediaLayout.setContentsMargins(10, 10, 25, 10); - mpVideoWidget = new Phonon::VideoWidget(this); - mMediaLayout.addStretch(1); - mMediaLayout.addWidget(mpVideoWidget, 0); - mMediaLayout.addStretch(1); - Phonon::createPath(mpMediaObject, mpVideoWidget); - adaptSizeToVideo(); + if(isVisible()){ + mpVideoWidget = new Phonon::VideoWidget(this); + mMediaLayout.addStretch(1); + mMediaLayout.addWidget(mpVideoWidget, 0); + mMediaLayout.addStretch(1); + Phonon::createPath(mpMediaObject, mpVideoWidget); + adaptSizeToVideo(); + } mpAudioOutput = new Phonon::AudioOutput(Phonon::VideoCategory, this); Phonon::createPath(mpMediaObject, mpAudioOutput); }else if(eMediaType_Audio == mType){ diff --git a/src/customWidgets/UBMediaWidget.h b/src/customWidgets/UBMediaWidget.h index ba7d774b..ef8a65a2 100644 --- a/src/customWidgets/UBMediaWidget.h +++ b/src/customWidgets/UBMediaWidget.h @@ -71,6 +71,7 @@ public: protected: void resizeEvent(QResizeEvent* ev); + void showEvent(QShowEvent* event); private slots: void onPlayStopClicked(); diff --git a/src/document/UBDocumentController.cpp b/src/document/UBDocumentController.cpp index 7ee43999..9cae24db 100644 --- a/src/document/UBDocumentController.cpp +++ b/src/document/UBDocumentController.cpp @@ -37,7 +37,6 @@ #include "board/UBBoardPaletteManager.h" #include "board/UBDrawingController.h" -//#include "gui/UBKeyboardPalette.h" #include "gui/UBThumbnailView.h" #include "gui/UBDocumentTreeWidget.h" @@ -69,7 +68,6 @@ UBDocumentController::UBDocumentController(UBMainWindow* mainWindow) , mToolsPalette(0) , mToolsPalettePositionned(false) , mTrashTi(0) -// , mKeyboardPalette(0) { setupViews(); setupToolbar(); diff --git a/src/gui/UBTBPageEditWidget.cpp b/src/gui/UBTBPageEditWidget.cpp index 5e512d52..f80c894f 100644 --- a/src/gui/UBTBPageEditWidget.cpp +++ b/src/gui/UBTBPageEditWidget.cpp @@ -200,9 +200,13 @@ void UBTBPageEditWidget::updateFields() } // Medias foreach(QString url, mpDataMgr->mediaUrls()){ + if(url.isEmpty()) + continue; QWidget* pWidget = mpMediaContainer->generateMediaWidget(url); - mpDataMgr->medias()->append(pWidget); - mpMediaContainer->addWidget(pWidget); + if(pWidget != NULL){ + mpDataMgr->medias()->append(pWidget); + mpMediaContainer->addWidget(pWidget); + } } // Links foreach(sLink link, *mpDataMgr->urls()){ diff --git a/src/gui/UBTeacherBarPreviewWidget.cpp b/src/gui/UBTeacherBarPreviewWidget.cpp index 662996df..2181a549 100644 --- a/src/gui/UBTeacherBarPreviewWidget.cpp +++ b/src/gui/UBTeacherBarPreviewWidget.cpp @@ -43,34 +43,34 @@ void UBTeacherBarPreviewMedia::loadWidgets(QList pWidgetsList, bool is } -int UBTeacherBarPreviewMedia::loadMedia(QStringList pMedias) -{ - int addedMedia = 0; -// foreach(QString eachString, pMedias){ -// if(!eachString.isEmpty()){ -// QString mimeType = UBFileSystemUtils::mimeTypeFromFileName(eachString); -// if(mimeType.contains("image")){ -// UBDraggableLabel* label = new UBDraggableLabel(); -// label->loadImage(eachString); -// mWidget->addWidget(label); -// mWidgetList[label]=eachString; -// addedMedia += 1; -// } -// else if(mimeType.contains("video") || mimeType.contains("audio")){ -// UBDraggableMediaPlayer* mediaPlayer = new UBDraggableMediaPlayer(); -// mediaPlayer->setFile(eachString); -// mWidget->addWidget(mediaPlayer); -// mWidgetList[mediaPlayer] = eachString; -// addedMedia += 1; -// } -// else{ -// qWarning() << "pMediaPath" << eachString; -// qWarning() << "bad idea to come here"; -// } -// } -// } - return addedMedia; -} +//int UBTeacherBarPreviewMedia::loadMedia(QStringList pMedias) +//{ +// int addedMedia = 0; +//// foreach(QString eachString, pMedias){ +//// if(!eachString.isEmpty()){ +//// QString mimeType = UBFileSystemUtils::mimeTypeFromFileName(eachString); +//// if(mimeType.contains("image")){ +//// UBDraggableLabel* label = new UBDraggableLabel(); +//// label->loadImage(eachString); +//// mWidget->addWidget(label); +//// mWidgetList[label]=eachString; +//// addedMedia += 1; +//// } +//// else if(mimeType.contains("video") || mimeType.contains("audio")){ +//// UBDraggableMediaPlayer* mediaPlayer = new UBDraggableMediaPlayer(); +//// mediaPlayer->setFile(eachString); +//// mWidget->addWidget(mediaPlayer); +//// mWidgetList[mediaPlayer] = eachString; +//// addedMedia += 1; +//// } +//// else{ +//// qWarning() << "pMediaPath" << eachString; +//// qWarning() << "bad idea to come here"; +//// } +//// } +//// } +// return addedMedia; +//} // ----------------------------------------------------------------------------------------------- UBActionPreview::UBActionPreview(QWidget *parent, const char *name):QWidget(parent) diff --git a/src/gui/UBTeacherBarPreviewWidget.h b/src/gui/UBTeacherBarPreviewWidget.h index db70b142..a7ff6e9b 100644 --- a/src/gui/UBTeacherBarPreviewWidget.h +++ b/src/gui/UBTeacherBarPreviewWidget.h @@ -15,7 +15,7 @@ class UBTeacherBarPreviewMedia : public QWidget public: UBTeacherBarPreviewMedia(QWidget* parent=0, const char* name="UBTeacherBarPreviewMedia"); ~UBTeacherBarPreviewMedia(); - int loadMedia(QStringList pMedias); +// int loadMedia(QStringList pMedias); void loadWidgets(QList pWidgetList, bool isResizable = true); void cleanMedia();