diff --git a/CHANGELOG.md b/CHANGELOG.md index 782f981..4759548 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,7 +4,12 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/) and this project adheres to [Semantic Versioning](https://semver.org/). +## [1.4.5] - 2021-09-28 +### Fixed +- Firefox did not load custom fonts properly. + ## [1.4.4] - 2021-08-06 +### Changed - If `googleFonts` contains a non existing font, silently ignore the font. ## [1.4.3] - 2021-06-09 diff --git a/dist/jquery.fontpicker.js b/dist/jquery.fontpicker.js index 2c1e287..d501d2c 100644 --- a/dist/jquery.fontpicker.js +++ b/dist/jquery.fontpicker.js @@ -4,7 +4,7 @@ * Made by Arjan Haverkamp, https://www.webgear.nl * Copyright 2020-2021 Arjan Haverkamp * MIT Licensed - * @version 1.4.4 - 2021-08-06 + * @version 1.4.5 - 2021-09-28 * @url https://github.com/av01d/fontpicker-jquery-plugin */ @@ -5384,15 +5384,19 @@ switch(type) { case 'google': - var url = 'https://fonts.googleapis.com/css?family=' + font.replace(/ /g,'+') + ':' + this.options.googleFonts[font].variants + '&display=swap'; this.options.debug && console.log('Loading Google font ' + font + ' from ' + url); + var url = 'https://fonts.googleapis.com/css?family=' + font.replace(/ /g,'+') + ':' + this.options.googleFonts[font].variants + '&display=swap'; $('head').append($('', {href:url, rel:'stylesheet', type:'text/css'})); break; case 'local': - var hasFontAPI = 'fonts' in document && 'check' in document.fonts; - if (!hasFontAPI || !document.fonts.check('11pt ' + font)) { - this.options.debug && console.log('Loading local font ' + font); + this.options.debug && console.log('Loading local font ' + font); + if ('FontFace' in window) { + new FontFace(font, "url('" + this.options.localFontsUrl + font + ".woff')").load().then(function(font) { + document.fonts.add(font); + }); + } + else { $('head').append(""); } break; diff --git a/dist/jquery.fontpicker.min.js b/dist/jquery.fontpicker.min.js index d7b4565..1eb5474 100644 --- a/dist/jquery.fontpicker.min.js +++ b/dist/jquery.fontpicker.min.js @@ -179,28 +179,28 @@ localFonts:"Local fonts",googleFonts:"Google fonts",select:"Select",styles:"styl search:"Suchen",allLangs:"Alle Sprachen",favFonts:"Favorisierte Schriftarten",localFonts:"Lokale Schriftarten",googleFonts:"Google Schriftarten",select:"W\u00e4hlen",styles:"stile",sampleText:"Vogel Quax zwickt Johnys Pferd Bim.",sampleTextEditable:"Beispieltext, editierbar"},es:{selectFont:"Seleccionar fuente",search:"Buscar",allLangs:"Todos los idiomas",favFonts:"Fuentes favoritas",localFonts:"Fuentes locales",googleFonts:"Fuentes de Google",select:"Seleccionar",styles:"estilos",sampleText:"La cig\u00fce\u00f1a tocaba cada vez mejor el saxof\u00f3n y el b\u00faho ped\u00eda kiwi y queso", sampleTextEditable:"Texto de ejemplo, editable"},fr:{selectFont:"Selectionner une police",search:"Rechercher",allLangs:"Toutes les langues",favFonts:"Polices favorites",localFonts:"Polices locales",googleFonts:"Polices Google",select:"Selectionner",styles:"Styles",sampleText:"Le vif renard brun saute par-dessus le chien paresseux.",sampleTextEditable:"Texte d'exemple, \u00e9ditable"}},E={lang:"en",variants:!0,nrRecents:3,lazyLoad:!0,debug:!1,localFontsUrl:"/fonts/",parentElement:"body",localFonts:{Arial:{category:"sans-serif", variants:"400,400i,600,600i"},"Courier New":{category:"monospace",variants:"400,400i,600,600i"},Georgia:{category:"serif",variants:"400,400i,600,600i"},Tahoma:{category:"sans-serif",variants:"400,400i,600,600i"},"Times New Roman":{category:"serif",variants:"400,400i,600,600i"},"Trebuchet MS":{category:"sans-serif",variants:"400,400i,600,600i"},Verdana:{category:"sans-serif",variants:"400,400i,600,600i"}}},H=function(){function n(a,b){if(b.googleFonts&&Array.isArray(b.googleFonts)){for(var d={},e, -f=0;f",{href:a,rel:"stylesheet",type:"text/css"}));break;case "local":"fonts"in document&&"check"in document.fonts&&document.fonts.check("11pt "+b)||(this.options.debug&&console.log("Loading local font "+b),c("head").append(""))}},showSample:function(a){c(".fp-sample", -this.$element).css({fontFamily:"'"+a.data("font-family")+"'",fontStyle:a.data("font-italic")?"italic":"normal",fontWeight:a.data("font-weight")||400})},keyDown:function(a,b){function d(e){e.preventDefault();e.stopPropagation()}b=c("li.fp-active:visible",this.$results);if(49<=a.keyCode&&57>=a.keyCode||97<=a.keyCode&&105>=a.keyCode)d(a),c(".fp-pill[data-font-weight="+100*(a.keyCode-(97<=a.keyCode?96:48))+"]",b).trigger("click");else switch(a.keyCode){case 73:d(a);c(".fp-pill.italic:visible",b).trigger("click"); -break;case 38:d(a);$prevLi=b.prevAll(":not(.fp-divider):visible:first");0==$prevLi.length&&($prevLi=c("li:not(.fp-divider):visible:last",this.$results));$prevLi.trigger("mouseenter").trigger("click");t($prevLi[0]);break;case 40:d(a);$nextLi=b.nextAll(":not(.fp-divider):visible:first");0==$nextLi.length&&($nextLi=c("li:not(.fp-divider):visible:first",this.$results));$nextLi.trigger("mouseenter").trigger("click");t($nextLi[0]);break;case 13:d(a);c("li.fp-active",this.$results).find("button.apply").trigger("click"); -break;case 27:d(a),c(".fp-close",this.$modal).trigger("click")}},mouseEnter:function(a,b){a=c(b);c("li.fp-hover",this.$results).removeClass("fp-hover");a.addClass("fp-hover");this.loadFont(a.data("font-type"),a.data("font-family"));this.showSample(a)},click:function(a,b){var d=c(b),e=this,f=d.data("font-type"),g=d.data("font-family"),l=d.data("font-italic")||!1,k=d.data("font-weight")||400,p=c("li[data-font-family='"+g+"']",this.$results),v=(a=m("favs"))?a.split(","):[];c("li.fp-active",this.$results).removeClass("fp-active").find(".fp-variants,.fp-btns").remove(); -d.addClass("fp-active");a=c('
');b=-1!=v.indexOf(f+":"+g);a.append(c('').on("click",function(h){h.stopPropagation();h=v.indexOf(f+":"+g);c(this).is(".checked")?-1!=h&&v.splice(h,1):-1==h&&v.push(f+":"+g);c(this).toggleClass("checked");m("favs",v.join(","))}),c('