title: insert GlyphProperty.null in shouldGenerateGlyphs causes cursor misplacement problem
body: <p>I am hiding the character <code>*</code> by inserting <code>GlyphProperty.null</code> then calling <code>setGlyphs(_:properties:characterIndexes:font:forGlyphRange:)</code> inside <code>layoutManager(_:shouldGenerateGlyphs:properties:characterIndexes:font:forGlyphRange:)</code> as described in the answer in <a href="https://stackoverflow.com/a/57697139/9568961">https://stackoverflow.com/a/57697139/9568961</a>, it works but after a certain sequence of text editing, the cursor starts to misplace, as shown in the gif <a href="https://github.com/dzAtZJU/Demos/blob/master/cursor_misplace.GIF?raw=true" rel="nofollow noreferrer">https://github.com/dzAtZJU/Demos/blob/master/cursor_misplace.GIF?raw=true</a></p>
  <p>GIF Description: When the second line becomes <code>qq</code>, I try to move the cursor to the end of first line, but it move directly to the beginning. I then try to delete characters, then the cursor move to the end correctly.</p>
  <p>The sample project is here <a href="https://github.com/dzAtZJU/HideText" rel="nofollow noreferrer">https://github.com/dzAtZJU/HideText</a>.</p>
  <p>Is it a bug? Have anyone run into this? How can I work around this?</p>