diff options
author | Kevin Smith <git@kismith.co.uk> | 2010-08-19 20:15:37 (GMT) |
---|---|---|
committer | Kevin Smith <git@kismith.co.uk> | 2010-08-19 20:15:55 (GMT) |
commit | c1a2f7eb8f32e944aaccc7b9f03e2551459fe0d6 (patch) | |
tree | 24ee7eb51df478ec671c0f8da534ba05db38e098 | |
parent | 74be9738c8dbb3bc037d0bcba0d7fc1539343630 (diff) | |
download | swift-contrib-c1a2f7eb8f32e944aaccc7b9f03e2551459fe0d6.zip swift-contrib-c1a2f7eb8f32e944aaccc7b9f03e2551459fe0d6.tar.bz2 |
Compilation fix for Unices
-rw-r--r-- | Swift/QtUI/QtChatView.cpp | 19 | ||||
-rw-r--r-- | Swift/QtUI/QtChatView.h | 4 | ||||
-rw-r--r-- | Swiften/Application/UnixApplication.h | 19 | ||||
-rw-r--r-- | Swiften/Application/UnixApplicationPathProvider.h | 3 |
4 files changed, 17 insertions, 28 deletions
diff --git a/Swift/QtUI/QtChatView.cpp b/Swift/QtUI/QtChatView.cpp index 3324108..6b38309 100644 --- a/Swift/QtUI/QtChatView.cpp +++ b/Swift/QtUI/QtChatView.cpp @@ -68,6 +68,14 @@ void QtChatView::handleKeyPressEvent(QKeyEvent* event) { } void QtChatView::addMessage(const ChatSnippet& snippet) { + if (viewReady_) { + appendToView(snippet); + } else { + queuedSnippets_.append(snippet); + } +} + +void QtChatView::appendToView(const ChatSnippet& snippet) { //bool wasScrolledToBottom = isScrolledToBottom(); QString content = snippet.getContent(); @@ -82,12 +90,7 @@ void QtChatView::addMessage(const ChatSnippet& snippet) { else { command = "appendNextMessage(\"" + content + "\");"; } - if (viewReady_) { - webPage_->mainFrame()->evaluateJavaScript(command); - } - else { - queuedMessages_ += command; - } + webPage_->mainFrame()->evaluateJavaScript(command); //qDebug() << webPage_->mainFrame()->toHtml(); previousContinuationElementID_ = snippet.getContinuationElementID(); @@ -118,7 +121,9 @@ void QtChatView::handleLinkClicked(const QUrl& url) { void QtChatView::handleViewLoadFinished(bool ok) { Q_ASSERT(ok); viewReady_ = true; - webPage_->mainFrame()->evaluateJavaScript(queuedMessages_); + foreach (const ChatSnippet& snippet, queuedSnippets_) { + appendToView(snippet); + } queuedMessages_.clear(); } diff --git a/Swift/QtUI/QtChatView.h b/Swift/QtUI/QtChatView.h index ea64265..a5b6b4a 100644 --- a/Swift/QtUI/QtChatView.h +++ b/Swift/QtUI/QtChatView.h @@ -9,6 +9,7 @@ #include <QString> #include <QWidget> +#include <QList> #include "ChatSnippet.h" @@ -35,11 +36,12 @@ namespace Swift { void handleViewLoadFinished(bool); private: + void appendToView(const ChatSnippet& snippet); bool viewReady_; QtWebView* webView_; QWebPage* webPage_; QString previousContinuationElementID_; - QString queuedMessages_; + QList<ChatSnippet> queuedSnippets_; }; } diff --git a/Swiften/Application/UnixApplication.h b/Swiften/Application/UnixApplication.h index 9ec9300..c607b7d 100644 --- a/Swiften/Application/UnixApplication.h +++ b/Swiften/Application/UnixApplication.h @@ -4,8 +4,7 @@ * See Documentation/Licenses/GPLv3.txt for more information. */ -#ifndef SWIFTEN_UnixApplication_H -#define SWIFTEN_UnixApplication_H +#pragma once #include "Swiften/Application/Application.h" #include "Swiften/Application/NullApplicationMessageDisplay.h" @@ -22,24 +21,8 @@ namespace Swift { return &messageDisplay_; } - virtual boost::filesystem::path getHomeDir() const { - return boost::filesystem::path(getenv("HOME")); - } - - boost::filesystem::path getSettingsDir() const { - boost::filesystem::path result(getHomeDir() / ("." + getApplicationName().getLowerCase().getUTF8String())); - try { - boost::filesystem::create_directory(result); - } - catch (const boost::filesystem::filesystem_error& e) { - std::cerr << "ERROR: " << e.what() << std::endl; - } - return result; - } - private: NullApplicationMessageDisplay messageDisplay_; }; } -#endif diff --git a/Swiften/Application/UnixApplicationPathProvider.h b/Swiften/Application/UnixApplicationPathProvider.h index c361267..3773fef 100644 --- a/Swiften/Application/UnixApplicationPathProvider.h +++ b/Swiften/Application/UnixApplicationPathProvider.h @@ -24,7 +24,7 @@ namespace Swift { } boost::filesystem::path getSettingsDir() const { - boost::filesystem::path result(getHomeDir() / ("." + getName().getLowerCase().getUTF8String())); + boost::filesystem::path result(getHomeDir() / ("." + getApplicationName().getLowerCase().getUTF8String())); try { boost::filesystem::create_directory(result); } @@ -49,4 +49,3 @@ namespace Swift { }; } -#endif |