← Back to team overview

mira-dev team mailing list archive

[Branch ~mira-dev/mira/trunk] Rev 205: Automatically scroll down QTextBrowser after sending/receiving messages

 

------------------------------------------------------------
revno: 205
fixes bug(s): https://launchpad.net/bugs/579039
committer: Alan Alvarez <aalvarez@xxxxxxxxxxxxx>
branch nick: trunk
timestamp: Thu 2010-05-13 23:21:41 -0400
message:
  Automatically scroll down QTextBrowser after sending/receiving messages
modified:
  mira-client/src/gui/qt/ChatDockWidget.cpp
  mira-installers/linux/MiraServerInstaller.xml


--
lp:mira/trunk
https://code.launchpad.net/~mira-dev/mira/trunk

Your team Mira Core Development Team is subscribed to branch lp:mira/trunk.
To unsubscribe from this branch go to https://code.launchpad.net/~mira-dev/mira/trunk/+edit-subscription
=== modified file 'mira-client/src/gui/qt/ChatDockWidget.cpp'
--- mira-client/src/gui/qt/ChatDockWidget.cpp	2010-05-03 23:53:23 +0000
+++ mira-client/src/gui/qt/ChatDockWidget.cpp	2010-05-14 03:21:41 +0000
@@ -1,9 +1,9 @@
 #include "ChatDockWidget.h"
-
 #include "Application.h"
 
 #include <QVBoxLayout>
 #include <QMessageBox>
+#include <QScrollBar>
 #include <QString>
 #include <string>
 
@@ -54,6 +54,8 @@
     {
         std::string message = m_lineEdit->displayText().toStdString() + '\"';
         m_currentBrowser->insertHtml("<b><font color=\"#0000ff\">Me: </font></b>"+m_lineEdit->displayText()+"<br />");
+        QScrollBar *sb = m_currentBrowser->verticalScrollBar();
+        sb->setValue(sb->maximum());
         m_lineEdit->clear();
 
         message.insert(0, "PM " + m_currentUser.toStdString() + " \"");
@@ -64,13 +66,15 @@
 
 void ChatDockWidget::receiveMessage(const QString& username, const QString& message)
 {
-	const char * c_color = "#FF0000";
-	QString color = c_color;
+    const char * c_color = "#FF0000";
+    QString color = c_color;
     //Create the message
     if (usersTextBrowsers.contains(username))
     {
         std::cout << "Message for " << username.toStdString() << ": " << message.toStdString() << std::endl;
         usersTextBrowsers.value(username)->insertHtml("<b><font color=\""+color+"\">"+username+": </font></b>"+message+"<br />");
+        QScrollBar *sb = m_currentBrowser->verticalScrollBar();
+        sb->setValue(sb->maximum());
     }
     else
     {
@@ -80,9 +84,13 @@
 
 void ChatDockWidget::receiveError(const QString& widget_username, const QString& errorMessage)
 {
-	//Create the message
-        if (usersTextBrowsers.contains(widget_username))
-            usersTextBrowsers.value(widget_username)->insertHtml("<font color=\"#CCCCCC\">--"+errorMessage+"--</font><br />");
+    //Create the message
+    if (usersTextBrowsers.contains(widget_username))
+    {
+        usersTextBrowsers.value(widget_username)->insertHtml("<font color=\"#CCCCCC\">--"+errorMessage+"--</font><br />");
+        QScrollBar *sb = m_currentBrowser->verticalScrollBar();
+        sb->setValue(sb->maximum());
+    }
 }
 
 void ChatDockWidget::FocusOnChat()

=== modified file 'mira-installers/linux/MiraServerInstaller.xml'
--- mira-installers/linux/MiraServerInstaller.xml	2010-05-08 16:19:49 +0000
+++ mira-installers/linux/MiraServerInstaller.xml	2010-05-14 03:21:41 +0000
@@ -6,6 +6,7 @@
     <leftImage>../../mira-client/resources/images/install-left-side.png</leftImage>
     <logoImage>../../mira-client/resources/images/install-icon.png</logoImage>
     <splashImage>../../mira-client/resources/images/loading-splash.png</splashImage>
+    <height>405</height>
     <postInstallationActionList>
         <copyFile>
             <destination>/usr/lib/libFiles-utility.so</destination>