[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:23:18 UTC 2016


Gitweb-URL: http://git.debian.org/?p=pkg-kde/applications/ktp-text-ui.git;a=commitdiff;h=a46eb6b

The following commit has been merged in the master branch:
commit a46eb6bbeaac41556f3a6af88683acb2f478cd73
Author: Andrea Scarpino <andrea at archlinux.org>
Date:   Wed Feb 13 16:19:26 2013 +0059

    BUG: 287399
    FIXED-IN: 0.6
    REVIEW: 108927
---
 config/appearance-config.cpp | 55 ++++++++++++++++++++++++++++----------------
 config/appearance-config.h   |  1 +
 config/appearance-config.ui  | 34 ++++++++++++++++++++++++++-
 lib/adium-theme-view.cpp     | 13 +++++++++++
 lib/adium-theme-view.h       | 10 ++++++++
 lib/chat-widget.cpp          | 13 +++++++----
 6 files changed, 100 insertions(+), 26 deletions(-)

diff --git a/config/appearance-config.cpp b/config/appearance-config.cpp
index a88dd02..4fcc72c 100644
--- a/config/appearance-config.cpp
+++ b/config/appearance-config.cpp
@@ -59,6 +59,7 @@ AppearanceConfig::AppearanceConfig(QWidget *parent, const QVariantList& args)
     connect(ui->customFontBox, SIGNAL(clicked(bool)), SLOT(onFontGroupChanged(bool)));
     connect(ui->fontFamily, SIGNAL(currentFontChanged(QFont)), SLOT(onFontFamilyChanged(QFont)));
     connect(ui->fontSize, SIGNAL(valueChanged(int)), SLOT(onFontSizeChanged(int)));
+    connect(ui->showPresenceModeComboBox, SIGNAL(activated(int)), SLOT(onShowPresenceModeSelected(int)));
 }
 
 AppearanceConfig::~AppearanceConfig()
@@ -168,6 +169,14 @@ void AppearanceConfig::onFontSizeChanged(int fontSize)
     changed();
 }
 
+void AppearanceConfig::onShowPresenceModeSelected(int showPresenceMode)
+{
+    kDebug();
+    ui->chatView->setShowPresenceMode(static_cast<AdiumThemeView::ShowPresenceMode>(showPresenceMode));
+    ui->chatView->initialise(m_demoChatHeader);
+    changed();
+}
+
 void AppearanceConfig::sendDemoMessages()
 {
     //add a fake message
@@ -209,12 +218,14 @@ void AppearanceConfig::sendDemoMessages()
     statusMessage.setService(i18n("Jabber"));
     ui->chatView->addStatusMessage(statusMessage);
 
-    statusMessage = AdiumThemeStatusInfo(true);
-    statusMessage.setMessage(i18n("Ted Example has left the chat.")); //FIXME sync this with chat text logic.
-    statusMessage.setTime(QDateTime::currentDateTime());
-    statusMessage.setService(i18n("Jabber"));
-    statusMessage.setStatus(QLatin1String("away"));
-    ui->chatView->addStatusMessage(statusMessage);
+    if (ui->chatView->showPresenceMode() != AdiumThemeView::Never) {
+        statusMessage = AdiumThemeStatusInfo(true);
+        statusMessage.setMessage(i18n("Ted Example has left the chat.")); //FIXME sync this with chat text logic.
+        statusMessage.setTime(QDateTime::currentDateTime());
+        statusMessage.setService(i18n("Jabber"));
+        statusMessage.setStatus(QLatin1String("away"));
+        ui->chatView->addStatusMessage(statusMessage);
+    }
 
     message = AdiumThemeContentInfo(AdiumThemeMessageInfo::RemoteToLocal);
     message.setMessage(i18n("Hello"));
@@ -250,19 +261,21 @@ void AppearanceConfig::sendDemoMessages()
     message.setTime(QDateTime::currentDateTime());
     ui->chatView->addContentMessage(message);
 
-    statusMessage = AdiumThemeStatusInfo();
-    statusMessage.setMessage(i18n("Ted Example is now Away.")); //FIXME sync this with chat text logic.
-    statusMessage.setTime(QDateTime::currentDateTime());
-    statusMessage.setService(i18n("Jabber"));
-    statusMessage.setStatus(QLatin1String("away"));
-    ui->chatView->addStatusMessage(statusMessage);
-
-    statusMessage = AdiumThemeStatusInfo();
-    statusMessage.setMessage(i18n("Ted Example has left the chat.")); //FIXME sync this with chat text logic.
-    statusMessage.setTime(QDateTime::currentDateTime());
-    statusMessage.setService(i18n("Jabber"));
-    statusMessage.setStatus(QLatin1String("away"));
-    ui->chatView->addStatusMessage(statusMessage);
+    if (ui->chatView->showPresenceMode() != AdiumThemeView::Never) {
+        statusMessage = AdiumThemeStatusInfo();
+        statusMessage.setMessage(i18n("Ted Example is now Away.")); //FIXME sync this with chat text logic.
+        statusMessage.setTime(QDateTime::currentDateTime());
+        statusMessage.setService(i18n("Jabber"));
+        statusMessage.setStatus(QLatin1String("away"));
+        ui->chatView->addStatusMessage(statusMessage);
+
+        statusMessage = AdiumThemeStatusInfo();
+        statusMessage.setMessage(i18n("Ted Example has left the chat.")); //FIXME sync this with chat text logic.
+        statusMessage.setTime(QDateTime::currentDateTime());
+        statusMessage.setService(i18n("Jabber"));
+        statusMessage.setStatus(QLatin1String("away"));
+        ui->chatView->addStatusMessage(statusMessage);
+    }
 }
 
 void AppearanceConfig::defaults()
@@ -277,6 +290,7 @@ void AppearanceConfig::defaults()
     ui->chatView->setUseCustomFont(false);
     ui->fontFamily->setCurrentFont(KGlobalSettings::generalFont());
     ui->fontSize->setValue(QWebSettings::DefaultFontSize);
+    onShowPresenceModeSelected(static_cast<int>(AdiumThemeView::Always));
 }
 
 void AppearanceConfig::load()
@@ -291,9 +305,9 @@ void AppearanceConfig::load()
     ui->customFontBox->setChecked(ui->chatView->isCustomFont());
     ui->fontFamily->setCurrentFont(QFont(ui->chatView->fontFamily()));
     ui->fontSize->setValue(ui->chatView->fontSize());
+    ui->showPresenceModeComboBox->setCurrentIndex(ui->chatView->showPresenceMode());
 }
 
-
 void AppearanceConfig::save()
 {
     kDebug();
@@ -307,6 +321,7 @@ void AppearanceConfig::save()
     appearanceConfig.writeEntry("useCustomFont", ui->customFontBox->isChecked());
     appearanceConfig.writeEntry("fontFamily", ui->fontFamily->currentFont().family());
     appearanceConfig.writeEntry("fontSize", ui->fontSize->value());
+    appearanceConfig.writeEntry("showPresenceMode", ui->showPresenceModeComboBox->currentIndex());
 
     appearanceConfig.sync();
     config->sync();
diff --git a/config/appearance-config.h b/config/appearance-config.h
index 5b6c83d..48bd67a 100644
--- a/config/appearance-config.h
+++ b/config/appearance-config.h
@@ -58,6 +58,7 @@ private Q_SLOTS:
     void onFontGroupChanged(bool);
     void onFontFamilyChanged(QFont);
     void onFontSizeChanged(int);
+    void onShowPresenceModeSelected(int);
 
 private:
     Ui::ChatWindowConfig *ui;
diff --git a/config/appearance-config.ui b/config/appearance-config.ui
index 6a040db..a6d55a2 100644
--- a/config/appearance-config.ui
+++ b/config/appearance-config.ui
@@ -6,7 +6,7 @@
    <rect>
     <x>0</x>
     <y>0</y>
-    <width>592</width>
+    <width>666</width>
     <height>400</height>
    </rect>
   </property>
@@ -152,6 +152,38 @@
           </property>
          </widget>
         </item>
+        <item row="3" column="0">
+         <widget class="QLabel" name="presenceLabel">
+          <property name="text">
+           <string>Show presence changes:</string>
+          </property>
+         </widget>
+        </item>
+        <item row="3" column="1">
+         <widget class="QComboBox" name="showPresenceModeComboBox">
+          <property name="sizePolicy">
+           <sizepolicy hsizetype="MinimumExpanding" vsizetype="Fixed">
+            <horstretch>0</horstretch>
+            <verstretch>0</verstretch>
+           </sizepolicy>
+          </property>
+          <item>
+           <property name="text">
+            <string>Always</string>
+           </property>
+          </item>
+          <item>
+           <property name="text">
+            <string>Never in group chats</string>
+           </property>
+          </item>
+          <item>
+           <property name="text">
+            <string>Never</string>
+           </property>
+          </item>
+         </widget>
+        </item>
        </layout>
       </widget>
      </item>
diff --git a/lib/adium-theme-view.cpp b/lib/adium-theme-view.cpp
index 12e0b02..dc640e0 100644
--- a/lib/adium-theme-view.cpp
+++ b/lib/adium-theme-view.cpp
@@ -116,6 +116,8 @@ void AdiumThemeView::load(ChatType chatType) {
     m_useCustomFont = appearanceConfig.readEntry("useCustomFont", false);
     m_fontFamily = appearanceConfig.readEntry("fontFamily", QWebSettings::globalSettings()->fontFamily(QWebSettings::StandardFont));
     m_fontSize = appearanceConfig.readEntry("fontSize", QWebSettings::globalSettings()->fontSize(QWebSettings::DefaultFontSize));
+
+    m_showPresenceMode = static_cast<AdiumThemeView::ShowPresenceMode>(appearanceConfig.readEntry("showPresenceMode", (int) AdiumThemeView::Always));
 }
 
 
@@ -314,6 +316,17 @@ bool AdiumThemeView::isCustomFont() const
     return m_useCustomFont;
 }
 
+void AdiumThemeView::setShowPresenceMode(ShowPresenceMode showPresenceMode)
+{
+    kDebug();
+    m_showPresenceMode = showPresenceMode;
+}
+
+AdiumThemeView::ShowPresenceMode AdiumThemeView::showPresenceMode() const
+{
+    return m_showPresenceMode;
+}
+
 bool AdiumThemeView::isHeaderDisplayed() const
 {
     return m_displayHeader;
diff --git a/lib/adium-theme-view.h b/lib/adium-theme-view.h
index 732cf71..5775432 100644
--- a/lib/adium-theme-view.h
+++ b/lib/adium-theme-view.h
@@ -59,6 +59,12 @@ public:
         ReplaceLastMessage
     };
 
+    enum ShowPresenceMode {
+        Always = 0,
+        NeverInGroupChats = 1,
+        Never = 2
+    };
+
     explicit AdiumThemeView(QWidget *parent = 0);
 
     /** Loads the Theme data*/
@@ -86,6 +92,9 @@ public:
     void setHeaderDisplayed(bool);
     /* .. font, backgrounds, everything else.*/
 
+    void setShowPresenceMode(ShowPresenceMode showPresenceMode);
+    ShowPresenceMode showPresenceMode() const;
+
     void clear();
 
 public Q_SLOTS:
@@ -108,6 +117,7 @@ private:
     bool m_useCustomFont;
     QString m_fontFamily;
     int m_fontSize;
+    ShowPresenceMode m_showPresenceMode;
 
     QString appendScript(AppendMode mode);
     AppendMode appendMode(const AdiumThemeMessageInfo &message,
diff --git a/lib/chat-widget.cpp b/lib/chat-widget.cpp
index 60efede..e7adc5a 100644
--- a/lib/chat-widget.cpp
+++ b/lib/chat-widget.cpp
@@ -844,11 +844,14 @@ void ChatWidget::onContactPresenceChange(const Tp::ContactPtr & contact, const K
     }
 
     if (!message.isNull()) {
-        AdiumThemeStatusInfo statusMessage;
-        statusMessage.setMessage(message);
-        statusMessage.setService(d->channel->connection()->protocolName());
-        statusMessage.setTime(QDateTime::currentDateTime());
-        d->ui.chatArea->addStatusMessage(statusMessage);
+        if ((d->ui.chatArea->showPresenceMode() == AdiumThemeView::Always) ||
+            ((d->ui.chatArea->showPresenceMode() == AdiumThemeView::NeverInGroupChats) && d->isGroupChat)) {
+            AdiumThemeStatusInfo statusMessage;
+            statusMessage.setMessage(message);
+            statusMessage.setService(d->channel->connection()->protocolName());
+            statusMessage.setTime(QDateTime::currentDateTime());
+            d->ui.chatArea->addStatusMessage(statusMessage);
+        }
     }
 
     //if in a non-group chat situation, and the other contact has changed state...

-- 
ktp-text-ui packaging



More information about the pkg-kde-commits mailing list