1. 31 May, 2017 1 commit
  2. 29 May, 2017 6 commits
  3. 23 May, 2017 5 commits
  4. 22 May, 2017 1 commit
    • Dmitry Kazakov's avatar
      Implement basic loading of SVG text elements · fa0cf6fb
      Dmitry Kazakov authored
      The basic design is:
      
      1) Each element of the text (text, tspan) is represented with
         KoSvgTextChunkShape. This chunk stores all the information
         about this portion of the text. The properties are stored in
         KoSvgTextProperties object, that will allow us to export them
         as a markup.
      
      2) A subtree of test elements is stored in KoSvgTextShape, which
         is also a chunk.
      
      3) The main text shape accesses the internals of its chunks with
         KoSvgTextChunkShapeLayoutInterface. It encapsulates all the
         details that should not be accessed in public.
      
      4) A text chunk can be "a text" or "a node". In the latter case
         it is just an intermediate node that stores a set of children
         that actually have the text.
      
      5) The layout of the text is performed by KoSvgTextShape
      fa0cf6fb
  5. 05 May, 2017 1 commit
  6. 02 May, 2017 2 commits
  7. 01 May, 2017 4 commits
    • Dmitry Kazakov's avatar
      Fix crash when switching color-filtered layers too quickly · 561a2e83
      Dmitry Kazakov authored
      Sometimes, during the removal process, the model emits currentChanged()
      signal, which may cause a double-recursion, which causes a crash.
      
      BUG:377732
      561a2e83
    • Boudewijn Rempt's avatar
      Remove unused method · a01f9449
      Boudewijn Rempt authored
      a01f9449
    • Dmitry Kazakov's avatar
      Don't use dbgKrita in places that are used for debugging only · e29b1a5e
      Dmitry Kazakov authored
      comparePaintDevicesClever() and MeasureAvgPortion are used either in
      tests or while debugging. They are not used in any production code,
      so having to enable entire-Krita debugging to see their result is
      just wastes the time.
      e29b1a5e
    • Dmitry Kazakov's avatar
      Don't let the user close the document while saving is in progress · 3ce218ca
      Dmitry Kazakov authored
      Ideally, we should postpone closing till the saving is finished,
      but it is impossible to do right now, because doc->setModified()
      is called outside the saving lock held. Later, when we refactor
      the saving code and the modified state will be cleared under
      the lock, we can easily use KisSignalCompressor to close the
      document.
      
      The crash itself happened because the hack in KisPart::removeView()
      just skipped the deinitialization of the view and the input manager
      was still connected to the canvas that was destroyed.
      
      BUG:378538
      3ce218ca
  8. 28 Apr, 2017 6 commits
  9. 27 Apr, 2017 5 commits
    • László Fazekas's avatar
      fix CSV file saver crash · 82bcbd7b
      László Fazekas authored
      82bcbd7b
    • Boudewijn Rempt's avatar
      Remove superfluous line · da5528ed
      Boudewijn Rempt authored
      da5528ed
    • Dmitry Kazakov's avatar
      Fix writing of 16-bit transparency masks to a PSD file · 989a4797
      Dmitry Kazakov authored
      BUG:376836
      989a4797
    • Dmitry Kazakov's avatar
      Rewrite alpha colorspaces using templates and make them correct · cf54d5bd
      Dmitry Kazakov authored
      1) Non-U8 alpha color spaces were not connected to the color
         conversion system. Therefore, one couldn't convert to/from
         them any data
      
      2) The code of their methods were blindly copied from U8 color space,
         therefore all the functions (incl. toQColor/fromQColor/difference)
         just read wrong values from pointers (quint8 instead of quint16 or
         bigger).
      
      3) Now all the alpha color spaces are rewritten using a common template
         and the same code reused for all of them, with correct pointer
         conversions using KoColorSpaceMaths.
      
      4) The new color spaces are converted to the conversion system using
         existing Factory::colorConversionLinks() framework. Yes, they are
         created using factories.
      
      Open Questions:
      1) In KoColorSpaceRegistry there are some special cases about persistent
         storage of d->alphaCs and 'OwnedByRegistryRegistryDeletes' flags. I
         couldn't find any info about it, so it might be incorrect.
      cf54d5bd
    • Script Kiddy's avatar
      SVN_SILENT made messages (.desktop file) - always resolve ours · 1ac04bc1
      Script Kiddy authored
      In case of conflict in i18n, keep the version of the branch "ours"
      To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
      1ac04bc1
  10. 26 Apr, 2017 3 commits
    • Scott Petrovic's avatar
      add reset button for curve widget in brush editor. This code was reviewed as... · 53967664
      Scott Petrovic authored
      add reset button for curve widget in brush editor. This code was reviewed as part of D5559. Patch submitted by Aniketh Girish
      53967664
    • Boudewijn Rempt's avatar
      f22f9ed6
    • Boudewijn Rempt's avatar
      Update the licensing info: Krita is effectively GPLv3-only · 9d80ab01
      Boudewijn Rempt authored
      boud@thinkstation:~/dev/krita> git grep -i "version 3 as"
      libs/ui/input/wintab/qxcbconnection.cpp:** General Public License version 2.1 or version 3 as published by the Free
      libs/ui/input/wintab/qxcbconnection_xi2.cpp:** General Public License version 2.1 or version 3 as published by the Free
      libs/ui/input/wintab/qxcbconnection_xi2.h:** General Public License version 2.1 or version 3 as published by the Free
      libs/ui/qtlockedfile/qtlockedfile.cpp:** General Public License version 2.1 or version 3 as published by the Free
      libs/ui/qtlockedfile/qtlockedfile.h:** General Public License version 2.1 or version 3 as published by the Free
      libs/ui/qtlockedfile/qtlockedfile_unix.cpp:** General Public License version 2.1 or version 3 as published by the Free
      libs/ui/qtlockedfile/qtlockedfile_win.cpp:** General Public License version 2.1 or version 3 as published by the Free
      libs/ui/qtsingleapplication/qtlocalpeer.cpp:** General Public License version 2.1 or version 3 as published by the Free
      libs/ui/qtsingleapplication/qtlocalpeer.h:** General Public License version 2.1 or version 3 as published by the Free
      libs/ui/qtsingleapplication/qtsingleapplication.cpp:** General Public License version 2.1 or version 3 as published by the Free
      libs/ui/qtsingleapplication/qtsingleapplication.h:** General Public License version 2.1 or version 3 as published by the Free
      
      Or V3+
      
      git grep -i "version 3 of"
      
      libs/ui/input/wintab/kis_tablet_support_win_p.h: *  the Free Software Foundation; either version 3 of the License, or
      libs/widgetutils/kis_action_registry.cpp: *  the Free Software Foundation; either version 3 of the License, or
      libs/widgetutils/kis_action_registry.h: *  the Free Software Foundation; either version 3 of the License, or
      libs/widgetutils/xmlgui/KisShortcutsDialog_p.cpp: *  the Free Software Foundation; either version 3 of the License, or
      libs/widgetutils/xmlgui/KisShortcutsEditor_p.cpp: *  the Free Software Foundation; either version 3 of the License, or
      libs/widgetutils/xmlgui/KisShortcutsEditor_p.h: *  the Free Software Foundation; either version 3 of the License, or
      libs/widgetutils/xmlgui/kshortcutschemeseditor.h: *  the Free Software Foundation; either version 3 of the License, or
      plugins/tools/selectiontools/kis_selection_modifier_mapper.cc: * version 3 of the License, or (at your option) any later version.
      plugins/tools/selectiontools/kis_selection_modifier_mapper.h: * version 3 of the License, or (at your option) any later version
      
      Effectively, this means that Krita as a whole is now licensed under
      GPLv3 only, until we remove the bits forked from Qt; from that moment
      on, Krita as a whole is GPLv3+. The GPLv3+ code is the code contributed
      by abrahams, who hasn't been around for a long time now.
      9d80ab01
  11. 25 Apr, 2017 6 commits