1. 04 Mar, 2018 2 commits
  2. 27 Feb, 2018 1 commit
  3. 06 Feb, 2018 1 commit
    • Matthias Clasen's avatar
      The big versioning cleanup · 4c150d8e
      Matthias Clasen authored
      Remove all the old 2.x and 3.x version annotations.
      GTK+ 4 is a new start, and from the perspective of a
      GTK+ 4 developer all these APIs have been around since
      the beginning.
      4c150d8e
  4. 03 Feb, 2018 1 commit
    • Benjamin Otte's avatar
      rendernode: Don't alloca() 8MB · 83a687f8
      Benjamin Otte authored
      This happens when deserializing testcases and it really confuses
      valgrind into thinking we're longjmp()ing.
      
      And deserializing rendernodes is slow anyway, so who cares about a few
      more malloc()s.
      83a687f8
  5. 17 Jan, 2018 1 commit
  6. 14 Jan, 2018 1 commit
    • Matthias Clasen's avatar
      gsk: make logging per-renderer · c5641981
      Matthias Clasen authored
      Add a setter for per-renderer debug flags, and use
      them where possible. Some places don't have easy access
      to a renderer, so this is not complete.
      Also, use g_message instead of g_print throughout.
      c5641981
  7. 05 Jan, 2018 1 commit
  8. 03 Jan, 2018 1 commit
  9. 04 Nov, 2017 1 commit
  10. 03 Nov, 2017 1 commit
  11. 27 Oct, 2017 1 commit
    • Matthias Clasen's avatar
      gsk: Make text nodes more compact · ea91ab1d
      Matthias Clasen authored
      The copy of the PangoGlyphString we do here was showing up
      in some profiles. To avoid it, allocate the PangoGlyphInfo array
      as part of the node itself. Update all callers to deal with
      the slight api change required for this.
      ea91ab1d
  12. 23 Oct, 2017 1 commit
  13. 20 Oct, 2017 3 commits
  14. 10 Oct, 2017 1 commit
  15. 08 Oct, 2017 1 commit
  16. 30 Sep, 2017 1 commit
  17. 29 Sep, 2017 1 commit
    • Matthias Clasen's avatar
      gsk: Fix a typo · 9e2e6c11
      Matthias Clasen authored
      Repeating linear gradient nodes share most of the implementation
      with linear gradient nodes, but they shouldn't share the class name.
      9e2e6c11
  18. 25 Sep, 2017 2 commits
  19. 21 Sep, 2017 2 commits
  20. 10 Sep, 2017 1 commit
    • Matthias Clasen's avatar
      More work on text nodes · b0e8d848
      Matthias Clasen authored
      This commit takes several steps towards rendering text
      like we want to.
      
      The creation of the cairo surface and texture is moved
      to the backend (in GskVulkanRenderer). We add a mask
      shader that is used in the next text pipeline to use
      the texture as a mask, like cairo_mask_surface does.
      There is a separate color text pipeline that uses the
      already existing blend shaders to use the texture as
      a source, like cairo_paint does.
      
      The text node api is simplified to have just a single
      offset, which determines the left end of the text baseline,
      like all our other text drawing APIs.
      b0e8d848
  21. 04 Sep, 2017 1 commit
  22. 03 Sep, 2017 1 commit
  23. 02 Sep, 2017 1 commit
    • Matthias Clasen's avatar
      gsk: add a has_color boolean to text nodes · 440e5340
      Matthias Clasen authored
      Currently, this information is not used since cairo_show_glyphs
      deals with color glyphs for us. But when we get to uploading
      glyphs to a texture atlas, we will need it to do the right thing.
      
      We don't look at individual glyphs here, but just whether the
      font has the has-color flag set. In practice, all glyphs in
      such a font will be color glyphs, and we can avoid loading all
      the glyphs this way.
      440e5340
  24. 01 Sep, 2017 1 commit
    • Matthias Clasen's avatar
      Add a render node for text · 4975aa79
      Matthias Clasen authored
      This is just a wrapper around a PangoGlyphString + PangoFont.
      Basically, the arguments that are passed to pango_renderer_draw_glyphs.
      4975aa79
  25. 29 Aug, 2017 1 commit
  26. 28 Aug, 2017 2 commits
  27. 03 Aug, 2017 1 commit
  28. 27 Mar, 2017 2 commits
  29. 18 Jan, 2017 1 commit
  30. 11 Jan, 2017 1 commit
  31. 01 Jan, 2017 2 commits
  32. 31 Dec, 2016 1 commit
    • Benjamin Otte's avatar
      gsk: Add GskColorMatrixNode · 7540702c
      Benjamin Otte authored
      This node essentially implements the feColorMatrix SVG filter. I got the
      idea yesterday after looking at the opacity implementation.
      
      It can be used for opacity (not sure if we want to) and to implement a
      bunch of the CSS filters.
      7540702c