mirror of
https://github.com/yann64/haikuports.git
synced 2026-04-08 21:00:05 +02:00
labplot, bump to 2.12.1 (#12806)
This commit is contained in:
@@ -12,23 +12,24 @@ Feature highlights:
|
||||
HOMEPAGE="https://invent.kde.org/education/labplot"
|
||||
COPYRIGHT="2010-2025 KDE Organisation"
|
||||
LICENSE="GNU GPL v2"
|
||||
REVISION="2"
|
||||
REVISION="1"
|
||||
SOURCE_URI="https://download.kde.org/stable/labplot/labplot-$portVersion.tar.xz"
|
||||
CHECKSUM_SHA256="25f1751261ec2d11312f0179049ea1f16db33b3a89800dc572d68ad8d267afe7"
|
||||
CHECKSUM_SHA256="e28155bfddf40e5b6f7c4791313556d1e48138044f216f210d515b9f6d6c106a"
|
||||
SOURCE_DIR="labplot-$portVersion"
|
||||
PATCHES="labplot-$portVersion.patchset"
|
||||
ADDITIONAL_FILES="labplot2.rdef.in"
|
||||
ADDITIONAL_FILES="labplot.rdef.in"
|
||||
|
||||
ARCHITECTURES="all !x86_gcc2"
|
||||
SECONDARY_ARCHITECTURES="x86"
|
||||
|
||||
PROVIDES="
|
||||
labplot$secondaryArchSuffix = $portVersion
|
||||
cmd:labplot$secondaryArchSuffix = $portVersion
|
||||
app:LabPlot = $portVersion
|
||||
lib:liblabplot$secondaryArchSuffix
|
||||
"
|
||||
REQUIRES="
|
||||
haiku$secondaryArchSuffix
|
||||
lib:libqtadvanceddocking_qt6$secondaryArchSuffix
|
||||
lib:libcantorlibs$secondaryArchSuffix
|
||||
lib:libcerf$secondaryArchSuffix
|
||||
lib:libcfitsio$secondaryArchSuffix
|
||||
@@ -37,13 +38,16 @@ REQUIRES="
|
||||
lib:libgsl$secondaryArchSuffix
|
||||
lib:libgslcblas$secondaryArchSuffix
|
||||
lib:libhdf5$secondaryArchSuffix
|
||||
lib:libixion_0.20$secondaryArchSuffix
|
||||
lib:liblz4$secondaryArchSuffix
|
||||
lib:libmarkdown$secondaryArchSuffix
|
||||
lib:libmatio$secondaryArchSuffix
|
||||
lib:libnetcdf$secondaryArchSuffix
|
||||
lib:liborcus_0.20$secondaryArchSuffix
|
||||
lib:liborigin$secondaryArchSuffix
|
||||
lib:libpoppler$secondaryArchSuffix
|
||||
lib:libpoppler_qt6$secondaryArchSuffix
|
||||
lib:libQXlsxQt6$secondaryArchSuffix
|
||||
lib:libspectre$secondaryArchSuffix
|
||||
lib:libz$secondaryArchSuffix
|
||||
lib:libzstd$secondaryArchSuffix
|
||||
@@ -82,6 +86,7 @@ REQUIRES="
|
||||
lib:libQt6Core$secondaryArchSuffix
|
||||
lib:libQt6DBus$secondaryArchSuffix
|
||||
lib:libQt6Gui$secondaryArchSuffix
|
||||
lib:libQt6Mqtt$secondaryArchSuffix
|
||||
lib:libQt6Network$secondaryArchSuffix
|
||||
lib:libQt6PrintSupport$secondaryArchSuffix
|
||||
lib:libQt6SerialPort$secondaryArchSuffix
|
||||
@@ -93,6 +98,7 @@ REQUIRES="
|
||||
BUILD_REQUIRES="
|
||||
haiku${secondaryArchSuffix}_devel
|
||||
devel:eigen$secondaryArchSuffix
|
||||
devel:libqtadvanceddocking_qt6$secondaryArchSuffix
|
||||
devel:libcantorlibs$secondaryArchSuffix
|
||||
devel:libcerf$secondaryArchSuffix
|
||||
devel:libcfitsio$secondaryArchSuffix >= 10.4
|
||||
@@ -105,9 +111,11 @@ BUILD_REQUIRES="
|
||||
devel:libmarkdown$secondaryArchSuffix
|
||||
devel:libmatio$secondaryArchSuffix
|
||||
devel:libnetcdf$secondaryArchSuffix
|
||||
devel:liborcus_0.20$secondaryArchSuffix
|
||||
devel:liborigin$secondaryArchSuffix
|
||||
devel:libpoppler$secondaryArchSuffix >= 148
|
||||
devel:libpoppler_qt6$secondaryArchSuffix >= 3.10
|
||||
devel:libQXlsxQt6$secondaryArchSuffix
|
||||
devel:libspectre$secondaryArchSuffix
|
||||
devel:libssp_nonshared$secondaryArchSuffix
|
||||
devel:libz$secondaryArchSuffix
|
||||
@@ -142,6 +150,7 @@ BUILD_REQUIRES="
|
||||
devel:libKF6XmlGui$secondaryArchSuffix
|
||||
# Qt6
|
||||
devel:libQt6Core$secondaryArchSuffix
|
||||
devel:libQt6Mqtt$secondaryArchSuffix
|
||||
devel:libQt6SerialPort$secondaryArchSuffix
|
||||
devel:libQt6Svg$secondaryArchSuffix
|
||||
devel:libQt6Xml$secondaryArchSuffix
|
||||
@@ -161,10 +170,17 @@ TEST_REQUIRES="
|
||||
qthaikuplugins$secondaryArchSuffix
|
||||
"
|
||||
|
||||
PATCH()
|
||||
{
|
||||
# use Haiku's icon theme
|
||||
sed -e 's,\ KIconTheme::initTheme();,\// KIconTheme::initTheme();,g' -i src/frontend/LabPlot.cpp
|
||||
}
|
||||
|
||||
BUILD()
|
||||
{
|
||||
cmake -B build -S . -G Ninja -DCMAKE_BUILD_TYPE=Release \
|
||||
$cmakeDirArgs \
|
||||
-DCMAKE_INSTALL_BINDIR=$appsDir \
|
||||
-DECM_DIR=/system/data/cmake/Modules/ECM/cmake \
|
||||
-DCMAKE_SKIP_RPATH=YES \
|
||||
-DENABLE_READSTAT=OFF \
|
||||
@@ -179,6 +195,8 @@ INSTALL()
|
||||
{
|
||||
ninja -v -C build install
|
||||
|
||||
mv $appsDir/labplot $appsDir/LabPlot
|
||||
|
||||
# don't mess with shared_mime_info files
|
||||
rm -rf $dataDir/mime/{aliases,generic-icons,globs,globs2,icons,magic}
|
||||
rm -rf $dataDir/mime/{mime.cache,subclasses,treemagic,types,version,XMLnamespaces}
|
||||
@@ -188,9 +206,9 @@ INSTALL()
|
||||
local MAJOR="`echo "$portVersion" | cut -d. -f1`"
|
||||
local MIDDLE="`echo "$portVersion" | cut -d. -f2`"
|
||||
local MINOR="`echo "$portVersion" | cut -d. -f3`"
|
||||
local APP_NAME="LabPlot2"
|
||||
local APP_NAME="LabPlot"
|
||||
local LONG_INFO="$SUMMARY"
|
||||
local APP_SIGNATURE="application/x-vnd.kde-labplot2"
|
||||
local APP_SIGNATURE="application/x-vnd.kde-labplot"
|
||||
sed \
|
||||
-e "s|@MAJOR@|$MAJOR|" \
|
||||
-e "s|@MIDDLE@|$MIDDLE|" \
|
||||
@@ -198,11 +216,11 @@ INSTALL()
|
||||
-e "s|@LONG_INFO@|$LONG_INFO|" \
|
||||
-e "s|@APP_NAME@|$APP_NAME|" \
|
||||
-e "s|@APP_SIGNATURE@|$APP_SIGNATURE|" \
|
||||
$portDir/additional-files/labplot2.rdef.in > labplot2.rdef
|
||||
$portDir/additional-files/labplot.rdef.in > labplot.rdef
|
||||
|
||||
addResourcesToBinaries labplot2.rdef $binDir/labplot
|
||||
addResourcesToBinaries labplot.rdef $appsDir/LabPlot
|
||||
|
||||
addAppDeskbarSymlink $binDir/labplot LabPlot
|
||||
addAppDeskbarSymlink $appsDir/LabPlot
|
||||
}
|
||||
|
||||
TEST()
|
||||
@@ -1,383 +0,0 @@
|
||||
From 6dd3c55a8f548fdf765eb58f1068ceed491afd36 Mon Sep 17 00:00:00 2001
|
||||
From: Luc Schrijvers <begasus@gmail.com>
|
||||
Date: Sat, 26 Apr 2025 19:12:21 +0200
|
||||
Subject: Don't default to xcb qt plugin on Haiku
|
||||
|
||||
|
||||
diff --git a/src/frontend/LabPlot.cpp b/src/frontend/LabPlot.cpp
|
||||
index 23bab67..50cf6dd 100644
|
||||
--- a/src/frontend/LabPlot.cpp
|
||||
+++ b/src/frontend/LabPlot.cpp
|
||||
@@ -42,7 +42,7 @@
|
||||
#endif
|
||||
|
||||
int main(int argc, char* argv[]) {
|
||||
-#if defined(Q_OS_UNIX) && !defined(Q_OS_DARWIN)
|
||||
+#if defined(Q_OS_UNIX) && !defined(Q_OS_DARWIN) && !defined(Q_OS_HAIKU)
|
||||
// the qads library has issues on wayland so we force qt to use x11 instead
|
||||
// see https://invent.kde.org/education/labplot/-/issues/1067
|
||||
QByteArray xcbQtQpaEnvVar("xcb");
|
||||
--
|
||||
2.48.1
|
||||
|
||||
|
||||
From 762fc82832ef9581f8793f29d8848f9ba56cff10 Mon Sep 17 00:00:00 2001
|
||||
From: Luc Schrijvers <begasus@gmail.com>
|
||||
Date: Tue, 5 Aug 2025 15:46:28 +0200
|
||||
Subject: Haiku fixes to disable libxcb
|
||||
|
||||
|
||||
diff --git a/src/3rdparty/Qt-Advanced-Docking-System/src/CMakeLists.txt b/src/3rdparty/Qt-Advanced-Docking-System/src/CMakeLists.txt
|
||||
index cc84e23..0257e56 100644
|
||||
--- a/src/3rdparty/Qt-Advanced-Docking-System/src/CMakeLists.txt
|
||||
+++ b/src/3rdparty/Qt-Advanced-Docking-System/src/CMakeLists.txt
|
||||
@@ -66,7 +66,7 @@ set(ads_HEADERS
|
||||
ResizeHandle.h
|
||||
)
|
||||
add_compile_options("$<$<CXX_COMPILER_ID:MSVC>:/utf-8>")
|
||||
-if (UNIX AND NOT APPLE)
|
||||
+if (UNIX AND NOT APPLE AND NOT HAIKU)
|
||||
set(ads_SRCS linux/FloatingWidgetTitleBar.cpp ${ads_SRCS})
|
||||
set(ads_HEADERS linux/FloatingWidgetTitleBar.h ${ads_HEADERS})
|
||||
endif()
|
||||
@@ -89,7 +89,7 @@ endif()
|
||||
target_link_libraries(${library_name} PUBLIC Qt${QT_VERSION_MAJOR}::Core
|
||||
Qt${QT_VERSION_MAJOR}::Gui
|
||||
Qt${QT_VERSION_MAJOR}::Widgets)
|
||||
-if (UNIX AND NOT APPLE)
|
||||
+if (UNIX AND NOT APPLE AND NOT HAIKU)
|
||||
if (${CMAKE_SYSTEM_NAME} MATCHES "FreeBSD")
|
||||
find_package(X11 REQUIRED)
|
||||
target_link_libraries(${library_name} PUBLIC X11::xcb)
|
||||
diff --git a/src/3rdparty/Qt-Advanced-Docking-System/src/DockFocusController.cpp b/src/3rdparty/Qt-Advanced-Docking-System/src/DockFocusController.cpp
|
||||
index 27acc4a..b7a0539 100644
|
||||
--- a/src/3rdparty/Qt-Advanced-Docking-System/src/DockFocusController.cpp
|
||||
+++ b/src/3rdparty/Qt-Advanced-Docking-System/src/DockFocusController.cpp
|
||||
@@ -27,7 +27,7 @@
|
||||
#include "DockManager.h"
|
||||
#include "DockAreaTitleBar.h"
|
||||
|
||||
-#if defined(Q_OS_UNIX) && !defined(Q_OS_MACOS)
|
||||
+#if defined(Q_OS_UNIX) && !defined(Q_OS_MACOS) && !defined(Q_OS_HAIKU)
|
||||
#include "linux/FloatingWidgetTitleBar.h"
|
||||
#endif
|
||||
|
||||
@@ -44,7 +44,7 @@ struct DockFocusControllerPrivate
|
||||
QPointer<CDockWidget> FocusedDockWidget = nullptr;
|
||||
QPointer<CDockAreaWidget> FocusedArea = nullptr;
|
||||
QPointer<CDockWidget> OldFocusedDockWidget = nullptr;
|
||||
-#if defined(Q_OS_UNIX) && !defined(Q_OS_MACOS)
|
||||
+#if defined(Q_OS_UNIX) && !defined(Q_OS_MACOS) && !defined(Q_OS_HAIKU)
|
||||
QPointer<CFloatingDockContainer> FloatingWidget = nullptr;
|
||||
#endif
|
||||
CDockManager* DockManager;
|
||||
@@ -85,7 +85,7 @@ static void updateDockAreaFocusStyle(CDockAreaWidget* DockArea, bool Focused)
|
||||
|
||||
|
||||
//===========================================================================
|
||||
-#if defined(Q_OS_UNIX) && !defined(Q_OS_MACOS)
|
||||
+#if defined(Q_OS_UNIX) && !defined(Q_OS_MACOS) && !defined(Q_OS_HAIKU)
|
||||
static void updateFloatingWidgetFocusStyle(CFloatingDockContainer* FloatingWidget, bool Focused)
|
||||
{
|
||||
if (FloatingWidget->hasNativeTitleBar())
|
||||
@@ -170,7 +170,7 @@ void DockFocusControllerPrivate::updateDockWidgetFocus(CDockWidget* DockWidget)
|
||||
}
|
||||
|
||||
|
||||
-#if defined(Q_OS_UNIX) && !defined(Q_OS_MACOS)
|
||||
+#if defined(Q_OS_UNIX) && !defined(Q_OS_MACOS) && !defined(Q_OS_HAIKU)
|
||||
// This code is required for styling the floating widget titlebar for linux
|
||||
// depending on the current focus state
|
||||
if (FloatingWidget != NewFloatingWidget)
|
||||
@@ -289,7 +289,7 @@ void CDockFocusController::onApplicationFocusChanged(QWidget* focusedOld, QWidge
|
||||
DockWidget = internal::findParent<CDockWidget*>(focusedNow);
|
||||
}
|
||||
|
||||
-#if defined(Q_OS_UNIX) && !defined(Q_OS_MACOS)
|
||||
+#if defined(Q_OS_UNIX) && !defined(Q_OS_MACOS) && !defined(Q_OS_HAIKU)
|
||||
if (!DockWidget)
|
||||
{
|
||||
return;
|
||||
diff --git a/src/3rdparty/Qt-Advanced-Docking-System/src/DockManager.cpp b/src/3rdparty/Qt-Advanced-Docking-System/src/DockManager.cpp
|
||||
index bf568d7..26f7283 100644
|
||||
--- a/src/3rdparty/Qt-Advanced-Docking-System/src/DockManager.cpp
|
||||
+++ b/src/3rdparty/Qt-Advanced-Docking-System/src/DockManager.cpp
|
||||
@@ -63,7 +63,7 @@
|
||||
#include "DockComponentsFactory.h"
|
||||
|
||||
|
||||
-#if defined(Q_OS_UNIX) && !defined(Q_OS_MACOS)
|
||||
+#if defined(Q_OS_UNIX) && !defined(Q_OS_MACOS) && !defined(Q_OS_HAIKU)
|
||||
#include "linux/FloatingWidgetTitleBar.h"
|
||||
#endif
|
||||
|
||||
@@ -207,7 +207,7 @@ void DockManagerPrivate::loadStylesheet()
|
||||
QString FileName = QStringLiteral(":ads/stylesheets/");
|
||||
FileName += CDockManager::testConfigFlag(CDockManager::FocusHighlighting)
|
||||
? QStringLiteral("focus_highlighting") : QStringLiteral("default");
|
||||
-#if defined(Q_OS_UNIX) && !defined(Q_OS_MACOS)
|
||||
+#if defined(Q_OS_UNIX) && !defined(Q_OS_MACOS) && !defined(Q_OS_HAIKU)
|
||||
FileName += QStringLiteral("_linux");
|
||||
#endif
|
||||
FileName += QStringLiteral(".css");
|
||||
@@ -529,7 +529,7 @@ CDockManager::CDockManager(QWidget *parent) :
|
||||
|
||||
window()->installEventFilter(this);
|
||||
|
||||
-#if defined(Q_OS_UNIX) && !defined(Q_OS_MACOS)
|
||||
+#if defined(Q_OS_UNIX) && !defined(Q_OS_MACOS) && !defined(Q_OS_HAIKU)
|
||||
connect(qApp, &QApplication::focusWindowChanged, [](QWindow* focusWindow)
|
||||
{
|
||||
// bring modal dialogs to foreground to ensure that they are in front of any
|
||||
@@ -614,7 +614,7 @@ void CDockManager::setComponentsFactory(QSharedPointer<ads::CDockComponentsFacto
|
||||
|
||||
|
||||
//============================================================================
|
||||
-#if defined(Q_OS_UNIX) && !defined(Q_OS_MACOS)
|
||||
+#if defined(Q_OS_UNIX) && !defined(Q_OS_MACOS) && !defined(Q_OS_HAIKU)
|
||||
bool CDockManager::eventFilter(QObject *obj, QEvent *e)
|
||||
{
|
||||
// Emulate Qt:Tool behaviour.
|
||||
diff --git a/src/3rdparty/Qt-Advanced-Docking-System/src/DockOverlay.cpp b/src/3rdparty/Qt-Advanced-Docking-System/src/DockOverlay.cpp
|
||||
index 236ccb7..1c0c1b8 100644
|
||||
--- a/src/3rdparty/Qt-Advanced-Docking-System/src/DockOverlay.cpp
|
||||
+++ b/src/3rdparty/Qt-Advanced-Docking-System/src/DockOverlay.cpp
|
||||
@@ -158,7 +158,7 @@ struct DockOverlayCrossPrivate
|
||||
*/
|
||||
qreal dropIndicatiorWidth(QLabel* l) const
|
||||
{
|
||||
- #if defined(Q_OS_UNIX) && !defined(Q_OS_MACOS)
|
||||
+ #if defined(Q_OS_UNIX) && !defined(Q_OS_MACOS) && !defined(Q_OS_HAIKU)
|
||||
Q_UNUSED(l)
|
||||
return 40;
|
||||
#else
|
||||
@@ -403,7 +403,7 @@ CDockOverlay::CDockOverlay(QWidget* parent, eMode Mode) :
|
||||
{
|
||||
d->Mode = Mode;
|
||||
d->Cross = new CDockOverlayCross(this);
|
||||
-#if defined(Q_OS_UNIX) && !defined(Q_OS_MACOS)
|
||||
+#if defined(Q_OS_UNIX) && !defined(Q_OS_MACOS) && !defined(Q_OS_HAIKU)
|
||||
setWindowFlags(Qt::Tool | Qt::FramelessWindowHint | Qt::WindowStaysOnTopHint | Qt::X11BypassWindowManagerHint);
|
||||
#else
|
||||
setWindowFlags(Qt::Tool | Qt::FramelessWindowHint);
|
||||
@@ -738,7 +738,7 @@ CDockOverlayCross::CDockOverlayCross(CDockOverlay* overlay) :
|
||||
d(new DockOverlayCrossPrivate(this))
|
||||
{
|
||||
d->DockOverlay = overlay;
|
||||
-#if defined(Q_OS_UNIX) && !defined(Q_OS_MACOS)
|
||||
+#if defined(Q_OS_UNIX) && !defined(Q_OS_MACOS) && !defined(Q_OS_HAIKU)
|
||||
setWindowFlags(Qt::Tool | Qt::FramelessWindowHint | Qt::WindowStaysOnTopHint | Qt::X11BypassWindowManagerHint);
|
||||
#else
|
||||
setWindowFlags(Qt::Tool | Qt::FramelessWindowHint);
|
||||
diff --git a/src/3rdparty/Qt-Advanced-Docking-System/src/FloatingDockContainer.cpp b/src/3rdparty/Qt-Advanced-Docking-System/src/FloatingDockContainer.cpp
|
||||
index f151a9f..50a16de 100644
|
||||
--- a/src/3rdparty/Qt-Advanced-Docking-System/src/FloatingDockContainer.cpp
|
||||
+++ b/src/3rdparty/Qt-Advanced-Docking-System/src/FloatingDockContainer.cpp
|
||||
@@ -52,7 +52,7 @@
|
||||
#pragma comment(lib, "User32.lib")
|
||||
#endif
|
||||
#endif
|
||||
-#if defined(Q_OS_UNIX) && !defined(Q_OS_MACOS)
|
||||
+#if defined(Q_OS_UNIX) && !defined(Q_OS_MACOS) && !defined(Q_OS_HAIKU)
|
||||
#include "linux/FloatingWidgetTitleBar.h"
|
||||
#include <xcb/xcb.h>
|
||||
#endif
|
||||
@@ -374,7 +374,7 @@ struct FloatingDockContainerPrivate
|
||||
QPoint DragStartPos;
|
||||
bool Hiding = false;
|
||||
bool AutoHideChildren = true;
|
||||
-#if defined(Q_OS_UNIX) && !defined(Q_OS_MACOS)
|
||||
+#if defined(Q_OS_UNIX) && !defined(Q_OS_MACOS) && !defined(Q_OS_HAIKU)
|
||||
QWidget* MouseEventHandler = nullptr;
|
||||
CFloatingWidgetTitleBar* TitleBar = nullptr;
|
||||
bool IsResizing = false;
|
||||
@@ -425,7 +425,7 @@ struct FloatingDockContainerPrivate
|
||||
|
||||
void setWindowTitle(const QString &Text)
|
||||
{
|
||||
-#if defined(Q_OS_UNIX) && !defined(Q_OS_MACOS)
|
||||
+#if defined(Q_OS_UNIX) && !defined(Q_OS_MACOS) && !defined(Q_OS_HAIKU)
|
||||
if (TitleBar)
|
||||
{
|
||||
TitleBar->setTitle(Text);
|
||||
@@ -545,7 +545,7 @@ void FloatingDockContainerPrivate::updateDropOverlays(const QPoint &GlobalPos)
|
||||
return;
|
||||
}
|
||||
|
||||
-#if defined(Q_OS_UNIX) && !defined(Q_OS_MACOS)
|
||||
+#if defined(Q_OS_UNIX) && !defined(Q_OS_MACOS) && !defined(Q_OS_HAIKU)
|
||||
// Prevent display of drop overlays and docking as long as a model dialog
|
||||
// is active
|
||||
if (qApp->activeModalWidget())
|
||||
@@ -660,7 +660,7 @@ CFloatingDockContainer::CFloatingDockContainer(CDockManager *DockManager) :
|
||||
connect(d->DockContainer, SIGNAL(dockAreasRemoved()), this,
|
||||
SLOT(onDockAreasAddedOrRemoved()));
|
||||
|
||||
-#if defined(Q_OS_UNIX) && !defined(Q_OS_MACOS)
|
||||
+#if defined(Q_OS_UNIX) && !defined(Q_OS_MACOS) && !defined(Q_OS_HAIKU)
|
||||
QDockWidget::setWidget(d->DockContainer);
|
||||
QDockWidget::setFeatures(QDockWidget::DockWidgetClosable
|
||||
| QDockWidget::DockWidgetMovable | QDockWidget::DockWidgetFloatable);
|
||||
@@ -820,7 +820,7 @@ void CFloatingDockContainer::changeEvent(QEvent *event)
|
||||
ADS_PRINT("FloatingWidget::changeEvent QEvent::ActivationChange ");
|
||||
d->zOrderIndex = ++zOrderCounterFloating;
|
||||
|
||||
-#if defined(Q_OS_UNIX) && !defined(Q_OS_MACOS)
|
||||
+#if defined(Q_OS_UNIX) && !defined(Q_OS_MACOS) && !defined(Q_OS_HAIKU)
|
||||
if (d->DraggingState == DraggingFloatingWidget)
|
||||
{
|
||||
d->titleMouseReleaseEvent();
|
||||
@@ -994,7 +994,7 @@ void CFloatingDockContainer::hideEvent(QHideEvent *event)
|
||||
void CFloatingDockContainer::showEvent(QShowEvent *event)
|
||||
{
|
||||
Super::showEvent(event);
|
||||
-#if defined(Q_OS_UNIX) && !defined(Q_OS_MACOS)
|
||||
+#if defined(Q_OS_UNIX) && !defined(Q_OS_MACOS) && !defined(Q_OS_HAIKU)
|
||||
if (CDockManager::testConfigFlag(CDockManager::FocusHighlighting))
|
||||
{
|
||||
this->window()->activateWindow();
|
||||
@@ -1007,7 +1007,7 @@ void CFloatingDockContainer::showEvent(QShowEvent *event)
|
||||
void CFloatingDockContainer::startFloating(const QPoint &DragStartMousePos,
|
||||
const QSize &Size, eDragState DragState, QWidget *MouseEventHandler)
|
||||
{
|
||||
-#if defined(Q_OS_UNIX) && !defined(Q_OS_MACOS)
|
||||
+#if defined(Q_OS_UNIX) && !defined(Q_OS_MACOS) && !defined(Q_OS_HAIKU)
|
||||
if (!isMaximized())
|
||||
{
|
||||
resize(Size);
|
||||
@@ -1144,7 +1144,7 @@ bool CFloatingDockContainer::restoreState(CDockingStateReader &Stream,
|
||||
return false;
|
||||
}
|
||||
onDockAreasAddedOrRemoved();
|
||||
-#if defined(Q_OS_UNIX) && !defined(Q_OS_MACOS)
|
||||
+#if defined(Q_OS_UNIX) && !defined(Q_OS_MACOS) && !defined(Q_OS_HAIKU)
|
||||
if(d->TitleBar)
|
||||
{
|
||||
d->TitleBar->setMaximizedIcon(windowState() == Qt::WindowMaximized);
|
||||
@@ -1198,7 +1198,7 @@ void CFloatingDockContainer::finishDropOperation()
|
||||
void CFloatingDockContainer::finishDragging()
|
||||
{
|
||||
ADS_PRINT("CFloatingDockContainer::finishDragging");
|
||||
-#if defined(Q_OS_UNIX) && !defined(Q_OS_MACOS)
|
||||
+#if defined(Q_OS_UNIX) && !defined(Q_OS_MACOS) && !defined(Q_OS_HAIKU)
|
||||
setWindowOpacity(1);
|
||||
activateWindow();
|
||||
if (d->MouseEventHandler)
|
||||
@@ -1210,7 +1210,7 @@ void CFloatingDockContainer::finishDragging()
|
||||
d->titleMouseReleaseEvent();
|
||||
}
|
||||
|
||||
-#ifdef Q_OS_MACOS
|
||||
+#if defined(Q_OS_MACOS) || defined(Q_OS_HAIKU)
|
||||
//============================================================================
|
||||
bool CFloatingDockContainer::event(QEvent *e)
|
||||
{
|
||||
@@ -1313,7 +1313,7 @@ void CFloatingDockContainer::moveEvent(QMoveEvent *event)
|
||||
#endif
|
||||
|
||||
|
||||
-#if defined(Q_OS_UNIX) && !defined(Q_OS_MACOS)
|
||||
+#if defined(Q_OS_UNIX) && !defined(Q_OS_MACOS) && !defined(Q_OS_HAIKU)
|
||||
//============================================================================
|
||||
void CFloatingDockContainer::onMaximizeRequest()
|
||||
{
|
||||
diff --git a/src/3rdparty/Qt-Advanced-Docking-System/src/FloatingDockContainer.h b/src/3rdparty/Qt-Advanced-Docking-System/src/FloatingDockContainer.h
|
||||
index a26cbac..3df39d3 100644
|
||||
--- a/src/3rdparty/Qt-Advanced-Docking-System/src/FloatingDockContainer.h
|
||||
+++ b/src/3rdparty/Qt-Advanced-Docking-System/src/FloatingDockContainer.h
|
||||
@@ -33,7 +33,7 @@
|
||||
|
||||
#include <QRubberBand>
|
||||
|
||||
-#if defined(Q_OS_UNIX) && !defined(Q_OS_MACOS)
|
||||
+#if defined(Q_OS_UNIX) && !defined(Q_OS_MACOS) && !defined(Q_OS_HAIKU)
|
||||
#include <QDockWidget>
|
||||
#define tFloatingWidgetBase QDockWidget
|
||||
#else
|
||||
@@ -178,7 +178,7 @@ protected: // reimplements QWidget
|
||||
virtual void hideEvent(QHideEvent *event) override;
|
||||
virtual void showEvent(QShowEvent *event) override;
|
||||
|
||||
-#ifdef Q_OS_MACOS
|
||||
+#if defined(Q_OS_MACOS) || defined(Q_OS_HAIKU)
|
||||
virtual bool event(QEvent *e) override;
|
||||
virtual void moveEvent(QMoveEvent *event) override;
|
||||
#elif defined(Q_OS_UNIX)
|
||||
@@ -269,7 +269,7 @@ public:
|
||||
*/
|
||||
void finishDropOperation();
|
||||
|
||||
-#if defined(Q_OS_UNIX) && !defined(Q_OS_MACOS)
|
||||
+#if defined(Q_OS_UNIX) && !defined(Q_OS_MACOS) && !defined(Q_OS_HAIKU)
|
||||
/**
|
||||
* This is a function that responds to FloatingWidgetTitleBar::maximizeRequest()
|
||||
* Maximize or normalize the container size.
|
||||
diff --git a/src/3rdparty/Qt-Advanced-Docking-System/src/FloatingDragPreview.cpp b/src/3rdparty/Qt-Advanced-Docking-System/src/FloatingDragPreview.cpp
|
||||
index f7a45a2..9b8041e 100644
|
||||
--- a/src/3rdparty/Qt-Advanced-Docking-System/src/FloatingDragPreview.cpp
|
||||
+++ b/src/3rdparty/Qt-Advanced-Docking-System/src/FloatingDragPreview.cpp
|
||||
@@ -295,7 +295,7 @@ CFloatingDragPreview::CFloatingDragPreview(QWidget* Content, QWidget* parent) :
|
||||
setAttribute(Qt::WA_TranslucentBackground);
|
||||
}
|
||||
|
||||
-#if defined(Q_OS_UNIX) && !defined(Q_OS_MACOS)
|
||||
+#if defined(Q_OS_UNIX) && !defined(Q_OS_MACOS) && !defined(Q_OS_HAIKU)
|
||||
auto Flags = windowFlags();
|
||||
Flags |= Qt::WindowStaysOnTopHint | Qt::X11BypassWindowManagerHint;
|
||||
setWindowFlags(Flags);
|
||||
diff --git a/src/3rdparty/Qt-Advanced-Docking-System/src/ads_globals.cpp b/src/3rdparty/Qt-Advanced-Docking-System/src/ads_globals.cpp
|
||||
index 2abcd03..5714528 100644
|
||||
--- a/src/3rdparty/Qt-Advanced-Docking-System/src/ads_globals.cpp
|
||||
+++ b/src/3rdparty/Qt-Advanced-Docking-System/src/ads_globals.cpp
|
||||
@@ -38,7 +38,7 @@
|
||||
#include "IconProvider.h"
|
||||
#include "ads_globals.h"
|
||||
|
||||
-#if defined(Q_OS_UNIX) && !defined(Q_OS_MACOS)
|
||||
+#if defined(Q_OS_UNIX) && !defined(Q_OS_MACOS) && !defined(Q_OS_HAIKU)
|
||||
#include <QSettings>
|
||||
#include <QFile>
|
||||
#include <QApplication>
|
||||
@@ -52,7 +52,7 @@ namespace internal
|
||||
{
|
||||
const int FloatingWidgetDragStartEvent = QEvent::registerEventType();
|
||||
const int DockedWidgetDragStartEvent = QEvent::registerEventType();
|
||||
-#if defined(Q_OS_UNIX) && !defined(Q_OS_MACOS)
|
||||
+#if defined(Q_OS_UNIX) && !defined(Q_OS_MACOS) && !defined(Q_OS_HAIKU)
|
||||
static QString _window_manager;
|
||||
static QHash<QString, xcb_atom_t> _xcb_atom_cache;
|
||||
|
||||
@@ -412,7 +412,7 @@ void setButtonIcon(QAbstractButton* Button, QStyle::StandardPixmap StandarPixmap
|
||||
return;
|
||||
}
|
||||
|
||||
-#if defined(Q_OS_UNIX) && !defined(Q_OS_MACOS)
|
||||
+#if defined(Q_OS_UNIX) && !defined(Q_OS_MACOS) && !defined(Q_OS_HAIKU)
|
||||
Button->setIcon(Button->style()->standardIcon(StandarPixmap));
|
||||
#else
|
||||
// The standard icons does not look good on high DPI screens so we create
|
||||
diff --git a/src/3rdparty/Qt-Advanced-Docking-System/src/ads_globals.h b/src/3rdparty/Qt-Advanced-Docking-System/src/ads_globals.h
|
||||
index f7ccc8e..ddede0a 100644
|
||||
--- a/src/3rdparty/Qt-Advanced-Docking-System/src/ads_globals.h
|
||||
+++ b/src/3rdparty/Qt-Advanced-Docking-System/src/ads_globals.h
|
||||
@@ -40,7 +40,7 @@
|
||||
|
||||
#include <iostream>
|
||||
|
||||
-#if defined(Q_OS_UNIX) && !defined(Q_OS_MACOS)
|
||||
+#if defined(Q_OS_UNIX) && !defined(Q_OS_MACOS) && !defined(Q_OS_HAIKU)
|
||||
#include <xcb/xcb.h>
|
||||
#endif
|
||||
|
||||
@@ -171,7 +171,7 @@ static const char* const LocationProperty = "Location";
|
||||
extern const int FloatingWidgetDragStartEvent;
|
||||
extern const int DockedWidgetDragStartEvent;
|
||||
|
||||
-#if defined(Q_OS_UNIX) && !defined(Q_OS_MACOS)
|
||||
+#if defined(Q_OS_UNIX) && !defined(Q_OS_MACOS) && !defined(Q_OS_HAIKU)
|
||||
// Utils to directly communicate with the X server
|
||||
/**
|
||||
* Get atom from cache or request it from the XServer.
|
||||
--
|
||||
2.48.1
|
||||
|
||||
22
sci-visualization/labplot/patches/labplot-2.12.1.patchset
Normal file
22
sci-visualization/labplot/patches/labplot-2.12.1.patchset
Normal file
@@ -0,0 +1,22 @@
|
||||
From fa74e06606e86bd4e6f79a202d099b33fb095d0f Mon Sep 17 00:00:00 2001
|
||||
From: Luc Schrijvers <begasus@gmail.com>
|
||||
Date: Sat, 26 Apr 2025 19:12:21 +0200
|
||||
Subject: Don't default to xcb qt plugin on Haiku
|
||||
|
||||
|
||||
diff --git a/src/frontend/LabPlot.cpp b/src/frontend/LabPlot.cpp
|
||||
index 23bab67..50cf6dd 100644
|
||||
--- a/src/frontend/LabPlot.cpp
|
||||
+++ b/src/frontend/LabPlot.cpp
|
||||
@@ -42,7 +42,7 @@
|
||||
#endif
|
||||
|
||||
int main(int argc, char* argv[]) {
|
||||
-#if defined(Q_OS_UNIX) && !defined(Q_OS_DARWIN)
|
||||
+#if defined(Q_OS_UNIX) && !defined(Q_OS_DARWIN) && !defined(Q_OS_HAIKU)
|
||||
// the qads library has issues on wayland so we force qt to use x11 instead
|
||||
// see https://invent.kde.org/education/labplot/-/issues/1067
|
||||
QByteArray xcbQtQpaEnvVar("xcb");
|
||||
--
|
||||
2.50.1
|
||||
|
||||
Reference in New Issue
Block a user