RealFaviconGenerator / realfavicongenerator

Generate favicon for all major platforms

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Only one generated "mstile" is referenced.

romulof opened this issue · comments

I've just built a new package and it has generated mstiles with the sizes:

  • 70x70
  • 144x144
  • 150x150
  • 310x150
  • 310x310

But the generated browserconfig.xml only has reference to the 150x150 one.

<?xml version="1.0" encoding="utf-8"?>
<browserconfig>
  <msapplication>
    <tile>
      <square150x150logo src="assets/icons/mstile-150x150.png"/>
      <TileColor>#844daa</TileColor>
    </tile>
  </msapplication>
</browserconfig>

And HTML snippet only has reference to browserconfig.xml.

I don't know exactly how Windows loads this files (I don't have any Windows device), but I guess it has to have some reference in the HTML or in the browserconfig.xml.

I can't reproduce the issue. I "checked everything" and I got the expected outcome:

  • The generated package contains all 5 MS tiles icons, from 70x70 to 310x310.
  • browserconfig.xml declares all Win 8.1/10 icons (ie. all icons but the 144x144 icon, which is for Win 8.0)
  • mstile-144x144.png is declared in the generated HTML.

Do I miss something?

@phbernard I'm able to reproduce. The behavior is different between the zip file downloaded from the website and what's generated by rfg-api. In both cases all 5 icons are generated whether the corresponding checkboxes are checked or not. But there are differences in what's getting stuffed into browserconfig.xml:

  • website zip file: contains only references to the files that were checked
  • rfg-api: contains references to all 4 image files (checkboxes are being ignored)

rfg-api contains logic to convert the settings from camelCase to underscores, resulting in the following data being sent with the API request:

"windows": {
  "assets": {
    "windows80_ie10_tile":false,
    "windows10_ie11_edge_tiles": {
      "small": false,
      "medium": true,
      "big": false,
      "rectangle": false
    }
  }
}

However, this is incorrect, as the website request has underscores in front of the numbers which the API request is missing. This is how they should be formatted:

  • windows_80_ie_10_tile
  • windows_81_ie_11_edge_tile

In fact, I'm able to workaround this and get the browserconfig.xml file to respect my settings by manually adding the missing underscores to my faviconDescription.json config file, like so:

"windows": {
  "assets": {
    "windows_80Ie_10Tile": false,
    "windows_10Ie_11EdgeTiles": {
      "small": false,
      "medium": true,
      "big": false,
      "rectangle": false
    }
  }
}