KCanvas needs to be redesigned to fill & stroke at once This is a continuation of 6447. In the previous bug, Alexander made more progress removing crufty pieces of KCanvas (namely KCanvasRenderingStyle). However a couple things remain: 1. Update PaintServers to not paint directly, but rather have an apply(STROKE | FILL) method which applies their stoke/fill properties to the current context. 2. Change RenderPathQuartz to call CGContextDrawPath, and thus both stroke and fill a path in a single call (large perf. gain).
Created attachment 5693 [details] remove kcanvascommonargs
Created attachment 5694 [details] remove kcanvascommonargs (pass around only renderpath) new patch based on input from mjs
Comment on attachment 5694 [details] remove kcanvascommonargs (pass around only renderpath) Patch looks great, a few minor comments though: - for pointer types (such as RenderPath), the * should be next to the identifier, not the type. - The RenderPath parameter should really be const. This might require having to modify other function declarations called by the different draw implementations
Created attachment 5697 [details] new patch based on suggestions from andersca
Comment on attachment 5697 [details] new patch based on suggestions from andersca r=me