forked from pool/krita
Compare commits
15 Commits
Author | SHA256 | Date | |
---|---|---|---|
55a3c0a283 | |||
|
39a87fcd5f | ||
|
5c33b4dbb9 | ||
44e72f92a2 | |||
|
32eab59fb9 | ||
c37514e8fb | |||
|
392de79aa1 | ||
e0ed01d728 | |||
|
098024bbd6 | ||
6e24ad8b70 | |||
|
7670fbed45 | ||
41073d8d0b | |||
|
7c574092a4 | ||
bec9b2ff37 | |||
|
de72346652 |
144
0001-Fix-build-with-libheif-1.20.patch
Normal file
144
0001-Fix-build-with-libheif-1.20.patch
Normal file
@@ -0,0 +1,144 @@
|
||||
From 169339accb9e4e0e0e9921176c5cd60d340b7b04 Mon Sep 17 00:00:00 2001
|
||||
From: Halla Rempt <halla@valdyas.org>
|
||||
Date: Thu, 10 Jul 2025 10:08:24 +0200
|
||||
Subject: [PATCH] Fix build with libheif 1.20
|
||||
|
||||
https://github.com/strukturag/libheif/issues/1419 introduced a
|
||||
source incompatible api change, this patch by Brad Smith make
|
||||
Krita build with 1.20. I've also checked with 1.15.2, which we
|
||||
use and it still builds.
|
||||
|
||||
BUG:506778
|
||||
(cherry picked from commit 6ad4fa68a9e1ce06fc884e34f3cedcdd4b9a2076)
|
||||
---
|
||||
plugins/impex/heif/HeifExport.cpp | 24 +++++++++++++++---------
|
||||
plugins/impex/heif/HeifImport.cpp | 22 ++++++++++++++--------
|
||||
2 files changed, 29 insertions(+), 17 deletions(-)
|
||||
|
||||
diff --git a/plugins/impex/heif/HeifExport.cpp b/plugins/impex/heif/HeifExport.cpp
|
||||
index 3e70cf925e..ccbc8034b5 100644
|
||||
--- a/plugins/impex/heif/HeifExport.cpp
|
||||
+++ b/plugins/impex/heif/HeifExport.cpp
|
||||
@@ -137,6 +137,12 @@ KisImportExportErrorCode HeifExport::convert(KisDocument *document, QIODevice *i
|
||||
HeifLock lock;
|
||||
#endif
|
||||
|
||||
+#if LIBHEIF_HAVE_VERSION(1, 20, 0)
|
||||
+ using HeifStrideType = size_t;
|
||||
+#else
|
||||
+ using HeifStrideType = int;
|
||||
+#endif
|
||||
+
|
||||
KisImageSP image = document->savingImage();
|
||||
const KoColorSpace *cs = image->colorSpace();
|
||||
|
||||
@@ -250,10 +256,10 @@ KisImportExportErrorCode HeifExport::convert(KisDocument *document, QIODevice *i
|
||||
img.add_plane(heif_channel_G, width,height, 8);
|
||||
img.add_plane(heif_channel_B, width,height, 8);
|
||||
|
||||
- int strideR = 0;
|
||||
- int strideG = 0;
|
||||
- int strideB = 0;
|
||||
- int strideA = 0;
|
||||
+ HeifStrideType strideR = 0;
|
||||
+ HeifStrideType strideG = 0;
|
||||
+ HeifStrideType strideB = 0;
|
||||
+ HeifStrideType strideA = 0;
|
||||
|
||||
uint8_t *ptrR = img.get_plane(heif_channel_R, &strideR);
|
||||
uint8_t *ptrG = img.get_plane(heif_channel_G, &strideG);
|
||||
@@ -289,7 +295,7 @@ KisImportExportErrorCode HeifExport::convert(KisDocument *document, QIODevice *i
|
||||
img.create(width, height, heif_colorspace_RGB, chroma);
|
||||
img.add_plane(heif_channel_interleaved, width, height, 12);
|
||||
|
||||
- int stride = 0;
|
||||
+ HeifStrideType stride = 0;
|
||||
|
||||
uint8_t *ptr = img.get_plane(heif_channel_interleaved, &stride);
|
||||
|
||||
@@ -330,8 +336,8 @@ KisImportExportErrorCode HeifExport::convert(KisDocument *document, QIODevice *i
|
||||
|
||||
img.add_plane(heif_channel_Y, width, height, 8);
|
||||
|
||||
- int strideG = 0;
|
||||
- int strideA = 0;
|
||||
+ HeifStrideType strideG = 0;
|
||||
+ HeifStrideType strideA = 0;
|
||||
|
||||
uint8_t *ptrG = img.get_plane(heif_channel_Y, &strideG);
|
||||
uint8_t *ptrA = [&]() -> uint8_t * {
|
||||
@@ -363,8 +369,8 @@ KisImportExportErrorCode HeifExport::convert(KisDocument *document, QIODevice *i
|
||||
|
||||
img.add_plane(heif_channel_Y, width, height, 12);
|
||||
|
||||
- int strideG = 0;
|
||||
- int strideA = 0;
|
||||
+ HeifStrideType strideG = 0;
|
||||
+ HeifStrideType strideA = 0;
|
||||
|
||||
uint8_t *ptrG = img.get_plane(heif_channel_Y, &strideG);
|
||||
uint8_t *ptrA = [&]() -> uint8_t * {
|
||||
diff --git a/plugins/impex/heif/HeifImport.cpp b/plugins/impex/heif/HeifImport.cpp
|
||||
index 3c1a52cc28..6bceea85eb 100644
|
||||
--- a/plugins/impex/heif/HeifImport.cpp
|
||||
+++ b/plugins/impex/heif/HeifImport.cpp
|
||||
@@ -214,6 +214,12 @@ KisImportExportErrorCode HeifImport::convert(KisDocument *document, QIODevice *i
|
||||
HeifLock lock;
|
||||
#endif
|
||||
|
||||
+#if LIBHEIF_HAVE_VERSION(1, 20, 0)
|
||||
+ using HeifStrideType = size_t;
|
||||
+#else
|
||||
+ using HeifStrideType = int;
|
||||
+#endif
|
||||
+
|
||||
// Wrap input stream into heif Reader object
|
||||
Reader_QIODevice reader(io);
|
||||
|
||||
@@ -387,8 +393,8 @@ KisImportExportErrorCode HeifImport::convert(KisDocument *document, QIODevice *i
|
||||
|
||||
if (heifChroma == heif_chroma_monochrome) {
|
||||
dbgFile << "monochrome heif file, bits:" << luma;
|
||||
- int strideG = 0;
|
||||
- int strideA = 0;
|
||||
+ HeifStrideType strideG = 0;
|
||||
+ HeifStrideType strideA = 0;
|
||||
const uint8_t *imgG = heifimage.get_plane(heif_channel_Y, &strideG);
|
||||
const uint8_t *imgA =
|
||||
heifimage.get_plane(heif_channel_Alpha, &strideA);
|
||||
@@ -409,10 +415,10 @@ KisImportExportErrorCode HeifImport::convert(KisDocument *document, QIODevice *i
|
||||
} else if (heifChroma == heif_chroma_444) {
|
||||
dbgFile << "planar heif file, bits:" << luma;
|
||||
|
||||
- int strideR = 0;
|
||||
- int strideG = 0;
|
||||
- int strideB = 0;
|
||||
- int strideA = 0;
|
||||
+ HeifStrideType strideR = 0;
|
||||
+ HeifStrideType strideG = 0;
|
||||
+ HeifStrideType strideB = 0;
|
||||
+ HeifStrideType strideA = 0;
|
||||
const uint8_t* imgR = heifimage.get_plane(heif_channel_R, &strideR);
|
||||
const uint8_t* imgG = heifimage.get_plane(heif_channel_G, &strideG);
|
||||
const uint8_t* imgB = heifimage.get_plane(heif_channel_B, &strideB);
|
||||
@@ -439,7 +445,7 @@ KisImportExportErrorCode HeifImport::convert(KisDocument *document, QIODevice *i
|
||||
displayNits,
|
||||
colorSpace);
|
||||
} else if (heifChroma == heif_chroma_interleaved_RGB || heifChroma == heif_chroma_interleaved_RGBA) {
|
||||
- int stride = 0;
|
||||
+ HeifStrideType stride = 0;
|
||||
dbgFile << "interleaved SDR heif file, bits:" << luma;
|
||||
|
||||
const uint8_t *img = heifimage.get_plane(heif_channel_interleaved, &stride);
|
||||
@@ -461,7 +467,7 @@ KisImportExportErrorCode HeifImport::convert(KisDocument *document, QIODevice *i
|
||||
colorSpace);
|
||||
|
||||
} else if (heifChroma == heif_chroma_interleaved_RRGGBB_LE || heifChroma == heif_chroma_interleaved_RRGGBBAA_LE || heifChroma == heif_chroma_interleaved_RRGGBB_BE || heifChroma == heif_chroma_interleaved_RRGGBB_BE) {
|
||||
- int stride = 0;
|
||||
+ HeifStrideType stride = 0;
|
||||
dbgFile << "interleaved HDR heif file, bits:" << luma;
|
||||
|
||||
const uint8_t *img =
|
||||
--
|
||||
2.50.0
|
||||
|
132
5d44af277b005692241a09f30e11bb0d16166823.patch
Normal file
132
5d44af277b005692241a09f30e11bb0d16166823.patch
Normal file
@@ -0,0 +1,132 @@
|
||||
From 5d44af277b005692241a09f30e11bb0d16166823 Mon Sep 17 00:00:00 2001
|
||||
From: Freya Lupen <penguinflyer2222@gmail.com>
|
||||
Date: Thu, 25 Jul 2024 08:37:45 -0500
|
||||
Subject: [PATCH] Fix Python invalid escape sequence warnings
|
||||
|
||||
If Python finds a string with an invalid backslash escape such as '\*',
|
||||
it will throw a Syntax or Deprecation warning. In the future this will
|
||||
become an error. The fix is to use a raw string r'\*' instead, which
|
||||
won't attempt to interpolate the escape sequences in the regexes.
|
||||
|
||||
BUG:489526
|
||||
---
|
||||
.../comics_project_management_tools/comics_exporter.py | 6 +++---
|
||||
.../exporters/CPMT_ACBF_XML_Exporter.py | 4 ++--
|
||||
.../exporters/CPMT_po_parser.py | 8 ++++----
|
||||
.../python/scripter/ui_scripter/editor/pythoneditor.py | 2 +-
|
||||
plugins/python/scripter/ui_scripter/syntax/syntax.py | 8 ++++----
|
||||
5 files changed, 14 insertions(+), 14 deletions(-)
|
||||
|
||||
diff --git a/plugins/python/comics_project_management_tools/comics_exporter.py b/plugins/python/comics_project_management_tools/comics_exporter.py
|
||||
index 73fe21bcbe3..6cb3f2a095f 100644
|
||||
--- a/plugins/python/comics_project_management_tools/comics_exporter.py
|
||||
+++ b/plugins/python/comics_project_management_tools/comics_exporter.py
|
||||
@@ -420,7 +420,7 @@ class comicsExporter():
|
||||
def handleShapeDescription(self, shape, list, textOnly=False):
|
||||
return
|
||||
# Turn off shape retrieval for now until the new text tool is finished.
|
||||
- """
|
||||
+ r"""
|
||||
if (shape.type() != "KoSvgTextShapeID" and textOnly is True):
|
||||
return
|
||||
shapeDesc = {}
|
||||
@@ -429,7 +429,7 @@ class comicsExporter():
|
||||
listOfPoints = [rect.topLeft(), rect.topRight(), rect.bottomRight(), rect.bottomLeft()]
|
||||
shapeDoc = minidom.parseString(shape.toSvg())
|
||||
docElem = shapeDoc.documentElement
|
||||
- svgRegExp = re.compile('[MLCSQHVATmlzcqshva]\d+\.?\d* \d+\.?\d*')
|
||||
+ svgRegExp = re.compile(r'[MLCSQHVATmlzcqshva]\d+\.?\d* \d+\.?\d*')
|
||||
transform = docElem.getAttribute("transform")
|
||||
coord = []
|
||||
adjust = QTransform()
|
||||
@@ -539,7 +539,7 @@ class comicsExporter():
|
||||
fontsize = int(size)
|
||||
font = QFont(family, fontsize)
|
||||
string = el.toxml()
|
||||
- string = re.sub("\<.*?\>", " ", string)
|
||||
+ string = re.sub(r"\<.*?\>", " ", string)
|
||||
string = string.replace(" ", " ")
|
||||
width = min(QFontMetrics(font).width(string.strip()), rect.width())
|
||||
height = QFontMetrics(font).height()
|
||||
diff --git a/plugins/python/comics_project_management_tools/exporters/CPMT_ACBF_XML_Exporter.py b/plugins/python/comics_project_management_tools/exporters/CPMT_ACBF_XML_Exporter.py
|
||||
index 985b83b6409..386f39bd384 100644
|
||||
--- a/plugins/python/comics_project_management_tools/exporters/CPMT_ACBF_XML_Exporter.py
|
||||
+++ b/plugins/python/comics_project_management_tools/exporters/CPMT_ACBF_XML_Exporter.py
|
||||
@@ -507,8 +507,8 @@ def write_xml(configDictionary = {}, pageData = [], pagesLocationList = [], loc
|
||||
figureOut = figure_out_type(svg.documentElement())
|
||||
type = figureOut[0]
|
||||
inverted = figureOut[1]
|
||||
- string = re.sub("\<\/*?text.*?\>",'', str(v["text"]))
|
||||
- string = re.sub("\s+?", " ", string)
|
||||
+ string = re.sub(r"\<\/*?text.*?\>",'', str(v["text"]))
|
||||
+ string = re.sub(r"\s+?", " ", string)
|
||||
translationEntry = poParser.get_entry_for_key(string, lang)
|
||||
string = translationEntry.get("trans", string)
|
||||
svg.setContent("<text>"+string+"</text>")
|
||||
diff --git a/plugins/python/comics_project_management_tools/exporters/CPMT_po_parser.py b/plugins/python/comics_project_management_tools/exporters/CPMT_po_parser.py
|
||||
index 3d35218d27e..73a1227443a 100644
|
||||
--- a/plugins/python/comics_project_management_tools/exporters/CPMT_po_parser.py
|
||||
+++ b/plugins/python/comics_project_management_tools/exporters/CPMT_po_parser.py
|
||||
@@ -46,8 +46,8 @@ class po_file_parser():
|
||||
key = ""
|
||||
if self.key_xml:
|
||||
text = entry.get("text", "")
|
||||
- text = re.sub("\<.*?\>", " ", text)
|
||||
- key += str(re.sub("\s+", " ", text)).strip()
|
||||
+ text = re.sub(r"\<.*?\>", " ", text)
|
||||
+ key += str(re.sub(r"\s+", " ", text)).strip()
|
||||
else:
|
||||
key += entry.get("text", None)
|
||||
if key is not None:
|
||||
@@ -111,8 +111,8 @@ class po_file_parser():
|
||||
entry = {}
|
||||
entry["trans"] = " "
|
||||
if self.key_xml:
|
||||
- key = re.sub("\<.*?\>", " ", key)
|
||||
- key = re.sub("\s+", " ", key)
|
||||
+ key = re.sub(r"\<.*?\>", " ", key)
|
||||
+ key = re.sub(r"\s+", " ", key)
|
||||
key = key.strip()
|
||||
if key in self.translationDict.keys():
|
||||
translations = {}
|
||||
diff --git a/plugins/python/scripter/ui_scripter/editor/pythoneditor.py b/plugins/python/scripter/ui_scripter/editor/pythoneditor.py
|
||||
index 76572ab1e3c..da3efbc89c1 100644
|
||||
--- a/plugins/python/scripter/ui_scripter/editor/pythoneditor.py
|
||||
+++ b/plugins/python/scripter/ui_scripter/editor/pythoneditor.py
|
||||
@@ -271,7 +271,7 @@ class CodeEditor(QPlainTextEdit):
|
||||
self.dedentBlock(blockNumber)
|
||||
|
||||
def autoindent(self):
|
||||
- """The return key has just been pressed (and processed by the editor)
|
||||
+ r"""The return key has just been pressed (and processed by the editor)
|
||||
now insert leading spaces to reflect an appropriate indent level
|
||||
against the previous line.
|
||||
This will depend on the end of the previous line. If it ends:
|
||||
diff --git a/plugins/python/scripter/ui_scripter/syntax/syntax.py b/plugins/python/scripter/ui_scripter/syntax/syntax.py
|
||||
index abc7903b3cb..b0d3088e038 100644
|
||||
--- a/plugins/python/scripter/ui_scripter/syntax/syntax.py
|
||||
+++ b/plugins/python/scripter/ui_scripter/syntax/syntax.py
|
||||
@@ -30,16 +30,16 @@ class PythonHighlighter (QSyntaxHighlighter):
|
||||
# Comparison
|
||||
'==', '!=', '<', '<=', '>', '>=',
|
||||
# Arithmetic
|
||||
- '\+', '-', '\*', '/', '//', '\%', '\*\*',
|
||||
+ r'\+', '-', r'\*', '/', '//', r'\%', r'\*\*',
|
||||
# In-place
|
||||
- '\+=', '-=', '\*=', '/=', '\%=',
|
||||
+ r'\+=', '-=', r'\*=', '/=', r'\%=',
|
||||
# Bitwise
|
||||
- '\^', '\|', '\&', '\~', '>>', '<<',
|
||||
+ r'\^', r'\|', r'\&', r'\~', '>>', '<<',
|
||||
]
|
||||
|
||||
# Python braces
|
||||
braces = [
|
||||
- '\{', '\}', '\(', '\)', '\[', '\]',
|
||||
+ r'\{', r'\}', r'\(', r'\)', r'\[', r'\]',
|
||||
]
|
||||
|
||||
def __init__(self, document, syntaxStyle):
|
||||
--
|
||||
GitLab
|
||||
|
3
krita-5.2.10.tar.xz
Normal file
3
krita-5.2.10.tar.xz
Normal file
@@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:00db535f09a1f842af0f6dac6288fd01769b9f132faea33a08c10835739c5407
|
||||
size 190972756
|
BIN
krita-5.2.10.tar.xz.sig
Normal file
BIN
krita-5.2.10.tar.xz.sig
Normal file
Binary file not shown.
@@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:cf78ddb39700c92928cf14d7611b8ef3870d8f5b83ef590d43e218bec5dafd54
|
||||
size 186685456
|
Binary file not shown.
228
krita.changes
228
krita.changes
@@ -1,3 +1,231 @@
|
||||
-------------------------------------------------------------------
|
||||
Thu Jul 10 13:23:40 UTC 2025 - Christophe Marin <christophe@krop.fr>
|
||||
|
||||
- Add upstream change:
|
||||
* 0001-Fix-build-with-libheif-1.20.patch
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Jul 9 10:32:59 UTC 2025 - Christophe Marin <christophe@krop.fr>
|
||||
|
||||
- Update to 5.2.10
|
||||
https://krita.org/en/posts/2025/krita-5.2.10-released/
|
||||
* Raster layer opacity changes now properly clear the animation
|
||||
cache. (kde#499389)
|
||||
* Fix incorrect scaling of animated transform mask values.
|
||||
(kde#469881)
|
||||
* Allow resetting onion skins to default values. (kde#466977)
|
||||
* Fix a crash in clipboard handling. (kde#501560)
|
||||
* Resize canvas: reset the canvas size when toggling the
|
||||
"preserve aspect ratio" button. (kde#452605)
|
||||
* TIFF: Tiff files would append the entire image again on
|
||||
saving again because we didn't truncate the file on
|
||||
saving. (kde#500870)
|
||||
* Fix a crash when autosaving extremely big files.
|
||||
* Make updating the rulers more responsive during canvas
|
||||
transformations
|
||||
* Make panning more responsive
|
||||
* Improve performance of the statusbar
|
||||
* Fix the transform tool to show reordered layers preview
|
||||
(kde#503201)
|
||||
* OpenRaster: default group layers to non-passthrough mode,
|
||||
following the specitication. Thanks Wareya Na!
|
||||
* Palettes: use the title field for the palette name for
|
||||
Adobe Color Book palettes
|
||||
* Fix the brush preview when creating a new preset with canvas
|
||||
mirroring enabled. (kde#501153)
|
||||
* Fix handling of groups in palette files
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri May 30 11:51:38 UTC 2025 - Marcus Rueckert <mrueckert@suse.de>
|
||||
|
||||
- backport 5d44af277b005692241a09f30e11bb0d16166823.patch:
|
||||
Fix Python invalid escape sequence warnings boo#1243841
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Jan 30 07:56:44 UTC 2025 - Christophe Marin <christophe@krop.fr>
|
||||
|
||||
- Update to 5.2.9
|
||||
* Add shortcuts to bezier curve and freehand path
|
||||
* Fix original offsets not being accounted for when copying
|
||||
from another document (kde#490998)
|
||||
* Fix updates when copy-pasting multiple nodes into a new document
|
||||
* Fix infinite loop when trying to update pass-through nodes
|
||||
(kde#493774, kde#493830, kde#493837)
|
||||
* Fix Photobash Crash
|
||||
* Bug fix: Added A1 and A2 sizes when creating a document
|
||||
* Fix a crash when trying to merge down a layer created after
|
||||
a reference image addition
|
||||
* Possibly fix saving EXR files with extremely low alpha values
|
||||
* Fix infinite loop when a clone layer is connected to a
|
||||
group with clones
|
||||
* Dynamic brush tool shouldn't load the saved smoothing
|
||||
configuration (kde#493249)
|
||||
* Fix bogus offset when saving EXR with moved layers
|
||||
* Try to keep color space profile when saving EXR of
|
||||
incompatible type
|
||||
* Fix crash when re-importing the same resource, but changed
|
||||
(kde#484796)
|
||||
* Fix range of Saturation and Value brush options (kde#487469)
|
||||
* Check pointer before dereferencing. (kde#479405)
|
||||
* Fix loading .kpp files with embedded top-level resources
|
||||
(kde#487866, kde#456586, kde#456197)
|
||||
* Fix a crash when trying to clear scratchpad while it is busy
|
||||
(kde#488800)
|
||||
* Fix the current preset thumbnail to be present in the preset
|
||||
save dialog (kde#488673, kde#446792)
|
||||
* JPEG XL: Fix potential lockup when loading multipage images
|
||||
* Set the correct shortcut for zoom in in the action file
|
||||
(kde#484365)
|
||||
* Fixed: some tools is interrupted by recorder. (kde#488472,
|
||||
kde#477715, kde#484783)
|
||||
* Make sure that the text tool is not interrupted by the
|
||||
recorder (kde#495768)
|
||||
* Recover "Clean Up" button in the Krita's Recordings Manager
|
||||
(kde#455207)
|
||||
* Fix a possible saving lockout due to incorrect ownership of
|
||||
the saving mutex (kde#496018)
|
||||
* Fixes to the unit spinboxes, a new context menu has been
|
||||
added to change the unit.
|
||||
* Make vector and raster selections to behave in the same way
|
||||
when creating tiny selections (kde#445935)
|
||||
* Fix unclosed paths when intersecting two rectangular
|
||||
selections (kde#408369)
|
||||
* Fix crash when closing Krita while Calligraphy Tool is
|
||||
active (kde#496257)
|
||||
* Fix following existing shape in the Calligraphy Tool
|
||||
(kde#433288)
|
||||
* Fix "Copy into new Layer" action when working with vector
|
||||
layers (kde#418317)
|
||||
* Make sure that eraser button is properly initialized on
|
||||
Krita start (kde#408440)
|
||||
* Fix focus issues in Canvas Size dialog (kde#474809)
|
||||
* Disable snapping to image center by default (kde#466718)
|
||||
* Make sure that point-based snap points have higher priority
|
||||
than line-based ones (kde#492434)
|
||||
* Implement canvas decorations for Snap-to-guides feature
|
||||
-Don't allow lowering/raising a mask into a locked layer
|
||||
* Fix display profile conversion flags to be updated on
|
||||
settings change (kde#496388)
|
||||
* Switch color history in the popup palette to use last-used
|
||||
sorting (kde#441900)
|
||||
* Add Unify Layers Color Space action
|
||||
* Fix incorrect action text for "Paste Shape Style"
|
||||
(kde#497035)
|
||||
* Fix backward compatibility of Per-Channel filter (kde#497336)
|
||||
* Fix rendering of the warning icon in the composite op
|
||||
selector
|
||||
* Simplify path point and control point move strategies.
|
||||
* Fix an assert when modifying Mesh Gradient on a shape
|
||||
(kde#496519)
|
||||
* Fix aspect ratio of Resource Manager tooltips
|
||||
* Improve rendering of pattern thumbnails
|
||||
* Fix artifacts when painting under a gaussian blus layer in
|
||||
WA-mode (kde#434938)
|
||||
* Fix an assert when undoing merging of locked layers
|
||||
(kde#497389)
|
||||
* Remove ignoring of the mouse events in KoPathTool (kde#411855)
|
||||
* Use traceback instead of cgitb (kde#497859)
|
||||
* Fix ambiguous "break path" shortcut in Shape Edit Tool
|
||||
(kde#429503)
|
||||
* Add position indepndent property to libraqm
|
||||
* Fix python Py_SetPath() deprecation by always using qputenv()
|
||||
* JPEG XL export: Fix unable to set EPF value to -1 (encoder
|
||||
chooses)
|
||||
* G'Mic has been updated to 3.5.0 stable.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Nov 20 17:17:50 UTC 2024 - Christophe Marin <christophe@krop.fr>
|
||||
|
||||
- Stop using the %suse_update_desktop_file macro
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Oct 1 21:38:05 UTC 2024 - Christophe Marin <christophe@krop.fr>
|
||||
|
||||
- Update to 5.2.6:
|
||||
* Fix a critical error with pass-through group layers (kde#493774)
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Sun Sep 29 15:21:49 UTC 2024 - Christophe Marin <christophe@krop.fr>
|
||||
|
||||
- Update to 5.2.5
|
||||
https://krita.org/en/posts/2024/krita-5-2-5-released/
|
||||
* Correctly adjust audio playback when animation framerate is
|
||||
changed.
|
||||
* Fix no layer being activated on opening a document (kde#490375)
|
||||
* [mlt] Fix incorrect usage of get_frame API (kde#489146)
|
||||
* Fix forbidden cursor blinking when switching tools with
|
||||
shortcuts (kde#490255)
|
||||
* Fix conflicts between mouse and touch actions requested
|
||||
concurrently (kde#489537)
|
||||
* Only check for the presence of bt2020PQColorSpace on
|
||||
Windows (kde#490301)
|
||||
* Run macdeployqt after searching for missing libs (kde#490181)
|
||||
* Fix crash when deleting composition
|
||||
* Fix scaling down image with 1px grid spacing (kde#490898)
|
||||
* Fix layer activation issue when opening multiple
|
||||
documents (kde#490843)
|
||||
* Make clip-board pasting code a bit more robust (kde#490636)
|
||||
* Fix a number of issues with frame generation (kde#486417)
|
||||
* A number of changes related to qt6 port changes.
|
||||
* Fix black canvas appearing when "Limit animation frame size"
|
||||
is active (kde#486417)
|
||||
* WebP: fix colorspace export issue when dithering is
|
||||
enabled (kde#491231)
|
||||
* WebP: preserve color profile on export if color model is RGB(A)
|
||||
* Fix layer selection when a layer was removed while view was inactive
|
||||
* Fix On-Canvas Brush Editor's decimal sliders (kde#447800, kde#457744)
|
||||
* Make sure file layers are updated when image size or resolution
|
||||
changes (kde#467257, kde#470110)
|
||||
* Fix Advanced Export of the image with filter masks or layer
|
||||
styles (kde#476980)
|
||||
* Avoid memory leak in the advanced export function
|
||||
* Fix mipmaps not being regenerated after transformation was
|
||||
finished or cancelled (kde#480973)
|
||||
* [Gentoo] Don't use xsimd::default_arch in the pixel scaler code
|
||||
* KisZug: Fix ODR violation for map_*
|
||||
* Fix a crash in Filter Brush when changing the filter type (kde#478419)
|
||||
* PSD: Don't test reference layer for homogenous check (kde#492236)
|
||||
* Fix an assert that should have been a safe assert (kde#491665)
|
||||
* Set minimum freetype version to 2.11 (kde#489377)
|
||||
* Set Krita Default on restoring defaults (kde#488478)
|
||||
* Fix loading translated news (kde#489477)
|
||||
* Make sure that older files with simple transform masks load
|
||||
fine & Fix infinite loop with combination of
|
||||
clone + transform-mask-on-source (kde#492320)
|
||||
* Fix more cycling updates in clone/transform-masks
|
||||
combinations (kde#443766)
|
||||
* Fix incorrect threaded image access in multiple clone
|
||||
layers (kde#449964)
|
||||
* TIFF: Ignore resolution if set to 0 (kde#473090)
|
||||
* Specific Color Selector: Update labels fox HSX (kde#475551)
|
||||
* Specific Color Selector: Fix RGB sliders changing
|
||||
length (kde#453649)
|
||||
* Specific Color Selector: Fix float slider step 1 -> 0.01
|
||||
* Specific Color Selector: Fix holding down spinbox
|
||||
arrows (kde#453366)
|
||||
* Fix clone layers resetting the animation cache (kde#484353)
|
||||
* Fix an assert when trying to activate an image
|
||||
snapshot (kde#492114)
|
||||
* Fix redo actions to appear when undoing juggler-compressed
|
||||
actions (kde#491186)
|
||||
* Update cache when cloning perspective assistants (kde#493185)
|
||||
* Fix a warning on undoing flattening a group (kde#474122)
|
||||
* Relink clones to the new layer when flattening (kde#476514)
|
||||
* Fix onion skins rendering on layers with a transform
|
||||
masks (kde#457136)
|
||||
* Fix perspective value for hovering pixel
|
||||
* Fix Move and Transform tool to work with Pass-Through
|
||||
groups (kde#457957)
|
||||
* JPEG XL: Export: implement streaming encoding and progress
|
||||
reporting
|
||||
* Deselect selection when pasting from the clipboard (kde#459162)
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Sun Sep 15 15:26:32 UTC 2024 - Giacomo Comes <gcomes.obs@gmail.com>
|
||||
|
||||
- Revert to use default gcc on Tumbleweed
|
||||
* issue between boost and gcc14 has been fixed
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Sep 11 20:54:45 UTC 2024 - Christophe Marin <christophe@krop.fr>
|
||||
|
||||
|
BIN
krita.keyring
BIN
krita.keyring
Binary file not shown.
19
krita.spec
19
krita.spec
@@ -1,7 +1,7 @@
|
||||
#
|
||||
# spec file for package krita
|
||||
#
|
||||
# Copyright (c) 2024 SUSE LLC
|
||||
# Copyright (c) 2025 SUSE LLC
|
||||
#
|
||||
# All modifications and additions to the file contributed by third parties
|
||||
# remain the property of their copyright owners, unless otherwise agreed
|
||||
@@ -29,7 +29,7 @@
|
||||
%define pyver python311
|
||||
%endif
|
||||
Name: krita
|
||||
Version: 5.2.3
|
||||
Version: 5.2.10
|
||||
Release: 0
|
||||
Summary: Digital Painting Application
|
||||
License: BSD-2-Clause AND GPL-2.0-or-later AND LGPL-2.0-or-later AND LGPL-2.1-or-later AND GPL-3.0-or-later AND CC0-1.0 AND LGPL-2.0-only
|
||||
@@ -41,17 +41,16 @@ Source2: krita.keyring
|
||||
%endif
|
||||
# PATCH-FIX-UPSTREAM
|
||||
Patch0: 0004-Fix-build-with-sip6.8.patch
|
||||
# PATCH-FIX-UPSTREAM
|
||||
Patch1: 5d44af277b005692241a09f30e11bb0d16166823.patch
|
||||
# PATCH-FIX-UPSTREAM
|
||||
Patch2: 0001-Fix-build-with-libheif-1.20.patch
|
||||
BuildRequires: %{pyver}-devel
|
||||
BuildRequires: %{pyver}-qt5-devel
|
||||
BuildRequires: %{pyver}-sip-devel
|
||||
BuildRequires: OpenEXR-devel
|
||||
BuildRequires: extra-cmake-modules
|
||||
BuildRequires: fftw3-devel
|
||||
# gcc 14 became the default compiler despite knowing it was causing boost issue. Stick to gcc 13 for the moment
|
||||
%if 0%{?suse_version} > 1500
|
||||
BuildRequires: gcc13-c++
|
||||
BuildRequires: gcc13-PIE
|
||||
%endif
|
||||
BuildRequires: giflib-devel
|
||||
BuildRequires: gsl-devel
|
||||
%if 0%{?suse_version} > 1500
|
||||
@@ -73,7 +72,6 @@ BuildRequires: libtiff-devel
|
||||
BuildRequires: openjpeg2-devel
|
||||
BuildRequires: perl
|
||||
BuildRequires: pkgconfig
|
||||
BuildRequires: update-desktop-files
|
||||
BuildRequires: zlib-devel
|
||||
BuildRequires: cmake(Immer)
|
||||
BuildRequires: cmake(KF5Completion)
|
||||
@@ -146,9 +144,6 @@ Development headers and libraries for Krita.
|
||||
%autosetup -p1
|
||||
|
||||
%build
|
||||
%if 0%{?suse_version} > 1500
|
||||
export CC=gcc-13 CXX=g++-13
|
||||
%endif
|
||||
%cmake_kf5 -d build -- -DKRITA_ENABLE_PCH:BOOL=OFF
|
||||
|
||||
%cmake_build
|
||||
@@ -156,8 +151,6 @@ export CC=gcc-13 CXX=g++-13
|
||||
%install
|
||||
%kf5_makeinstall -C build
|
||||
|
||||
%suse_update_desktop_file -r org.kde.krita Qt KDE Graphics RasterGraphics
|
||||
|
||||
%find_lang %{name}
|
||||
|
||||
chmod -x %{buildroot}%{_kf5_applicationsdir}/*.desktop
|
||||
|
Reference in New Issue
Block a user