From 804122923fa47ed829d87aabdc8101df83754891 Mon Sep 17 00:00:00 2001 From: shibakaneki Date: Tue, 9 Aug 2011 10:53:34 +0200 Subject: [PATCH 1/6] Resolved a crash when the user enters bad credentials for the network infos --- .../publishing/UBDocumentPublisher.cpp | 42 ++++++++++--------- 1 file changed, 23 insertions(+), 19 deletions(-) diff --git a/src/adaptors/publishing/UBDocumentPublisher.cpp b/src/adaptors/publishing/UBDocumentPublisher.cpp index bb2c477b..5e20e144 100644 --- a/src/adaptors/publishing/UBDocumentPublisher.cpp +++ b/src/adaptors/publishing/UBDocumentPublisher.cpp @@ -574,27 +574,31 @@ void UBDocumentPublisher::onFinished(QNetworkReply *reply) // Now we isolate every cookie value QStringList qslCookieVals = qsCookieValue.split("; "); - bool bTransferOk = false; - for(int j = 0; j <= qslCookieVals.size(); j++) - { - if(qslCookieVals.at(j).startsWith("assetStatus")) - { - QStringList qslAsset = qslCookieVals.at(j).split("="); - if(qslAsset.at(1) == "UPLOADED") - { - bTransferOk = true; - break; - } - } - } - if(bTransferOk) - { - UBApplication::showMessage(tr("Document uploaded correctly on the web.")); - } - else + bool bTransferOk = false; + + for(int j = 0; j < qslCookieVals.size(); j++) + { + qDebug() << j; + if(qslCookieVals.at(j).startsWith("assetStatus")) + { + QStringList qslAsset = qslCookieVals.at(j).split("="); + if(qslAsset.at(1) == "UPLOADED") { - UBApplication::showMessage(tr("Failed to upload document on the web.")); + bTransferOk = true; + break; } + } + } + + if(bTransferOk) + { + UBApplication::showMessage(tr("Document uploaded correctly on the web.")); + } + else + { + UBApplication::showMessage(tr("Failed to upload document on the web.")); + } + reply->deleteLater(); } From 7c3a440fddd550a0716aa96d96e761d0c21d1538 Mon Sep 17 00:00:00 2001 From: Anatoly Mihalchenko Date: Tue, 9 Aug 2011 13:31:27 +0300 Subject: [PATCH 2/6] OSK --- src/gui/UBKeyboardPalette.cpp | 59 ++++++++++++++++++++++++++--------- src/gui/UBKeyboardPalette.h | 6 +++- 2 files changed, 49 insertions(+), 16 deletions(-) diff --git a/src/gui/UBKeyboardPalette.cpp b/src/gui/UBKeyboardPalette.cpp index b31fb541..a0866454 100644 --- a/src/gui/UBKeyboardPalette.cpp +++ b/src/gui/UBKeyboardPalette.cpp @@ -62,19 +62,37 @@ UBKeyboardPalette::UBKeyboardPalette(QWidget *parent) QList UBKeyboardPalette::instances; UBKeyboardPalette* UBKeyboardPalette::create(QWidget *parent) { + //------------------------------// + if (!UBPlatformUtils::hasVirtualKeyboard()) return NULL; + //------------------------------// + + UBKeyboardPalette* firstKeyboard = NULL; + // if we already have keyboards inside, get it position and show/hide status, for new keyboard + if(instances.size() > 0) + firstKeyboard = instances.at(0); + + //------------------------------// + UBKeyboardPalette* instance = new UBKeyboardPalette(parent); - instances.append(instance); - instance->setKeyButtonSize(UBSettings::settings()->boardKeyboardPaletteKeyBtnSize->get().toString()); - instance->setVisible(false); + + instance->m_isVisible = firstKeyboard ? firstKeyboard->m_isVisible : false; + instance->setVisible(instance->m_isVisible); + + if( firstKeyboard ) + instance->move(firstKeyboard->m_pos); + connect(UBSettings::settings()->boardKeyboardPaletteKeyBtnSize, SIGNAL(changed(QVariant)), instance, SLOT(keyboardPaletteButtonSizeChanged(QVariant))); - + connect(UBApplication::mainWindow->actionVirtualKeyboard, SIGNAL(triggered(bool)), instance, SLOT(showKeyboard(bool))); +// connect(instance, SIGNAL(moved(const QPoint&)), instance, SLOT(syncPosition(const QPoint&))); connect(instance, SIGNAL(closed()), instance, SLOT(hideKeyboard())); + //------------------------------// + instances.append(instance); foreach(UBKeyboardPalette* inst, instances) { connect(inst, SIGNAL(moved(const QPoint&)), instance, SLOT(syncPosition(const QPoint&))); @@ -82,18 +100,29 @@ UBKeyboardPalette* UBKeyboardPalette::create(QWidget *parent) connect(inst, SIGNAL(localeChanged(int)), instance, SLOT(syncLocale(int))); connect(instance, SIGNAL(localeChanged(int)), inst, SLOT(syncLocale(int))); + +// connect(instance, SIGNAL(closed()), inst, ) } + //------------------------------// + return instance; } +void UBKeyboardPalette::showKeyboard(bool show) +{ + m_isVisible = show; +} + + void UBKeyboardPalette::hideKeyboard() { - UBApplication::mainWindow->actionVirtualKeyboard->activate(QAction::Trigger); + UBApplication::mainWindow->actionVirtualKeyboard->activate(QAction.Trigger); } void UBKeyboardPalette::syncPosition(const QPoint & pos) { + m_pos = pos; move(pos); } @@ -123,20 +152,20 @@ void UBKeyboardPalette::setInput(const UBKeyboardLocale* locale) UBKeyboardPalette::~UBKeyboardPalette() { - //for (int i=0; i<47; i++) - // delete buttons[i]; + for (int i=0; i<47; i++) + delete buttons[i]; delete [] buttons; - //for (int i=0; i<8; i++) - // delete ctrlButtons[i]; + for (int i=0; i<8; i++) + delete ctrlButtons[i]; delete [] ctrlButtons; - //if (locales!=NULL) - //{ - // for (int i=0; i instances; + bool m_isVisible; + QPoint m_pos; signals: void moved(const QPoint&); @@ -88,6 +92,7 @@ private slots: void syncLocale(int nLocale); void keyboardPaletteButtonSizeChanged(QVariant size); void onActivated(bool b); + void showKeyboard(bool show); void hideKeyboard(); protected: @@ -117,7 +122,6 @@ protected: private: UBKeyboardPalette(QWidget *parent); - static QList instances; QRect originalRect; From baa88b50526926b8028e68b626a3f9a53790ef28 Mon Sep 17 00:00:00 2001 From: Anatoly Mihalchenko Date: Tue, 9 Aug 2011 13:37:46 +0300 Subject: [PATCH 3/6] OSK - exception on exit --- src/gui/UBKeyboardPalette.cpp | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/src/gui/UBKeyboardPalette.cpp b/src/gui/UBKeyboardPalette.cpp index a0866454..46e774fb 100644 --- a/src/gui/UBKeyboardPalette.cpp +++ b/src/gui/UBKeyboardPalette.cpp @@ -152,20 +152,20 @@ void UBKeyboardPalette::setInput(const UBKeyboardLocale* locale) UBKeyboardPalette::~UBKeyboardPalette() { - for (int i=0; i<47; i++) - delete buttons[i]; + //for (int i=0; i<47; i++) + // delete buttons[i]; delete [] buttons; - for (int i=0; i<8; i++) - delete ctrlButtons[i]; + //for (int i=0; i<8; i++) + // delete ctrlButtons[i]; delete [] ctrlButtons; - if (locales!=NULL) - { - for (int i=0; i Date: Tue, 9 Aug 2011 16:25:10 +0300 Subject: [PATCH 4/6] linux compilation problem --- src/gui/UBKeyboardPalette.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/gui/UBKeyboardPalette.cpp b/src/gui/UBKeyboardPalette.cpp index 46e774fb..14a647a9 100644 --- a/src/gui/UBKeyboardPalette.cpp +++ b/src/gui/UBKeyboardPalette.cpp @@ -117,7 +117,7 @@ void UBKeyboardPalette::showKeyboard(bool show) void UBKeyboardPalette::hideKeyboard() { - UBApplication::mainWindow->actionVirtualKeyboard->activate(QAction.Trigger); + UBApplication::mainWindow->actionVirtualKeyboard->activate(QAction::Trigger); } void UBKeyboardPalette::syncPosition(const QPoint & pos) From 816168fb97ba87e16aea612869514d96caa74a94 Mon Sep 17 00:00:00 2001 From: Claudio Valerio Date: Tue, 9 Aug 2011 15:39:08 +0200 Subject: [PATCH 5/6] Fixed bugs in uniboard->sankore documents conversion --- src/transition/UniboardSankoreTransition.cpp | 58 +++++++++++++++++++- src/transition/UniboardSankoreTransition.h | 2 + 2 files changed, 59 insertions(+), 1 deletion(-) diff --git a/src/transition/UniboardSankoreTransition.cpp b/src/transition/UniboardSankoreTransition.cpp index 33de53fe..01b5fcbc 100644 --- a/src/transition/UniboardSankoreTransition.cpp +++ b/src/transition/UniboardSankoreTransition.cpp @@ -12,6 +12,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . */ + #include "UniboardSankoreTransition.h" #include "core/UBSettings.h" #include "frameworks/UBDesktopServices.h" @@ -90,6 +91,59 @@ void UniboardSankoreTransition::startDocumentTransition() connect(this,SIGNAL(transitioningFile(QString)),mTransitionDlg,SLOT(transitioningFile(QString))); } + +bool UniboardSankoreTransition::checkPage(QString& sankorePagePath) +{ + QFile file(sankorePagePath); + if (!file.open(QIODevice::ReadOnly | QIODevice::Text)) + return false; + + QByteArray documentByteArray = file.readAll(); + file.close(); + + QString sankoreDirectory = sankorePagePath.left(sankorePagePath.indexOf("/page")); + ; + sankoreDirectory = QUrl::fromLocalFile(sankoreDirectory).toString(); + QString documentString(documentByteArray); + qDebug() << documentString; + documentString.replace("xlink:href=\"videos/","xlink:href=\"" + sankoreDirectory + "/videos/"); + + documentString.replace("xlink:href=\"widgets/","xlink:href=\"" + sankoreDirectory + "/widgets/"); + + documentString.replace("xlink:href=\"objects/","xlink:href=\"" + sankoreDirectory + "/objects/"); + + documentString.replace("xlink:href=\"audios/","xlink:href=\"" + sankoreDirectory + "/audios/"); + + qDebug() << documentString; + + if (!file.open(QIODevice::WriteOnly | QIODevice::Text)) + return false; + + file.write(documentString.toAscii()); + file.close(); + + return true; +} + +bool UniboardSankoreTransition::updateSankoreHRef(QString& sankoreDocumentPath) +{ + bool result = true; + QFileInfoList fileInfoList = UBFileSystemUtils::allElementsInDirectory(sankoreDocumentPath); + + QFileInfoList::iterator fileInfo; + QString sankoreDocumentDirectory = UBSettings::uniboardDocumentDirectory(); + + for (fileInfo = fileInfoList.begin(); fileInfo != fileInfoList.end() && result; fileInfo += 1) { + if (fileInfo->fileName().endsWith("svg")){ + qDebug() << fileInfo->absolutePath(); + QString path = fileInfo->absolutePath() + "/" + fileInfo->fileName(); + result = checkPage(path); + } + } + + return result; +} + void UniboardSankoreTransition::executeTransition() { bool result = false; @@ -109,7 +163,9 @@ void UniboardSankoreTransition::executeTransition() QString sankoreDocumentName = fileInfo->fileName(); emit transitioningFile(sankoreDocumentName); sankoreDocumentName.replace("Uniboard","Sankore"); - result = UBFileSystemUtils::copyDir(fileInfo->filePath(),sankoreDocumentDirectory + "/" + sankoreDocumentName); + QString sankoreDocumentPath = sankoreDocumentDirectory + "/" + sankoreDocumentName; + result = UBFileSystemUtils::copyDir(fileInfo->filePath(),sankoreDocumentPath); + result &= updateSankoreHRef(sankoreDocumentPath); } } diff --git a/src/transition/UniboardSankoreTransition.h b/src/transition/UniboardSankoreTransition.h index f5c178f4..e5aec048 100644 --- a/src/transition/UniboardSankoreTransition.h +++ b/src/transition/UniboardSankoreTransition.h @@ -39,6 +39,8 @@ public: explicit UniboardSankoreTransition(QObject *parent = 0); ~UniboardSankoreTransition(); void documentTransition(); + bool checkPage(QString& sankorePagePath); + bool updateSankoreHRef(QString &sankoreDocumentPath); void executeTransition(); From 80ceb2223dc238aca073bf1bce4ef66c40a6ff64 Mon Sep 17 00:00:00 2001 From: Claudio Valerio Date: Tue, 9 Aug 2011 16:14:21 +0200 Subject: [PATCH 6/6] updated version --- Sankore_3.1.pro | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Sankore_3.1.pro b/Sankore_3.1.pro index e6a69f4e..2f368778 100644 --- a/Sankore_3.1.pro +++ b/Sankore_3.1.pro @@ -7,7 +7,7 @@ CONFIG += debug_and_release \ no_include_pwd VERSION_MAJ = 1 -VERSION_MIN = 11 +VERSION_MIN = 12 VERSION_TYPE = b # a = alpha, b = beta, r = release, other => error VERSION_PATCH = 00