Compare commits
1 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| dd04b72a67 |
+2
-2
@@ -128,7 +128,7 @@ INCLUDE_DIRECTORIES( ${KDE4_INCLUDES} ${KDE4_INCLUDE_DIR} ${QT_INCLUDES} ${LIBXM
|
||||
|
||||
# Switch between the following two commands to force using a predefined version number
|
||||
# EXECUTE_PROCESS( COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/cmake/get-svn-version.sh OUTPUT_VARIABLE KMESS_VERSION )
|
||||
SET( KMESS_VERSION "2.0rc1" )
|
||||
SET( KMESS_VERSION "2.0" )
|
||||
|
||||
|
||||
#### Define compiler flags ####
|
||||
@@ -156,7 +156,7 @@ ENDIF( CMAKE_COMPILER_IS_GNUCXX )
|
||||
# - relwithdebinfo (release with debug info)
|
||||
# - minsizerel (minsize release)
|
||||
# Uncomment the next line to always force building in full debug mode
|
||||
SET( CMAKE_BUILD_TYPE debugfull )
|
||||
#SET( CMAKE_BUILD_TYPE debugfull )
|
||||
|
||||
# Enable the KMess debug output when compiling a debug build
|
||||
IF( CMAKE_BUILD_TYPE STREQUAL debugfull OR KMESS_DEBUG_OUTPUT EQUAL 1 )
|
||||
|
||||
@@ -1,4 +1,31 @@
|
||||
|
||||
--- 2.0 released ---
|
||||
|
||||
2009-07-24 (dazjorz)
|
||||
* Fixed bug in cmake/get-svn-version.sh on platforms where builtin echo
|
||||
doesn't understand -n.
|
||||
* Fixed contact list sorting etc issue ONCE AND FOR ALL.
|
||||
|
||||
2009-07-24 (Pano)
|
||||
* Merged an updated German translation.
|
||||
* Merged an updated Simplified Chinese translation by Cheng Yang.
|
||||
|
||||
2009-07-23 (Valerio)
|
||||
* Added a class giving meaningful error messages for unsupported applications.
|
||||
|
||||
2009-07-21 (Pano)
|
||||
* Merged an updated Arabic translation by Ma'moun Diraneyya.
|
||||
|
||||
2009-07-20 (Adam)
|
||||
* Fix KMess crashing when transferring display pictures: note this is a
|
||||
band aid fix and will need to be properly investigated for later releases.
|
||||
|
||||
2009-07-20 (Pano)
|
||||
* Merged an updated Simplified Chinese translation by Cheng Yang.
|
||||
|
||||
2009-07-18 (Valerio)
|
||||
* Further improved the fix for contact list tooltips with RTL languages.
|
||||
|
||||
--- 2.0rc1 released ---
|
||||
|
||||
2009-07-17 (Valerio)
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
#---------------------------------------------------------------------------
|
||||
DOXYFILE_ENCODING = UTF-8
|
||||
PROJECT_NAME = KMess
|
||||
PROJECT_NUMBER = 2.0-rc1
|
||||
PROJECT_NUMBER = 2.0
|
||||
OUTPUT_DIRECTORY = ./apidocs
|
||||
CREATE_SUBDIRS = NO
|
||||
OUTPUT_LANGUAGE = English
|
||||
|
||||
@@ -1,22 +1,23 @@
|
||||
KMess Feature list
|
||||
========================
|
||||
- 2.0 -
|
||||
Support to receive and send Ink (hand-written) messages.
|
||||
Support to send huge messages.
|
||||
Options to copy a contact's email, name, message, listened music and links present in the name/message
|
||||
Support to receive and send hand-written (Ink) messages (still doesn't work with some Messengers).
|
||||
Options to copy a contact's email, name, message, listened music and links present in the name/message.
|
||||
List of contact events, such as logins and logouts.
|
||||
Chat Windows can be used again when reconnecting.
|
||||
Chat Windows can be used again after reconnecting.
|
||||
Quick retype of previous sent messages, using Ctrl+Up/Ctrl+Down.
|
||||
MSN connections over HTTP, to deal with corporate firewalls which only allow connections to browse the web.
|
||||
Support to chat with offline and invisible contacts.
|
||||
Support to search in the contact list.
|
||||
Support to send bigger chat messages.
|
||||
Support to send longer chat messages.
|
||||
Option to hide annoying contact emoticons.
|
||||
Option to choose the browser used to open web sites, Live Mail, and MSN support sites.
|
||||
Option to manually send commands to the server in developer builds.
|
||||
Support to group all chats in the same chat window (tabbed chatting).
|
||||
Option to select a directory where all received files will be put.
|
||||
Option to choose the interval of ports used for fast file transfers.
|
||||
Option to keep short notes for each contact.
|
||||
Option to hide annoying contact emoticons.
|
||||
Support to MSN Plus text formatting.
|
||||
Support for DBus remote application control.
|
||||
Option to choose a previously chosen display picture.
|
||||
@@ -26,7 +27,7 @@ Support for KDE's KWallet, to store in a secure way the accounts passwords.
|
||||
Automatic detection of network connection and disconnection.
|
||||
Option to block notifications when the status is set to Busy.
|
||||
Option to disable displaying of received winks.
|
||||
Automatic reconnection to MSN after unwanted disconnections.
|
||||
Automatic reconnection to MSN after unwanted disconnections with keeping of last status.
|
||||
|
||||
- 1.5.1 -
|
||||
Contact's MSN client detection.
|
||||
@@ -97,4 +98,4 @@ Chats can be configured to show timestamps when contacts send messages.
|
||||
A "compact" chat format can be used to remove extraneous line breaks and reduce the size of the chat.
|
||||
The chat window caption in the taskbar alternates between lower and upper case to inform the user of a received message when the window is not on top.
|
||||
Internationalization support, with translations in: English, Dutch, German, Italian, Portuguese, Spanish, Turkish, Chinese, French, Catalan, Arabic, Korean, Norsk, Thai, Danish, and Estonian
|
||||
There is now a method, though not absolute, to tell if a contact is blocking you. If a chat is started with a contact that appears offline, you will be informed if the contact is offline or online and blocking you.
|
||||
There is now a method, though not absolute, to tell if a contact is blocking you. If a chat is started with a contact that appears offline, you will be informed if the contact is offline or online and blocking you.
|
||||
|
||||
@@ -1,4 +1,9 @@
|
||||
|
||||
Changes between KMess 2.0 and 2.0-rc1:
|
||||
--------------------------------------
|
||||
- updated German translation by Panagiotis Papadopoulos.
|
||||
- updated Simplified Chinese translation by Cheng Yang.
|
||||
|
||||
Changes between KMess 2.0-rc1 and 2.0-beta2:
|
||||
--------------------------------------
|
||||
- added Japanese translation by Daniel E. Moctezuma.
|
||||
@@ -7,16 +12,19 @@ Changes between KMess 2.0-rc1 and 2.0-beta2:
|
||||
- added fading effect for long text labels and the contact list.
|
||||
- changed the image used for unknown display pictures.
|
||||
- changed the application windows icons.
|
||||
- changed the system tray icon with one showing both the bird and the current status.
|
||||
- changed the system tray icon with one showing both the bird and the current
|
||||
status.
|
||||
- fixed a crash triggered by clients aborting while we're sending data.
|
||||
- fixed appearance when using right-to-Left languages, like Arabic.
|
||||
- fixed bug preventing temporary accounts to be correctly cleaned up.
|
||||
- fixed file selection errors in chat logging.
|
||||
- fixed newly added contacts appearing as not having added the user in their list.
|
||||
- fixed newly added contacts appearing as not having added the user in their
|
||||
list.
|
||||
- improved appearance of the contact list when antialiasing is enabled.
|
||||
- removed all experimental features which could not be finished in time.
|
||||
- updated Arabic translation by Ma'moun Diraneyya.
|
||||
- updated Brazilian Portuguese translation by Maurício Arozi Moraes and Sergio Rafael Lemke.
|
||||
- updated Brazilian Portuguese translation by Maurício Arozi Moraes and Sergio
|
||||
Rafael Lemke.
|
||||
- updated Catalan translation by Adrià Arrufat.
|
||||
- updated Finnish translation by Antony Hussi.
|
||||
- updated Dutch translation by Sander Pientka and Sjors Gielen.
|
||||
@@ -27,6 +35,7 @@ Changes between KMess 2.0-rc1 and 2.0-beta2:
|
||||
- updated Italian translation by Valerio Pilo.
|
||||
- updated Slovak translation by Rastislav Krupanský.
|
||||
- updated Spanish translation by Mauricio Muñoz Lucero.
|
||||
- updated Simplified Chinese translation by Cheng Yang.
|
||||
- updated Traditional Chinese translation by Yen-chou Chen.
|
||||
|
||||
Changes between KMess 2.0-beta2 and 2.0-beta1:
|
||||
|
||||
@@ -8,13 +8,13 @@ date="`date +%Y%m%d`"
|
||||
|
||||
# Make sure we have the right repository
|
||||
if [ ! -f kmess.kdevelop ]; then
|
||||
echo -n "svn (unknown)"
|
||||
/bin/echo -n "svn (unknown)"
|
||||
exit
|
||||
fi
|
||||
|
||||
# Display normal version if subversion is not installed
|
||||
if [ ! -x `which svnversion 2>/dev/null` ]; then
|
||||
echo -n "$appver"
|
||||
/bin/echo -n "$appver"
|
||||
exit
|
||||
fi
|
||||
|
||||
@@ -24,9 +24,9 @@ svnver=`LANG=C svnversion`
|
||||
# see if this is not a repository.
|
||||
if [ "$svnver" = "exported" ]; then
|
||||
if [ -z "$KMESS_VER" ]; then
|
||||
echo -n "$appver";
|
||||
/bin/echo -n "$appver";
|
||||
else
|
||||
echo -n "$KMESS_VER";
|
||||
/bin/echo -n "$KMESS_VER";
|
||||
fi
|
||||
exit;
|
||||
fi
|
||||
|
||||
+146
-249
File diff suppressed because it is too large
Load Diff
+715
-2056
File diff suppressed because it is too large
Load Diff
-6665
File diff suppressed because it is too large
Load Diff
+1027
-2297
File diff suppressed because it is too large
Load Diff
+597
-1226
File diff suppressed because it is too large
Load Diff
@@ -60,6 +60,7 @@ SET(kmess_SOURCES
|
||||
network/applications/p2papplicationbase.cpp
|
||||
network/applications/p2papplication.cpp
|
||||
network/applications/msnobjecttransferp2p.cpp
|
||||
network/applications/unknownapplication.cpp
|
||||
network/extra/directconnectionbase.cpp
|
||||
network/extra/directconnectionpool.cpp
|
||||
network/extra/msndirectconnection.cpp
|
||||
|
||||
@@ -160,7 +160,7 @@ void Group::setName( const QString &newName )
|
||||
|
||||
|
||||
// Change the sort position
|
||||
void Group::setSortPosition( int sortPosition )
|
||||
void Group::setSortPosition( int sortPosition, bool signal )
|
||||
{
|
||||
#ifdef KMESSDEBUG_GROUP
|
||||
kDebug() << "Group " << name_ << " old sort position = " << sortPosition_
|
||||
@@ -169,7 +169,10 @@ void Group::setSortPosition( int sortPosition )
|
||||
|
||||
oldSortPosition_ = sortPosition_;
|
||||
sortPosition_ = sortPosition;
|
||||
emit changedPosition( this, oldSortPosition_, sortPosition_ );
|
||||
if( signal )
|
||||
{
|
||||
emit changedPosition( this, oldSortPosition_, sortPosition_ );
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
+1
-1
@@ -62,7 +62,7 @@ class Group : public QObject
|
||||
// Change the group name
|
||||
void setName( const QString& newName );
|
||||
// Change the sort position
|
||||
void setSortPosition( int sortPosition );
|
||||
void setSortPosition( int sortPosition, bool signal = true );
|
||||
// Change the old sort position (XXX HACK FIXME OMG)
|
||||
void setOldSortPosition( int oldSortPosition );
|
||||
// Change the expanded state
|
||||
|
||||
+5
-4
@@ -1056,6 +1056,7 @@ void KMessView::showToolTip( const QPoint &point )
|
||||
return;
|
||||
}
|
||||
|
||||
const QString textAlignment( QApplication::isRightToLeft() ? "right" : "left" );
|
||||
const QString textDirection( "dir='" + QString(QApplication::isRightToLeft() ? "rtl" : "ltr") + "'" );
|
||||
|
||||
// Paint the different types of list items
|
||||
@@ -1071,7 +1072,7 @@ void KMessView::showToolTip( const QPoint &point )
|
||||
"<tr><td><img src='%1' width='96' height='96'/></td></tr>"
|
||||
"</table>"
|
||||
"</td>"
|
||||
"<td align='left' valign='top' style='padding-left:10px;'>"
|
||||
"<td align='" + textAlignment + "' valign='top' style='padding-" + textAlignment + ":10px;'>"
|
||||
"<b>%2</b> (%3)<br/>"
|
||||
"%4 %5 %6"
|
||||
"</td>"
|
||||
@@ -1080,7 +1081,7 @@ void KMessView::showToolTip( const QPoint &point )
|
||||
"<td colspan='2'><hr width='98%'/></td>"
|
||||
"</tr>"
|
||||
"</table>"
|
||||
"<table border='0'>"
|
||||
"<table border='0' " + textDirection + " align='" + textAlignment + "'>"
|
||||
"%7%8%9%10%11"
|
||||
"</table>"
|
||||
"</html>";
|
||||
@@ -1156,11 +1157,11 @@ void KMessView::showToolTip( const QPoint &point )
|
||||
QString propertyLine;
|
||||
if( QApplication::isLeftToRight() )
|
||||
{
|
||||
propertyLine = "<tr><td align='right'><i>%1:</i> </td><td>%2</td></tr>";
|
||||
propertyLine = "<tr><td align='right'><i>%1:</i> </td><td align='left'>%2</td></tr>";
|
||||
}
|
||||
else
|
||||
{
|
||||
propertyLine = "<tr><td align='left'>%2</td><td> <i>%1:</i></td></tr>";
|
||||
propertyLine = "<tr><td align='right'>%2</td><td align='left'> <i>%1:</i></td></tr>";
|
||||
}
|
||||
|
||||
// Add handle
|
||||
|
||||
@@ -806,7 +806,7 @@ void ContactList::ensureGroupListValid()
|
||||
kWarning() << "Found a non-special group with sortPosition < 5, resetting to " << group->getSortPosition() + 5;
|
||||
#endif
|
||||
// the part below will automatically fix any duplicates caused by this:
|
||||
group->setSortPosition( group->getSortPosition() + 5 );
|
||||
group->setSortPosition( group->getSortPosition() + 5, false );
|
||||
}
|
||||
else if( group->isSpecialGroup() )
|
||||
{
|
||||
@@ -821,14 +821,14 @@ void ContactList::ensureGroupListValid()
|
||||
int highestPosition = 0;
|
||||
for( int i = 0; i < groups_.count(); ++i)
|
||||
{
|
||||
if( groups_.at( i )->getSortPosition() > highestPosition)
|
||||
if( !groups_.at( i )->isSpecialGroup() && groups_.at( i )->getSortPosition() > highestPosition)
|
||||
{
|
||||
highestPosition = groups_.at( i )->getSortPosition();
|
||||
}
|
||||
}
|
||||
|
||||
// check for duplicates and gaps (only check non-special groups)
|
||||
for( int pos = 5; pos < groups_.count(); ++pos )
|
||||
for( int pos = 5; pos <= highestPosition; ++pos )
|
||||
{
|
||||
matches.clear();
|
||||
|
||||
@@ -856,13 +856,13 @@ void ContactList::ensureGroupListValid()
|
||||
if( matches.count() == 1 )
|
||||
{
|
||||
// it's OK, just copy this group
|
||||
matches.at( 0 )->setSortPosition( pos + fillOffset );
|
||||
matches.at( 0 )->setSortPosition( pos + fillOffset, false );
|
||||
newGroupList << matches.at( 0 );
|
||||
}
|
||||
else if( matches.count() == 0 )
|
||||
{
|
||||
#ifdef KMESSDEBUG_CONTACTLIST_GENERAL
|
||||
kWarning() << "Gap found in group list for position " << pos << ", fixing.";
|
||||
kDebug() << "Gap found in group list for position " << pos << ", fixing.";
|
||||
gaps++;
|
||||
#endif
|
||||
// there's a gap, lower all other indices in the group list
|
||||
@@ -871,19 +871,20 @@ void ContactList::ensureGroupListValid()
|
||||
else
|
||||
{
|
||||
#ifdef KMESSDEBUG_CONTACTLIST_GENERAL
|
||||
kWarning() << "Duplicate found in group list for position " << pos << ", fixing.";
|
||||
kDebug() << "Duplicate found in group list for position " << pos << ", fixing.";
|
||||
duplicates++;
|
||||
#endif
|
||||
|
||||
// don't increase the fillOffset for the first one
|
||||
matches.at( 0 )->setSortPosition( pos + fillOffset );
|
||||
matches.at( 0 )->setSortPosition( pos + fillOffset, false );
|
||||
newGroupList << matches.at( 0 );
|
||||
|
||||
// add all the others, incrementing the index fix for every add
|
||||
for( int dup = 1; dup < matches.count(); ++dup )
|
||||
{
|
||||
highestPosition++;
|
||||
fillOffset++;
|
||||
matches.at( dup )->setSortPosition( pos + fillOffset );
|
||||
matches.at( dup )->setSortPosition( pos + fillOffset, false );
|
||||
newGroupList << matches.at( dup );
|
||||
}
|
||||
}
|
||||
|
||||
@@ -33,6 +33,7 @@
|
||||
#include "mimeapplication.h"
|
||||
#include "msnobjecttransferp2p.h"
|
||||
#include "p2papplication.h"
|
||||
#include "unknownapplication.h"
|
||||
|
||||
#include <QRegExp>
|
||||
|
||||
@@ -636,6 +637,15 @@ P2PApplication * ApplicationList::createApplicationByEufGuid(const QString &eufG
|
||||
{
|
||||
return new FileTransferP2P( this );
|
||||
}
|
||||
else if( eufGuid == UnknownApplication::getGamesAppId()
|
||||
|| eufGuid == UnknownApplication::getMeetingAppId()
|
||||
|| eufGuid == UnknownApplication::getRemoteDesktopAppId()
|
||||
|| eufGuid == UnknownApplication::getWebcamPullAppId()
|
||||
|| eufGuid == UnknownApplication::getWebcamPushAppId()
|
||||
|| eufGuid == UnknownApplication::getVoiceAppId() )
|
||||
{
|
||||
return new UnknownApplication( this, eufGuid );
|
||||
}
|
||||
else
|
||||
{
|
||||
#ifdef KMESSDEBUG_APPLICATIONLIST_GENERAL
|
||||
|
||||
@@ -23,6 +23,7 @@
|
||||
#include "../extra/p2pfragmenttracker.h"
|
||||
#include "../p2pmessage.h"
|
||||
|
||||
#include <QPointer>
|
||||
#include <QList>
|
||||
|
||||
|
||||
@@ -413,7 +414,7 @@ class P2PApplicationBase : public Application
|
||||
// Message buffer, required to deal with splitted MSNSLP messages
|
||||
QBuffer *buffer_;
|
||||
// The data source
|
||||
QIODevice *dataSource_;
|
||||
QPointer<QIODevice> dataSource_;
|
||||
// The type of data to send.
|
||||
P2PDataType dataType_;
|
||||
// Message ID, if we're sending "fragmented" content
|
||||
|
||||
@@ -0,0 +1,140 @@
|
||||
/***************************************************************************
|
||||
unknownapplication.cpp - description
|
||||
-------------------
|
||||
begin : Thu Jul 23 2009
|
||||
copyright : (C) 2009 by Valerio Pilo
|
||||
email : "project" --at-- "kmess" --dot-- "org"
|
||||
***************************************************************************/
|
||||
|
||||
/***************************************************************************
|
||||
* *
|
||||
* This program is free software; you can redistribute it and/or modify *
|
||||
* it under the terms of the GNU General Public License as published by *
|
||||
* the Free Software Foundation; either version 2 of the License, or *
|
||||
* (at your option) any later version. *
|
||||
* *
|
||||
***************************************************************************/
|
||||
|
||||
#include "unknownapplication.h"
|
||||
|
||||
#include "../mimemessage.h"
|
||||
|
||||
#include <KLocalizedString>
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* The constructor
|
||||
*/
|
||||
UnknownApplication::UnknownApplication( ApplicationList *applicationList, const QString &eufGuid )
|
||||
: P2PApplication( applicationList )
|
||||
, applicationGuid_( eufGuid )
|
||||
{
|
||||
}
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* The destructor
|
||||
*/
|
||||
UnknownApplication::~UnknownApplication()
|
||||
{
|
||||
}
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* Step one of a contact-started chat: the contact invites the user
|
||||
*
|
||||
* @param message The invitation message
|
||||
*/
|
||||
void UnknownApplication::contactStarted1_ContactInvitesUser( const MimeMessage &message )
|
||||
{
|
||||
QString errorMessage( i18n( "The contact is inviting you for '%1', but this is not implemented yet." ) );
|
||||
QString appName;
|
||||
|
||||
if( applicationGuid_ == getWebcamPullAppId()
|
||||
|| applicationGuid_ == getWebcamPushAppId() )
|
||||
{
|
||||
errorMessage = errorMessage.arg( i18n( "webcam" ) );
|
||||
}
|
||||
else if( applicationGuid_ == getMeetingAppId() )
|
||||
{
|
||||
errorMessage = errorMessage.arg( I18N_NOOP( "meeting" ) );
|
||||
}
|
||||
else if( applicationGuid_ == getRemoteDesktopAppId() )
|
||||
{
|
||||
errorMessage = errorMessage.arg( I18N_NOOP( "remote desktop" ) );
|
||||
}
|
||||
else if( applicationGuid_ == getVoiceAppId() )
|
||||
{
|
||||
errorMessage = i18n( "You are invited to start a voice conversation but support for this was not installed" );
|
||||
}
|
||||
else if( applicationGuid_ == getGamesAppId() )
|
||||
{
|
||||
// Parse the context
|
||||
// Contents is something like '10331021;1;Tic Tac Toe'
|
||||
QByteArray decodedContext( QByteArray::fromBase64( message.getValue("Context").toLatin1() ) );
|
||||
QString contextString ( QString::fromUtf16( reinterpret_cast<const ushort*>( decodedContext.data() ),
|
||||
decodedContext.size() / 2 ) );
|
||||
|
||||
errorMessage = errorMessage.arg( contextString.section( ';', 2, 2 ) );
|
||||
}
|
||||
|
||||
// Tell the contact we don't support the application
|
||||
showSystemMessage( errorMessage, ChatMessage::CONTENT_SYSTEM_NOTICE, true );
|
||||
sendCancelMessage( CANCEL_NOT_INSTALLED );
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
// Return the GUID for web applications (games)
|
||||
QString UnknownApplication::getGamesAppId()
|
||||
{
|
||||
return "{6A13AF9C-5308-4F35-923A-67E8DDA40C2F}";
|
||||
}
|
||||
|
||||
|
||||
|
||||
// Return the GUID for meeting
|
||||
QString UnknownApplication::getMeetingAppId()
|
||||
{
|
||||
return "{44BBA842-CC51-11CF-AAFA-00AA00B6015C}";
|
||||
}
|
||||
|
||||
|
||||
|
||||
// Return the GUID for remote desktop
|
||||
QString UnknownApplication::getRemoteDesktopAppId()
|
||||
{
|
||||
return "{56b994a7-380f-410b-9985-c809d78c1bdc}";
|
||||
}
|
||||
|
||||
|
||||
|
||||
// Return the GUID for webcam transfer sending
|
||||
QString UnknownApplication::getWebcamPushAppId()
|
||||
{
|
||||
return "{4BD96FC0-AB17-4425-A14A-439185962DC8}";
|
||||
}
|
||||
|
||||
|
||||
|
||||
// Return the GUID for webcam transfer receiving
|
||||
QString UnknownApplication::getWebcamPullAppId()
|
||||
{
|
||||
return "{1C9AA97E-9C05-4583-A3BD-908A196F1E92}";
|
||||
}
|
||||
|
||||
|
||||
|
||||
// Return the GUID for voice conversations
|
||||
QString UnknownApplication::getVoiceAppId()
|
||||
{
|
||||
return "{02D3C01F-BF30-4825-A83A-DE7AF41648AA}";
|
||||
}
|
||||
|
||||
|
||||
|
||||
#include "unknownapplication.moc"
|
||||
@@ -0,0 +1,70 @@
|
||||
/***************************************************************************
|
||||
unknownapplication.h - description
|
||||
-------------------
|
||||
begin : Thu Jul 23 2009
|
||||
copyright : (C) 2009 by Valerio Pilo
|
||||
email : "project" --at-- "kmess" --dot-- "org"
|
||||
***************************************************************************/
|
||||
|
||||
/***************************************************************************
|
||||
* *
|
||||
* This program is free software; you can redistribute it and/or modify *
|
||||
* it under the terms of the GNU General Public License as published by *
|
||||
* the Free Software Foundation; either version 2 of the License, or *
|
||||
* (at your option) any later version. *
|
||||
* *
|
||||
***************************************************************************/
|
||||
|
||||
#ifndef UNKNOWNAPPLICATION_H
|
||||
#define UNKNOWNAPPLICATION_H
|
||||
|
||||
#include "p2papplication.h"
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* Unknown application notification class.
|
||||
*
|
||||
* This class can be used to give useful error messages to the user when
|
||||
* unsupported applications are requested by contacts.
|
||||
*
|
||||
* @author Valerio Pilo
|
||||
* @ingroup Applications
|
||||
*/
|
||||
class UnknownApplication : public P2PApplication
|
||||
{
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
// The constructor
|
||||
UnknownApplication( ApplicationList *applicationList, const QString &eufGuid );
|
||||
// The destructor
|
||||
virtual ~UnknownApplication();
|
||||
|
||||
|
||||
public: // Static public members
|
||||
|
||||
// Return the GUID for web applications (games)
|
||||
static QString getGamesAppId();
|
||||
// Return the GUID for meeting
|
||||
static QString getMeetingAppId();
|
||||
// Return the GUID for remote desktop
|
||||
static QString getRemoteDesktopAppId();
|
||||
// Return the GUID for webcam transfer sending
|
||||
static QString getWebcamPushAppId();
|
||||
// Return the GUID for webcam transfer receiving
|
||||
static QString getWebcamPullAppId();
|
||||
// Return the GUID for voice conversations
|
||||
static QString getVoiceAppId();
|
||||
|
||||
|
||||
private:
|
||||
// Step one of a contact-started chat: the contact invites the user
|
||||
void contactStarted1_ContactInvitesUser( const MimeMessage& message );
|
||||
|
||||
private: // Private members
|
||||
// The GUID of the unsupported but known application
|
||||
const QString applicationGuid_;
|
||||
};
|
||||
|
||||
#endif
|
||||
@@ -610,8 +610,6 @@ void MsnConnection::parseError( const QStringList &command, const QByteArray &pa
|
||||
break;
|
||||
case 711:
|
||||
errorType = MsnSocketBase::ERROR_SERVER;
|
||||
#warning after release, make this more clear
|
||||
//errorMessage = i18nc("Error received from the MSN servers", "Unknown error");
|
||||
errorMessage = i18n("Write is blocking");
|
||||
break;
|
||||
case 712:
|
||||
@@ -655,7 +653,6 @@ void MsnConnection::parseError( const QStringList &command, const QByteArray &pa
|
||||
// We've received a warning message: show it in a dialog box, but do not disconnect
|
||||
else if( isWarning )
|
||||
{
|
||||
#warning TODO post-2.0: add the exact error number, command[0].toInt(), here
|
||||
KMessageBox::error( 0, errorMessage, i18nc( "Error dialog box title", "MSN Error" ) );
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -781,7 +781,6 @@ QByteArray MsnNotificationConnection::createTripleDes ( const QByteArray key, co
|
||||
if ( ! QCA::isSupported( "tripledes-cbc" ) )
|
||||
{
|
||||
kWarning() << "Triple DES encryption not supported, please install qca2 packages";
|
||||
#warning "Translate this after string freeze!!"
|
||||
slotError(I18N_NOOP("Triple DES encryption is not supported. This means you probably do not have "
|
||||
"installed qca2 or qca2-openssl. Please install it and retry"), MsnSocketBase::ERROR_AUTH_COMPUTATION);
|
||||
return "";
|
||||
@@ -2994,7 +2993,6 @@ void MsnNotificationConnection::slotError( QString error, MsnSocketBase::ErrorTy
|
||||
break;
|
||||
|
||||
case MsnSocketBase::ERROR_AUTH_COMPUTATION:
|
||||
#warning "Translate this after string freeze!"
|
||||
message = I18N_NOOP("<p>Unable to resolve the authentication on the client<br/>"
|
||||
"Maybe you do not have installed qca2 and/or qca2-plugin-ossl?</p>" );
|
||||
detailedMessage = I18N_NOOP("<p>KMess could not connect to the Live Messenger servers.<br />"
|
||||
|
||||
@@ -121,7 +121,7 @@ void SystemTrayWidget::displayCloseMessage( QString /*fileMenu*/ )
|
||||
// Grab an image of the screen which contains the tray icon
|
||||
QPixmap shot;
|
||||
if( pictureArea.x() == 0 && pictureArea.y() == 0 )
|
||||
{
|
||||
{
|
||||
#ifdef Q_WS_X11
|
||||
shot = QPixmap::grabWindow( QX11Info::appRootWindow(), pictureArea.x(), pictureArea.y(), pictureArea.width(), pictureArea.height() );
|
||||
#else
|
||||
@@ -239,8 +239,6 @@ void SystemTrayWidget::statusChanged()
|
||||
setIcon( icon );
|
||||
|
||||
// Change the tooltip
|
||||
#warning translate this correctly after 2.0!
|
||||
// QString newTooltip( i18nc( "Tray icon tooltip showing the KMess version", "KMess %1", KMESS_VERSION ) );
|
||||
QString newTooltip( "KMess " KMESS_VERSION );
|
||||
|
||||
if( status != STATUS_OFFLINE )
|
||||
|
||||
Reference in New Issue
Block a user