Version 3.2.0 released, changelog

Dan Leinir Turthra Jensen admin at leinir.dk
Fri Apr 24 11:13:04 BST 2020


On Friday, 24 April 2020 09:44:41 BST Dag wrote:
> Freezes lifted.
> 
> I have extracted changes from git log and tried to weed out everything
> not interresting to a user.

  Thanks! :)

> Please check it out and correct mistakes, omissions etc.
> @leinir clueless on gemini, so please review.

  Edited version with gemini polishing attached :) (also, i entirely forgot 
our most recent release was prior to all that work on kirigamifying Gemini  
and stuff ;) )

-- 
..dan / leinir..
http://leinir.dk/
-------------- next part --------------
Gemini:
-------
* Kirigamify the welcome pages
    This also includes adapt parts of the application's flow to better
    match Kirigami's style, and has further resulted in a variety of
    little UI tweaks, as the original UI was built in the early days of
    Qt Quick, before proper established patterns

* Pull out DocumentTile as a proper component and add various fixes

* Fix some issues with similarly named documents in RecentFileManager

* Remove crash in cloud support by postponing some of the loading process

* Clarify touch <-> desktop view switch
    
* Fix loading of templates and files creation
    
* Migrate away from deprecated interfaces in Gemini DropBox support

* Handle non-availability of the web view

* Make the touch view accept touch events on recent Qt versions

QtQuick2 Components:
--------------------
* Speed up document loading when viewing only by not loading editor controls

* Correct anchor detection in QML components, removing potential infinite looping

Words:
------
* Do not popup contextmenu twice

* Fix Bug 378527 - "Distraction free mode" should be called "Full screen mode"

* Fix Bug 358581 - Calligra word crashes on trying to print web page from Konqueror
    Fixed calligra crashing when opening remote document

* Fix crash after loading of template file fails

* Save anchor info also for page-anchored shapes
    LO needs anchor info to position shapes correctly.

* Fix interoperability problem with LibreOffice
    Words creates pagestyles with name "Standard" and displayname "Default".
    
    LibreOffice creates a "Default" style where all words style attributes go.
    The style is never used by LibreOffice, effectivly discarding all attributes.

Karbon:
-------
* Karbon: Enable multi page capability

* Karbon image filter: Add multipage support
    Adds ability to select page in the options dialog
    

* PDF Import: Add multipage support
    Imports multipage pdf files as svg using poppler to generate an svg file pr page.


* Use Krita toolbar in Karbon
    I copied all KoToolBox* file and KissKineticScroller (renamed to KoKineticScroller) from Krita repo.

Stage:
------
* Add automatic slide transition
    Introduces 2 modes for slide transitions:
    Manual: Slide transition and animations must be activated manually (any page effect is always run)
    Automatic: Slide transition included page effects and animations is activated automatically after a user selectable time.
    
* Fix animation of sequential- and parallel animations

* Add show/hide page margins



Flow:
-----
* Retire flow, not needed since karbon can do it all
    Since karbon is multipage app and stencils docker can be used by all apps,
    there is no need for flow anymore.


General:
--------
Author: Andrew den Exter <andrew.den.exter at jollamobile.com>
    Don't allow an unrecognized child element to block loading of a shape plugin.
    
    Summary:
    If an object element has child elements but no shape plugin can be resolved for any of them fall back to trying to create a plugin from the root element.
    
    This guards against cases like the snippet below where an experimental tag has been embedded in an element which would have otherwise correctly loaded the charts plugin.
    
    <draw:object draw:notify-on-update-of-ranges="Лист1.B2:Лист1.B12" xlink:href="./Object 1" xlink:type="simple" xlink:show="embed" xlink:actuate="onLoad">
      <loext:p />
    </draw:object>

* Fix line percentage height
    
* Fix Bug 381341 - Crash opening large doc file 
    [textlayout] Don't enter infinite loop when table is misfit

* Fix formatting of scientific numbers
    Scientific number exponents has minmum 2 digits as default (as excel/lo calc)

* Fix undo/redo move of anchored shapes

* Check if shape is movable and update cursor and decoration accordingly

* Check if shape is resizeable and update cursor and decoration accordingly

* Check if shape is shearable and update cursor and decoration accordingly

* Check if shape rotation is allowed and update cursor and decoration accordingly

* Fix freeze in progressbar handling on startup

* Do not allow to set a readonly document to modified

* Fix illustrator image handling


Filters:
--------
CSV:
----
Author: Guo Yunhe <guoyunhebrave at gmail.com>
    CSV characters should not be translated
    
    Summary: These characters are used in CSV format and should not change. So they should not be translated. What's more, `\r` will cause warning in GNU Gettext.
    
    Reviewers: #calligra:_3.0, danders, mecir!, boemann
    
    Reviewed By: #calligra:_3.0, danders, boemann
    
    Subscribers: boemann, Calligra-Devel-list, anthonyfieroni
    
    Tags: #calligra:_3.0
    
    Differential Revision: https://phabricator.kde.org/D7946

RTF:
----
Author: Pekka Vuorela <pekka.vuorela at jolla.com>
    Use RTF default color as default Qt format
    
    Summary:
    RTF spec says a color entry without anything defined is a "default
    color", but doesn't specify more what that is. In practice seems to
    work nicer now when such a default color is e.g. used to clear a
    previously set text background color. Earlier version resulted in
    black background and black text.

Author: Pekka Vuorela <pekka.vuorela at jolla.com>
    Mark \shp and \shpinst as supported control words on rtf reader
    
    Summary:
    The destination don't get specific handling at the moment, but might
    contain images etc. Suppose it's lesser bad to show them even without
    all the properties read than to omit them.
    
    Some other control words are in similar way marked as supported but
    without destination handler class.


Author: Mikhail Philippov <m.filippov at omprussia.ru>
    Display figure brackets in plain text
    
    Summary: RTF files can contain text with figure brackets, i.e. C++ code. This fix mentions the case when figure brackets should be handle as plain text and not as a token of the beginning or ending of the group of control words.

    Author: Pekka Vuorela <pekka.vuorela at jolla.com>
    Better charset, unicode and image support for RTF files
    
    Summary:
    Combining work from Andrew den Exter and Mikhail Filippov.
    Supports better different encodings, images and unicode literals.
    Also added handling for \line.

Author: Pekka Vuorela <pekka.vuorela at jolla.com>
    Add support for strikeout text in RTF documents

PPT:
----
Author: David Llewellyn-Jones <david at flypig.co.uk>
Date:   Wed Nov 20 11:47:17 2019 +0200

    Relax TextPFRun validation to allow LibreOffice PPT import
    
    Summary:
    This change allows non-conforming LibreOffice PPT files to be imported.
    
    An apparent bug in the LibreOffice PPT exporter makes it output files
    which technically don't conform to the PPT specification. Calligra
    refuses to load these files, which although technically may be the
    correct behaviour, is extremely annoying for the user. LibreOffice's
    deviation from the PPT spec is pretty minor, and a slight weakening of
    Calligra's validation allows the files to be imported successfully.
    
    In more detail, when loading a drawing each text paragraph in the
    drawing has a TextPFRun structure ("A structure that specifies the
    paragraph-level formatting of a run of text"). This starts with a mask,
    followed by a sequence of fields. Only unmasked fields are included in
    the sequence.
    
    According to Section 2.9.45 of the PPT specification version 6 [1], the
    following fields must be masked out:
    
    masks.leftMargin
    masks.indent
    masks.defaultTabSize
    masks.tabStops
    
    In spite of this LibreOffice includes the leftMargin and indent fields
    (flags 0x100 and 0x400). I'm not familiar with the LibreOffice codebase,
    but it looks like this is the problem code. From this same code it look
    like LibreOffice doesn't export the defaultTabSize or tabStops fields
    (which is correct).
    
    This patch loosens Calligra's validation to allow these flags to be set.
    It applies the change in binschema [2] for the same reason used to
    generate the Calligra parser files (see binschma commit
    aca4fd06f1ad330ecadf05b9e862d7c91338f051).
    
    [1] https://docs.microsoft.com/en-us/openspecs/office_file_formats/ms-ppt
    [2] https://phabricator.kde.org/source/binschema/
    
    Test Plan:
    1. Save out a file from LibreOffice in PPT format, or download [[ http://www.flypig.co.uk/dnload/dnload/other/calligra-importppt.zip | this archive ]] with a test file inside.
    2. Attempt to load the file into Calligra Stage.
    3. Note that it refuses to load with the error "Invalid file format".
    4. Apply the patch.
    5. Attempt to load the same file again.
    6. Note that it loads correctly. If you used my test file, witness my amazing presentation design.
    

Visio:
------
Author: Dag Andersen <danders at get2net.dk>
    Visio filter: make it work with some file versions.
    
    Versions 2002 and 2013 test ok, 2010 fails.
    Note: Bugs elsewhere so not loaded completely perfect.

Excel:
------
Author: Andrew den Exter <andrew.den.exter at jollamobile.com>
    Read xlsx drawing dimensions from the xdr:ext element if available.
    
    Summary: Read the size of a single cell anchored drawing from the xdr:ext element. The only real difference from the a:ext element is the namespace but that means the existing read_ext function fails reading xdr:ext and a new one can't be added without clashing so the logic is included inline instead of utilizing the usual macros.

Author: Andrew den Exter <andrew.den.exter at jollamobile.com>
    Don't drop number styling information from xlsx cell formats which start with a currency symbol.


Author: Andrew den Exter <andrew.den.exter at jollamobile.com>
    Don't double format spreadsheet currency values with custom format strings.
    
    Summary: If there is a format string for a currency value only format the number and let the format string append or prepend the appropriate currency symbol.

Author: Andrew den Exter <andrew.den.exter at jollamobile.com>
    Fix incorrect conditional styling of spreadsheet cells.
    
    Summary:
    Include the conditions default style when comparing equality and calculating the hash to reduce instances of false equivalency.
    
    Then remove the QMap index cache since sorting on a hash an item may still produce unstable results in the somewhat unlikely case of a hash collision and it's going to take a lot of items before building and searching the map starts to be less expensive than a linear scan.

Author: Andrew den Exter <andrew.den.exter at jollamobile.com>
    Extract images from excel files which omit the FtCF entry.
    
    Summary: The specification says it and the flags entry must exist if the object type is picture but appears to not be true of some files. Since there's no essential information there add a basic check for the field id and if it not what is expected skip parsing of that field without invalidating the entire object.

Author: David Llewellyn-Jones <david.llewellyn-jones at jolla.com>
    Asign correct column width when importing XLS file
    
    Summary:
    When importing an Excel 97-2003 .xls file (using the excel importer) the column widths don't match those from the file exported from Excel (or LibreOffice). Moreover, the widths of the columns depend on the dpi of the device in use, even though this doesn't affect the contents of the cells.
    
    For any screen that is higher than 96 dpi the columns will be too narrow and cell contents are likely to be truncated.
    
    This patch fixes the issue so that the correct column widths are assigned. As far as I can tell, this is the only situation where QWidget.physicalDpiX() is being explicitly used in the code.
    
    http://www.flypig.co.uk/dnload/dnload/other/calligra-column-widths.zip
    





Author: Carl Schwan <schwancarl at protonmail.com>
    Improve KoModeBox display in horizontal Mode
    
    Summary:
    Use less vertical space, don't change anything in vertical Mode
    
    **Screenshots:**
    
    New: {F6611376}
    Old:{F6611377}
    
    Test Plan:
    Compile, run, no bug found yet :D.
    
    Note: I wasn't able to run calligra with master (crash at startup) so this work isn't tested with master and only the calligra/3.1 branch
    
    Reviewers: #calligra:_3.0, #vdg, boemann
    
    Reviewed By: #vdg, boemann
    
    Subscribers: danders, boemann, anthonyfieroni, abetts, ngraham, Calligra-Devel-list
    
    Tags: #calligra:_3.0
    
    Differential Revision: https://phabricator.kde.org/D18963

Stencils:
---------
Author: Dag Andersen <danders at get2net.dk>
    Activate stencils docker in all apps
    
    Summary:
    The docker now loads in separate thread and is hidden by default,
    so does not have any performance impact and is non-intrusive.
    
    From a user perspective (me):
    Why words: My weapon of choice to create a flow chart is words,
    because of things like headers/footers and even TOC.
    


Author: Dag Andersen <danders at get2net.dk>
    StencilBoxDocker: Do not show by default

Author: Dag Andersen <danders at get2net.dk>
    StencilsBoxDocker: Load stencils in separate thread, to not impact app startup time

Author: Dag Andersen <danders at get2net.dk>
    ConnectionTool: Fix creation of connections and handle undo
    
    1) Bundle connection creation in one "Create Connection" command.
    2) Handle removal of the connection shape by listening to shapeRemoved() signal.

Author: Dag Andersen <danders at get2net.dk>
    KoConnectionShape: Do not create a path when all handles point to the same point
    
    Test: Create a connection, undo.
    A line of 20 points is left.

Author: Dag Andersen <danders at get2net.dk>
    Stencils: Fix invalid odf in database.odg
    
    This caused the database shape to move on save/load

TableShape:
-----------
Author: Dag Andersen <danders at get2net.dk>
    Disable build of sheets tableshape
    
    It has been obsoleted by the implementation of text tables,
    and needs to be rewritten to save/load as ole object.

Author: Niccolò Venerandi <niccolo.venerandi at gmail.com>
Bug 399569 - Descriptions for DEC2BIN/OCT2BIN/HEX2DEC/HEX2BIN do not mention input number system
    Made descriptions for DEC2BIN/OCT2BIN/HEX2DEC/HEX2BIN mention input number system

Callouts:
---------
Author: Dag Andersen <danders at get2net.dk>
    Callout: Improve ui (resize/rotate)

Author: Dag Andersen <danders at get2net.dk>
    Proper fix for LOs inverted rotate/skew angle and wrong default unit

Author: Dag Andersen <danders at get2net.dk>
    Callout: "Fix" rotation of callouts
    
    FIXME: There are interop problems with sheared enhanced-path shapes in general.


Marble:
-------
Author: Dag Andersen <danders at get2net.dk>
    Disable Marble for now. Let's see if calligra compiles for windows

Annotation:
-----------
Author: Dag Andersen <danders at get2net.dk>
    AnnotationShape: Disable all not allowed interactions

Author: Dag Andersen <danders at get2net.dk>
    Annotation: Block adding comment to an annotation shape
    
    Summary:
    To reproduce crash:
    1) Add a text shape
    2) Add an annotation shape
    3) Activate the annotation shape
    4) Select the Shape Handling tool
    5) Select both shapes; first annotation shape then the text shape
    6) Select the text tool: The caret should now be in the annotation tool
    7) Hit CTRL-SHIFT C to add a comment -> crash
    
    TODO: Find out why disabling insert_annotation action is not working
    
    Closes T4902



Author: Damien Caliste <dcaliste at free.fr>
    Try to avoid segfaults on shape factory not found
    
    Try to catch every pattern of KoShapeRegistry::instance()->value()
    in the code and check the return pointer before using it.
    
    It's a follow-up of https://phabricator.kde.org/D15679.
    
    Reviewed By: boemann
    
    Differential Revision: https://phabricator.kde.org/D15728



Bug 379255 - Opening a docx file 

    Extend table lifetime


Author: Anthony Fieroni <bvbfan at abv.bg>
    [Style] Default sheets to white background





Shapes:
-------

* EnhancedPathShape: Fix Bug 334608 - Rectangle with rounded corners turns into square 
    Keep correct aspect ratio of shapes in odf files

* SvgShapes: Fix loading of shapes created with SvgShapeFactory
    Atributes like anchoring was not loaded and thus the shape was never made visible in Words.

* TextShape: Handle stroke (not only border) in root area provider


* PictureShape: Fix crash when atempting to load unknown binary data 
    Always create an image, or else it crashes later


Chart:
------

Common:
* Only x axes can be attached to multiple diagrams

* Only bar charts can be vertical

* Fix marker symbols
    Marker symbols were mixed up with value-label-symbol.

* Remove 'Show Symbol' from ui for charttypes without symbols

* Enable chart tool also when any of the chartshape children is selected

* Paint decoration when chart tool is active to make it clear which shape the tool is connected to

* Fix Bug 420328 - Layout does not handle axis titles on the same side of the plotarea

* Fix Bug 420292 - Axis titles not rotated when plot area rotated

* Fix Bug 420290 - Setting dataset chart type is not undoable

* Fix Bug 240520 - No axes lines when creating new chart
    
* Fix Bug 420151 - Legend does not respect dpi settings

* Fix Bug 420145 - Legend is not printed properly

* Layout title, subtitle, footer shapes center aligned by default

Bar:
* Handle gaps as properties of Y-axes only as specified in odf 1.2
    This means we can have individual gaps per y-axis (if multiple y-axes)
    
* Only save gaps in styles used by y-axis

* Set axis positions correct also for vertical charts

* Show Axis Labels ui added

* Enable bar chart orientation

Stock:
* Implement stock chart sub types

Scatter:
* Improve label handling

* Fix tooltips

Pie and Ring:
* Save/load pie/ring attributes

* LO needs ring chart datasets class to be circle

Radar:
* Add radar chart config widget


More information about the calligra-devel mailing list