Hi, On Fri, Dec 22, 2017 at 12:52 AM, Michael Meeks <michael.me...@collabora.com> wrote: > > * Blurry icons (Heiko) > + a PNG issue for hidpi screens. > + why not use SVG icons instead ? > + quikee wrote some code to render SVG icons (Kendy) > + need to look into what the state is
There are 2 issues currently: - SVG import doesn't correctly interpret what should happen when "height" and "width" aren't set but just "viewBox", so many SVG icons aren't rendered correctly. I have a fix for that, but need to write a test too. - When using GTK3 we use the cairo HiDPI scaling instead of handling that ourselves. The issue is that rendering bitmaps need to support that too, which we don't. For example if we have an icon 24x24 px which is rendered to 48x48 actual px from SVG (2x HiDPI scaling) must still pretend to be 24x24 px and drawn to a 24x24 px area on a cairo surface (cairo surface uses non-scaled size and just internally scales them to 2x the size) . So our "Image" class must know something about scaling to draw the icons correctly in this case. I have made a crude POC and it worked, but not yet ready for production. > + adds some startup-time potentially. > + need to measure startup impact. SVG icons are on demand rendered and then cached to PNG in profile "cache" folder. So the rendering impact would only be for the first time an icon is used, after that the impact is the same as using a PNG icon - until the cache is cleared (which is currently never - users must do it themselves). > + SVG renderer we have is not the fastest in the world (Thorsten) > + with some caching – in a good shape. > + thought it was solved ? Just switching. > => ask quikee what he recommends. When those 2 bugs are solved, all we need to do is package the SVG icons. At least breeze_svg icons work as they are very simple. Others (elementary for example) could render wrongly, I didn't try it yet. OTOH some Tango SVG icons did crash the renderer so currently we always prefer PNG icon over SVG if both are present (like in Tango) and the icon theme must be a pure SVG themes (with no PNG present in the zip file) if SVG would be used. Regards, Tomaž _______________________________________________ LibreOffice mailing list LibreOffice@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice