Whatsie port (#13612)

This commit is contained in:
Peppersawce
2026-01-13 13:50:25 +01:00
committed by GitHub
parent 8597b0e214
commit 4f3888b852
3 changed files with 375 additions and 0 deletions

View File

@@ -0,0 +1,49 @@
resource app_flags B_SINGLE_LAUNCH | B_ARGV_ONLY;
resource app_version {
major = @MAJOR@,
middle = @MIDDLE@,
minor = @MINOR@,
variety = B_APPV_FINAL,
internal = 0,
short_info = "WhatSie",
long_info = "@LONG_INFO@"
};
resource app_signature "@APP_SIGNATURE@";
resource vector_icon {
$"6E6369660204F3FF01008000FF030607FF3FB7ABC4ABB727C635B6B1C32AB620"
$"BF73B620C15FB620BA22BFC2B5D1BA71B5D1C513B5D1C964BF73C964BA22C964"
$"C4C3BFC2C914C513C914BDF5C914BAD4C7B9BC45C895B943C83EB620C94AB7B2"
$"C8C4B6A4C7C00607FF3FB978C3EAB925C4E0B892C2A7B80BBF73B80BC11DB80B"
$"BB2FBFC2B7BABB7FB7BAC404B7BAC77ABF73C77ABB2FC77AC3B5BFC2C72AC404"
$"C72ABE24C72ABB69C5D2BCA6C6ABBA72C625B882C6CAB97AC678B8D4C5D5063A"
$"FFFFFFFFFFFFFFFFFFFFFFFFFFFF0FBB1BBC70BB1BBC70BB78BC5FBC33BC4BBB"
$"D5BC53BC4BBC4ABC80BC49BC66BC49BCC7BC49BD5ABC5DBD0FBC4FBD71BCD9BD"
$"9BBDD0BD87BD54BDB0BE4BBDD6BF45BDC2BEC7BDD9BF50BDF1BF5DBDE2BF59BE"
$"01BF60BE0EBF54BE0ABF5DBE20BF21BE48BEA1BE35BEE6BE5DBE5DBE86BDD0BE"
$"71BE16BE9ABD89BEBFBCFFBEADBD43BED2BCB9BEF3BC4BBEE2BC7EBF4ABC44BF"
$"FDBC39BFA3BC3EC011BC38C039BC38C025BC37C07FBC38C107BC4BC0C4BC3FC1"
$"2EBCC7C17BBDB8C155BD41C1A1BE31C1EABF2AC1C6BEACC1EDBF30C1F6BF3EC1"
$"F1BF37C1FCBF45C209BF48C202BF48C210BF47C21EBF36C217BF41C225BF2AC2"
$"2FBEFBC22BBF15C24DBE13C283BC3CC269BD29C2BCBC2EC338BC29C2F9BC29C3"
$"48BC28C36937C358BC29C3BABC2EC464BC3CC40EBC34C460BC94C44EBD62C459"
$"39C443BDCCC427BEAAC436BE3AC418BF19C3F6BFFBC408BF89C3E5C06BC3C2C1"
$"3BC3D4C0D6C3B2C19FC392C251C3A2C1FCC383C2A5C36AC323C376C2EBC325C3"
$"28C2A6C330C2E4C32CC268C334C1EFC339C22BC337C1B3C33CC139C33EC176C3"
$"3DC0FDC33FC07DC33FC0BEC33FC07AC333C071C2FCC076C31CC06CC2DCC05FC2"
$"89C066C2B5C058C25CC048C1FBC050C22DC040C1C8C030C16BC038C199C028C1"
$"3DC01AC0EFC021C114C013C0C9C00AC09DC00EC0AEC005C086BFF3C06BBFFEC0"
$"75BFEBC060BFD6C05CBFE1C05BBFCCC05DBFB8C06EBFC3C063BFB0C07ABFA3C0"
$"9DBFA9C089BF9CC0BBBF83C116BF91C0E4BF77C148BF5845BF68C180BF48C1FB"
$"BF27C280BF38C23CBF17C2C4BEF8C349BF07C307BEB1C34EBE37C354BE72C352"
$"BE0849BDADC357BDDAC357BDA2C357BD8BC357BD97C357BD54C357BCE4C352BD"
$"1DC355BCADC34FBC34C349BC72C34CBC14C2B6BBE1C191BBF9C223BBC8C0FFBB"
$"9FBFDDBBB2C06EBB89BF4ABB62BE27BB76BEB9BB4EBD93BB1BBC70BB37BD01BB"
$"1BBC70030A000100000A010101000A00010200"
};

View File

@@ -0,0 +1,248 @@
From aa8347fb69dcf20696ec8e954f6b19031d362efc Mon Sep 17 00:00:00 2001
From: Peppersawce <michaelpeppers89@yahoo.it>
Date: Sun, 11 Jan 2026 01:12:30 +0100
Subject: Haiku fixes & cleanup
diff --git a/src/WhatsApp.pro b/src/WhatsApp.pro
index 38995b7..e66a5de 100644
--- a/src/WhatsApp.pro
+++ b/src/WhatsApp.pro
@@ -43,7 +43,7 @@ qtConfig(webengine-native-spellchecker) {
TARGET = whatsie
TEMPLATE = app
-LIBS += -L/usr/X11/lib -lX11
+#LIBS += -L/usr/X11/lib -lX11
include(singleapplication/singleapplication.pri)
DEFINES += QAPPLICATION_CLASS=QApplication
@@ -151,7 +151,7 @@ isEmpty(PREFIX){
message("Installation prefix: $$PREFIX")
BINDIR = $$PREFIX/bin
-DATADIR = $$PREFIX/share
+DATADIR = $$PREFIX/data
target.path = $$BINDIR
@@ -173,7 +173,7 @@ CONFIG(FLATPAK){
QMAKE_EXTRA_COMPILERS += dictoolbuild
dictionaries.files = $${DICTIONARIES_DIR}/
- dictionaries.path = $$DATADIR/org.keshavnrj.ubuntu/WhatSie/
+ dictionaries.path = $$DATADIR/WhatSie/
unix:INSTALLS += dictionaries
}
@@ -205,5 +205,5 @@ appstream.files = ../dist/linux/com.ktechpit.whatsie.appdata.xml
desktop.path = $$DATADIR/applications/
desktop.files = ../dist/linux/com.ktechpit.whatsie.desktop
-unix:INSTALLS += target icon16 icon32 icon64 icon128 icon256
-unix:INSTALLS += iconscalable iconsymbolic license appstream desktop
+#unix:INSTALLS += target icon16 icon32 icon64 icon128 icon256
+#unix:INSTALLS += iconscalable iconsymbolic license appstream desktop
diff --git a/src/dictionaries.cpp b/src/dictionaries.cpp
index 5299806..6994327 100644
--- a/src/dictionaries.cpp
+++ b/src/dictionaries.cpp
@@ -25,13 +25,17 @@ QString Dictionaries::GetDictionaryPath() {
QString dict_dir = "qtwebengine_dictionaries";
- // inside appdata dir /usr/share/org/appname
- QString appdata_path = QStandardPaths::standardLocations(QStandardPaths::GenericDataLocation).filter("/usr/share").first();
+ // inside appdata dir /boot/home
dict_path =
- QString("%1/%2/%3/%4")
- .arg(appdata_path,QApplication::organizationName(),
- QApplication::applicationName(), dict_dir);
- qDebug()<< dict_path;
+ QString("%1/%2/%3")
+ .arg("/boot/home/config/data", QApplication::applicationName(), dict_dir);
+ if (QDir(dict_path).exists()) {
+ return dict_path;
+ }
+ // inside appdata dir /boot/system
+ dict_path =
+ QString("%1/%2/%3")
+ .arg("/boot/system/data", QApplication::applicationName(), dict_dir);
if (QDir(dict_path).exists()) {
return dict_path;
}
diff --git a/src/lock.cpp b/src/lock.cpp
index 46d8160..208c992 100644
--- a/src/lock.cpp
+++ b/src/lock.cpp
@@ -1,22 +1,11 @@
#include "lock.h"
#include "ui_lock.h"
-#include "X11/XKBlib.h" // keep this header at bottom
-
Lock::Lock(QWidget *parent) : QWidget(parent), ui(new Ui::Lock) {
ui->setupUi(this);
ui->setPass->setEnabled(false);
ui->wrong->hide();
- MoreApps *moreApps =
- new MoreApps(this, nullptr, "keshavnrj",
- QUrl("https://raw.githubusercontent.com/keshavbhatt/appdata/"
- "main/moreapps.txt"),
- false);
- moreApps->setWindowTitle("More Applications by developer");
- moreApps->setFixedHeight(98);
- ui->moreAppsLayout->addWidget(moreApps);
-
passcodeLoginAction = ui->passcodeLogin->addAction(
QIcon(":/icons/green_arrow-right-line.png"), QLineEdit::TrailingPosition);
passcodeLoginAction->setEnabled(false);
@@ -235,15 +224,7 @@ void Lock::lock_app() {
void Lock::on_passcodeLogin_returnPressed() { passcodeLoginAction->trigger(); }
bool Lock::getCapsLockOn() {
- Display *d = XOpenDisplay(nullptr);
- bool caps_state = false;
- if (d) {
- unsigned n;
- XkbGetIndicatorState(d, XkbUseCoreKbd, &n);
- caps_state = (n & 0x01) == 1;
- XCloseDisplay(d);
- }
- return caps_state;
+ return false;
}
void Lock::on_cancelSetting_clicked() {
--
2.52.0
From 601107acc462c417b5fd44e10bcc64ac236c3bcd Mon Sep 17 00:00:00 2001
From: Peppersawce <michaelpeppers89@yahoo.it>
Date: Sun, 11 Jan 2026 21:08:31 +0100
Subject: This fixes "config" and "cache" dir creation (somewhat)
diff --git a/src/main.cpp b/src/main.cpp
index 1d5efe9..966b907 100644
--- a/src/main.cpp
+++ b/src/main.cpp
@@ -31,7 +31,7 @@ int main(int argc, char *argv[]) {
QApplication::setApplicationName("WhatSie");
QApplication::setDesktopFileName("com.ktechpit.whatsie");
QApplication::setOrganizationDomain("com.ktechpit");
- QApplication::setOrganizationName("org.keshavnrj.ubuntu");
+ QApplication::setOrganizationName("");
QApplication::setApplicationVersion(VERSIONSTR);
qputenv("QTWEBENGINE_DICTIONARIES_PATH",
--
2.52.0
From 272bef6d50f9e1c3fc88124916986554f79d8157 Mon Sep 17 00:00:00 2001
From: Peppersawce <michaelpeppers89@yahoo.it>
Date: Tue, 13 Jan 2026 00:17:00 +0100
Subject: Disable Snap rating shenanigans
diff --git a/src/WhatsApp.pro b/src/WhatsApp.pro
index e66a5de..b6a6f5f 100644
--- a/src/WhatsApp.pro
+++ b/src/WhatsApp.pro
@@ -91,7 +91,6 @@ SOURCES += \
main.cpp \
mainwindow.cpp \
permissiondialog.cpp \
- rateapp.cpp \
settingswidget.cpp \
sunclock.cpp \
theme.cpp \
@@ -116,7 +115,6 @@ HEADERS += \
mainwindow.h \
notificationpopup.h \
permissiondialog.h \
- rateapp.h \
requestinterceptor.h \
settingsmanager.h \
settingswidget.h \
@@ -136,7 +134,6 @@ FORMS += \
lock.ui \
passworddialog.ui \
permissiondialog.ui \
- rateapp.ui \
settingswidget.ui
TRANSLATIONS += \
diff --git a/src/mainwindow.cpp b/src/mainwindow.cpp
index ac9741d..a60474f 100644
--- a/src/mainwindow.cpp
+++ b/src/mainwindow.cpp
@@ -30,7 +30,7 @@ MainWindow::MainWindow(QWidget *parent)
createTrayIcon();
createWebEngine();
initSettingWidget();
- initRateWidget();
+ //initRateWidget();
QApplication::processEvents();
tryLock();
updateWindowTheme();
@@ -79,7 +79,7 @@ void MainWindow::initAutoLock() {
}
}
-void MainWindow::initRateWidget() {
+/*void MainWindow::initRateWidget() {
RateApp *rateApp = new RateApp(this, "snap://whatsie", 5, 5, 1000 * 30);
rateApp->setWindowTitle(QApplication::applicationName() + " | " +
tr("Rate Application"));
@@ -96,7 +96,7 @@ void MainWindow::initRateWidget() {
rateApp->delayShowEvent();
}
});
-}
+}*/
void MainWindow::runMinimized() {
this->m_minimizeAction->trigger();
diff --git a/src/mainwindow.h b/src/mainwindow.h
index 64ce92c..5924ae5 100644
--- a/src/mainwindow.h
+++ b/src/mainwindow.h
@@ -28,7 +28,7 @@
#include "downloadmanagerwidget.h"
#include "lock.h"
#include "notificationpopup.h"
-#include "rateapp.h"
+//#include "rateapp.h"
#include "requestinterceptor.h"
#include "settingswidget.h"
#include "theme.h"
--
2.52.0
From 7ea25873c507b596c4963e21ab4d3fdbce7d1fc2 Mon Sep 17 00:00:00 2001
From: Peppersawce <michaelpeppers89@yahoo.it>
Date: Tue, 13 Jan 2026 13:29:02 +0100
Subject: Fix window rendering
diff --git a/src/main.cpp b/src/main.cpp
index 966b907..e39f702 100644
--- a/src/main.cpp
+++ b/src/main.cpp
@@ -22,7 +22,7 @@ int main(int argc, char *argv[]) {
#else
qputenv("QTWEBENGINE_CHROMIUM_FLAGS",
"--disable-logging --ignore-gpu-blocklist --no-sandbox "
- "--single-process --disable-extensions");
+ "--disable-extensions");
#endif
SingleApplication instance(argc, argv, true);
--
2.52.0

View File

@@ -0,0 +1,78 @@
SUMMARY="Feature rich WhatsApp Client"
DESCRIPTION="WhatSie is a feature rich WhatsApp web client based on Qt WebEngine and QT5"
HOMEPAGE="https://github.com/keshavbhatt/whatsie"
COPYRIGHT="2024 Keshav Bhatt"
LICENSE="MIT"
REVISION="1"
SOURCE_URI="https://github.com/keshavbhatt/whatsie/archive/refs/tags/v$portVersion.tar.gz"
CHECKSUM_SHA256="6149c05e30d87e61ee480d7ead082224cf9f32fea61a3820c0f7225ae8a8a616"
SOURCE_DIR="whatsie-$portVersion"
PATCHES="whatsie-$portVersion.patchset"
ADDITIONAL_FILES="whatsie.rdef.in"
ARCHITECTURES="all !x86_gcc2"
SECONDARY_ARCHITECTURES="x86"
PROVIDES="
whatsie$secondaryArchSuffix = $portVersion
app:WhatSie
"
REQUIRES="
haiku$secondaryArchSuffix
lib:libGL$secondaryArchSuffix
lib:libQt5Core$secondaryArchSuffix
lib:libQt5Gui$secondaryArchSuffix
lib:libQt5Network$secondaryArchSuffix
lib:libQt5Positioning$secondaryArchSuffix
lib:libQt5PrintSupport$secondaryArchSuffix
lib:libQt5Qml$secondaryArchSuffix
lib:libQt5QmlModels$secondaryArchSuffix
lib:libQt5Quick$secondaryArchSuffix
lib:libQt5WebChannel$secondaryArchSuffix
lib:libQt5WebEngine$secondaryArchSuffix
lib:libQt5WebEngineCore$secondaryArchSuffix
lib:libQt5WebEngineWidgets$secondaryArchSuffix
lib:libQt5Widgets$secondaryArchSuffix
"
BUILD_REQUIRES="
haiku${secondaryArchSuffix}_devel
devel:libQt5WebEngine$secondaryArchSuffix
"
BUILD_PREREQUIRES="
cmd:gcc$secondaryArchSuffix
cmd:make
cmd:qmake$secondaryArchSuffix >= 5
"
BUILD()
{
cd $sourceDir/src
qmake PREFIX=$prefix
make $jobArgs
}
INSTALL()
{
cd $sourceDir/src
make install
# Generate the rdef
local MAJOR="`echo "$portVersion" | cut -d. -f1`"
local MIDDLE="`echo "$portVersion" | cut -d. -f2`"
local MINOR="`echo "$portVersion" | cut -d. -f3`"
local LONG_INFO="$SUMMARY"
local APP_SIGNATURE="application/x-vnd.whatsie"
sed \
-e "s|@MAJOR@|$MAJOR|" \
-e "s|@MIDDLE@|$MIDDLE|" \
-e "s|@MINOR@|$MINOR|" \
-e "s|@LONG_INFO@|$LONG_INFO|" \
-e "s|@APP_SIGNATURE@|$APP_SIGNATURE|" \
$portDir/additional-files/whatsie.rdef.in > whatsie.rdef
addResourcesToBinaries whatsie.rdef $sourceDir/src/whatsie
mkdir -p $appsDir && cp $sourceDir/src/whatsie $appsDir/WhatSie
addAppDeskbarSymlink $appsDir/WhatSie
}