All pastes #980858 Raw Edit

Mine

public text v1 · immutable
·published 2008-04-11 10:21 UTC
rendered paste body
Files trunk.orig/psi and trunk/psi differ
diff -U 3 -H -d -r -N -- trunk.orig/src/desktoputil.cpp trunk/src/desktoputil.cpp
--- trunk.orig/src/desktoputil.cpp	2008-04-08 15:31:05.000000000 +0400
+++ trunk/src/desktoputil.cpp	2008-04-08 20:50:26.000000000 +0400
@@ -79,7 +79,9 @@
  */
 bool DesktopUtil::openUrl(const QString& url)
 {
-	QByteArray ascii = url.toAscii();
+	if (url.startsWith("addnick://")) return true;
+
+	QByteArray ascii = url.toUtf8();
 	if (ascii == url)
 		return doOpenUrl(QUrl::fromEncoded(ascii));
 	else
diff -U 3 -H -d -r -N -- trunk.orig/src/groupchatdlg.cpp trunk/src/groupchatdlg.cpp
--- trunk.orig/src/groupchatdlg.cpp	2008-04-08 15:31:04.000000000 +0400
+++ trunk/src/groupchatdlg.cpp	2008-04-08 20:07:26.000000000 +0400
@@ -75,6 +75,7 @@
 #include "psicontactlist.h"
 #include "accountlabel.h"
 #include "gcuserview.h"
+#include "urlobject.h"
 
 #ifdef Q_WS_WIN
 #include <windows.h>
@@ -449,6 +450,16 @@
 	}
 };
 
+void GCMainDlg::openURL(QString url){
+	//qFatal("zaebca");
+
+	if (url.startsWith("addnick://")){
+       ui_.mle->chatEdit()->insert(url.right( url.count()-10) + QString(": "));
+       ui_.mle->chatEdit()->setFocus();
+
+	}
+}
+
 GCMainDlg::GCMainDlg(PsiAccount *pa, const Jid &j, TabManager *tabManager)
 	: TabbableWidget(j.userHost(), pa, tabManager)
 {
@@ -460,6 +471,9 @@
 	d->self = d->prev_self = j.resource();
 	account()->dialogRegister(this, jid());
 	connect(account(), SIGNAL(updatedActivity()), SLOT(pa_updatedActivity()));
+
+	connect(URLObject::getInstance(), SIGNAL(openURL(QString)), SLOT(openURL(QString)));
+
 	d->mucManager = new MUCManager(account()->client(), jid());
 
 	options_ = PsiOptions::instance();
@@ -1317,7 +1331,7 @@
 		}
 		else {
 			//ui_.log->append(QString("<font color=\"%1\">").arg(color) + QString("[%1] &lt;").arg(timestr) + Qt::escape(who) + QString("&gt;</font> ") + txt);
-			ui_.log->appendText(QString("<font color=\"%1\">").arg(nickcolor) + QString("[%1] &lt;").arg(timestr) + Qt::escape(who) + QString("&gt;</font> ") + QString("<font color=\"%1\">").arg(textcolor) + alerttagso + txt + alerttagsc +"</font>");
+			ui_.log->appendText(QString("<font color=\"%1\">").arg(nickcolor) + QString("[%1] &lt;").arg(timestr) + QString("<a href=\"addnick://%1\" style=\"color: "+nickcolor+"; text-decoration: none; \">%1</a>").arg(Qt::escape(who)) + QString("&gt;</font> ") + QString("<font color=\"%1\">").arg(textcolor) + alerttagso + txt + alerttagsc +"</font>");
 		}
 	}
 
diff -U 3 -H -d -r -N -- trunk.orig/src/groupchatdlg.h trunk/src/groupchatdlg.h
--- trunk.orig/src/groupchatdlg.h	2008-04-08 15:31:04.000000000 +0400
+++ trunk/src/groupchatdlg.h	2008-04-08 20:07:38.000000000 +0400
@@ -103,6 +103,7 @@
 	void optionsUpdate();
 	
 private slots:
+	void openURL(QString);
 	void scrollUp();
 	void scrollDown();
 	void mle_returnPressed();
Files trunk.orig/src/psi and trunk/src/psi differ
Files trunk.orig/third-party/qca/libqca_psi.a and trunk/third-party/qca/libqca_psi.a differ









cat /var/tmp/portage/net-im/psi-9999-r3/temp/11.diff-27402.out
***** 11.diff *****

===================

PATCH COMMAND:   patch -p0 -g0 -E --no-backup-if-mismatch < /usr/local/portage/net-im/psi/files/11.diff

===================
can't find file to patch at input line 5
Perhaps you used the wrong -p or --strip option?
The text leading up to this was:
--------------------------
|Files trunk.orig/psi and trunk/psi differ
|diff -C 8 -H -w -r -N -- trunk.orig/src/desktoputil.cpp trunk/src/desktoputil.cpp
|*** trunk.orig/src/desktoputil.cpp     Tue Apr  8 15:31:05 2008
|--- trunk/src/desktoputil.cpp  Tue Apr  8 20:50:26 2008
--------------------------
No file to patch.  Skipping patch.
1 out of 1 hunk ignored
patch: **** unexpected end of hunk at line 60
===================

PATCH COMMAND:   patch -p1 -g0 -E --no-backup-if-mismatch < /usr/local/portage/net-im/psi/files/11.diff

===================
patching file src/desktoputil.cpp
patch: **** unexpected end of hunk at line 60
===================

PATCH COMMAND:   patch -p2 -g0 -E --no-backup-if-mismatch < /usr/local/portage/net-im/psi/files/11.diff

===================
can't find file to patch at input line 5
Perhaps you used the wrong -p or --strip option?
The text leading up to this was:
--------------------------
|Files trunk.orig/psi and trunk/psi differ
|diff -C 8 -H -w -r -N -- trunk.orig/src/desktoputil.cpp trunk/src/desktoputil.cpp
|*** trunk.orig/src/desktoputil.cpp     Tue Apr  8 15:31:05 2008
|--- trunk/src/desktoputil.cpp  Tue Apr  8 20:50:26 2008
--------------------------
No file to patch.  Skipping patch.
1 out of 1 hunk ignored
patch: **** unexpected end of hunk at line 60
===================

PATCH COMMAND:   patch -p3 -g0 -E --no-backup-if-mismatch < /usr/local/portage/net-im/psi/files/11.diff

===================
missing header for context diff at line 5 of patch
can't find file to patch at input line 5
Perhaps you used the wrong -p or --strip option?
The text leading up to this was:
--------------------------
|Files trunk.orig/psi and trunk/psi differ
|diff -C 8 -H -w -r -N -- trunk.orig/src/desktoputil.cpp trunk/src/desktoputil.cpp
|*** trunk.orig/src/desktoputil.cpp     Tue Apr  8 15:31:05 2008
|--- trunk/src/desktoputil.cpp  Tue Apr  8 20:50:26 2008
--------------------------
No file to patch.  Skipping patch.
1 out of 1 hunk ignored
patch: **** unexpected end of hunk at line 60
===================

PATCH COMMAND:   patch -p4 -g0 -E --no-backup-if-mismatch < /usr/local/portage/net-im/psi/files/11.diff

===================
missing header for context diff at line 5 of patch
can't find file to patch at input line 5
Perhaps you used the wrong -p or --strip option?
The text leading up to this was:
--------------------------
|Files trunk.orig/psi and trunk/psi differ
|diff -C 8 -H -w -r -N -- trunk.orig/src/desktoputil.cpp trunk/src/desktoputil.cpp
|*** trunk.orig/src/desktoputil.cpp     Tue Apr  8 15:31:05 2008
|--- trunk/src/desktoputil.cpp  Tue Apr  8 20:50:26 2008
--------------------------
No file to patch.  Skipping patch.
1 out of 1 hunk ignored
patch: **** unexpected end of hunk at line 60