Don't invoke notifications for own messages, fixes #507
[quassel.git] / src / qtui / mainwin.cpp
index 2343b8a..ed5644c 100644 (file)
@@ -326,6 +326,7 @@ void MainWin::addBufferView(ClientBufferViewConfig *config) {
   if(!config)
     return;
 
+  config->setLocked(QtUiSettings().value("LockLayout", false).toBool());
   BufferViewDock *dock = new BufferViewDock(config, this);
 
   //create the view and initialize it's filter
@@ -388,8 +389,10 @@ void MainWin::on_actionLockLayout_toggled(bool lock) {
   foreach(VerticalDock *dock, docks) {
     dock->showTitle(!lock);
   }
-  foreach(ClientBufferViewConfig *config, Client::bufferViewManager()->clientBufferViewConfigs()) {
-    config->setLocked(lock);
+  if(Client::bufferViewManager()) {
+    foreach(ClientBufferViewConfig *config, Client::bufferViewManager()->clientBufferViewConfigs()) {
+      config->setLocked(lock);
+    }
   }
   QtUiSettings().setValue("LockLayout", lock);
 }
@@ -798,7 +801,7 @@ void MainWin::messagesInserted(const QModelIndex &parent, int start, int end) {
       continue;
     }
     Message::Flags flags = (Message::Flags)idx.data(ChatLineModel::FlagsRole).toInt();
-    if(flags.testFlag(Message::Backlog)) continue;
+    if(flags.testFlag(Message::Backlog) || flags.testFlag(Message::Self)) continue;
     flags |= Message::Backlog;  // we only want to trigger a highlight once!
     Client::messageModel()->setData(idx, (int)flags, ChatLineModel::FlagsRole);