[SCM] ktp-text-ui packaging branch, master, updated. debian/15.12.1-1-1918-gdf4b0ec
Maximiliano Curia
maxy at moszumanska.debian.org
Sat May 28 00:24:04 UTC 2016
Gitweb-URL: http://git.debian.org/?p=pkg-kde/applications/ktp-text-ui.git;a=commitdiff;h=be53e4b
The following commit has been merged in the master branch:
commit be53e4ba27a7018f9e9e39a387a27d62c1503042
Author: Dan Vrátil <dvratil at redhat.com>
Date: Thu Jul 25 23:01:37 2013 +0200
Make TelepathyLoggerQt an optional dependency
REVIEW: 111683
---
CMakeLists.txt | 15 ++++++---
lib/CMakeLists.txt | 13 +++++++-
lib/chat-widget.cpp | 3 --
lib/logmanager.cpp | 66 ++++++++++++++++++++++---------------
lib/logmanager.h | 15 ++-------
lib/logmanager_dummy.cpp | 84 ++++++++++++++++++++++++++++++++++++++++++++++++
6 files changed, 148 insertions(+), 48 deletions(-)
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 1d16dc7..55fc4b9 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -15,13 +15,15 @@ set(KDE_MIN_VERSION "4.4.75")
find_package (KDE4 ${KDE_MIN_VERSION} REQUIRED)
find_package (TelepathyQt4 0.9.1 REQUIRED)
find_package (KTp REQUIRED)
-find_package (TelepathyLoggerQt4 0.7.95 REQUIRED)
+find_package (TelepathyLoggerQt4 0.7.95 QUIET)
+
+macro_log_feature(TELEPATHY_LOGGER_QT4_FOUND "TelepatyLoggerQt4" "Qt bindings for TelepathyLogger. This is needed to provide access to chat logs. HIGHLY recommended" "http://projects.kde.org/telepathy-logger-qt" FALSE "" "")
+macro_display_feature_log()
# FUTURE: When we can depend on KDE 4.10, use emoticoncontexteditaction from here
# find_package(KdepimLibs 4.10 REQUIRED)
-
include (CheckIncludeFiles)
include (KDE4Defaults)
include (MacroLibrary)
@@ -30,22 +32,25 @@ include_directories (${KDE4_INCLUDES}
${TELEPATHY_QT4_INCLUDE_DIR}
${QT_QTWEBKIT_INCLUDES}
${KTP_INCLUDE_DIR}
- ${TELEPATHY_LOGGER_QT4_INCLUDE_DIRS}
"${CMAKE_CURRENT_SOURCE_DIR}/lib"
)
add_definitions (${KDE4_DEFINITIONS}
- ${TELEPATHY_LOGGER_QT4_DEFINITIONS}
-DQT_NO_CAST_FROM_ASCII
-DQT_NO_KEYWORDS)
configure_file(version.h.in ${CMAKE_CURRENT_BINARY_DIR}/version.h @ONLY)
include_directories(${CMAKE_CURRENT_BINARY_DIR})
+if (TELEPATHY_LOGGER_QT4_FOUND)
+ add_definitions(${TELEPATHY_LOGGER_QT4_DEFINITIONS} -DHAVE_TPLOGGERQT)
+ include_directories(${TELEPATHY_LOGGER_QT4_INCLUDE_DIRS})
+ add_subdirectory(logviewer)
+endif (TELEPATHY_LOGGER_QT4_FOUND)
+
add_subdirectory(lib)
add_subdirectory(app)
add_subdirectory(config)
add_subdirectory(data)
add_subdirectory(adiumxtra-protocol-handler)
-add_subdirectory(logviewer)
add_subdirectory(filters)
diff --git a/lib/CMakeLists.txt b/lib/CMakeLists.txt
index 80a3eff..c73de90 100644
--- a/lib/CMakeLists.txt
+++ b/lib/CMakeLists.txt
@@ -13,7 +13,6 @@ set(ktpchat_SRCS
chat-style-plist-file-reader.cpp
chat-text-edit.cpp
chat-search-bar.cpp
- logmanager.cpp
notify-filter.cpp
text-chat-config.cpp
)
@@ -48,6 +47,18 @@ set(ktpchat_UI
chat-widget.ui
)
+if (TELEPATHY_LOGGER_QT4_FOUND)
+ set(ktpchat_SRCS
+ ${ktpchat_SRCS}
+ logmanager.cpp
+ )
+else (TELEPATHY_LOGGER_QT4_FOUND)
+ set(ktpchat_SRCS
+ ${ktpchat_SRCS}
+ logmanager_dummy.cpp
+ )
+endif (TELEPATHY_LOGGER_QT4_FOUND)
+
kde4_add_ui_files(ktpchat_SRCS ${ktpchat_UI})
kde4_add_library(ktpchat SHARED ${ktpchat_SRCS})
diff --git a/lib/chat-widget.cpp b/lib/chat-widget.cpp
index 74cee48..25602ba 100644
--- a/lib/chat-widget.cpp
+++ b/lib/chat-widget.cpp
@@ -51,9 +51,6 @@
#include <TelepathyQt/Presence>
#include <TelepathyQt/PendingChannelRequest>
#include <TelepathyQt/OutgoingFileTransferChannel>
-#include <TelepathyLoggerQt4/TextEvent>
-#include <TelepathyLoggerQt4/LogWalker>
-#include <TelepathyLoggerQt4/PendingEvents>
#include <KTp/presence.h>
#include <KTp/actions.h>
diff --git a/lib/logmanager.cpp b/lib/logmanager.cpp
index 6cd1aec..946b083 100644
--- a/lib/logmanager.cpp
+++ b/lib/logmanager.cpp
@@ -38,14 +38,28 @@
#include <TelepathyQt/TextChannel>
#include <TelepathyQt/ReceivedMessage>
+class LogManager::Private
+{
+ public:
+ Private(): scrollbackLength(10)
+ {
+ }
+
+ Tp::AccountPtr account;
+ Tp::TextChannelPtr textChannel;
+ Tpl::EntityPtr contactEntity;
+ Tpl::LogManagerPtr logManager;
+ int scrollbackLength;
+};
+
LogManager::LogManager(QObject *parent)
: QObject(parent),
- m_scrolbackLength(10)
+ d(new Private)
{
Tpl::init();
- m_logManager = Tpl::LogManager::instance();
- if (m_logManager.isNull()) {
+ d->logManager = Tpl::LogManager::instance();
+ if (d->logManager.isNull()) {
qWarning() << "LogManager not found";
Q_ASSERT(false);
}
@@ -53,65 +67,65 @@ LogManager::LogManager(QObject *parent)
LogManager::~LogManager()
{
-
+ delete d;
}
bool LogManager::exists() const
{
- if (m_account.isNull() || m_textChannel.isNull() ) {
+ if (d->account.isNull() || d->textChannel.isNull() ) {
return false;
}
Tpl::EntityPtr contactEntity;
- if (m_textChannel->targetHandleType() == Tp::HandleTypeContact) {
- contactEntity = Tpl::Entity::create(m_textChannel->targetContact()->id().toLatin1().data(),
+ if (d->textChannel->targetHandleType() == Tp::HandleTypeContact) {
+ contactEntity = Tpl::Entity::create(d->textChannel->targetContact()->id().toLatin1().data(),
Tpl::EntityTypeContact, NULL, NULL);
- } else if (m_textChannel->targetHandleType() == Tp::HandleTypeRoom) {
- contactEntity = Tpl::Entity::create(m_textChannel->targetId().toLatin1().data(),
+ } else if (d->textChannel->targetHandleType() == Tp::HandleTypeRoom) {
+ contactEntity = Tpl::Entity::create(d->textChannel->targetId().toLatin1().data(),
Tpl::EntityTypeRoom, NULL, NULL);
} else {
return false;
}
- return m_logManager->exists(m_account, contactEntity, Tpl::EventTypeMaskText);
+ return d->logManager->exists(d->account, contactEntity, Tpl::EventTypeMaskText);
}
void LogManager::setTextChannel(const Tp::AccountPtr &account, const Tp::TextChannelPtr &textChannel)
{
- m_textChannel = textChannel;
- m_account = account;
+ d->textChannel = textChannel;
+ d->account = account;
}
void LogManager::setScrollbackLength(int n)
{
- m_scrolbackLength = n;
+ d->scrollbackLength = n;
}
int LogManager::scrollbackLength() const
{
- return m_scrolbackLength;
+ return d->scrollbackLength;
}
void LogManager::fetchScrollback()
{
- fetchHistory(m_scrolbackLength);
+ fetchHistory(d->scrollbackLength);
}
void LogManager::fetchHistory(int n)
{
- if (n > 0 && !m_account.isNull() && !m_textChannel.isNull()) {
+ if (n > 0 && !d->account.isNull() && !d->textChannel.isNull()) {
Tpl::EntityPtr contactEntity;
- if (m_textChannel->targetHandleType() == Tp::HandleTypeContact) {
- contactEntity = Tpl::Entity::create(m_textChannel->targetContact()->id().toLatin1().data(),
+ if (d->textChannel->targetHandleType() == Tp::HandleTypeContact) {
+ contactEntity = Tpl::Entity::create(d->textChannel->targetContact()->id().toLatin1().data(),
Tpl::EntityTypeContact, NULL, NULL);
- } else if (m_textChannel->targetHandleType() == Tp::HandleTypeRoom) {
- contactEntity = Tpl::Entity::create(m_textChannel->targetId().toLatin1().data(),
+ } else if (d->textChannel->targetHandleType() == Tp::HandleTypeRoom) {
+ contactEntity = Tpl::Entity::create(d->textChannel->targetId().toLatin1().data(),
Tpl::EntityTypeRoom, NULL, NULL);
}
if (!contactEntity.isNull()) {
- Tpl::LogWalkerPtr walker = m_logManager->queryWalkFilteredEvents(
- m_account, contactEntity, Tpl::EventTypeMaskText, 0, 0);
+ Tpl::LogWalkerPtr walker = d->logManager->queryWalkFilteredEvents(
+ d->account, contactEntity, Tpl::EventTypeMaskText, 0, 0);
Tpl::PendingEvents *events = walker->queryEvents(n);
connect(events, SIGNAL(finished(Tpl::PendingOperation*)),
this, SLOT(onEventsFinished(Tpl::PendingOperation*)));
@@ -139,15 +153,15 @@ void LogManager::onEventsFinished(Tpl::PendingOperation *po)
}
QStringList queuedMessageTokens;
- if (!m_textChannel.isNull()) {
- Q_FOREACH(const Tp::ReceivedMessage &message, m_textChannel->messageQueue()) {
+ if (!d->textChannel.isNull()) {
+ Q_FOREACH(const Tp::ReceivedMessage &message, d->textChannel->messageQueue()) {
queuedMessageTokens.append(message.messageToken());
}
}
kDebug() << "queuedMessageTokens" << queuedMessageTokens;
- // get last n (m_fetchLast) messages that are not queued
+ // get last n (d->fetchLast) messages that are not queued
QList<Tpl::EventPtr> allEvents = pe->events();
// See https://bugs.kde.org/show_bug.cgi?id=317866
@@ -159,7 +173,7 @@ void LogManager::onEventsFinished(Tpl::PendingOperation *po)
const Tpl::TextEventPtr textEvent = event.dynamicCast<Tpl::TextEvent>();
if (!textEvent.isNull()) {
if (!queuedMessageTokens.contains(textEvent->messageToken())) {
- const KTp::Message message = KTp::MessageProcessor::instance()->processIncomingMessage(textEvent, m_account, m_textChannel);
+ const KTp::Message message = KTp::MessageProcessor::instance()->processIncomingMessage(textEvent, d->account, d->textChannel);
messages.append(message);
}
}
diff --git a/lib/logmanager.h b/lib/logmanager.h
index 3f4a2f1..61a5b04 100644
--- a/lib/logmanager.h
+++ b/lib/logmanager.h
@@ -22,13 +22,6 @@
#include "adium-theme-content-info.h"
-#include <TelepathyLoggerQt4/LogManager>
-#include <TelepathyLoggerQt4/Entity>
-
-#include <TelepathyQt/Types>
-#include <TelepathyQt/Account>
-#include <TelepathyQt/Contact>
-
#include <KTp/message.h>
namespace Tpl {
@@ -72,12 +65,8 @@ private Q_SLOTS:
void onEventsFinished(Tpl::PendingOperation *po);
private:
- Tp::AccountPtr m_account;
- Tp::TextChannelPtr m_textChannel;
- Tpl::EntityPtr m_contactEntity;
- Tpl::LogManagerPtr m_logManager;
-
- int m_scrolbackLength;
+ class Private;
+ Private * const d;
};
#endif // LOGMANAGER_H
diff --git a/lib/logmanager_dummy.cpp b/lib/logmanager_dummy.cpp
new file mode 100644
index 0000000..bf11809
--- /dev/null
+++ b/lib/logmanager_dummy.cpp
@@ -0,0 +1,84 @@
+/*
+ Copyright (C) 2013 Daniel Vrátil <dvratil at redhat.com>
+
+ This library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ This library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with this library; if not, write to the Free Software
+ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+*/
+
+
+#include "logmanager.h"
+
+#include <TelepathyQt/Types>
+
+class LogManager::Private
+{
+ public:
+ Private(): scrollbackLength(10)
+ {
+ }
+
+ int scrollbackLength;
+};
+
+LogManager::LogManager(QObject *parent)
+ : QObject(parent),
+ d(new Private)
+{
+}
+
+LogManager::~LogManager()
+{
+ delete d;
+}
+
+bool LogManager::exists() const
+{
+ return false;
+}
+
+void LogManager::setTextChannel(const Tp::AccountPtr &account, const Tp::TextChannelPtr &textChannel)
+{
+ Q_UNUSED(account);
+ Q_UNUSED(textChannel);
+}
+
+void LogManager::setScrollbackLength(int n)
+{
+ d->scrollbackLength = n;
+}
+
+int LogManager::scrollbackLength() const
+{
+ return d->scrollbackLength;
+}
+
+void LogManager::fetchScrollback()
+{
+ QMetaObject::invokeMethod(this, "fetched", Qt::QueuedConnection,
+ Q_ARG(QList<KTp::Message>, QList<KTp::Message>()));
+}
+
+void LogManager::fetchHistory(int n)
+{
+ Q_UNUSED(n);
+
+ fetchScrollback();
+}
+
+void LogManager::onEventsFinished(Tpl::PendingOperation *po)
+{
+ Q_UNUSED(po);
+}
+
+#include "moc_logmanager.cpp"
--
ktp-text-ui packaging
More information about the pkg-kde-commits
mailing list