* Next Version
-** Remove CSS pixel ratio > 1 support in Safari
- Mac OS X Safari has scaling bugs, and iOS Safari has lower
- performance.
** Use standard Unicode codepoints for icon fonts
This is done via the [[https://korewanetadesu.com/pages/fontstandard.html][Font Standard]] icon font.
-** Work around incorrect Safari JIT generation
- Some details of the symptoms / likely-but-unproven cause at
- https://korewanetadesu.com/safari-jit-bug.html.
** Sped up background and book noise animations
** Cat paws
** DONE Migrate to nw.js (from node-webkit)
+** DONE Safari 8 / iOS 8 support
+ This is the first version to support Safari on Mac OS X and iOS.
+
+ The primary problem in earlier versions appears to be a bug in
+ Safari's JIT when optimizing functions that modify JavaScript's
+ ~arguments~ object. Code triggering this bug was rewritten to avoid
+ modifying ~arguments~. This bug is further described in
+ https://korewanetadesu.com/safari-jit-bug.html and seems to still
+ exist in current versions of WebKit's new "FTL" JIT.
+
+ Prior to OS X 10.10, Safari on OS X will show [[https://bugs.webkit.org/show_bug.cgi?id=134854][artifacts on HiDPI
+ ("Retina") screens due to a bug in its compositing]].
+
+
* v1.2
** DONE Override the GPU blacklist on GNU/Linux
* Open Issues
-** TODO Safari handles WebGL device pixel scaling incorrectly
- Given a device pixel ratio of 2, Safari will scale the backbuffer
- incorrectly when rendering it (seems like it scales it down using
- bilinear interpolation, then back up with the same) resulting in
- something that looks worse than leaving the DPR set to 1.
-
- Currently DPR is fixed to 1 for Safari.
-
- https://bugs.webkit.org/show_bug.cgi?id=134854
-** TODO Still some "random stalls" in Safari.
- Likely due to the same JIT bug manifesting in some other ways.
** TODO Choppy / staticy audio on iOS
Especially when backgrounding, e.g. switching tabs. There's
probably no easy way to avoid this.
** TODO Scrolling is broken in licensing window
This began when upgrading to nw.js 0.12 (from node-webkit 0.10.4). If
it's broken one place it's probably broken other places also.
+
+Not reproducible in Chrome 42, so it's possible this was some
+transient Chromium bug that will be gone in newer NW.js.