From baaff7a8c33c8cef7a8b62c0f0c4a92994042d64 Mon Sep 17 00:00:00 2001 From: Jesse McDonald Date: Fri, 17 Apr 2020 16:02:57 -0500 Subject: [PATCH] add a workaround for a Safari bug that breaks the board sizing --- js/pacosako_ui.js | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/js/pacosako_ui.js b/js/pacosako_ui.js index 8cf2768..118312e 100644 --- a/js/pacosako_ui.js +++ b/js/pacosako_ui.js @@ -1068,6 +1068,26 @@ $(function (){ gun: gun, PacoSakoUUID: PacoSakoUUID, }; + + /* + * Safari uses the container's *height* instead of its *width* as + * required by W3C standards for relative margin/padding values. + * This breaks the CSS that should be ensuring a 1:1 aspect ratio. + */ + function fixSafariPadding() { + let elements = $('#cb_container, #cb_board'); + for (let element of elements) { + element = $(element); + const width = element.width(); + const topPadding = width; + element.css('padding-top', topPadding + 'px'); + } + } + + if (navigator.userAgent.indexOf('Safari') != -1 && navigator.userAgent.indexOf('Chrome') == -1) { + $(window).on('resize', fixSafariPadding); + fixSafariPadding(); + } }); /* vim:set expandtab sw=3 ts=8: */