qutIM: more fixes and patches

* Show qutIM icon in notifications
* Directory structure adjusted
* Add resource file
* Add libqca to requires

TODO: fix icon loading and empty settings window...
This commit is contained in:
Sergei Reznikov
2015-09-02 19:23:26 +03:00
parent 1d0ee1bda0
commit 3bd3d838e7
3 changed files with 169 additions and 3 deletions

View File

@@ -0,0 +1,49 @@
resource app_signature "application/x-vnd.qutIM";
resource app_flags B_MULTIPLE_LAUNCH;
resource app_version {
major = 0,
middle = 3,
minor = 3,
variety = B_APPV_DEVELOPMENT,
internal = 0,
short_info = "QutIM 0.3.3",
long_info = "Qt4-based multi-protocol instant messenger"
};
resource vector_icon array {
$"6E63696604020006053DCCA338951EB8951E3DCCA348A47A4985C20070757F4D"
$"D6DADF53838289C4434343FFDDDDDD0201160338E60CB8EA24391EDC391A7949"
$"E0F44A7B8400FFB5D3FFF6020006033DD2E13D9828BD98283DD2E1C250A34B3F"
$"7000FFFFFF5927BAF2FF0053CC050003022ABFE1B9D6BFE1B9D6BFECBAF9BF00"
$"B9B6BEC3BB06BF45B834BD5F2ABE4DB787BF41B98ABC1FBCD5BD01B98BBBD3BD"
$"F2BC03C014BB96BF19BC21C05DBC6DC10BBC75C0B4BC66C165BC10C1F9BC36C1"
$"AABBD8C272BB39C34DBB6BC2E0BB1EC389BB92C3D3BB61C3B6BBDBC3FFBC6BC4"
$"5CBC41C40CBC88C495BC68C507BC81C4D0BC50C539BC6FC5A6BC3FC585BC93C5"
$"BFBCDCC5F8BCC3C5CEBCF3C622BD0EC673BCE8C653BD4DC6A9BDE4C714BDB4C6"
$"A4BDF9C748BE26C7B6BE09C782BE52C804BF25C813BECFC81CBF81C809C01FC7"
$"D1BFC5C7ECC105C786C2AAC69FC1DCC725C359C62EC45CC58EC3C0C5EDC4CDC5"
$"4BC5EDC540C56FC562C687C517C7B1C467C742C4D6C824C3F0C878C2B8C853C3"
$"92C846C2FFC743C3CFC7C5C3A2C6B7C3FEC65AC3A8C684C3E5C636C375C62FC2"
$"F3C62DC332C682C1D6C8DEC1EAC7EBC24CCA98C137CB19BE60CAFEBF9FCB28BD"
$"B2CC58BBDDCB3BBD3DCAF5BC7BCA10BDC6CA62BD0DC9C3BE74C83DBE96C8D0BF"
$"40C785BDBCCA51BC4BC922BC99CB43BC0DCC54BA21CC23BB12CCCEB6E0CC72B3"
$"05CB51B56CC916B5BAC9CCB971CBF2B735C893BAB7C7C3B8F3C747BA0AC814B8"
$"41C914B710C8D4B8ADC862B81CC57CB91AC621B768C45CBC11C55CB7CDC2CEB9"
$"38C66FB733C9AAB31FC908B764C867B5A6C2D0B656C54DB540C186B6E7BFE1B9"
$"D6BFD3B838BFE1B9D6020A4BB3054BB305C401B306C3C1B31BC3DFB30DC3C1B3"
$"1BB390BA75B390BA75B314BAADB315BBBBB2DDBB40B315BBBBBA6FCBEEBA6FCB"
$"EEBAA8CC6ABBB6CC68BB39CCA2BBB6CC68CBE8C50DCBE8C50DCC65C4D5CC63C3"
$"C7CC9BC443CC63C3C7C507B395C507B395C4DDB3384BB305C481B3024BB3050A"
$"04CAD3C3EBBB91CAD8B4A4BB98C3E6B4AA050A030100123FC488000000000000"
$"3FA7CC41C4BC43AEE401178000040A030101123FC4880000000000003FA7CC41"
$"C4BC43AEE401178400040A000101023FC4880000000000003FA7CC41C4BC43AE"
$"E40A010102023FC4880000000000003FA7CC41C4BC43AEE40A020100023FC488"
$"0000000000003FA7CC41C4BC43AEE4"
};
resource file_types message;

View File

@@ -0,0 +1,99 @@
From bb855e1ee635a190b919da43993901f8d6108309 Mon Sep 17 00:00:00 2001
From: Sergei Reznikov <diver@gelios.net>
Date: Mon, 31 Aug 2015 14:18:34 +0300
Subject: Haiku: disable adding an icon to a binary
Build fails with this rule if QUTIM_BINARY_DIR is defined with this error:
Error: Failed to open input file
"/packages/qutim_x86-0.3.3-1/.self/apps/qutIM/qutim.rsrc": No such file or directory
diff --git a/core/CMakeLists.txt b/core/CMakeLists.txt
index 237d407..dde5eb5 100644
--- a/core/CMakeLists.txt
+++ b/core/CMakeLists.txt
@@ -334,28 +334,6 @@ IF(APPLE AND QUTIM_BUNDLE_LOCATION)
ENDIF(APPLE AND QUTIM_BUNDLE_LOCATION)
-if(HAIKU)
- find_program( HAIKU_RC_COMPILER xres )
- if( NOT HAIKU_RC_COMPILER )
- message("No RC compiler (Haiku's xres) found.")
- return()
- endif()
-
- find_program( HAIKU_MIMESET mimeset )
- if( NOT HAIKU_MIMESET )
- message("Haiku's mimeset is not found.")
- return()
- endif()
-
- add_custom_command(TARGET qutim POST_BUILD
- COMMAND ${HAIKU_RC_COMPILER} ARGS
- "-o" ${QUTIM_BINARY_DIR}/qutim
- ${QUTIM_BINARY_DIR}/qutim.rsrc
- COMMAND ${HAIKU_MIMESET} ARGS
- "-f" ${QUTIM_BINARY_DIR}/qutim
- )
-endif(HAIKU)
-
if(LANGUAGE)
LANGUAGE_UPDATE( core ${LANGUAGE} "${CMAKE_CURRENT_SOURCE_DIR}" )
endif( LANGUAGE )
--
2.2.2
From 01a16aeb9e8e69b5640d7e3695483c6f6a59a34d Mon Sep 17 00:00:00 2001
From: Sergei Reznikov <diver@gelios.net>
Date: Wed, 2 Sep 2015 19:17:52 +0300
Subject: haikunotifications: show icon from the binary
diff --git a/plugins/haikunotifications/src/haikunotificationsbackend.cpp b/plugins/haikunotifications/src/haikunotificationsbackend.cpp
index f6a570d..4d28b77 100644
--- a/plugins/haikunotifications/src/haikunotificationsbackend.cpp
+++ b/plugins/haikunotifications/src/haikunotificationsbackend.cpp
@@ -31,10 +31,12 @@
#include <QTextDocument>
#ifdef Q_OS_HAIKU
+#include <Application.h>
#include <Roster.h>
#include <Notification.h>
#include <String.h>
#include <Bitmap.h>
+#include <IconUtils.h>
#endif
using namespace qutim_sdk_0_3;
@@ -48,7 +50,7 @@ HaikuNotificationsBackend::HaikuNotificationsBackend() :
void HaikuNotificationsBackend::handleNotification(qutim_sdk_0_3::Notification *notification)
-{
+{
//ref(notification);
NotificationRequest request = notification->request();
QString text = request.text();
@@ -56,10 +58,13 @@ void HaikuNotificationsBackend::handleNotification(qutim_sdk_0_3::Notification *
BNotification notify(B_INFORMATION_NOTIFICATION);
notify.SetTitle(static_cast<BString>(request.title().toLocal8Bit()));
notify.SetContent(static_cast<BString>(text.toLocal8Bit()));
- if(!request.image().isNull()) {
- BBitmap *bitmap = request.image().toHaikuBitmap();
- notify.SetIcon(bitmap);
- }
+
+ app_info info;
+ be_app->GetAppInfo(&info);
+ BBitmap icon(BRect(0, 0, 32, 32), B_RGBA32);
+ BNode node(&info.ref);
+ BIconUtils::GetVectorIcon(&node, "BEOS:ICON", &icon);
+ notify.SetIcon(&icon);
notify.Send();
}
--
2.2.2

View File

@@ -31,6 +31,7 @@ REQUIRES="
libqt4${secondaryArchSuffix} >= 4.8
lib:libaspell$secondaryArchSuffix
lib:libgsasl$secondaryArchSuffix
lib:libqca$secondaryArchSuffix
lib:libz$secondaryArchSuffix
"
BUILD_REQUIRES="
@@ -52,6 +53,8 @@ BUILD_PREREQUIRES="
cmd:pkg_config${secondaryArchSuffix}
"
PATCHES="qutim_x86-0.3.3.patchset"
BUILD()
{
# prepare the directory structure
@@ -63,6 +66,7 @@ BUILD()
mkdir -p ../qutim-build
cd ../qutim-build
cmake ../qutim-0.3.3 \
-DVREEN=0 \
-DVKONTAKTE=0 \
@@ -70,15 +74,29 @@ BUILD()
-DDBUSAPI=off \
-DDBUSNOTIFICATIONS=off \
-DNOWPLAYING=off \
-DCMAKE_INSTALL_PREFIX=$appsDir/qutIM
# -DDATA_INSTALL_DIR=$appsDir/qutIM/data \
# -DQUTIM_SHARE_DIR_DEF=$appsDir/qutIM/data
-DCMAKE_INSTALL_PREFIX=$appsDir/qutIM \
-DDATA_INSTALL_DIR=$appsDir/qutIM/data \
-DQUTIM_SHARE_DIR_DEF=$appsDir/qutIM/data \
-DQUTIM_SHARE_DIR=$appsDir/qutIM/data \
-DQUTIM_BINARY_DIR=$appsDir/qutIM \
-DQUTIM_PLUGINS_DEST=$appsDir/qutIM
make $jobArgs
}
INSTALL()
{
cd ../qutim-build
make install
mv $appsDir/qutIM/bin/qutim $appsDir/qutIM/qutIM
rm -rf $appsDir/qutIM/bin
addResourcesToBinaries $portDir/additional-files/qutim.rdef $appsDir/qutIM/qutIM
rm -rf $appsDir/qutIM/{include,libqutim,share}
rm -rf $appsDir/qutIM/lib/{pkgconfig,qutim}
addAppDeskbarSymlink $appsDir/qutIM/qutIM
}