Created attachment 305707 [details] An example involving stretchy operator. In the given attachment, if one scales the webpage (via Command + or trackpad), then scales it back (via Command 0, or just press refresh), the layout of the equation changes. Scaling a page and scaling back should not change rendering results in any event. I am not familiar with WebKit’s structure; hopefully this bug does not imply some deep semantics issue around scaling in general and is specific to MathML only. The issue exists in Safari 10, TP, and nightly builds. Changing font from default old STIX one shipped with Mac to STIX two does not help.
Thanks for the report. IIUC, this happens with stretchy operators (parenthesis here)? Maybe we can narrow down the report and reduce the test case?
Created attachment 305974 [details] Minimal unstable example This examples involves only a stretchy operator (an triple integral symbol) and a identifier 'x'. It is also unstable on page zoom.
Thanks for the reduced test case. I guess the code involved is the same as in bug 170272, so you should be able to debug and narrow down the issues?
@Minsheng Were you able to work on this? Maybe you could start with bug 180029, which is somewhat simple to test.
I am interested, but I might have only ten hours or less every week—still a full time student and the final week is approaching. I will take a serious look after we finish the stretchy case.
It appears that the issue is gone, but I am not sure which patch resolves it. I suspect it is @fred’s previous refactoring of RenderMathMLRow which eliminates some dirty states. I plan to add a test as a part of my new proposal of combining the layout code for RenderMathMLRow, RenderMathMLEnclose, and RenderMathMLRoot. In any event, note that in the first example, the parentheses are a bit off. Something seems wrong with the vertical stretching.