Commit Graph

111 Commits

Author SHA1 Message Date
Olli Pettay
5444fa0f06 bug 1472427, <img usemap> should work in shadow DOM, r=baku 2018-07-04 20:26:09 +03:00
Emilio Cobos Álvarez
0348c342b8 Bug 1470930: Use enums for passing arguments for event dispatch. r=smaug
MozReview-Commit-ID: DsNuF7GAflJ
2018-06-26 18:22:06 +02:00
Emilio Cobos Álvarez
4b8b5e1717 Bug 1465585: Switch from mozilla::Move to std::move. r=froydnj
This was done automatically replacing:

  s/mozilla::Move/std::move/
  s/ Move(/ std::move(/
  s/(Move(/(std::move(/

Removing the 'using mozilla::Move;' lines.

And then with a few manual fixups, see the bug for the split series..

MozReview-Commit-ID: Jxze3adipUh
2018-06-01 10:45:27 +02:00
Boris Zbarsky
86d99155db Bug 1455676 part 14. Remove most use of nsIDOMNode in dom/. r=qdot 2018-05-29 22:58:49 -04:00
Emilio Cobos Álvarez
f547e004f9 Bug 1462272: Remove handling for an impossible condition. r=asuth
The frame is notified via its mListener, which is an observer of the
nsImageLoadingContent (mContent).

This last one only notifies for the current and pending requests, otherwise it's
a bug we need to fix there, not wallpaper here, since that'd mean that we forgot
to cancel the previous request. Added assertions to that effect.

Notify() is only called with the this object as a first argument from
imgRequestProxy, so it'd better be non-null, too.

MozReview-Commit-ID: DHaOLph2EAo
2018-05-25 12:09:23 +02:00
Emilio Cobos Álvarez
5ac4ad6640 Bug 1462272: Introduce nsImageFrame::GetCurrentRequest. r=dholbert
MozReview-Commit-ID: IXXtYClyY2z
2018-05-25 12:09:42 +02:00
Valentin Gosu
a8351c5f7b Bug 1448058 - Remove nsIMutable from URI implementations r=mayhemer
* Also removes NS_TryToMakeImmutable, NS_TryToSetImmutable, URIIsImmutable
* NS_EnsureSafeToReturn, nsINetUtil.toImmutableURI

MozReview-Commit-ID: 5eFtFm2CQt7
2018-05-09 18:21:24 +02:00
Chris Peterson
5d6b16ea3b Bug 1457813 - Part 2: Replace non-asserting NS_PRECONDITIONs with MOZ_ASSERTs. r=froydnj
s/NS_PRECONDITION/MOZ_ASSERT/ and reindent

MozReview-Commit-ID: KuUsnVe2h8L
2018-04-28 12:50:58 -07:00
Boris Zbarsky
3eae99ffd8 Bug 1445670. Make sure to clear out the pending request when our image gets blocked by the data document policy. r=jdm 2018-04-04 14:40:01 -04:00
Brad Werth
bad66f2be2 Bug 1418930 Part 1: Define and use a method nsContentUtils::CORSModeToLoadImageFlags to standardize conversion of CORS modes to load image flags. r=bz
MozReview-Commit-ID: AqsEUhFYxH6
2018-01-31 11:10:01 -05:00
Andreea Pavel
d12d04aff1 Backed out 5 changesets (bug 1418930) for failing web platform tests at /service-workers/service-worker/fetch-request-css-images.https.html on a CLOSED TREE
Backed out changeset c0f673033e66 (bug 1418930)
Backed out changeset b39948ba905b (bug 1418930)
Backed out changeset 8008a54aba9a (bug 1418930)
Backed out changeset 105c81284dba (bug 1418930)
Backed out changeset 27eb8c7f8025 (bug 1418930)
2018-02-03 00:18:27 +02:00
Brad Werth
784e6f8b06 Bug 1418930 Part 1: Define and use a method nsContentUtils::CORSModeToLoadImageFlags to standardize conversion of CORS modes to load image flags. r=bz
MozReview-Commit-ID: AqsEUhFYxH6
2018-01-31 11:10:01 -05:00
Boris Zbarsky
9e1766595b Bug 1431774 part 7. de-COM the image loading content forceImageState API. r=mystor
MozReview-Commit-ID: LKlo36VHKP5
2018-01-19 14:19:39 -05:00
Boris Zbarsky
a08e3cd0c5 Bug 1431774 part 6. de-COM the image loading content forceReload API. r=mystor
MozReview-Commit-ID: 4n5BFQcHopU
2018-01-19 14:19:39 -05:00
Boris Zbarsky
49deedef9d Bug 1431774 part 5. de-COM the image loading content setBlockedRequest API. r=mystor
MozReview-Commit-ID: 1hm4WzQK93U
2018-01-19 14:19:39 -05:00
Boris Zbarsky
410ad0ad47 Bug 1431774 part 4. de-COM the image loading content observer APIs. r=mystor
MozReview-Commit-ID: KwWBFXNzWVx
2018-01-19 14:19:39 -05:00
Boris Zbarsky
c93e01e7c4 Bug 1431774 part 3. de-COM the image loading content loadingEnabled API. r=mystor
MozReview-Commit-ID: 3JpN3ZZVNg3
2018-01-19 14:19:39 -05:00
Samael Wang
dc937d2114 Bug 1406253 - Part 2: Implement nsIImageLoadingContent.currentRequestFinalURI. r=bz
ImageLoadingContent.currentURI returns the "URI" of currentRequest, which is
the URI used to start that request.  Some consumers need to know the final URI
of that request instead.

If the image request gets redirected on loading (e.g. an add-on intercepts the
request), currentRequestFinalURI will be the redirected URI, while currentURI
would be the original URI before redirect.

MozReview-Commit-ID: 9lX063uAIp1
2017-11-14 18:20:03 +08:00
Noemi Erli
d38996e0ff Backed out 3 changesets (bug 1406253)for build bustage in dom/base/nsCopySupport.cpp r=backout on a CLOSED TREE
Backed out changeset 284f3cc2880c (bug 1406253)
Backed out changeset aecb3d509a39 (bug 1406253)
Backed out changeset 9ce01198e8a1 (bug 1406253)
2017-11-20 13:34:29 +02:00
Samael Wang
285be03a55 Bug 1406253 - Part 2: Implement nsIImageLoadingContent.currentRequestFinalURI. r=bz
ImageLoadingContent.currentURI returns the "URI" of currentRequest, which is
the URI used to start that request.  Some consumers need to know the final URI
of that request instead.

If the image request gets redirected on loading (e.g. an add-on intercepts the
request), currentRequestFinalURI will be the redirected URI, while currentURI
would be the original URI before redirect.

MozReview-Commit-ID: 9lX063uAIp1
2017-11-14 18:20:03 +08:00
Andrew Osmond
aa5a774352 Bug 1404422 - Part 4. Remove imgIOnloadBlocker and related from tree as redundant. r=tnikkel 2017-11-01 06:59:10 -04:00
Yoshi Huang
5664871e42 Bug 1407498 - Don't query loadingprincipal in common case. r=baku
We queried 'loadingprincipal' attribute on the common call path, however
this should be queried if it's loaded by System Principal.

Also rename loadingprincipal to triggeringprincipal
2017-10-24 10:13:31 +08:00
Kris Maglione
ae7452e40e Bug 1406278: Part 2b - Use subject principal as triggering principal in <img> "src" attribute. r=bz
MozReview-Commit-ID: DrblTjP99WJ
2017-10-02 20:28:32 -07:00
Kris Maglione
294cbcd20a Bug 1406278: Part 2a - Rename LoadingPrincipal to TriggeringPrincipal in imgLoader. r=bz
The imgLoader code consistently uses the term 'loadingPrincipal' for the
principal that is called the triggeringPrincipal everywhere else it's used.
This is confusing, and since we need to make changes to how those values are
determined, it should be fixed beforehand.

MozReview-Commit-ID: 8CTHwayzcaD
2017-10-02 20:38:30 -07:00
Yoshi Huang
0b67670ad3 Bug 1376971 - Part 3: Query loadingprincipal attribute in image. r=baku
For image loading, we try to query if the node has 'loadingprincipal'
attribute. If it does, we use the deserialized value of
'loadingprincipal', and change the contentPolicyType to favicon, as we
will set the origin attribute on the loadInfo of the channel if the
contentType is favicon in [1].

[1]: http://searchfox.org/mozilla-central/rev/d08b24e613cac8c9c5a4131452459241010701e0/image/imgLoader.cpp#782
2017-09-26 12:41:23 +08:00
Kershaw Chang
c4c64cf6ee Bug 1247843 - Part 3: Set request context ID to the http channel created in imgLoader::LoadImage. r=baku
In order to let necko postpone the load of favicon, we have to set request context ID to the http channel that is created to load favicon.
This patch starts with passing a request context ID to nsContentUtils::LoadImage and makes other necessary changes to set the request context ID to the channel.
2017-09-20 20:09:00 -04:00
Jonathan Watt
e3204e3c0c Bug 1401356, part 2 - Rename nsSVGEffects to SVGObserverUtils. r=longsonr 2017-08-30 15:58:31 +01:00
Jonathan Watt
7428c44f4d Bug 1401356, part 1 - Rename nsSVGEffects.h/.cpp to SVGObserverUtils.h/.cpp. r=longsonr 2017-08-30 14:14:46 +01:00
Yoshi Huang
08d9e92b64 Bug 1371545 - Remove NS_ERROR_IMAGE_SRC_CHANGED and NS_ERROR_IMAGE_BLOCKED. r=smaug 2017-08-22 19:02:09 +08:00
Andrew Osmond
052d2f4005 Bug 1359833 - Part 6. nsImageLoadingContent should not associate scripted and XPCOM observers with the same document. r=tnikkel 2017-07-19 14:15:11 -04:00
Andrew Osmond
0bae6517a7 Bug 1359833 - Part 5. Callers pass the loading document to imgRequestProxy::SyncClone and GetStaticRequest. r=tnikkel 2017-07-19 14:15:11 -04:00
Timothy Nikkel
d18e232243 Bug 1376087. r=bz 2017-06-28 18:45:55 -04:00
Masatoshi Kimura
a725dc3e13 Bug 1373984 - Turn nsIDocument::mCharacterSet into mozilla::NotNull<const mozilla::Encoding*>. r=hsivonen
MozReview-Commit-ID: GF0YXDwfA14
2017-06-18 20:37:50 +09:00
Sebastian Hengst
9736fc0664 Backed out changeset 7235d05662b0 (bug 1373984) for Android bustage. r=backout on a CLOSED TREE 2017-06-25 18:30:13 +02:00
Masatoshi Kimura
cff1fdcb48 Bug 1373984 - Turn nsIDocument::mCharacterSet into mozilla::NotNull<const mozilla::Encoding*>. r=hsivonen
MozReview-Commit-ID: GF0YXDwfA14
2017-06-18 20:37:50 +09:00
Wes Kocher
d214d1f5fa Backed out changeset 77af189b5c49 (bug 1373984) for build bustage in nsHtml5Parser.cpp a=backout CLOSED TREE
MozReview-Commit-ID: 6kBmU71j2To
2017-06-25 05:10:14 -07:00
Masatoshi Kimura
d3e74dcb2d Bug 1373984 - Turn nsIDocument::mCharacterSet into mozilla::NotNull<const mozilla::Encoding*>. r=hsivonen
MozReview-Commit-ID: GF0YXDwfA14
2017-06-18 20:37:50 +09:00
Nicholas Nethercote
4cbdad69e6 Bug 1374580 (part 2) - Remove nsAFlat{,C}String typedefs. r=froydnj.
All the instances are converted as follows.

- nsAFlatString  --> nsString
- nsAFlatCString --> nsCString
2017-06-20 19:19:05 +10:00
Yoshi Huang
a3c08c244f Bug 1267075 - Part 4: add a boolean to prevent calling asynchronously. r=bz
Use a boolean to prevent calling SetBlockedRequest asynchronously.
Also use the same boolean to prevent some evil code reenters LoadImage.

Then we should redesign the correct bahavior in those follow-up bugs,
Bug 1353685 - Should ServiceWorker call SetBlockedRequest
Bug 1353683 - consider calling SetBlockedRequest in nsCORSListenerProxy::UpdateChannel
Bug 1371237 - consider calling SetBlockedRequest in nsContentSecurityManager::CheckChannel
2017-06-16 10:12:09 +08:00
Yoshi Huang
6b043f1e55 Bug 1267075 - Part 2: bail out early if it's for data document. r=bz
Check the document earlier before calling into imageLoader, this could
save us tons of time if in the end the document isn't allowed to load images.
2017-06-16 10:12:09 +08:00
Yoshi Huang
0a06b907b5 Bug 1267075 - Part 1: call SetBlockedRequest when CSP check failed. r=bz
As a follow-up from bug 1206961, we will remove calling CanLoadImage in
this bug. Also in the case of CSP check failed, we will call
SetBlockedRequest in those cases.

See https://bugzilla.mozilla.org/show_bug.cgi?id=1267075#c30 for the
analysis between the old and new setup.
2017-06-16 10:12:08 +08:00
Timothy Nikkel
0063a0e701 Bug 1366875. Apply the same sync decoding heuristic to SVG <image> as we do to HTML <img>. r=mats 2017-05-23 14:11:13 -05:00
Tom Tung
dc2648e8f2 Bug 1348050 - Part 3: Mark channel as urgent-start for loading image. r=baku,mayhemer
This part is mainly to mark the channel as urgent-start if src related
attributes in HTMLImageElement and HTMLInputElement is set and the channel is
open due to user interaction. Unfortunately, we cannot just check the event
state just after creating channel since some loading image tasks will be queue
and execute in stable state. Thus, I store the event state in elements and
pass it to the place where create the channel.

MozReview-Commit-ID: GBdAkPfVzsn
2017-04-25 09:17:38 +08:00
Nicholas Nethercote
c768a954ae Bug 1358320 - Make TimeStamp::ProcessCreation()'s outparam optional. r=gsvelto.
TimeStamp::ProcessCreations()'s aIsInconsistent outparam is ignored by the
majority of its caller. This patch makes it optional. Notably, this makes
ProcessCreation() easier to use in a constructor's initializer list.
2017-04-26 14:55:54 +10:00
Timothy Nikkel
1f38cc946b Bug 1348972. nsImageLoadingContent::MakePendingRequestCurrent should transfer mPendingRequestRegistered flag to mCurrentRequestRegistered. r=mats 2017-04-01 00:35:32 -05:00
Timothy Nikkel
f049521b53 Bug 1346501. Remove mFrameCreateCalled from nsImageLoadingContent, it is now unused. r=mats 2017-03-22 00:32:50 -05:00
Timothy Nikkel
3d9218756c Bug 1346501. Don't mark every image as visible when a frame is created for it. r=mats
This is a bug from https://hg.mozilla.org/mozilla-central/rev/2d171d75b746 (bug 1157546). It took a shortcut in trying to get around one of the downsides of tracking visibility on frames instead of content nodes.

We cannot get our primary frame during FrameCreate calls because FrameCreate is called during the frame's Init() function, which happens before the primary frame pointer is set.

So when TrackImage is called from FrameCreate |frame| will be null but mFrameCreateCalled will be true. So we won't hit the early return that tries to detect nonvisible images.

The comment being removed is just wrong. We can obtain a frame for <feImage> just as well as any other image type.

The thing that is different about <feImage> is that it calls IncApproximateVisibleCount() followed by FrameCreated() in the frame's Init() function. This means that the frame is marked visible at the time of the FrameCreated, and there will be no further calls to TrackImage (because there are no further changes). So the FrameCreated call is the last chance to mark this image visible. The regressing changeset tries to get around this by just considering the image visible whenever we know a frame exists (because of mFrameCreateCalled) but can't access it. This ends up affecting all types of images, not just <feImage>.

The above paragraph is also true for SVG <image> that are non-display.
2017-03-22 00:32:48 -05:00
Boris Zbarsky
26af9e4884 Bug 1347639. Add nsImageLoadingContent::AsContent to make getting the relevant nsIContent* faster. r=qdot
MozReview-Commit-ID: 9sE3pbHwYbV
2017-03-16 17:43:34 -04:00
Sylvestre Ledru
e3d60e5b2e Bug 1338086 - Remove useless else blocks in order to reduce complexity in dom/base/ r=Ehsan
MozReview-Commit-ID: 5sCNbqC4ew3
2017-02-09 15:44:02 +01:00
Edgar Chen
d2e195aa40 Bug 1321300 - Back out bug 1264768 and add test; r=hsivonen
MozReview-Commit-ID: KsN18tG0Ptb
2017-01-09 11:50:55 +08:00