Commit graph

16 commits

Author SHA1 Message Date
Frédéric Wang d4e928a486 SVG images should not be loaded when MathML is used
- Use span with a background-image instead of <img> for the fallback SVG so
  that they don't load in Gecko.
- Make the image fallback a span inline-block so that it can have a dimension.

Bug: 71929
Change-Id: I7f820cd5766db1fece452ebfc72915a55e42c82e
2014-10-12 23:00:55 +00:00
Frédéric Wang 3d0b787cbe Move vertical-align back to ext.math.css
This improves If8ee1cf6453257a0a2f6aa186d4007954a8e5d8e

Change-Id: I794b39a5d322a92d9f722ded790e213803448127
2014-10-12 18:22:06 +00:00
Frédéric Wang 296c79e070 Rename fallback-svg and fallback-png to fallback-image
- Merge fallback-svg and fallback-png into one fallback-image class.
- Move the vertical centering of PNG to MathTexvc and ext.math.js.
- Remove "img" from ext.math.css to reduce CSS specificity and make
  style easier to override by user stylesheets.
- Add a comment about the !important rules for centering in
  display mode.
- Only load ext.math.scripts in MathML mode.

Bug: 71955
Change-Id: If8ee1cf6453257a0a2f6aa186d4007954a8e5d8e
2014-10-12 13:42:01 +02:00
Frédéric Wang 74e4c3733d (Experimental) Fix centering of SVG image in display mode.
Change-Id: I7d5ec171c39b2eec563e074a4062b3e3682790f7
2014-10-11 21:21:46 +02:00
Frédéric Wang ee479e8e68 Fix centering of PNG image in display mode.
Revert the mistake made in https://gerrit.wikimedia.org/r/#/c/139120.

Change-Id: I31420ba3ab1e1b47c3e7307ac4a9aca2a6a8223f
2014-10-11 21:17:15 +02:00
Frédéric Wang 0ddd3afaea Cleanup after the removal of the PNG fallback
- remove the default "display: none" style on the SVG fallback
- remove the IE CSS hacks from ext.math.css
- add a client-side implementation of the PNG fallback

Bug: 71912
Change-Id: I91b11313aae25c4d05f8f2333d2f21537c9b8887
2014-10-11 13:21:59 +00:00
Frédéric Wang c3894c2c49 Display MathML when MathPlayer is installed
When MathPlayer is installed, we show the MathML instead of the SVG fallback.
This will in particular allow the sync highlighting feature of MathPlayer.
This also introduces a module ext.math.js that could be used to do some
Javascript postprocessing.

Bug: 71748
Change-Id: I438a20032c312d12321ca4c5686bcfd107656b37
2014-10-10 20:20:47 +02:00
Frédéric Wang 050564646d Modify the math font-family for native MathML
- add "Cambria" to workaround a bug on Firefox Windows.
- remove obsolete local fonts (MathJax and STIXGeneral).

Change-Id: I06e757b029b8778b88bc6e75e20929e0c945e364
2014-10-09 21:09:10 +02:00
Frédéric Wang 9f6257c329 Improve the way mathematical formulas are exposed to screen readers.
- Mark the png and svg fallback as aria-hidden="true".
- For browsers without good enough MathML visual rendering, 
  hide the <math> tag in a way that still makes it accessible to 
  screen readers.

Bug: 66537
Change-Id: I7ecf07a4da669d927e11265fd497a813786c6410
2014-10-05 17:48:41 +00:00
Frédéric Wang f590974c25 Add default display options
In some cases for example if the vagrant role
mobilefrontend is enabled the stylesheets are not
processed on mobile devices.
Without a default setting for the display attribute
all elements are displayed at the same time.

Change-Id: Ic0e95effaf0b413ec4c5878e1cfd5c269daa44c3
2014-07-25 17:19:30 +00:00
physikerwelt (Moritz Schubotz) bc519c22f4 Move @namespace css style to top
According to PHPStrom the @namespace css
element must be before normal css rules

Change-Id: I43eb10e976446bf846856f9c4f462a5be034062f
2014-07-25 13:00:13 -04:00
Frédéric Wang 382454a979 Update modules/ext.math.css
Currently, the PNG fallback is hidden in the MathML mode and the MathML & SVG
are respectively hidden and visible by default; the visibility of the
SVG/MathML output is only changed for Gecko. This does not work well for
IE < 9, which does not support SVG. This commit tries to improve the selection
of PNG, SVG or MathML according to the browser capatibility.

Change-Id: Ie9b0fdb66c51fbf6be98df092ce4de29fbba6068
2014-06-30 10:52:59 +00:00
Frédéric Wang a3015f6e79 Hide redundant output in the MathML mode.
In the MathML mode, the SVG is always visible and for Gecko the MathML
output is visible too. This commit modifies ext.math.css to hide redundant
output for a given mathematical formula.

Change-Id: I5d48ec4f2a40246567b201e82444e61d408cb3b5
2014-06-11 14:16:57 +02:00
Frédéric Wang 27aee07cb0 Fonts for native MathML
This sets the default font-family on <math> elements so that we try to use
OpenType MATH fonts that are likely to be installed or fallback to WOFF and
obsolete mathematical fonts.

Bug: 65532
Change-Id: Id4517a3ce5eab4acdf2264712ba132b972120042
2014-06-10 11:07:10 +00:00
physikerwelt c390f6479a Add getHtmlOutput method
Currently the method render always returns
a html string that can be a string that
represents the correct result or a rendered
error message.
This change adds a mechanism that allows
to fetch the HTML output.
In a followup commit the rendering function
is changed to return a boolean value rather
than the rendering result.
This will simplify the error handling and caching.

Change-Id: I80760493e391911c41eb69d75a93c6a34db8852e
2014-06-06 21:52:35 +02:00
Moritz Schubotz (Physikerwelt) c5b0b15d8f Fix MathJax centers equations
* Removes the MathJax heuristics that decides
  if equations are centered or left-aligned.
* Introduces the attribute display to specify
  if the math element is rendered in inline,
  display, or inline-displaystyle.
* add css rules for display / inline math images

Bug: 61051
Change-Id: Iba69903f781f0cb1606b8ddcffb90fb86c9b229b
2014-04-06 21:58:30 +00:00