Compare commits

...

3 Commits

Author SHA1 Message Date
Mario Fetka 141bff5dd3 Bump version to 6.0 alpha2 2026-07-06 07:42:20 +02:00
Mario Fetka ae8f851b06 Fix KF6 runtime integration warnings 2026-07-06 07:37:58 +02:00
Mario Fetka 65d3f78a14 Fix contact list model teardown crash 2026-07-06 07:29:12 +02:00
13 changed files with 54 additions and 35 deletions
+4 -2
View File
@@ -8,11 +8,13 @@ set(CMAKE_MODULE_PATH
${ECM_MODULE_PATH}
${CMAKE_CURRENT_SOURCE_DIR}/cmake)
set(BUILD_WITH_QT6 ON CACHE BOOL "Build against Qt 6" FORCE)
set(QT_DEFAULT_MAJOR_VERSION 6)
include(KDEInstallDirs)
include(KDECMakeSettings)
include(KDECompilerSettings NO_POLICY_SCOPE)
set(QT_DEFAULT_MAJOR_VERSION 6)
find_package(Qt6 REQUIRED COMPONENTS Core Core5Compat DBus Gui Multimedia Network Test WebEngineWidgets Widgets Xml)
find_package(KF6 REQUIRED COMPONENTS
Codecs
@@ -54,7 +56,7 @@ else()
set(KMESS_DISABLE_LIKEBACK 0)
endif()
set(KMESS_VERSION "6.0_alpha1")
set(KMESS_VERSION "6.0_alpha2")
set(KMESS_ENABLE_DEBUG_OUTPUT 0)
set(KMESS_BUILT_DEBUGFULL FALSE)
set(HAVE_LIBISFQT 1)
+3 -2
View File
@@ -6,5 +6,6 @@ ADD_SUBDIRECTORY( emoticons )
ADD_SUBDIRECTORY( chatstyles )
INSTALL( FILES kmesschatstyles.knsrc DESTINATION ${CONFIG_INSTALL_DIR} )
INSTALL( FILES kmess.notifyrc DESTINATION ${DATA_INSTALL_DIR}/kmess )
INSTALL( FILES kmess.desktop DESTINATION ${XDG_APPS_INSTALL_DIR} )
INSTALL( FILES kmess.notifyrc DESTINATION ${KDE_INSTALL_KNOTIFYRCDIR} )
INSTALL( FILES kmess.desktop DESTINATION ${XDG_APPS_INSTALL_DIR}
RENAME org.kmess.kmess.desktop )
+11 -7
View File
@@ -1,12 +1,16 @@
SET( KMESS_ICON_INSTALL_DIR ${DATA_INSTALL_DIR}/kmess/icons/hicolor/16x16 )
# If Likeback is enabled, install the needed icons
IF( NOT ${KMESS_DISABLE_LIKEBACK} EQUAL 1 )
INSTALL( FILES likeback_bug.png DESTINATION ${KMESS_ICON_INSTALL_DIR}/actions )
INSTALL( FILES likeback_dislike.png DESTINATION ${KMESS_ICON_INSTALL_DIR}/actions )
INSTALL( FILES likeback_feature.png DESTINATION ${KMESS_ICON_INSTALL_DIR}/actions )
INSTALL( FILES likeback_like.png DESTINATION ${KMESS_ICON_INSTALL_DIR}/actions )
INSTALL( FILES likeback_bug.png DESTINATION ${KDE_INSTALL_ICONDIR}/hicolor/16x16/actions )
INSTALL( FILES likeback_dislike.png DESTINATION ${KDE_INSTALL_ICONDIR}/hicolor/16x16/actions )
INSTALL( FILES likeback_feature.png DESTINATION ${KDE_INSTALL_ICONDIR}/hicolor/16x16/actions )
INSTALL( FILES likeback_like.png DESTINATION ${KDE_INSTALL_ICONDIR}/hicolor/16x16/actions )
ENDIF( NOT ${KMESS_DISABLE_LIKEBACK} EQUAL 1 )
INSTALL( FILES kmess-shadow.png DESTINATION ${KMESS_ICON_INSTALL_DIR}/apps )
INSTALL( FILES hi16-app-kmess.png DESTINATION ${KDE_INSTALL_ICONDIR}/hicolor/16x16/apps RENAME kmess.png )
INSTALL( FILES hi22-app-kmess.png DESTINATION ${KDE_INSTALL_ICONDIR}/hicolor/22x22/apps RENAME kmess.png )
INSTALL( FILES hi32-app-kmess.png DESTINATION ${KDE_INSTALL_ICONDIR}/hicolor/32x32/apps RENAME kmess.png )
INSTALL( FILES hi48-app-kmess.png DESTINATION ${KDE_INSTALL_ICONDIR}/hicolor/48x48/apps RENAME kmess.png )
INSTALL( FILES hi64-app-kmess.png DESTINATION ${KDE_INSTALL_ICONDIR}/hicolor/64x64/apps RENAME kmess.png )
INSTALL( FILES hi128-app-kmess.png DESTINATION ${KDE_INSTALL_ICONDIR}/hicolor/128x128/apps RENAME kmess.png )
INSTALL( FILES kmess-shadow.png DESTINATION ${KDE_INSTALL_ICONDIR}/hicolor/256x256/apps )
+5 -5
View File
@@ -1,14 +1,15 @@
[Desktop Entry]
Name=KMess
Exec=kmess -caption "%c" %i
Exec=kmess
Icon=kmess
Type=Application
DocPath=kmess/index.html
Terminal=0
Terminal=false
Categories=Qt;KDE;Network;InstantMessaging;
StartupWMClass=kmess
Comment=Live Messenger Client for KDE
Comment[de]=Live-Messenger-Klon für KDE 4
Comment[nl]=MSN Messenger Kloon voor KDE 4
Comment[de]=Live-Messenger-Client für KDE
Comment[nl]=Live Messenger-client voor KDE
GenericName=Live Messenger Client
GenericName[af]=Irc Kliënt
GenericName[ar]=عميل MSN
@@ -67,4 +68,3 @@ GenericName[xx]=xxMSN Clientxx
GenericName[zh_CN]=MSN 客户程序
GenericName[zh_TW]=MSN 客戶端程式
GenericName[zu]=Umthengi we MSN
+2 -2
View File
@@ -245,5 +245,5 @@ TARGET_LINK_LIBRARIES( kmess ${kmess_LIBS} )
INSTALL( TARGETS kmess DESTINATION ${BIN_INSTALL_DIR})
INSTALL( FILES chat/chatwindowui.rc DESTINATION ${DATA_INSTALL_DIR}/kmess )
INSTALL( FILES kmessinterfaceui.rc DESTINATION ${DATA_INSTALL_DIR}/kmess )
INSTALL( FILES chat/chatwindowui.rc DESTINATION ${KDE_INSTALL_KXMLGUIDIR}/kmess )
INSTALL( FILES kmessinterfaceui.rc DESTINATION ${KDE_INSTALL_KXMLGUIDIR}/kmess )
+6 -4
View File
@@ -122,10 +122,12 @@ InitialView::InitialView( QWidget *parent )
this, SLOT ( slotConnectClicked() ) );
connect( rememberAccountCheckBox_, SIGNAL( stateChanged(int) ),
this, SLOT ( rememberAccountStateChanged(int) ) );
connect( forgottenPasswordLabel_, SIGNAL( leftClickedUrl(const QString&) ),
this, SLOT ( slotClickedUrl(const QString&) ) );
connect( newAccountLabel_, SIGNAL( leftClickedUrl(const QString&) ),
this, SLOT ( slotClickedUrl(const QString&) ) );
connect( forgottenPasswordLabel_, &KUrlLabel::leftClickedUrl, this, [this]() {
slotClickedUrl( forgottenPasswordLabel_->url() );
} );
connect( newAccountLabel_, &KUrlLabel::leftClickedUrl, this, [this]() {
slotClickedUrl( newAccountLabel_->url() );
} );
connect( statusLabel_, SIGNAL( linkActivated(const QString&) ),
this, SLOT ( slotClickedUrl(const QString&) ) );
connect( rememberPasswordCheckBox_, SIGNAL( stateChanged(int) ),
+5 -3
View File
@@ -1376,8 +1376,9 @@ bool KMess::initChatMaster()
msnNotificationConnection_, SLOT ( blockContact(QString) ) );
connect( chatMaster_, SIGNAL( unblockContact(QString) ),
msnNotificationConnection_, SLOT ( unblockContact(QString) ) );
connect( chatMaster_, SIGNAL( addContact(QString) ),
msnNotificationConnection_, SLOT ( addNewContact(QString, const QStringList) ) );
connect( chatMaster_, &ChatMaster::addContact, msnNotificationConnection_, [this]( const QString &handle ) {
msnNotificationConnection_->addNewContact( handle );
} );
connect( chatMaster_, SIGNAL( removeContact(QString,bool) ),
msnNotificationConnection_, SLOT ( removeContact(QString,bool) ) );
connect( chatMaster_, SIGNAL( allowContact(QString) ),
@@ -1506,7 +1507,8 @@ bool KMess::initNotifications()
// Add check whether the 'eventsrc' file can be found.
// The warning is a bit obtruisive, but should help to user to fix the problem.
if( KMessShared::findResource( "data", "kmess/kmess.notifyrc" ).isNull() )
if( KMessShared::findResource( "data", "knotifications6/kmess.notifyrc" ).isNull()
&& KMessShared::findResource( "data", "kmess/kmess.notifyrc" ).isNull() )
{
QString dirs( KMessShared::findResourceDirs( "data", QString() ).join("/kmess<br>") );
if( ! dirs.isEmpty() )
+3 -3
View File
@@ -207,7 +207,7 @@ void KMessInterface::createMenus()
// Add shortcut for Search in ContactList
showSearchAction_->setShortcut( QKeySequence::fromString( tr( "Ctrl+f" ) ) );
actionCollection()->setDefaultShortcut( showSearchAction_, QKeySequence::fromString( tr( "Ctrl+f" ) ) );
// Disable the context menu, because there's no selection on start
contextMenuAction_->setEnabled( false );
@@ -223,9 +223,9 @@ void KMessInterface::createMenus()
this, SLOT ( changeStatus(QAction*) ) );
// Connect slots to signals for "View" menu
connect( viewMode_, SIGNAL( triggered(int) ),
connect( viewMode_, SIGNAL( indexTriggered(int) ),
this, SLOT ( changeViewMode(int) ) );
connect( listPictureSize_, SIGNAL( triggered(int) ),
connect( listPictureSize_, SIGNAL( indexTriggered(int) ),
this, SLOT ( changedListPictureSize(int) ) );
connect( showAllowedAction_, SIGNAL( triggered(bool) ),
this, SLOT ( toggleShowAllowed(bool) ) );
+2 -2
View File
@@ -729,8 +729,8 @@ bool KMessView::initContactPopup()
// Create the signal mappers needed to assign all actions to the move/copy contact slots
contactCopyMapper_ = new QSignalMapper( this );
contactMoveMapper_ = new QSignalMapper( this );
connect( contactCopyMapper_, SIGNAL(mapped(const QString&)), this, SLOT(slotForwardCopyContact(const QString&)) );
connect( contactMoveMapper_, SIGNAL(mapped(const QString&)), this, SLOT(slotForwardMoveContact(const QString&)) );
connect( contactCopyMapper_, SIGNAL(mappedString(const QString&)), this, SLOT(slotForwardCopyContact(const QString&)) );
connect( contactMoveMapper_, SIGNAL(mappedString(const QString&)), this, SLOT(slotForwardMoveContact(const QString&)) );
// Initialize the sub menus to copy/move contacts
copyContactToGroup_ = new KActionMenu( i18n("&Copy to Group"), this );
+3
View File
@@ -25,6 +25,7 @@
#include <QCommandLineOption>
#include <QCommandLineParser>
#include <QIcon>
@@ -41,6 +42,8 @@ int main(int argc, char *argv[])
// Create the application before KAboutData and QCommandLineParser, as required by KF6.
KMessApplication kmessApp( argc, argv );
kmessApp.setDesktopFileName( "org.kmess.kmess" );
kmessApp.setWindowIcon( QIcon::fromTheme( QStringLiteral( "kmess" ) ) );
KLocalizedString::setApplicationDomain( "kmess" );
// Init about dialog.
+7 -2
View File
@@ -79,9 +79,15 @@ ContactListModelItem::ContactListModelItem( Group *group, ContactListModelItem *
*/
ContactListModelItem::~ContactListModelItem()
{
qDeleteAll( childItems_ );
ModelItemList childItems = childItems_;
childItems_.clear();
for( ContactListModelItem *childItem : std::as_const( childItems ) )
{
childItem->parentNode_ = 0;
delete childItem;
}
// Delete this item from the parent's children
if( parentNode_ )
{
@@ -758,4 +764,3 @@ QDebug operator<<( QDebug out, const ContactListModelItem *item )
return out;
}
+2 -2
View File
@@ -412,7 +412,7 @@ bool DirectConnectionBase::openConnection( const QString &ipAddress, const quint
this, SLOT ( slotSocketDisconnected() ));
connect( socket_, SIGNAL( readyRead() ),
this, SLOT ( slotSocketDataReceived() ));
connect( socket_, SIGNAL( error(QAbstractSocket::SocketError) ),
connect( socket_, SIGNAL( errorOccurred(QAbstractSocket::SocketError) ),
this, SLOT ( slotSocketError(QAbstractSocket::SocketError) ));
// Indicate we'll become a direct-connection client.
@@ -661,7 +661,7 @@ void DirectConnectionBase::slotAcceptConnection()
this, SLOT ( slotSocketDisconnected() ));
connect( socket_, SIGNAL( readyRead() ),
this, SLOT ( slotSocketDataReceived() ));
connect( socket_, SIGNAL( error(QAbstractSocket::SocketError) ),
connect( socket_, SIGNAL( errorOccurred(QAbstractSocket::SocketError) ),
this, SLOT ( slotSocketError(QAbstractSocket::SocketError) ));
// Inform there is a connection
+1 -1
View File
@@ -80,7 +80,7 @@ MsnSocketTcp::MsnSocketTcp( ServerType serverType )
this, SLOT ( slotHostFound() ) );
connect( socket_, SIGNAL( readyRead() ),
this, SLOT ( slotSocketDataReceived() ) );
connect( socket_, SIGNAL( error(QAbstractSocket::SocketError) ),
connect( socket_, SIGNAL( errorOccurred(QAbstractSocket::SocketError) ),
this, SLOT ( slotSocketError(QAbstractSocket::SocketError) ) );
connect( socket_, SIGNAL( proxyAuthenticationRequired(const QNetworkProxy&,QAuthenticator*) ),
this, SLOT ( proxyAuthenticate(const QNetworkProxy&,QAuthenticator*) ) );