1. 21 May, 2019 1 commit
  2. 20 May, 2019 3 commits
    • Dmitry Kazakov's avatar
      One more try to fix restriction for adding masks to the root layer · ad31625e
      Dmitry Kazakov authored
      We should not allow adding a mask to normal root layers. It makes
      painters confused. But for clipboard contents is it perfectly okay,
      so just add an option for it.
      
      It the previous version the check for the presence of a global
      selection mask was incorrect.
      
      BUG:397796
      BUG:407375
      BUG:407665
      
      BACKPORT:krita/4.2
      ad31625e
    • Anna Medonosová's avatar
      Fix gamut masks in advanced color selector · 57ce1ba5
      Anna Medonosová authored
      Commit 8441c26f introduced a bug into gamut mask handling in the
      advanced color selector: the mouse position used to determine if a color
      is selectable is not correctly adjusted, that causes a mismatch between
      shapes shown on the wheel (which are correct) and selectable area.
      
      BACKPORT:krita/4.2
      57ce1ba5
    • Tusooa Zhu's avatar
      Fix misleading comments in kis_shared_ptr.h · e2a6cdf0
      Tusooa Zhu authored
      The comments used to compare KisSharedPtr to QSharedDataPointer, which
      are actually two different things. KisSharedPtr is similar in functionality
      to QSharedPointer, not QSharedDataPointer.
      e2a6cdf0
  3. 18 May, 2019 4 commits
  4. 17 May, 2019 6 commits
  5. 16 May, 2019 16 commits
    • Dmitry Kazakov's avatar
      Add a workaround for reinitializing rotation/mirroring options after reloading the preset · 75699143
      Dmitry Kazakov authored
      Ideally, we should not store this data in the preset itself. Then we
      would not need these hacks. But we store it...
      
      BUG:392622
      75699143
    • Dmitry Kazakov's avatar
      Recover forbidding rule for adding masks to the root layer · ad364993
      Dmitry Kazakov authored
      We shoould not allow adding a mask to normal root layers. It makes
      painters confused. But for clipboard contents is it perfectly okay,
      so just add an option for it.
      
      BUG:397796
      ad364993
    • Dmitry Kazakov's avatar
      Fix updates of the node progress bar · fb226d07
      Dmitry Kazakov authored
      We should never use raw QTimer for compressing events. Use proper
      KisSignalCompressor instead.
      
      BUG:407553
      BACKPORT:krita/4.2
      fb226d07
    • Dmitry Kazakov's avatar
      Fix drawing of progress bars in the layers docker · e9ce7d9f
      Dmitry Kazakov authored
      BUG:407553
      BACKPORT:krita/4.2
      e9ce7d9f
    • Boudewijn Rempt's avatar
    • Tusooa Zhu's avatar
      Add a dialog to change the source of clone layers · e0dec404
      Tusooa Zhu authored
      This commit adds an action named `Set Copy From' to the context menu
      of the Layers Docker, if one or more clone layers are selected. The
      action pops up a dialog that can change the `Copy From' property of
      selected clone layers.
      
      The dialog previews the changes to these layers.
      If there is any change to the document when the dialog is open, the
      changes in the dialog will be applied and the dialog closed.
      e0dec404
    • Dmitry Kazakov's avatar
      Fix logic of the stroke lifetime in QMic · 57686d84
      Dmitry Kazakov authored
      We shouldn't try to end the same stroke multiple times. The patch
      also makes sure KisProcessingApplicator is owned by a scoped pointer
      instead of manual handling.
      
      BUG:407520
      57686d84
    • Boudewijn Rempt's avatar
      292b1db1
    • Boudewijn Rempt's avatar
      Set the document we created from a template to read/write · 31bc4049
      Boudewijn Rempt authored
      If the template is in a read-only folder (like an installation
      location) the document would be set to ReadOnly, which is wrong.
      
      BUG:393112
      31bc4049
    • Dmitry Kazakov's avatar
      Fix assert when manipulating animation frames · db811bc8
      Dmitry Kazakov authored
      Every frame add/move/delete command issues canvas updates. We shouldn't
      let these updates to run until all manipulations with m_frames are
      finished. Otherwise there will be non-thread-safe access to frames
      storage.
      
      BUG:405723
      db811bc8
    • Boudewijn Rempt's avatar
      debug-- · 839ef093
      Boudewijn Rempt authored
      839ef093
    • Boudewijn Rempt's avatar
      Add a legacy zip store that uses KArchive · 2ce21f05
      Boudewijn Rempt authored
      KArchive's KZip cannot read all files that Quazip saves. This is
      a bug in KArchive, but it breaks older versions of krita that
      cannot load some files saved in 4.2 anymore. So, only use quazip
      if 64 bits saving is enabled.
      
      CCBUG:407537
      2ce21f05
    • Boudewijn Rempt's avatar
      Set version to beta · 9b26df47
      Boudewijn Rempt authored
      9b26df47
    • Dmitry Kazakov's avatar
      Add workaround for handling table press correctly in WinInk mode · d684bc55
      Dmitry Kazakov authored
      Original problem: widgets do not get synthesized mouse-down and
      mouse-press events until the stylus is released
      
      Reason: if the app accepts the event, WndProc should report
      that to the system (by returning true). This is the only way to
      prevent Windows from starting some system-wide gestures, like
      click+hold -> right button click. If we ignore the event, then
      OS postpones all synthesized mouse events until the entire gesture
      is completed.
      
      The patch implements a "hackish" workaround for the original problem
      by using the following rules:
      
      1) All tablet-move events are ignored (without synthesized mouse events
         OS doesn't generate any Enter/Leave events)
      
      2) All not-accepted tablet press- and release-events and also reported as
         ignored (without it D&D doesn't work).
      
      3) All accepted tablet press- and release-events are reported as "accepted",
         **but** we artificially synthesize mouse events for them.
      
      TODO: there are still two problems:
      
      1) Perhaps this synthesizeMouseEvent() is not needed at all. But we should
         first check if Qt relies on these synthesized messages anywhere in the
         code or not.
      
      2) If we still keep synthesizeMouseEvent(), then it should fetch actual
         tablet buttons from QGuiApplicationPrivate::tabletDevicePoint(). Right
         now it always synthesizes left-click, whatever the button was pressed/
         released.
      
      CCBUG:406668
      d684bc55
    • Dmitry Kazakov's avatar
      Fix using tablet on QML widgets · 8dd4d8b9
      Dmitry Kazakov authored
      In previous versions of Qt (wintab impeplementation) the events were
      marked by Qt::MouseEventSynthesizedBySystem flag only when they were
      synthesized from touch, not from tablet events. This is what
      QWindowsTabletSupport does and what QQuickWindow expects (it
      filters out all synthesized events). This patch recovers the old behavior
      for the new QWindowsPointerHandler tablet API implementation.
      
      CCBUG:406668
      8dd4d8b9
    • Ivan Yossi's avatar
      Packaging macOS: fix build step buildtarball · 7bc375b6
      Ivan Yossi authored
      7bc375b6
  6. 15 May, 2019 5 commits
  7. 14 May, 2019 5 commits