[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:21:50 UTC 2016
Gitweb-URL: http://git.debian.org/?p=pkg-kde/applications/ktp-text-ui.git;a=commitdiff;h=b3130d0
The following commit has been merged in the master branch:
commit b3130d07417d265754083286e79622991d561902
Author: Dominik Cermak <d.cermak at arcor.de>
Date: Sat May 12 20:26:32 2012 +0200
Enable the "Previous Converstations" actions only if there is such a
Reviewed-by: David Edmundson, Martin Klapetek
---
app/CMakeLists.txt | 2 +-
app/chat-window.cpp | 14 ++++++++++++++
app/chat-window.h | 1 +
lib/chat-widget.cpp | 10 +++++++++-
lib/chat-widget.h | 3 +++
lib/logmanager.cpp | 11 ++++++++++-
6 files changed, 38 insertions(+), 3 deletions(-)
diff --git a/app/CMakeLists.txt b/app/CMakeLists.txt
index 7a4eb40..2e05cd7 100644
--- a/app/CMakeLists.txt
+++ b/app/CMakeLists.txt
@@ -17,7 +17,7 @@ target_link_libraries(ktp-text-ui
${KTP_LIBRARIES}
${QT_QTWEBKIT_LIBRARY}
${KDE4_KNOTIFYCONFIG_LIBS}
- ${KDE4_KCMUTILS_LIBS}
+ ${KDE4_KCMUTILS_LIBS}
ktpchat)
configure_file(org.freedesktop.Telepathy.Client.KTp.TextUi.service.in
diff --git a/app/chat-window.cpp b/app/chat-window.cpp
index 929fda0..119f7bc 100644
--- a/app/chat-window.cpp
+++ b/app/chat-window.cpp
@@ -326,6 +326,11 @@ void ChatWindow::onCurrentIndexChanged(int index)
}
+ // only show enable the action if there are actually previous converstations
+#ifdef TELEPATHY_LOGGER_QT4_FOUND
+ setPreviousConversationsEnabled(currentChatTab->previousConversationAvailable());
+#endif
+
setAccountIcon(currentChatTab->accountIcon());
}
@@ -673,6 +678,15 @@ void ChatWindow::setShareDesktopEnabled(bool enable)
}
}
+void ChatWindow::setPreviousConversationsEnabled ( bool enable )
+{
+ QAction *action = actionCollection()->action(QLatin1String("open-log"));
+
+ if (action) {
+ action->setEnabled(enable);
+ }
+}
+
void ChatWindow::setAccountIcon(const QIcon &icon)
{
m_accountIconLabel->setPixmap(icon.pixmap(toolBar()->iconSize()));
diff --git a/app/chat-window.h b/app/chat-window.h
index 690f286..6fd1c29 100644
--- a/app/chat-window.h
+++ b/app/chat-window.h
@@ -132,6 +132,7 @@ private:
void setInviteToChatEnabled(bool enable);
void setVideoCallEnabled(bool enable);
void setShareDesktopEnabled(bool enable);
+ void setPreviousConversationsEnabled(bool enable);
/** setter for account icon fake action */
void setAccountIcon(const QIcon &protocolIcon);
diff --git a/lib/chat-widget.cpp b/lib/chat-widget.cpp
index 4d042aa..f2d1809 100644
--- a/lib/chat-widget.cpp
+++ b/lib/chat-widget.cpp
@@ -200,6 +200,9 @@ ChatWidget::ChatWidget(const Tp::TextChannelPtr & channel, const Tp::AccountPtr
if (!d->isGroupChat) {
d->logManager->setFetchAmount(3);
d->logManager->setTextChannel(d->account, d->channel);
+ m_previousConversationAvailable = d->logManager->exists();
+ } else {
+ m_previousConversationAvailable = false;
}
}
@@ -274,7 +277,7 @@ ChatSearchBar *ChatWidget::chatSearchBar() const
void ChatWidget::setChatEnabled(bool enable)
{
- d->ui.sendMessageBox->setEnabled(enable);
+ d->ui.sendMessageBox->setEnabled(enable);
// show a message informing the user
AdiumThemeStatusInfo statusMessage;
@@ -909,6 +912,11 @@ Tp::ChannelChatState ChatWidget::remoteChatState()
return d->remoteContactChatState;
}
+bool ChatWidget::previousConversationAvailable()
+{
+ return m_previousConversationAvailable;
+}
+
void ChatWidget::onChatPausedTimerExpired()
{
d->channel->requestChatState(Tp::ChannelChatStatePaused);
diff --git a/lib/chat-widget.h b/lib/chat-widget.h
index 533882b..686b632 100644
--- a/lib/chat-widget.h
+++ b/lib/chat-widget.h
@@ -89,6 +89,8 @@ public:
/** Returns the chat state of remote contact */
Tp::ChannelChatState remoteChatState();
+ bool previousConversationAvailable();
+
public Q_SLOTS:
/** toggle the search bar visibility */
void toggleSearchBar() const;
@@ -174,6 +176,7 @@ private:
void setupContactModelSignals();
virtual bool isOnTop() const;
+ bool m_previousConversationAvailable;
ChatWidgetPrivate * const d;
};
diff --git a/lib/logmanager.cpp b/lib/logmanager.cpp
index c0cdb0f..747a35e 100644
--- a/lib/logmanager.cpp
+++ b/lib/logmanager.cpp
@@ -71,7 +71,16 @@ LogManager::~LogManager()
bool LogManager::exists() const
{
#ifdef TELEPATHY_LOGGER_QT4_FOUND
- return m_logManager->exists(m_account, m_contactEntity, Tpl::EventTypeMaskText);
+ if (!m_account.isNull() && !m_textChannel.isNull() && m_textChannel->targetHandleType() == Tp::HandleTypeContact) {
+ Tpl::EntityPtr contactEntity = Tpl::Entity::create(m_textChannel->targetContact()->id().toLatin1().data(),
+ Tpl::EntityTypeContact,
+ NULL,
+ NULL);
+
+ return m_logManager->exists(m_account, contactEntity, Tpl::EventTypeMaskText);
+ } else {
+ return false;
+ }
#else
return false;
#endif
--
ktp-text-ui packaging
More information about the pkg-kde-commits
mailing list