Commit Graph

384 Commits

Author SHA1 Message Date
Cameron McCormack
3a3a7216b5 Bug 773296 - Part 18: Add error reporting for invalid variable references. r=dbaron
This adds CSS parser error reporting for parsing of custom properties
and normal properties that have variable references.

When re-parsing a normal property that had a variable reference, we
report any parse error to be at the beginning of the property value.
This is because it is difficult to keep track of where exactly each
variable substitution came from to point to the particular value
that would have caused the parse error.  For example, with this:

  :root {
    var-a: 1px 2px;
    var-b: 3px var(a);
  }
  p {
    margin: var(a) var(b);
  }

we would end up resolving the value of 'margin' to:

  "  1px 2px  3px  1px 2px"

In this string, the parse error occurs when we encounter the final
"2px", but by this point we don't know where that value came from.
So instead we just point to the line on which 'margin' was declared.

We extend ErrorReporter with an OutputError overload that takes the
specific line and column number to use in the error report to get this
right, and we store the line and column number for each token stream
we parse on the nsCSSValueTokenStream object.
2013-12-12 13:09:44 +11:00
Cameron McCormack
7eb5d97a49 Bug 773296 - Part 17: Resolve property values that have variable references at computed value time. r=dbaron
This re-parses property values at computed value time if
they had a specified value that was a token stream.  We add
a function nsRuleNode::ResolveVariableReferences that looks
at all the values in the nsRuleData and calls in to a new
nsCSSParser::ParsePropertyWithVariableReferences function if they have a
token stream value.

We add a nsCSSExpandedDataBlock::MapRuleInfoInto function that will
take the re-parsed property value and copy it back into the nsRuleData.

nsRuleNode::ResolveVariableReferences returns whether any variables
were attempted to be resolved, so that nsRuleNode::WalkRuleTree wil
recompute the rule detail in case any became 'inherit'.
2013-12-12 13:09:44 +11:00
Cameron McCormack
a8cf86e4b7 Bug 773296 - Part 2: Parse CSS variable declarations and store them on Declaration objects. p=ebassi,heycam r=dbaron
Patch co-authored by Emmanuele Bassi <ebassi@gmail.com>

This defines a CSSVariableDeclarations class that holds a set of
variable declarations.  This is at the specified value stage, so values
can either be 'initial', 'inherit' or a token stream (which is what you
normally have).  The variables are stored in a hash table.  Although
it's a bit of a hack, we store 'initial' and 'inherit' using special
string values that can't be valid token streams (we use "!" and ";").

Declaration objects now can have two CSSVariableDeclarations objects
on them, to store normal and !important variable declarations.  So that
we keep preserving the order of declarations on the object, we inflate
mOrder to store uint32_ts, where values from eCSSProperty_COUNT onwards
represent custom properties.  mVariableOrder stores the names of the
variables corresponding to those entries in mOrder.

We also add a new nsCSSProperty value, eCSSPropertyExtra_variable, which
is used to represent any custom property name.
nsCSSProps::LookupProperty can return this value.

The changes to nsCSSParser are straightforward.  Custom properties
are parsed and checked for syntactic validity (e.g. "var(a,)" being
invalid) and stored on the Declaration.  We use nsCSSScanner's
recording ability to grab the unparsed CSS string corresponding to
the variable's value.
2013-12-12 13:09:40 +11:00
Gijs Kruitbosch
e95041d4a0 Bug 943217 - fix moz-document error message, r=dbaron 2013-11-26 10:36:52 +01:00
Cameron McCormack
c568af0049 Bug 945048 - Correctly check for the CSS_PSEUDO_ELEMENT_SUPPORTS_USER_ACTION_STATE flag when parsing pseudo-classes after pseudo-elements. r=bz 2013-12-02 13:06:20 +11:00
Cameron McCormack
b5a8e4c2eb Bug 944493 - Rename PEPseudoSelTrailing because of a string change. r=flod 2013-11-30 12:17:51 +11:00
Cameron McCormack
417805594e Bug 922669 - Part 1: Parse selectors with user action pseudo-classes after pseudo-elements. r=bz 2013-11-28 17:46:38 +11:00
Boris Zbarsky
d99c5cc617 Bug 937465. Warn when cloneNode() and importNode() are used without the boolean "deep" argument on nodes that have kids. r=sicking 2013-11-17 00:10:18 -05:00
Max Li
e7bfe84476 Bug 933393 - [AccessFu] Utter selection changes. r=eeejay
--HG--
extra : rebase_source : 2997b101df0cc63aba3e94b60ebe63c0db7eb3b7
2013-11-12 19:56:24 -05:00
Vendelin Ruzicka
df3119e8a5 Bug 933563 - Consolidate ReportUseOfDeprecatedMethod and WarnOnceAbout. r=sicking, r=ms2ger 2013-11-11 16:12:18 -05:00
Vendelin Ruzicka
0690b323d8 Bug 933040 - Warn for showModalDialog uses. r=jst, r=sicking 2013-11-06 08:59:54 -05:00
Yura Zenevich
f5f3c48812 Bug 934737 - [AccessFu] fixing a string bundle error when encountering an input type='date'. r=eeejay
---
 accessible/src/jsat/OutputGenerator.jsm                    | 7 ++++++-
 accessible/tests/mochitest/jsat/test_utterance_order.html  | 4 ++++
 dom/locales/en-US/chrome/accessibility/AccessFu.properties | 1 +
 3 files changed, 11 insertions(+), 1 deletion(-)
2013-11-05 21:51:56 -05:00
Yura Zenevich
e92f9755f6 Bug 924896 - [AccessFu] Exposing the type attribute for entries such as search, url, tel, etc. r=eeejay
---
 accessible/src/jsat/OutputGenerator.jsm            | 22 +++++++++++++++++-
 .../tests/mochitest/jsat/test_utterance_order.html | 27 ++++++++++++++++++++++
 .../en-US/chrome/accessibility/AccessFu.properties |  6 +++++
 3 files changed, 54 insertions(+), 1 deletion(-)
2013-10-24 23:21:29 -04:00
Ed Morley
823546ce73 Backed out changeset f59777bbd950 (bug 924896) 2013-10-24 18:14:09 +01:00
Yura Zenevich
8fbad16a3b Bug 924896 - [AccessFu] Exposing the type attribute for entries such as search, url, tel, etc. r=eeejay
---
 accessible/src/jsat/OutputGenerator.jsm            |   17 +++++++++++-
 .../tests/mochitest/jsat/test_utterance_order.html |   27 ++++++++++++++++++++
 .../en-US/chrome/accessibility/AccessFu.properties |    6 ++++
 3 files changed, 49 insertions(+), 1 deletions(-)
2013-10-24 11:16:23 -04:00
Felipe Gomes
b1941cc25d Bug 916667 - about:tabcrashed fails to display for pages with no title. r=markh,glandium 2013-09-24 00:47:57 -03:00
Frederik Braun
57904a2436 Bug 607067 - Improve CSP violation messages for base restrictions and fix affected testcases. r=imelven, r=sstamm 2013-08-12 12:34:40 +02:00
Wes Kocher
545fbb7bd2 Merge m-c to inbound 2013-09-04 18:04:50 -07:00
Mike Hommey
f8bc7fa754 Bug 912293 - Remove now redundant boilerplate from Makefile.in. r=gps 2013-09-05 09:01:46 +09:00
aceman
92e1c50aa8 Bug 677912 - Follow-up to bug 136556 - change the string ID for localizers. r=bz 2013-09-04 12:52:25 -04:00
Felipe Gomes
cf77c1b0f9 Bug 899348 - Dispatch an event when an out-of-process browser crashes and display an error page when that occurs. r=bz 2013-09-03 19:11:22 -03:00
Ivan Alagenchev
f8985f80ad Bug 875456 - DOM patch. Modifies Mixed Content Blocker, so that its messages are appropriately logged to the security console. r=bz 2013-08-26 11:27:00 -04:00
Yura Zenevich
1409a868cf Bug 795957 - [PATCH 1/2][AccessFu] Adding support for live regions. r=eejay
---
 accessible/src/jsat/AccessFu.jsm                   |    6 +
 accessible/src/jsat/EventManager.jsm               |  192 ++++++++++++++++++--
 accessible/src/jsat/OutputGenerator.jsm            |   10 +-
 accessible/src/jsat/Presentation.jsm               |   47 +++++-
 accessible/src/jsat/Utils.jsm                      |   39 +++--
 .../en-US/chrome/accessibility/AccessFu.properties |    4 +
 6 files changed, 263 insertions(+), 35 deletions(-)
2013-08-21 12:40:06 -04:00
Marco Zehe
f1936f637a Bug 907125 - [AccessFu] Improve the output for ARIA tabs and tab lists, r=yzen 2013-08-21 09:52:46 +02:00
Theo Chevalier
23ef27ee11 Bug 905933 - Improve plural form for AndXMoreFiles string, r=enndeakin 2013-08-20 11:18:03 +02:00
James Kitchener
3ca04863ac Bug 827713 - Localisation change for unifying MathML *scripts. r=fredw 2013-08-19 09:09:08 -04:00
Jonathan Watt
c76062a817 Bug 902234 - Cap the number of files that we include in the tooltip for <input type=file>. r=enndeakin 2013-08-07 00:11:54 +01:00
Kyle Huey
2062f4e9b4 Bug 803612 - Add deprecation warnings for mozGetAsFile. r=sicking 2013-08-12 13:26:31 -04:00
Ivan Alagenchev
fdd548e83d Bug 762593 - DOM patch. Adds localized strings for insecure passwords error messages. r=bz 2013-08-06 10:15:00 -04:00
Masatoshi Kimura
a2d7f5d92e Bug 673919 - Remove routeEvent, enableExternalCapture and disableExternalCapture. r=smaug 2013-08-01 23:48:18 +09:00
Masatoshi Kimura
dc1ac1fe9c Backed out changeset 2aa62db58f24 (bug 673919) due to Web compat 2013-08-01 06:44:51 +09:00
Ivan Alagenchev
c822b1becc Bug 846918: localization for invalid sts. r=dolske. 2013-07-26 08:37:03 -07:00
Max Vujovic
0bd2b965c3 Bug 895182 - [CSS Filters] Implement parsing for blur, brightness, contrast, grayscale, invert, opacity, saturate, sepia. Co-authored with Dirk Schulze (krit). r=heycam 2013-07-22 15:08:33 -07:00
Ed Morley
ef5715c092 Backed out changeset f24d81b85929 (bug 895182) for Windows build failures on a CLOSED TREE 2013-07-23 16:36:45 +01:00
Max Vujovic
0117d6e2f8 Bug 895182 - [CSS Filters] Implement parsing for blur, brightness, contrast, grayscale, invert, opacity, saturate, sepia. Co-authored with Dirk Schulze (krit). r=heycam 2013-07-23 10:47:16 -04:00
Francesco Lodolo [:flod]
6cd52ce9f3 Bug 894844 - Add localization comment to plural forms in AccessFu.properties. r=yzen 2013-07-17 14:34:22 -04:00
Marco Zehe
96fd2e9d54 Bug 893336 - Rename listItemCount to reflect string change, r=yzen,flod 2013-07-15 15:57:54 +02:00
Marco Zehe
68982508ba Bug 892491 - [AccessFu] Add landmark quick navigation, r=eeejay 2013-07-11 16:42:11 -04:00
Yura Zenevich
92a6c38cf5 Bug 891335 - [AccessFu] Making lists with only one item use the singular form of 'List 1 item'. r=eeejay, marcoz
---
 accessible/src/jsat/OutputGenerator.jsm            |    6 +++---
 .../tests/mochitest/jsat/test_landmarks.html       |    4 ++--
 .../tests/mochitest/jsat/test_utterance_order.html |   12 ++++++------
 .../en-US/chrome/accessibility/AccessFu.properties |    2 +-
 4 files changed, 12 insertions(+), 12 deletions(-)
2013-07-10 10:33:38 -04:00
Yura Zenevich
73dba62c25 Bug 888256 - Adding support for speaking landmarks. r=eeejay, marcoz
---
 accessible/src/jsat/OutputGenerator.jsm            |   76 ++++++++--
 accessible/tests/mochitest/jsat/Makefile.in        |    1 +
 .../tests/mochitest/jsat/test_landmarks.html       |  154 ++++++++++++++++++++
 .../en-US/chrome/accessibility/AccessFu.properties |    8 +
 4 files changed, 225 insertions(+), 14 deletions(-)
 create mode 100644 accessible/tests/mochitest/jsat/test_landmarks.html
2013-07-09 16:09:25 -04:00
Mounir Lamouri
588db75b27 Bug 885996 - 1/2 - Interaction between nsIColorPicker and content. r=smaug 2013-07-08 15:12:18 -04:00
Yura Zenevich
af64fb7c4b Bug 830748 - [PATCH 1/2] [AccessFu] Improved reading of table semantics. r=eeejay 2013-06-27 14:15:36 -07:00
L. David Baron
4cb93c7005 Bug 757554: Reject uses of reserved 'not', 'only', 'and', and 'or' as a media type. r=heycam 2013-06-17 14:26:08 -07:00
Max Li
b68ed19c15 Bug 876475 - Make braille output less verbose. r=eeejay r=kats r=ted
--HG--
rename : accessible/src/jsat/UtteranceGenerator.jsm => accessible/src/jsat/OutputGenerator.jsm
rename : accessible/tests/mochitest/jsat/utterance.js => accessible/tests/mochitest/jsat/output.js
2013-06-17 10:36:41 -04:00
Ms2ger
09bb5c9224 Bug 718923 - Support document.all in standards mode and remove the pref to turn it off; r=smaug 2013-06-12 08:48:38 +02:00
Masatoshi Kimura
0ff5d04537 Bug 881252 - Warn use of getUserData() or setUserData(). r=bz 2013-06-11 07:41:42 +09:00
Francesco Lodolo [:flod]
bd3b111a4e Bug 878154 - about:plugins: plugin status is not localizable. r=bsmedberg 2013-06-07 15:21:13 -04:00
Marco Zehe
41867a175e Bug 877640 - [AccessFu] Expose the STATE_HASPOPUP info, r=yzen 2013-05-30 17:24:18 +02:00
Masatoshi Kimura
7bfc74c6ff Bug 726933 - Add a deprecation warning to getPreventDefault. r=smaug 2013-05-27 23:43:51 +09:00
Masatoshi Kimura
6c62e3f1ba Backed out changeset db13e1fbc642 (bug 691151) because some in-tree callers are still using the function 2013-05-25 08:41:19 +09:00