Allow PNG SVG for Themes, Toolbars, Tab Bar, Panels and Buttons
-
Allow to pick custom png/svg to theme toolbar area for near UI elements. This will reduce modding amount.
SVG - even in their path forms - is better as can follow UI theme (which is better for patterns) while png with alpha transparency is better for images and backgrounds (even this can follow theme settings).Few notes about this:
- Status bar on top won't work in 2.4. If you are interested upvote this request. Is also not not possible anymore to have a background image for status bar (which lacks few class to do that).
- Button styling may not work in 2.4. See this other mod for that.
- Most colors/shades/images/buttons seen here are actually mods.
- Some areas should be left unthemed: skins/themes shouldn't make unreadble any text/button ever.
- Background image around menubar text area is bad. I fixed this after the screenshot.
- Theming could be extended to other areas - like the tab bar or the panels, but as colorizations are different it will take a bit to a full implementation.
-
Also useful for Speed Dial Thumbnails.
-
SVG is very insecure and dangerous format because it's interpreted XML so I guess it's hard for safe implementation
It is relatively easy to sideload something inside like JavaScript, etc.
https://bjornjohansen.no/svg-in-wordpress
https://www.owasp.org/index.php/XSS_Filter_Evasion_Cheat_Sheet#You_can_EMBED_SVG_which_can_contain_your_XSS_vector
etc... -
@rotfl It should be also safe, of course.
The UI should reject everything under<script>
,<embed>
allowing only a small subset of svg/xml elements for modding purpose -- as rect, circle, path, g, ... -
Why not just use png images? Is there a problem with that?
-
@Streptococcus SVG images are scaleable so more suitable for high resolution displays. To test, set the UI Zoom to 300% and compare Vivaldi's toolbar buttons (SVG) with the Favicons on tabs.
-
So if the interface is zoomed, will the png images not change size, or will they just look terrible?
-
@Streptococcus I think they'll be zoomed (i. e. look terrible after some effort). Let's wait till this is implemented and we'll see
-
-
-
@LonM I guess we can consider this as done