Commit Graph

206 Commits

Author SHA1 Message Date
Emilio Cobos Álvarez
bc1d876fba Bug 1325878: Use dom::MediaList in the CSS Loader. r=xidorn
MozReview-Commit-ID: 8KcKYrkk3jI
Signed-off-by: Emilio Cobos Álvarez <emilio@crisal.io>
2017-04-13 00:30:05 +08:00
Xidorn Quan
bf22378ea2 Bug 1352763 part 3 - Have ServoStyleSheet also implement nsICSSLoaderObserver. r=heycam
MozReview-Commit-ID: 1Z6jAmQ9CY6
2017-04-03 19:55:06 +10:00
Xidorn Quan
f2fc175056 Bug 1352763 part 2 - Pass borrowed child stylesheet to Gecko for loading rather than the import rule. r=emilio
This is necessary because if we pass in the import rule, we would need
to invoke Servo_ImportRule_GetSheet to get the child sheet. However,
Servo_ImportRule_GetSheet tries to lock the global rwlock with read
access, while Servo_CssRules_InsertRule has already locked the same
rwlock with write access for the CSSOM case.

Since the import rule itself is never needed in the code path, it is
easier to just pass in the child stylesheet.

MozReview-Commit-ID: 4njNyGniPIm
2017-04-03 16:18:49 +10:00
Kris Maglione
05600efca8 Bug 1348442: Part 1 - Allow loading preloaded stylesheets asynchronously. r=heycam
These changes allow us to asynchronously load pre-loaded stylesheets, in a way
that's similar to ChromeUtils.compileScript. The new method returns a Promise
which resolves to the preloaded sheet once it's finished loading.

This will allow us to remove the last remaining use of synchronous channels in
moz-extension: URLs.

MozReview-Commit-ID: 7J52ff93YKT
2017-03-19 19:33:49 -07:00
Ting-Yu Lin
900bd55b15 Bug 1338446 Part 3 - Label SheetLoadData in Loader::PostLoadEvent. r=heycam
When constructing a Loader without passing a document, we added a DocGroup
parameter so that we could still use it to dispatch events to the DocGroup.

Delete NS_ENSURE_TRUE because new() is infallable.

Use another runnable pointer for calling dispatching because forget() will
nuke the pointer and we need to use evt afterwards.

MozReview-Commit-ID: Ce2K6j4pUhA
2017-03-13 17:00:57 +08:00
Brad Werth
e83b706eed Bug 1314045 Part 1: Return load table assertion to full force now that Servo stylesheet caching will keep load table consistent. r=heycam
MozReview-Commit-ID: 7IrwZ5oFc6e
2017-03-10 16:57:36 -08:00
Wei-Cheng Pan
13cec13a55 Bug 1310127 - Part 13: Use MOZ_MUST_USE in netwerk/protocol/http r=heycam
MozReview-Commit-ID: 9qpbe86biXz
2016-12-20 17:19:56 +08:00
Brad Werth
0f6acfd3f4 Bug 1339627 Part 2: Change StyleSheet Loader to attempt to cache ServoStyleSheets. r=heycam
MozReview-Commit-ID: 55PJm0H9ltv
2017-02-27 11:20:48 -08:00
Brad Werth
2fd2b8c1ed Bug 1339627 Part 1: Add a Servo-specific StyleSheet table to nsXULPrototypeCache. r=heycam
MozReview-Commit-ID: 98dUNnccdn1
2017-03-06 14:59:37 -08:00
Brad Werth
947eeebc82 Bug 1290218 Part 9: Generalize stylesheet Loader to cache Servo sheets in the same way that it caches Gecko sheets. r=heycam
MozReview-Commit-ID: BUEvgos46By
2017-02-21 14:05:24 -08:00
Brad Werth
79bc1141f0 Bug 1290218 Part 8: Implement ServoStyleSheet Clone. r=heycam
MozReview-Commit-ID: Y2KcoMjhbn
2017-02-15 13:33:17 -08:00
Brad Werth
fc97a7019d Bug 1290218 Part 7: Bypass XULPrototypeCache (which is a singleton) for non-Gecko Loaders. r=heycam
MozReview-Commit-ID: 852rcD2bdYL
2017-02-14 14:44:37 -08:00
Tom Tromey
a4b717ab39 Bug 1060419 - make log_print use Printf.h, r=froydnj
MozReview-Commit-ID: BIZ1GQEZ1vs
2016-12-15 20:16:31 -07:00
Daniel Holbert
d74b889d67 Bug 1339546 part 2: Make layout/style/*.cpp include corresponding .h file as the first header. r=xidorn
MozReview-Commit-ID: 2rZ9z0BgRvN
2017-02-14 11:23:11 -08:00
Tim Huang
b3fb2c8458 Bug 1336802 - Part 2: Updating the whole code base to make sure nsILoadInfo get null check. r=smaug 2017-02-07 11:49:34 +08:00
Tom Tung
c08930401f Bug 1220936 - Flush console report to innerWindowID by using nsIDocument and nsILoadGroup. r=bkelly. 2017-02-06 09:19:34 +08:00
Cameron McCormack
462939028e Bug 1314045 - stylo: Downgrade "Bad loading table" assertion since it occurs frequently. r=me
MozReview-Commit-ID: Hdt37MzhdsZ
2017-01-31 15:10:45 +08:00
Sebastian Hengst
7cc9d78b68 Backed out changeset 0d069e7395e9 (bug 1314045) for Windows build bustage: warning at Loader.cpp(1885). r=backout on a CLOSED TREE 2017-01-31 18:17:09 +01:00
Cameron McCormack
328791f6ef Bug 1314045 - stylo: Downgrade "Bad loading table" assertion since it occurs frequently. r=me
MozReview-Commit-ID: Hdt37MzhdsZ
2017-01-31 17:38:16 +01:00
Sebastian Hengst
a93179b8dc Backed out changeset 4787d54f7aa6 (bug 1314045) 2017-01-31 17:30:25 +01:00
Cameron McCormack
bd336a14ee Bug 1314045 - stylo: Downgrade "Bad loading table" assertion since it occurs frequently. r=me
MozReview-Commit-ID: Hdt37MzhdsZ
2017-01-31 23:36:21 +08:00
Boris Zbarsky
cdbd6b5265 Bug 1332353. Make it clearer when a stylesheet is really owned by its mDocument. r=heycam 2017-01-19 23:49:44 -05:00
Cameron McCormack
896ab5c4c8 Bug 1290209 - Part 9: Don't return early from Loader::PrepareSheet for a ServoStyleSheet. r=xidorn
MozReview-Commit-ID: 8NXajQ6pMqi
2017-01-06 15:05:24 +08:00
Cameron McCormack
58cbf1f191 Bug 1290209 - Part 8: Move CSSStyleSheet::SetEnabled up to StyleSheet. r=xidorn
MozReview-Commit-ID: 7shpy5ghnVR
2017-01-06 15:05:24 +08:00
Cameron McCormack
94872f2e17 Bug 1290209 - Part 7: Rename an argument. r=xidorn
MozReview-Commit-ID: DQ3gTkgnDR2
2017-01-06 15:05:24 +08:00
Cameron McCormack
859fc6143f Bug 1290209 - Part 6: Move CSSStyleSheet::mMedia up to StyleSheet. r=bzbarsky
MozReview-Commit-ID: LZraHzme6vj
2017-01-06 15:05:24 +08:00
Cameron McCormack
c9bbd159a5 Bug 1290209 - Part 1: Move CSSStyleSheet::SetTitle up to StyleSheet. r=xidorn
MozReview-Commit-ID: 2rzn5gba7gw
2017-01-06 15:05:24 +08:00
Emilio Cobos Álvarez
3b5a33d329 Bug 1304792: Use borrowed types for ServoImportRule. r=Manishearth r=heycam
MozReview-Commit-ID: HKjsOaE2qAp
Signed-off-by: Emilio Cobos Álvarez <emilio@crisal.io>
2016-12-30 16:30:42 +01:00
Emilio Cobos Álvarez
6d7b2e91b9 Bug 1304792: stylo: Implement @import. r=heycam
MozReview-Commit-ID: Hw1V66JxIBD
Signed-off-by: Emilio Cobos Álvarez <emilio@crisal.io>
2016-12-30 16:30:41 +01:00
Emilio Cobos Álvarez
88c137a305 Bug 1304792: Minimal Loader and CSSParser cleanup. r=heycam
MozReview-Commit-ID: DYOh8BtK7NT
Signed-off-by: Emilio Cobos Álvarez <emilio@crisal.io>
2016-12-30 16:30:41 +01:00
Xidorn Quan
1125f5e9ab Bug 1323919 - Rename nsIMediaList.h to nsMediaList.h. r=heycam
MozReview-Commit-ID: Ake5srkKJbf
2016-12-16 14:50:36 +11:00
Emilio Cobos Álvarez
4afebc68ce Bug 1029867: Remove useless nsCSSParser::mHTMLMediaMode. r=heycam
MozReview-Commit-ID: AFtd0G4oP3R
2016-12-13 11:39:32 +01:00
Matt Brubeck
5a10c201ca Bug 1292275 - Stylo: Fix crash after failed stylesheet load. r=heycam
Fixes a crash ServoStyleSet::AddDocStyleSheet caused by
ServoStyleSheet::RawSheet returning null.

MozReview-Commit-ID: BdDosompqTv
2016-10-25 10:15:38 -07:00
Paul Bignier
8be94d3031 Bug 1282408 - Add ignore-initialization-check annotation to mStatus from SheetLoadData. r=dbaron 2016-09-26 16:55:53 +02:00
Xidorn Quan
7d6c4129ab Bug 1304302 part 10 - Replace all uses of StyleSheetHandle. r=heycam
This commit is generated by the following commands with some minor
manual adjustment:

find . \( -name '*.h' -or -name '*.cpp' \) -not -path './layout/style/StyleSheet*' -exec sed -i -b \
  -e '/^\(#include\|using\)/s/StyleSheetHandle/StyleSheet/g' \
  -e 's/\(mozilla::\)\?StyleSheetHandle::RefPtr/RefPtr<\1StyleSheet>/g' \
  -e 's/StyleSheetHandle()/nullptr/g' \
  -e 's/->AsStyleSheet()//g' \
  -e 's/StyleSheetHandle/StyleSheet*/g' {} +
sed -i -b 's/sheet->AsVoidPtr()/sheet.get()/' layout/style/Loader.cpp
sed -i -b 's/AsHandle()/this/' layout/style/StyleSheet.cpp

MozReview-Commit-ID: 7abdvlKHukd
2016-09-26 22:03:25 +10:00
Xidorn Quan
7ba350b0a6 Bug 1304302 part 8 - Change include of {CSS,Servo}StyleSheet.h to StyleSheetInlines.h. r=heycam
It is a preparation for later patch which moves functions from those
classes into StyleSheet. Some of the functions are better defined in
StyleSheetInlines.h.

This commit is generated by the following command:

find . \( -name '*.h' -or -name '*.cpp' \) -not -name '*StyleSheet*' -exec sed -i -b \
  -e '/^#include/ s_/\(CSS\|Servo\)StyleSheet\.h_/StyleSheetInlines.h_' \
  -e '1,\_^#include "mozilla/StyleSheetInlines.h"_ ! { \_^#include "mozilla/StyleSheetInlines.h"_d }' {} +

MozReview-Commit-ID: 54H5x27Pmso
2016-09-26 22:03:25 +10:00
Xidorn Quan
bb435b8c71 Bug 1304302 part 2 - Some small fixes. r=heycam
MozReview-Commit-ID: 7rnl4wkMorC
2016-09-26 22:03:25 +10:00
Nicholas Nethercote
c57fffaa55 Bug 1297300 - Add missing checks to GetSpec() calls in layout/. r=dholbert,heycam. 2016-08-31 20:10:10 +10:00
Tom Tung
611a19f2d2 Bug 1187335 - P6 - Support script/css to set integrity metadata to serviceWorker. r=bkelly. r=francois. 2016-09-07 10:30:21 +08:00
Tom Tung
c47f624bce Bug 1187335 - P2 - Modify the way to report to console for worker and use LoadTainting to decide CORS or not. r=bkelly. r=francois. 2016-09-08 09:59:40 +08:00
Nicholas Nethercote
62b6b0fce6 Bug 1297961 (part 1) - Introduce nsURI::GetSpecOrDefault(). r=hurley.
This function is an infallible alternative to nsIURI::GetSpec(). It's useful
when it's appropriate to handle a GetSpec() failure with a failure string, e.g.
for log/warning/error messages. It allows code like this:

  nsAutoCString spec;
  uri->GetSpec(spec);
  printf("uri: %s", spec.get());

to be changed to this:

  printf("uri: %s", uri->GetSpecOrDefault().get());

This introduces a slight behavioural change. Previously, if GetSpec() failed,
an empty string would be used here. Now, "[nsIURI::GetSpec failed]" will be
produced instead. In most cases this failure string will make for a clearer
log/warning/error message than the empty string.
* * *
Bug 1297961 (part 1b) - More GetSpecOrDefault() additions. r=hurley.

I will fold this into part 1 before landing.
2016-08-26 16:02:31 +10:00
Nicholas Nethercote
1cef4f427a Bug 1294620 - Use infallible XPIDL attribute getters more. r=erahm.
This makes a lot of code more compact, and also avoids some redundant nsresult
checks.

The patch also removes a handful of redundant checks on infallible setters.
2016-08-12 15:19:29 +10:00
Bobby Holley
3eac0e7c8d Bug 1291390 - Make parsing mode an immutable property of the StyleSheet. r=heycam 2016-08-03 10:26:14 -07:00
Bobby Holley
dbba604017 Bug 1290214 - Remove NS_ERRORs in css::Loader. r=emilio 2016-07-28 17:25:43 -07:00
Boris Zbarsky
7e5b58da2a Bug 1278919. Don't fire error events on <link rel='stylesheet'> when its loading is blocked in a data document; the fact that we even _try_ to load in that situation is bizarre. r=ckerschb 2016-06-09 14:49:28 -04:00
Ben Kelly
403b1dbda8 Backout dcdbaae3b40f (bug 1278688) r=me 2016-06-08 12:03:31 -07:00
Ben Kelly
10e7d379d5 Bug 1278688 Update stylesheets in nsXULPrototypeCache so that unused CSSStyleSheet objects can be freed. r=heycam 2016-06-08 10:00:21 -07:00
Frederik Braun
7ff2c832e6 Bug 1265318: add require-sri-for CSP directive. r=ckerschb
MozReview-Commit-ID: 200PAvKtBME
2016-05-31 11:14:00 +02:00
Boris Zbarsky
ac1b8752e5 Bug 1268957. Fire an error event on the <link> element when a stylesheet load is blocked via content policy. r=ckerschb 2016-05-27 13:31:20 -04:00
Jonathan Hao
a3ede4dcf7 Bug 1235572 - Enforce SRI if content signature is enforced r=francois
* * *
[mq]: sri_fix

MozReview-Commit-ID: 8vY9J4j3Eog
* * *
[mq]: loadInfo

MozReview-Commit-ID: EZ8BUfCOXO6
* * *
[mq]: add-logs

MozReview-Commit-ID: 1jeyTq9nvlW
2016-03-16 11:13:26 +08:00