1. 03 Jul, 2022 12 commits
    • Rafał Siejakowski's avatar
      Remove the "WHOOPS" message · 1c45e0b2
      Rafał Siejakowski authored
      Remove an old debug message that used to spam stdout.
      1c45e0b2
    • VaibhavMalik4187's avatar
      Made user defined keyboard shortcuts more legible · 61df7843
      VaibhavMalik4187 authored and Nathan Lee's avatar Nathan Lee committed
      Removed the blue color of user defined keyboard shortcuts from the
      preferences. The blue color was illegible. Now the user defined keyboard
      shortcuts are in bold.
      
      Fixes: inkscape/inkscape#910
      61df7843
    • PBS's avatar
      Convert some SPItem static functions to members · e2ab3a39
      PBS authored and PBS's avatar PBS committed
      These are a holdover from C that escaped porting.
      e2ab3a39
    • PBS's avatar
      Convert SPItem::display to std::vector · 15bbf901
      PBS authored and PBS's avatar PBS committed
      This was previously a handwritten slist. Changing to vector reduces
      needless allocations and has better locality.
      
      (As these containers are both small in size and large in number, we
      opted not to use a unordered_map.)
      15bbf901
    • PBS's avatar
      Load DrawingGlyph's path/pixbuf in advance · 5f1e9a10
      PBS authored and PBS's avatar PBS committed
      Get the path/pixbuf from the FontInstance once at construction time,
      rather than on every call to update/render. Removes a multithreading
      obstacle, as FontInstance cannot be safely accessed off-main-thread.
      5f1e9a10
    • PBS's avatar
      Remove unused DrawingPattern debug option · 5261319f
      PBS authored and PBS's avatar PBS committed
      Plus a lot of very minor refactoring of pattern-related classes in
      preparation for later pattern work.
      5261319f
    • PBS's avatar
      Remove unused beststate local variables · b52dd72c
      PBS authored and PBS's avatar PBS committed
      Some local variables named "beststate" in DrawingItem are no longer used,
      so we remove them.
      b52dd72c
    • PBS's avatar
      Copy relevant data from SPStyle in DrawingItem · b1b5655b
      PBS authored and PBS's avatar PBS committed
      When a style is set on a DrawingItem, copy the variables we need
      access to out of SPStyle and into DrawingItem member variables.
      (The number of such variables is very small, so this has no cost.)
      This reduces the reliance on SPStyle from future off-main-thread code.
      
      Minor changes:
      
       * Make SPStyle refcount mutable.
       * Make various style-related methods/arguments const.
       * Some reformatting in the DrawingItem hierarchy.
      b1b5655b
    • PBS's avatar
      Change NRStyle raw pointers to vector/unique_ptr · fed524e1
      PBS authored and PBS's avatar PBS committed
      * Make NRStyle's patterns unique_ptr.
      * Make NRStyle's dashes vector.
      * Other minor reformatting.
      fed524e1
    • PBS's avatar
      Remove unused variable SPFilter::_renderer · 61d4de45
      PBS authored and PBS's avatar PBS committed
      Plus make SPFilter::_build_renderer const, now that's possible.
      61d4de45
    • PBS's avatar
      Make DrawingItem transforms unique_ptr · 7374d7c8
      PBS authored and PBS's avatar PBS committed
      Change DrawingItem transforms from raw pointer to unique_ptr.
      7374d7c8
    • Martin Owens's avatar
      Enable multi-page output in postscipt · a3446b92
      Martin Owens authored and Martin Owens's avatar Martin Owens committed
      This outputs postscript and eps formats and moves some of the key
      code out of the pdf exporter to make it more generic.
      
      The printing postscript is refactored to allow multiple pages with
      both vector and raster output options.
      a3446b92
  2. 02 Jul, 2022 2 commits
  3. 01 Jul, 2022 2 commits
    • Rafał Siejakowski's avatar
      Bugfixes in the PDF export of filters and markers · 635c6f80
      Rafał Siejakowski authored
      * Ensure that the rasterization of filter effects on PDF export gets
        triggered for clones, whenever the <use> chain contains a filtered
        item. Make sure this happens also for filtered items inside groups,
        any clones of directly filtered groups, and any nested combinations
        of these.
      * Do not directly render items inside a marker's definition, even if
        the marker is defined outside of <defs>, but do render such markers
        on paths that reference them.
      * Ensure that "context-fill" and "context-stroke" styles are respected
        even when applied to a path contained in arbitrarily nested groups
        inside a marker definition.
      
      Fixes #3214
      Fixes #3498
      Fixes #3566
      Fixes #3635
      635c6f80
    • Rafał Siejakowski's avatar
      Add three CLI tests for multipage PDF export · 65f38426
      Rafał Siejakowski authored
      These tests check the correctness of PDF export of items with filters
      and their clones when these items appear on page 2 of a multipage PDF
      file. Thus, they serve as regression tests for the referenced issues.
      
      Reference: #3214
      Reference: #3635
      65f38426
  4. 30 Jun, 2022 5 commits
  5. 29 Jun, 2022 2 commits
  6. 28 Jun, 2022 1 commit
    • Rafał Siejakowski's avatar
      PDF output: round pt drawing size up to an integer · c0fd11e8
      Rafał Siejakowski authored and Rafał Siejakowski's avatar Rafał Siejakowski committed
      PDF and PostScript documents created by Cairo specify page dimensions
      as integers (in PostScript points), so the pages in export output end
      up slightly larger than what Inkscape requests. This change gives the
      user the option to either keep the relative size of the drawing (with
      respect to the page) or to keep the absolute sizes. The new option is
      selected from the PDF export dialog.
      
      Fixes #3569
      c0fd11e8
  7. 26 Jun, 2022 4 commits
    • Rafał Siejakowski's avatar
      Fix a crash when ungrouping a "maskhelper" group · f7422188
      Rafał Siejakowski authored and Rafał Siejakowski's avatar Rafał Siejakowski committed
      Fix a segfault occurring when a "maskhelper" group is ungrouped by the
      user manually. This is achieved by preventing the temporary removal of
      masks from destroying the group prematurely which would then crash the
      actual delete code in sp_item_group_ungroup().
      
      Fixes #3616
      f7422188
    • René de Hesselle's avatar
      Update macOS build pipeline to v0.65 · 141e9c6d
      René de Hesselle authored
      Use the official numpy wheel and don't build it ourselves. This avoids
      an issue with a broken accelerator on macOS.
      Fixes #3551
      
      Update jhb to v0.15.
      141e9c6d
    • PBS's avatar
      Refactor image tracing · 7c3f7b75
      PBS authored
      Refactoring of /trace:
      
      * Bring code in line with C++/project guidelines.
      * Remove unnecessary/near-unnecessary code and classes.
      * Split out cielab.cpp.
      
      Design changes:
      
      * Foreground detection now creates its own temporary display
        tree rather than re-using that of the active desktop,
        eliminating a slight multithreading obstacle.
      * Foreground detection now rasterises the display tree rather
        than hit-testing every pixel, improving efficiency and
        allowing handling of alpha.
      
      Bugs fixed:
      
      * Instant crash when tracing image due to recent pixbuf
        immutability changes in 797be5a7. (See #3634 below.)
      * Flawed caching optimisations in siox and trace.
      * Various bugs with foreground detection.
      
      Fixes #3634.
      7c3f7b75
    • PBS's avatar
      Fix paint servers dialog sort predicate · 780b784b
      PBS authored
      This fixes the sort predicate used by the paint servers dialog to
      not return true if a == b, which on some implementations can crash
      std::sort.
      780b784b
  8. 25 Jun, 2022 1 commit
  9. 24 Jun, 2022 1 commit
    • PBS's avatar
      Make SPShape's curve immutable · e3fb503f
      PBS authored
      Ensure SPShape::_curve is immutable to allow thread-safe sharing in the future. It essentially already was -this commit just enforces that in code while cleaning up a few immutability violators, mainly in the connector tool and SPPath::set_transform.
      e3fb503f
  10. 23 Jun, 2022 2 commits
  11. 21 Jun, 2022 3 commits
  12. 19 Jun, 2022 1 commit
  13. 18 Jun, 2022 3 commits
  14. 17 Jun, 2022 1 commit