keymanapp / keyman

Keyman cross platform input methods system running on Android, iOS, Linux, macOS, Windows and mobile and desktop web
https://keyman.com/
Other
388 stars 107 forks source link

bug(web): undefined width in OSKView.refreshLayout #6853

Closed sentry-io[bot] closed 2 years ago

sentry-io[bot] commented 2 years ago

Sentry Issue: KEYMAN-WEB-C

TypeError: undefined is not an object (evaluating 'this.width.val')
  at None (source/osk/oskView.ts:463:32)
  at None (source/osk/oskView.ts:513:9)
  at None (source/osk/oskView.ts:440:7)
  at None (source/osk/anchoredOskView.ts:66:9)
  at None (source/osk/oskView.ts:589:7)
...
(3 additional frame(s) were not displayed)

This is currently happening due to the issue underlying #6806. Proof?

https://sentry.io/organizations/keyman/issues/2712770070/events/11fe91c1a4d74af39128c4c6dbc6b31a/

https://sentry.io/organizations/keyman/issues/2712770070/events/11fe91c1a4d74af39128c4c6dbc6b31a/

These two events occurred simultaneously from the same device - my personal iPhone. So, when Web's OSK attempts layout but hasn't been given a width - because iOS hasn't bothered providing a valid width yet - this occurs.

sentry-io[bot] commented 2 years ago

Sentry issue: KEYMAN-WEB-1G

jahorton commented 2 years ago

Note: this is exclusively happening on iOS at present.

image

The "Mac OS X" entries appear to correspond to tablets acting as Macs. The page URLs for the 5 events all match that found within the iOS app.