Commit Graph

159738 Commits

Author SHA1 Message Date
Cameron McCormack
1d90c6a110 Bug 773296 - Part 5: Map variables on a Declaration to nsRuleData. r=dbaron
This adds a CSSVariableDeclarations object to nsRuleData and adds a
MapRuleInfoInto function to CSSVariableDeclarations so the can copy
variable declarations into a nsRuleData's object.  We call that from
Declaration::Map{Normal,Important}RuleInfoInto.

We make HasImportantData return true if we have important variables
but no important non-custom properties on a declaration, since that
is used to determine whether we have a rule node for important
declarations.  This means MapImportantRuleInfoInto can no longer
assume that mImportantData is non-null.
2013-12-12 13:09:41 +11:00
Cameron McCormack
8a80d29205 Bug 773296 - Part 4: Add style struct to store CSS variables. r=dbaron
This adds an nsStyleVariables on which computed variable values
will be stored.  We don't actually have any properties assigned to
nsStyleVariables; eCSSPropertyExtra_Variables which we added earlier
isn't a real property.  To avoid compiler errors for gVariableFlags
being a zero length array, we stick a dummy entry in there.

nsRuleNode::ComputeVariablesData does nothing for the moment.

nsStyleVariable nsChangeHint calculations always return 0, as later
we will compare the actual properties that reference variables to
see what changes are required for them.
2013-12-12 13:09:40 +11:00
Cameron McCormack
52ae26eb58 Bug 773296 - Part 3: Allow more than 27 style structs. r=dbaron
This bumps up nsStyleContext::mBits to a uint64_t so that it can fit
another style struct.  If we're going to need to keep at least 27 style
structs, it might be better to split mBits up into two uint32_ts: one
for the flags and one for the style struct bits.
2013-12-12 13:09:40 +11:00
Cameron McCormack
5edbefbd77 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
Emmanuele Bassi
2ecde08892 Bug 773296 - Part 1: Add a preference for CSS variables. r=dbaron 2013-12-12 13:09:40 +11:00
Cameron McCormack
695b54e296 Bug 909170 - Add some tests for @supports conditions with tokens after a declaration's priority. r=dbaron 2013-12-12 13:09:39 +11:00
Cameron McCormack
cbbd892707 Bug 948782 - Make test_alerts_noobserve.html wait until its alerts have disappeared before finishing. r=wchen 2013-12-12 13:08:35 +11:00
Terrence Cole
2e679fb1a1 Bug 948516 - Assert that js::HashTable pointers and enumerators are used correctly; r=luke 2013-12-03 12:51:02 -08:00
Bobby Holley
3a5cab3418 Bug 937317 - touch clobber file. r=me 2013-12-11 17:51:59 -08:00
Bobby Holley
cfdc7a64b4 Bug 937317 - Tests. r=bz 2013-12-11 17:51:59 -08:00
Steve Fink
be4b9213bd Bug 937317 - Root around GC call GetIncumbentGlobal. r=bz 2013-12-11 17:51:58 -08:00
Bobby Holley
517f4b36f3 Bug 937317 - Remove unnecessary AutoSystemCaller usage. r=bz
See bug 937317 comment 38.
2013-12-11 17:51:58 -08:00
Bobby Holley
a7395d2ec6 Bug 937317 - Replace all instance of null cx pushing with AutoSystemCaller. r=bz
This is an easy bonus chunk of the work to phase out cx pushing in the browser.
2013-12-11 17:51:58 -08:00
Bobby Holley
d843f5b707 Bug 937317 - Return null from ToWebIDLCallback if one doesn't already exist. r=bz 2013-12-11 17:51:58 -08:00
Bobby Holley
904374035f Bug 937317 - When invoking a callback object, restore the incumbent script settings object from when the callback was created. r=bz
See the 'incumbent script' stuff in the WebIDL spec.
2013-12-11 17:51:58 -08:00
Bobby Holley
86e58bb574 Bug 937317 - Pass the entire CallbackObject to CallSetup. r=bz
We need this so that we can grab the incumbent global that we stashed on the
CallbackObject.
2013-12-11 17:51:57 -08:00
Bobby Holley
bc61230c38 Bug 937317 - Implement and expose GetIncumbentGlobal. r=bz,luke 2013-12-11 17:51:57 -08:00
Bobby Holley
40d3f00adc Bug 937317 - Manipulate the script settings stack from the RAII classes. r=bz 2013-12-11 17:51:57 -08:00
Bobby Holley
f9aa149cb5 Bug 937317 - Implement basic script settings stack machinery. r=bz 2013-12-11 17:51:57 -08:00
Bobby Holley
48d10625a3 Bug 937317 - Factor out the shareable parts of CallSetup into AutoEntryScript and AutoIncubentScript. r=bz 2013-12-11 17:51:57 -08:00
Bobby Holley
7717c1bb0d Bug 937317 - Make TabChildGlobal implement nsIGlobalObject. r=bz 2013-12-11 17:51:56 -08:00
John Daggett
1f5a3fb130 merge 2013-12-12 10:50:57 +09:00
John Daggett
ad51a7094b Bug 947812 - bracket log calls with #ifdef PR_LOGGING. r=heycam 2013-12-12 09:28:40 +09:00
Ryan VanderMeulen
66b0cd57b1 Backed out changeset d8fb025ca7d2 (bug 948531) for suspicion of causing OSX 10.6 debug mochitest-5 orange.
CLOSED TREE
2013-12-11 18:47:03 -05:00
Ryan VanderMeulen
cb80ce98fe Backed out changeset b93e7a83b308 (bug 932982) for Linux mochitest-bc leaks.
CLOSED TREE
2013-12-11 17:07:48 -05:00
Steve Fink
8976499175 Backed out changeset 926aeca75e6c (bug 949108) due to request asserts on a CLOSED TREE. 2013-12-11 14:02:54 -08:00
James Willcox
9a9278242c Bug 948003 - Mark GeckoAppShell.loadPluginClass() as used from JNI r=blassey 2013-12-11 15:53:06 -06:00
Benoit Girard
3ab22db671 Bug 948531 - Layerize elements with transition or animation immediately. r=mattwoodrow
--HG--
extra : rebase_source : 06725514680d5041c547149f6ecd758061936a4e
2013-12-11 15:48:06 -05:00
Jan Gerber
ae839a7fc4 Bug 949146 - libvpx MOZ_VP8_ENCODER cleanup. r=giles DONTBUILD 2013-12-11 12:56:00 -08:00
Jan Gerber
091b5e5db9 Bug 947979 - Update update.py to keep unified mode. r=giles DONTBUILD 2013-12-11 12:50:00 -08:00
Matt Woodrow
47153c6c2d Bug 946475 - Avoid using AutoSaveRestoreClippedOut for ClearRect when the cumulative clip can be represented as a single axis aligned rectangle. r=Bas 2013-12-12 10:11:37 +13:00
Matt Woodrow
4cd7701567 Bug 946475 - Clip to the clear area in DrawTargetD2D::ClearRect so that we don't accidentally restore pixels that weren't drawn. r=Bas 2013-12-12 10:11:07 +13:00
Matt Woodrow
533d84ea6d Bug 948221 - Part 7: Convert SurfaceFromElement to Moz2D. r=roc,Bas,bjacob 2013-12-12 10:05:27 +13:00
Matt Woodrow
d9683d5ba3 Bug 948221 - Part 6: Make UnpremultiplyImageSurface work on surfaces that don't have matching strides. r=roc 2013-12-12 10:05:26 +13:00
Matt Woodrow
9602bddb2a Bug 948221 - Part 5: Make GetSourceSurfaceForSurface use the screen reference draw target if one isn't specified. r=Bas 2013-12-12 10:05:26 +13:00
Dan Glastonbury
79b2dce11c Bug 942506 - Remove Bind method from AutoBindTexture - r=bjacob
Refactored the places where AutoBindTexture::Bind was used. Replaced with a
simplier class that just saves the texture id bound to a texture unit. The
texture is bound directly instead of via the helper.

I didn't eliminate all occurences of AutoBindTexture because I a few places it
was cleaner than using AutoSaveTexture + TextureSourceOGL->BindTexture.

I extracted the cut'n'paste code that bound the mask texture to program into
BindMaskTextureForProgram. I dislike cut'n'paste code in multiple spots.
2013-12-10 16:50:52 +10:00
Dan Glastonbury
defcd6a300 Bug 942506 - Remove ApplyFilterToBoundTexture from GLContext - r=bjacob
Move it to CompositorOGL.
2013-12-09 14:07:18 +10:00
Dan Glastonbury
c31338cb36 Bug 942502 - Move EGLImage/GraphicBuffer-specific helpers out of GLContext - r=bjacob
Extracted methods CreateEGLImageForNativeBuffer and DestroyEGLImage from
GLContext and moved to EGLImageHelpers.[h|cpp]. Renamed to
EGLImageCreateFromNativeBuffer and EGLImageDestroy.
2013-12-10 15:47:19 +10:00
Dan Glastonbury
699b5b1669 Bug 942502 - Remove dead GLContext code - r=bjacob 2013-12-06 14:19:15 +10:00
Benoit Jacob
feae46d599 Bug 897452 - Part 15 - Introduce a AtomicRefCountedWithFinalize class to factor our custom-refcounting needs - r=nical 2013-12-11 20:45:11 -05:00
Benoit Jacob
308e353ac4 Bug 897452 - Part 14 - Implement CompositableChild::ActorDestroy clearing the back-reference to it - r=nical 2013-12-11 20:45:09 -05:00
Benoit Jacob
74487acc2d Bug 897452 - Part 13 - Host-side cleanup: remove OnActorDestroy and DestroyTextureHost* - r=nrc 2013-12-11 20:45:07 -05:00
Benoit Jacob
81c944e909 Bug 897452 - Part 12 - remove CompositableClient::OnActorDestroy - r=nrc 2013-12-11 20:45:05 -05:00
Benoit Jacob
c9c5a7012c Bug 897452 - Part 11 - remove TextureClient::OnActorDestroy - r=nrc 2013-12-11 20:45:03 -05:00
Benoit Jacob
e395fa1e58 Bug 897452 - Part 10 - adapt post landing of bug 893301 - r=nical,nrc 2013-12-11 20:45:01 -05:00
Benoit Jacob
2f4d3655f4 Bug 897452 - Part 9 - Check for null buffer in BufferTextureHost::Upload - r=nical 2013-12-11 20:44:59 -05:00
Benoit Jacob
4fccd4cb43 Bug 897452 - Part 8 - fix TextureParent::ActorDestroy - r=nical 2013-12-11 20:44:57 -05:00
Benoit Jacob
7f6d92ec4c Bug 897452 - Part 7 - Implement TextureChild::ActorDestroy to notify its TextureClient - r=nical 2013-12-11 20:44:55 -05:00
Benoit Jacob
62d30b6844 Bug 897452 - Part 6 - assert that the forwarder we're initializing our TextureChild with is non null - r=nical 2013-12-11 20:44:53 -05:00
Nicolas Silva
97b38370cc Bug 897452 - Part 5 - Fix a TextureClient gtest crash - r=BenWa 2013-12-11 20:44:51 -05:00