Krita: bump version

This commit is contained in:
Gerasim Troeglazov
2021-02-18 22:57:03 +10:00
parent ced35e1f21
commit f02f661785
2 changed files with 167 additions and 221 deletions

View File

@@ -6,9 +6,9 @@ layers and masks, group-based layer management, vector artwork support and switc
HOMEPAGE="https://www.krita.org/"
COPYRIGHT="2010-2020 KDE Organisation"
LICENSE="GNU LGPL v2"
REVISION="6"
REVISION="1"
SOURCE_URI="https://download.kde.org/stable/krita/$portVersion/krita-$portVersion.tar.gz"
CHECKSUM_SHA256="6f2daf068e4e5cef8a738ab47da443dc82ad1463090a4a1544b35201272c3817"
CHECKSUM_SHA256="9696aec56e759f3e1c22952ca17efdcac97003239f515f570ad9f07e36cb9792"
SOURCE_DIR="krita-$portVersion"
PATCHES="krita-$portVersion.patchset"
ADDITIONAL_FILES="
@@ -31,12 +31,12 @@ REQUIRES="
lib:libfftw3$secondaryArchSuffix
lib:libgif$secondaryArchSuffix >= 7
lib:libgsl$secondaryArchSuffix
lib:libhalf_2_4$secondaryArchSuffix
lib:libhalf_2_5$secondaryArchSuffix
lib:libiconv$secondaryArchSuffix
lib:libiex_2_4$secondaryArchSuffix
lib:libilmimf_2_4$secondaryArchSuffix
lib:libilmthread_2_4$secondaryArchSuffix
lib:libimath_2_4$secondaryArchSuffix
lib:libiex_2_5$secondaryArchSuffix
lib:libilmimf_2_5$secondaryArchSuffix
lib:libilmthread_2_5$secondaryArchSuffix
lib:libimath_2_5$secondaryArchSuffix
lib:libintl$secondaryArchSuffix
lib:libKF5Archive$secondaryArchSuffix
lib:libKF5Auth$secondaryArchSuffix
@@ -88,7 +88,7 @@ REQUIRES="
BUILD_REQUIRES="
haiku${secondaryArchSuffix}_devel
extra_cmake_modules$secondaryArchSuffix >= 5.65
extra_cmake_modules$secondaryArchSuffix >= 5.77
devel:eigen$secondaryArchSuffix
devel:libboost_system$secondaryArchSuffix >= 1.69
devel:libexiv2$secondaryArchSuffix
@@ -96,9 +96,9 @@ BUILD_REQUIRES="
devel:libfftw3$secondaryArchSuffix
devel:libgif$secondaryArchSuffix >= 7
devel:libgsl$secondaryArchSuffix
devel:libhalf_2_4$secondaryArchSuffix
devel:libhalf_2_5$secondaryArchSuffix
devel:libiconv$secondaryArchSuffix
devel:libilmimf_2_4$secondaryArchSuffix
devel:libilmimf_2_5$secondaryArchSuffix
devel:libKF5Archive$secondaryArchSuffix
devel:libKF5Auth$secondaryArchSuffix
devel:libKF5Bookmarks$secondaryArchSuffix

View File

@@ -1,14 +1,14 @@
From 2a67d81ba9e9945aafb6c530b27a032cfa803998 Mon Sep 17 00:00:00 2001
From 2f754e5336e8091cd523a84c661c2bf0009bfad8 Mon Sep 17 00:00:00 2001
From: Gerasim Troeglazov <3dEyes@gmail.com>
Date: Thu, 15 Oct 2020 11:45:23 +1000
Subject: Fix haiku build
Date: Thu, 18 Feb 2021 21:55:32 +1000
Subject: Fix for Haiku
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 3746767..86e3894 100644
index 4066011..2d1bd27 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -408,7 +408,7 @@ set_package_properties(Qt5QuickWidgets PROPERTIES
@@ -414,7 +414,7 @@ set_package_properties(Qt5QuickWidgets PROPERTIES
PURPOSE "Optionally used for the touch gui for Krita")
endif()
@@ -18,10 +18,10 @@ index 3746767..86e3894 100644
find_package(Qt5 ${MIN_QT_VERSION} REQUIRED X11Extras)
diff --git a/krita/main.cc b/krita/main.cc
index 3fd1595..898fd49 100644
index 7750ba7..3e7122d 100644
--- a/krita/main.cc
+++ b/krita/main.cc
@@ -333,6 +333,9 @@ extern "C" int main(int argc, char **argv)
@@ -346,6 +346,9 @@ extern "C" int main(int argc, char **argv)
qputenv("GST_PLUGIN_SCANNER", appimageMountDir + QFile::encodeName("/usr/lib/gstreamer-1.0/gst-plugin-scanner"));
}
}
@@ -31,7 +31,7 @@ index 3fd1595..898fd49 100644
#else
qputenv("XDG_DATA_DIRS", QFile::encodeName(root + "share"));
#endif
@@ -495,6 +498,12 @@ extern "C" int main(int argc, char **argv)
@@ -514,6 +517,12 @@ extern "C" int main(int argc, char **argv)
}
@@ -44,7 +44,7 @@ index 3fd1595..898fd49 100644
#if defined HAVE_KCRASH
KCrash::initialize();
#elif defined USE_DRMINGW
@@ -650,6 +659,8 @@ extern "C" int main(int argc, char **argv)
@@ -669,6 +678,8 @@ extern "C" int main(int argc, char **argv)
if (logUsage) {
KisUsageLogger::close();
}
@@ -54,137 +54,6 @@ index 3fd1595..898fd49 100644
+#endif
return state;
}
diff --git a/libs/image/kis_image_config.cpp b/libs/image/kis_image_config.cpp
index 455b423..460691e 100644
--- a/libs/image/kis_image_config.cpp
+++ b/libs/image/kis_image_config.cpp
@@ -396,6 +396,8 @@ void KisImageConfig::setLazyFrameCreationEnabled(bool value)
#elif defined Q_OS_MACOS
#include <sys/types.h>
#include <sys/sysctl.h>
+#elif defined Q_OS_HAIKU
+#include <OS.h>
#endif
int KisImageConfig::totalRAM()
@@ -424,6 +426,13 @@ int KisImageConfig::totalRAM()
if(!error) {
totalMemory = physmem >> 20;
}
+#elif defined Q_OS_HAIKU
+ system_info info;
+ error = get_system_info(&info) == B_OK?0:1;
+ if (!error) {
+ uint64_t size = (info.max_pages * B_PAGE_SIZE);
+ totalMemory = size >> 20;
+ }
#elif defined Q_OS_WIN
MEMORYSTATUSEX status;
status.dwLength = sizeof(status);
diff --git a/libs/ui/CMakeLists.txt b/libs/ui/CMakeLists.txt
index 823bb10..5f34b40 100644
--- a/libs/ui/CMakeLists.txt
+++ b/libs/ui/CMakeLists.txt
@@ -609,7 +609,7 @@ if (HAVE_QT_MULTIMEDIA)
target_link_libraries(kritaui Qt5::Multimedia)
endif()
-if (NOT WIN32 AND NOT APPLE AND NOT ANDROID)
+if (NOT WIN32 AND NOT APPLE AND NOT ANDROID AND NOT HAIKU)
target_link_libraries(kritaui ${X11_X11_LIB}
${X11_Xinput_LIB})
endif()
@@ -619,11 +619,17 @@ if(APPLE)
target_link_libraries(kritaui ${APPKIT_LIBRARY})
endif ()
+if(HAIKU)
+ target_link_libraries(kritaui network)
+ target_link_libraries(kritaui expat)
+ target_link_libraries(kritaui iconv)
+ target_link_libraries(kritaui intl)
+endif ()
target_link_libraries(kritaui ${OPENEXR_LIBRARIES})
# Add VSync disable workaround
-if(NOT WIN32 AND NOT APPLE AND NOT ANDROID)
+if(NOT WIN32 AND NOT APPLE AND NOT ANDROID AND NOT HAIKU)
target_link_libraries(kritaui ${CMAKE_DL_LIBS} Qt5::X11Extras)
endif()
diff --git a/libs/ui/widgets/kis_floating_message.cpp b/libs/ui/widgets/kis_floating_message.cpp
index c99ff05..0d954ed 100644
--- a/libs/ui/widgets/kis_floating_message.cpp
+++ b/libs/ui/widgets/kis_floating_message.cpp
@@ -130,6 +130,7 @@ KisFloatingMessage::KisFloatingMessage(const QString &message, QWidget *parent,
, m_alignment(alignment)
, widgetQueuedForDeletion(false)
{
+#ifndef Q_OS_HAIKU
m_icon = KisIconUtils::loadIcon("krita").pixmap(256, 256).toImage();
setWindowFlags(Qt::FramelessWindowHint | Qt::ToolTip);
@@ -141,6 +142,7 @@ KisFloatingMessage::KisFloatingMessage(const QString &message, QWidget *parent,
m_timer.setSingleShot( true );
connect(&m_timer, SIGNAL(timeout()), SLOT(startFade()));
connect(this, SIGNAL(destroyed()), SLOT(widgetDeleted()));
+#endif
}
void KisFloatingMessage::tryOverrideMessage(const QString message,
@@ -162,6 +164,7 @@ void KisFloatingMessage::tryOverrideMessage(const QString message,
void KisFloatingMessage::showMessage()
{
+#ifndef Q_OS_HAIKU
if (widgetQueuedForDeletion) return;
#if QT_VERSION >= QT_VERSION_CHECK(5,13,0)
setGeometry(determineMetrics(fontMetrics().horizontalAdvance('x')));
@@ -172,6 +175,7 @@ void KisFloatingMessage::showMessage()
QWidget::setVisible(true);
m_timer.start(m_timeout);
+#endif
}
void KisFloatingMessage::setShowOverParent(bool show)
diff --git a/libs/widgetutils/KoResourcePaths.cpp b/libs/widgetutils/KoResourcePaths.cpp
index 7cc3b4a..207ca1c 100644
--- a/libs/widgetutils/KoResourcePaths.cpp
+++ b/libs/widgetutils/KoResourcePaths.cpp
@@ -127,6 +127,8 @@ QString getInstallationPrefix() {
appdir.setPath(correctedPath);
appdir.cdUp();
return appdir.canonicalPath();
+ #elif defined(Q_OS_HAIKU)
+ return qApp->applicationDirPath() + "/";
#else
#ifdef Q_OS_ANDROID
// qApp->applicationDirPath() isn't writable and android system won't allow
diff --git a/plugins/dockers/CMakeLists.txt b/plugins/dockers/CMakeLists.txt
index db5e216..49b098e 100644
--- a/plugins/dockers/CMakeLists.txt
+++ b/plugins/dockers/CMakeLists.txt
@@ -14,7 +14,7 @@ add_subdirectory(compositiondocker)
add_subdirectory(patterndocker)
add_subdirectory(griddocker)
add_subdirectory(arrangedocker)
-if(HAVE_OCIO)
+if(HAVE_OCIO AND NOT HAIKU)
add_subdirectory(lut)
endif()
add_subdirectory(overview)
--
2.28.0
From 9d98639fc9b7257e1752ffca5609bcf90e3adcee Mon Sep 17 00:00:00 2001
From: Gerasim Troeglazov <3dEyes@gmail.com>
Date: Thu, 31 Dec 2020 12:18:11 +1000
Subject: Add icons for configure
diff --git a/krita/pics/Breeze-dark/breeze-dark-icons.qrc b/krita/pics/Breeze-dark/breeze-dark-icons.qrc
index 22a8f23..9bb0b08 100644
--- a/krita/pics/Breeze-dark/breeze-dark-icons.qrc
@@ -218,41 +87,67 @@ index a7688a6..54f8da1 100644
<file>light_configure.svg</file>
<file alias="light_configure-toolbars.svg">light_configure.svg</file>
<file>light_dialog-cancel.svg</file>
--
2.28.0
From e29a81e0130e5e17b40c23c027120130d0c9450f Mon Sep 17 00:00:00 2001
From: Gerasim Troeglazov <3dEyes@gmail.com>
Date: Thu, 31 Dec 2020 12:25:08 +1000
Subject: Use configure-shortcuts instead document-export icon
diff --git a/libs/ui/dialogs/kis_dlg_preferences.cc b/libs/ui/dialogs/kis_dlg_preferences.cc
index c7a1e9c..8849648 100644
--- a/libs/ui/dialogs/kis_dlg_preferences.cc
+++ b/libs/ui/dialogs/kis_dlg_preferences.cc
@@ -1463,7 +1463,7 @@ KisDlgPreferences::KisDlgPreferences(QWidget* parent, const char* name)
page = new KPageWidgetItem(vbox, i18n("Keyboard Shortcuts"));
page->setObjectName("shortcuts");
page->setHeader(i18n("Shortcuts"));
- page->setIcon(KisIconUtils::loadIcon("document-export"));
+ page->setIcon(KisIconUtils::loadIcon("configure-shortcuts"));
m_pages << page;
addPage(page);
m_shortcutSettings = new ShortcutSettingsTab(vbox);
--
2.28.0
From 18dc0a9ab3429a1992ae4aca9e9a692c998c915b Mon Sep 17 00:00:00 2001
From: Gerasim Troeglazov <3dEyes@gmail.com>
Date: Thu, 31 Dec 2020 12:25:28 +1000
Subject: Use haiku style
diff --git a/libs/image/kis_image_config.cpp b/libs/image/kis_image_config.cpp
index 908659b..a0e71d0 100644
--- a/libs/image/kis_image_config.cpp
+++ b/libs/image/kis_image_config.cpp
@@ -396,6 +396,8 @@ void KisImageConfig::setLazyFrameCreationEnabled(bool value)
#elif defined Q_OS_MACOS
#include <sys/types.h>
#include <sys/sysctl.h>
+#elif defined Q_OS_HAIKU
+#include <OS.h>
#endif
int KisImageConfig::totalRAM()
@@ -424,6 +426,13 @@ int KisImageConfig::totalRAM()
if(!error) {
totalMemory = physmem >> 20;
}
+#elif defined Q_OS_HAIKU
+ system_info info;
+ error = get_system_info(&info) == B_OK?0:1;
+ if (!error) {
+ uint64_t size = (info.max_pages * B_PAGE_SIZE);
+ totalMemory = size >> 20;
+ }
#elif defined Q_OS_WIN
MEMORYSTATUSEX status;
status.dwLength = sizeof(status);
diff --git a/libs/ui/CMakeLists.txt b/libs/ui/CMakeLists.txt
index 87bea6e..4f89092 100644
--- a/libs/ui/CMakeLists.txt
+++ b/libs/ui/CMakeLists.txt
@@ -610,7 +610,7 @@ if (HAVE_QT_MULTIMEDIA)
target_link_libraries(kritaui Qt5::Multimedia)
endif()
-if (NOT WIN32 AND NOT APPLE AND NOT ANDROID)
+if (NOT WIN32 AND NOT APPLE AND NOT ANDROID AND NOT HAIKU)
target_link_libraries(kritaui ${X11_X11_LIB}
${X11_Xinput_LIB})
endif()
@@ -620,11 +620,17 @@ if(APPLE)
target_link_libraries(kritaui ${APPKIT_LIBRARY})
endif ()
+if(HAIKU)
+ target_link_libraries(kritaui network)
+ target_link_libraries(kritaui expat)
+ target_link_libraries(kritaui iconv)
+ target_link_libraries(kritaui intl)
+endif ()
target_link_libraries(kritaui ${OPENEXR_LIBRARIES})
# Add VSync disable workaround
-if(NOT WIN32 AND NOT APPLE AND NOT ANDROID)
+if(NOT WIN32 AND NOT APPLE AND NOT ANDROID AND NOT HAIKU)
target_link_libraries(kritaui ${CMAKE_DL_LIBS} Qt5::X11Extras)
endif()
diff --git a/libs/ui/KisApplication.cpp b/libs/ui/KisApplication.cpp
index 7bfed5e..13b870b 100644
index 6a41004..152b810 100644
--- a/libs/ui/KisApplication.cpp
+++ b/libs/ui/KisApplication.cpp
@@ -164,7 +164,7 @@ KisApplication::KisApplication(const QString &key, int &argc, char **argv)
@@ -264,18 +159,20 @@ index 7bfed5e..13b870b 100644
if (!styles.contains(style()->objectName().toLower())) {
Q_FOREACH (const QString & style, styles) {
if (!setStyle(style)) {
--
2.28.0
From 1c412325b11889fa93a3b8d364656c31aee8ed3a Mon Sep 17 00:00:00 2001
From: Gerasim Troeglazov <3dEyes@gmail.com>
Date: Thu, 31 Dec 2020 14:20:31 +1000
Subject: Use system colors
@@ -423,9 +423,10 @@ bool KisApplication::start(const KisApplicationArguments &args)
KoHashGeneratorProvider::instance()->setGenerator("MD5", new KisMD5Generator());
KConfigGroup group(KSharedConfig::openConfig(), "theme");
+#ifndef Q_OS_HAIKU
Digikam::ThemeManager themeManager;
themeManager.setCurrentTheme(group.readEntry("Theme", "Krita dark"));
-
+#endif
ResetStarting resetStarting(d->splashScreen, args.filenames().count()); // remove the splash when done
Q_UNUSED(resetStarting);
diff --git a/libs/ui/KisMainWindow.cpp b/libs/ui/KisMainWindow.cpp
index e1991b2..e72cbaa 100644
index 4cda654..9f088e7 100644
--- a/libs/ui/KisMainWindow.cpp
+++ b/libs/ui/KisMainWindow.cpp
@@ -279,9 +279,9 @@ public:
@@ -322,7 +219,7 @@ index e1991b2..e72cbaa 100644
d->actionManager()->updateGUI();
QString s = cfg.getMDIBackgroundColor();
@@ -2750,14 +2754,14 @@ void KisMainWindow::createActions()
@@ -2774,14 +2778,14 @@ void KisMainWindow::createActions()
d->showDocumentInfo = actionManager->createAction("file_documentinfo");
connect(d->showDocumentInfo, SIGNAL(triggered(bool)), this, SLOT(slotDocumentInfo()));
@@ -339,32 +236,81 @@ index e1991b2..e72cbaa 100644
d->toggleDockers = actionManager->createAction("view_toggledockers");
KisConfig(true).showDockers(true);
d->toggleDockers->setChecked(true);
--
2.28.0
From 8944454db697fb827f71de99b80960a304408c92 Mon Sep 17 00:00:00 2001
From: Gerasim Troeglazov <3dEyes@gmail.com>
Date: Fri, 1 Jan 2021 15:59:26 +1000
Subject: Remove themeManager
diff --git a/libs/ui/KisApplication.cpp b/libs/ui/KisApplication.cpp
index 13b870b..568a125 100644
--- a/libs/ui/KisApplication.cpp
+++ b/libs/ui/KisApplication.cpp
@@ -406,9 +406,10 @@ bool KisApplication::start(const KisApplicationArguments &args)
KoHashGeneratorProvider::instance()->setGenerator("MD5", new KisMD5Generator());
KConfigGroup group(KSharedConfig::openConfig(), "theme");
diff --git a/libs/ui/dialogs/kis_dlg_preferences.cc b/libs/ui/dialogs/kis_dlg_preferences.cc
index f0a1a9d..26af04c 100644
--- a/libs/ui/dialogs/kis_dlg_preferences.cc
+++ b/libs/ui/dialogs/kis_dlg_preferences.cc
@@ -1530,7 +1530,7 @@ KisDlgPreferences::KisDlgPreferences(QWidget* parent, const char* name)
page = new KPageWidgetItem(vbox, i18n("Keyboard Shortcuts"));
page->setObjectName("shortcuts");
page->setHeader(i18n("Shortcuts"));
- page->setIcon(KisIconUtils::loadIcon("document-export"));
+ page->setIcon(KisIconUtils::loadIcon("configure-shortcuts"));
m_pages << page;
addPage(page);
m_shortcutSettings = new ShortcutSettingsTab(vbox);
diff --git a/libs/ui/widgets/kis_floating_message.cpp b/libs/ui/widgets/kis_floating_message.cpp
index c99ff05..0d954ed 100644
--- a/libs/ui/widgets/kis_floating_message.cpp
+++ b/libs/ui/widgets/kis_floating_message.cpp
@@ -130,6 +130,7 @@ KisFloatingMessage::KisFloatingMessage(const QString &message, QWidget *parent,
, m_alignment(alignment)
, widgetQueuedForDeletion(false)
{
+#ifndef Q_OS_HAIKU
Digikam::ThemeManager themeManager;
themeManager.setCurrentTheme(group.readEntry("Theme", "Krita dark"));
-
+#endif
ResetStarting resetStarting(d->splashScreen, args.filenames().count()); // remove the splash when done
Q_UNUSED(resetStarting);
m_icon = KisIconUtils::loadIcon("krita").pixmap(256, 256).toImage();
setWindowFlags(Qt::FramelessWindowHint | Qt::ToolTip);
@@ -141,6 +142,7 @@ KisFloatingMessage::KisFloatingMessage(const QString &message, QWidget *parent,
m_timer.setSingleShot( true );
connect(&m_timer, SIGNAL(timeout()), SLOT(startFade()));
connect(this, SIGNAL(destroyed()), SLOT(widgetDeleted()));
+#endif
}
void KisFloatingMessage::tryOverrideMessage(const QString message,
@@ -162,6 +164,7 @@ void KisFloatingMessage::tryOverrideMessage(const QString message,
void KisFloatingMessage::showMessage()
{
+#ifndef Q_OS_HAIKU
if (widgetQueuedForDeletion) return;
#if QT_VERSION >= QT_VERSION_CHECK(5,13,0)
setGeometry(determineMetrics(fontMetrics().horizontalAdvance('x')));
@@ -172,6 +175,7 @@ void KisFloatingMessage::showMessage()
QWidget::setVisible(true);
m_timer.start(m_timeout);
+#endif
}
void KisFloatingMessage::setShowOverParent(bool show)
diff --git a/libs/widgetutils/KoResourcePaths.cpp b/libs/widgetutils/KoResourcePaths.cpp
index 7070cf8..b8a004c 100644
--- a/libs/widgetutils/KoResourcePaths.cpp
+++ b/libs/widgetutils/KoResourcePaths.cpp
@@ -127,6 +127,8 @@ QString getInstallationPrefix() {
appdir.setPath(correctedPath);
appdir.cdUp();
return appdir.canonicalPath();
+ #elif defined(Q_OS_HAIKU)
+ return qApp->applicationDirPath() + "/";
#else
#ifdef Q_OS_ANDROID
// qApp->applicationDirPath() isn't writable and android system won't allow
diff --git a/plugins/dockers/CMakeLists.txt b/plugins/dockers/CMakeLists.txt
index db5e216..49b098e 100644
--- a/plugins/dockers/CMakeLists.txt
+++ b/plugins/dockers/CMakeLists.txt
@@ -14,7 +14,7 @@ add_subdirectory(compositiondocker)
add_subdirectory(patterndocker)
add_subdirectory(griddocker)
add_subdirectory(arrangedocker)
-if(HAVE_OCIO)
+if(HAVE_OCIO AND NOT HAIKU)
add_subdirectory(lut)
endif()
add_subdirectory(overview)
--
2.28.0
2.30.0