Граф коммитов

741 Коммитов

Автор SHA1 Сообщение Дата
Tristan Bourvon a3a77c0312 Bug 525063 - Initialize uninitialized class attributes in m-c. r=ehsan 2018-04-10 21:11:02 +02:00
Xidorn Quan 4cf9aed667 Bug 1449400 part 5 - Remove StyleSetHandle. r=emilio
This patch basically does:
* remove StyleSetHandle and its corresponding files
* revisit #includes of related header files and change correspondingly
* change nsIPresShell::mStyleSet to be UniquePtr<ServoStyleSet>
* change the creating path of ServoStyleSet to pass UniquePtr
* change other mentions of StyleSetHandle to ServoStyleSet*
* remove AsServo() calls on ServoStyleSet

Some unfortunate bits:
* some methods of (Servo)StyleSet only accepts ServoStyleSheet while
  many places call into the methods with StyleSheet, so there are many
  ->AsServo() added to sheets

MozReview-Commit-ID: K4zYnuhOurA

--HG--
extra : rebase_source : 459e8efeb171adad089d94272e143e8c244bd279
extra : source : 65ba2f174fcf7dba4e59c00ee8908b1bd0820a48
2018-03-29 22:15:46 +11:00
Xidorn Quan d81392eca1 Bug 1447828 part 6 - Have only a single nsLayoutStylesheetCache instance. r=emilio
MozReview-Commit-ID: BjCgc8MZjIq

--HG--
extra : rebase_source : 104140c2eed5987b5568aca89a72bc7d5e3ed839
extra : source : cd66e264953865b0604054fb9d0b741d0ae19ebf
2018-03-29 02:34:34 +11:00
Boris Zbarsky df07d2d834 Bug 1447890 part 5. Remove nsISelection::RemoveAllRanges. r=mystor
MozReview-Commit-ID: EeMje9KW6An
2018-03-27 00:35:23 -04:00
Boris Zbarsky 54d1f87ff4 Bug 1447890 part 1. Remove nsISelection::AddRange. r=mystor
MozReview-Commit-ID: 1JNLZp7tbII
2018-03-27 00:35:22 -04:00
Boris Zbarsky a8a190f4e1 Bug 1447889 part 14. Remove mention of nsIDOMRange from layout/. r=mystor
MozReview-Commit-ID: JWJWGzY45ac
2018-03-27 00:35:22 -04:00
Boris Zbarsky 37b111ac2a Bug 1447472 part 2. Remove nsIDOMCustomEvent. r=qdot
MozReview-Commit-ID: 3NPqLIU8cka
2018-03-26 14:53:51 -04:00
Boris Zbarsky 29d232e53f Bug 1447098 part 1. Rename FromContent on various DOM classes to FromNode. r=mystor
MozReview-Commit-ID: 202nkbmkwfR
2018-03-21 17:39:04 -04:00
Boris Zbarsky 5475554b91 Bug 1446533 part 7. Remove nsIDOMCharacterData::InsertData. r=mystor
MozReview-Commit-ID: 48XZ2J9ewHP
2018-03-19 15:38:04 -04:00
Emilio Cobos Álvarez 043503a6d4 Bug 1024082: Remove most of the nsIPresShell::FrameManager calls. r=dholbert
Most of them just want GetRootFrame(), and there's no need to explicitly go
through the frame manager for that, we have a handy alias in the shell.

MozReview-Commit-ID: GriEqkasidY
2018-03-07 10:17:49 +01:00
Jonathan Watt 88c85e4536 Bug 499025 - Don't open an error pop-up if the user cancels printing. r=bobowen
This fixes PrintTargetWindows::BeginPrinting to detect when the
user cancels and have it return NS_ERROR_ABORT in that case.

The rest of the changes are simply making sure that the various
call points up the call stack don't print a warning message if
NS_ERROR_ABORT is returned up from
PrintTargetWindows::BeginPrinting.

MozReview-Commit-ID: 6xZ5SPje6TT
2018-02-06 20:14:47 +00:00
Bob Owen 2c3ffe3ac4 Bug 1441598: Don't try and send messages to PrintProgressDialogChild when printing is complete. r=jwatt 2018-03-05 08:22:14 +00:00
Ben Kelly 75bf35692e Bug 1440407 P2 Remove some unnecessary nsPIDOMWindowInner QI to nsIGlobalObject. r=mystor 2018-02-22 14:28:39 -08:00
Emilio Cobos Álvarez 432d45b460 Bug 1439027: Simplify PresShell::Initialize. r=bz
Most of the callers pass the already-existing pres-context visible area. The few
that don't can set it themselves.

MozReview-Commit-ID: KRi4ShrgOrE
2018-02-21 12:42:17 +01:00
Jonathan Watt 176a890dbf Bug 1432409 part 2 - Make RemotePrintJobChild::OnStatusChange no-op if initialization failed. r=dholbert
After the part 1 fix, we can still (asynchronously) call some generic cleanup
code that tries to let the parent process's RemotePrintJobParent know that
printing failed under the stack:

  RemotePrintJobChild::OnStatusChange
  nsPrintData::DoOnStatusChange
  nsPrintJob::FirePrintingErrorEvent
  nsPrintJob::CleanupOnFailure

We crash on trying to use the RemotePrintJobChild to message the parent process
since the delete message from the parent has been processed.  This change makes
RemotePrintJobChild::OnStatusChange check that it's initialized before trying
to send any messages.

Pushing to CLOSED TREE since this passed a full Try build and is a topcrash
we want to land for beta ASAP.

MozReview-Commit-ID: FfizRMj2s2m
2018-02-19 23:25:30 +00:00
Chris Peterson d09123f248 Bug 1436263 - Part 1: Replace `final override` virtual function specifiers with just `final`. r=froydnj
MozReview-Commit-ID: DE5HkIhsZ6D

--HG--
extra : rebase_source : 94831c1e13a840dd2ea0600f64bcf70c2bf938d9
extra : source : cf9283bf1b0bca3a6311c98e227329d451f80ecb
2018-02-05 22:46:57 -08:00
Boris Zbarsky 034e47c66b Bug 1436508 part 12. Remove nsIDOMKeyEvent. r=masayuki
MozReview-Commit-ID: 8giqG5iHiIf
2018-02-09 11:17:10 -05:00
Boris Zbarsky f0d195b828 Bug 1434318 part 10. Remove nsIDOMDocument's title attribute. r=mystor
MozReview-Commit-ID: IBToVxx4bSs
2018-01-31 15:18:10 -05:00
Boris Zbarsky c62e23596a Bug 1434318 part 2. Stop using nsIContentViewer::GetDOMDocument in C++. r=mystor
MozReview-Commit-ID: FoMoVgCngGR
2018-01-31 15:18:09 -05:00
Boris Zbarsky 45afd61f33 Bug 1434318 part 1. Make nsIContentViewer's DOMDocument readonly. r=mystor
No one ever assigns to it in JS anyway.

MozReview-Commit-ID: EAoOXSFnwtl
2018-01-31 15:18:09 -05:00
Andrea Marchesini b8bb98af8c Bug 1430997 - Rename nsINode::IndexOf to nsINode::ComputeIndexOf, r=catalinb 2018-01-23 14:30:18 +01:00
Jonathan Watt 8bd20e34c7 Bug 1432203 - Remove nsIPrintStatusFeedback. r=bobowen
MozReview-Commit-ID: 32RoyQ6GPEP
2018-01-15 11:42:15 +00:00
Bob Owen 8ed9ad2db9 Bug 1431475: Make assertions guarding opening and closing print recording file streams MOZ_DIAGNOSTIC_ASSERTs. r=jwatt 2018-01-22 17:54:53 +00:00
Jonathan Watt d80eff51f9 Bug 1430619 part 3 - Remove nsIContentViewerContainer. r=smaug
MozReview-Commit-ID: BxpgH0DPKQw
2018-01-11 12:27:00 +00:00
Jonathan Watt e04dd6678d Bug 1430682 - Use OwningNonNull for nsPagePrintTimer::mDocViewerPrint and remove null checks. r=bobowen
MozReview-Commit-ID: 5CPaYTA2PrC
2018-01-09 22:21:53 +00:00
Jonathan Watt d75df097a4 Bug 1430686 - Rename the document viewer "DestroyRefCount" member and methods. r=bobowen
MozReview-Commit-ID: KGUJXOKEQjV
2018-01-08 16:59:31 +00:00
Jonathan Watt 7085690980 Bug 1430683 - Remove nsPrintData::mOrigDCScale. r=bobowen
MozReview-Commit-ID: 3iUiCuiVBei
2018-01-08 11:43:16 +00:00
Chris Peterson 37efe4d0e6 Bug 1428535 - Add missing override specifiers to overridden virtual functions. r=froydnj
MozReview-Commit-ID: DCPTnyBooIe

--HG--
extra : rebase_source : cfec2d96faeb11656d86d760a34e0a04cacddb13
extra : intermediate-source : 6176724d63788b0fe8caa3f91607c2d93dbaa7ec
extra : source : eebbb0600447f9b64aae3bcd47b4be66c02a51ea
2017-11-05 19:37:28 -08:00
Bob Owen 0521695fbd Bug 1426087: Decrement nsDocumentViewer::mDestroyRefCount in a separate function. r=jwatt 2018-01-12 10:17:36 +00:00
L. David Baron 95ceb13927 Bug 1429645 - Make EXTENDED_DEBUG_PRINTING compile again. r=jwatt
MozReview-Commit-ID: B0JIbPpl8LW

--HG--
extra : transplant_source : %2B%9C%AD%87%F8%E5%86%F8%89fg%C6%8C%E1%9B_%ED%F2%A3%89
2018-01-11 15:58:07 -08:00
Mantaroh Yoshinaga b43ceba6b4 Bug 1419775 - Part 2.Notify closing IPC connection to PrintProgressService. r=bobowen
If the content process which is printing target content is closed
during printing, PrintProgressService will continue to display
progress dialog even if Cancel is clicked.

This patch will:
 * If IPC connection is closed, notify to PrintProgressService via
   nsIWebProgressListener.

MozReview-Commit-ID: DoOfJjnk1wJ

--HG--
extra : rebase_source : 861d36fca15fe156645235cdc77bc9461363a0b0
2018-01-10 09:02:45 +09:00
Alex Gaynor 9054c73f6f Bug 1427012 - make the stream class used in printing more resilient to runtime errors, instead of crashing; r=bobowen
MozReview-Commit-ID: 6ExIvOAWfQX

--HG--
extra : rebase_source : fcf88ea80bb0f202c1d28396f554b612fe73fcf1
2018-01-05 14:52:54 -05:00
Jonathan Watt 5f2f637eed Bug 1425641, part 2 - Remove lots of static methods from the nsPrintJob interface. r=bobowen
MozReview-Commit-ID: tuhMTI2Lv8
2017-12-06 12:47:19 +00:00
Jonathan Watt 2bd2161291 Bug 1425641, part 1 - Collect nsPrintJob members and remove some unneeded methods. r=bobowen
MozReview-Commit-ID: 8Z64aE5f61j
2017-12-06 10:12:44 +00:00
Andrea Marchesini 00e79ef07b Bug 1425321 - Renaming nsINode::GetChildAt to GetChildAt_Deprecated, r=catalinb
We want to deprecate nsINode::GetChildAt as the first step of removing DOM node
child array storage. See bug 651120.
2018-01-03 13:59:54 +01:00
Ciure Andrei 7c67b86074 Backed out 4 changesets (bug 1425641) for failing bc tests toolkit/components/printing/tests/browser_page_change_print_original.js r=backout a=backout on a CLOSED TREE
Backed out changeset 05966b36d7d6 (bug 1425641)
Backed out changeset 8a2305426cf2 (bug 1425641)
Backed out changeset c739bef415f1 (bug 1425641)
Backed out changeset 8339ddfe0a54 (bug 1425641)
2017-12-25 05:07:43 +02:00
Jonathan Watt 4ba31c1984 Bug 1425641, part 3 - Remove lots of static methods from the nsPrintJob interface. r=bobowen
MozReview-Commit-ID: 6T3h7hR6Kcg

--HG--
extra : rebase_source : ba29d0f4b15c575ccfceee6caf084b43cf59f124
2017-12-06 12:47:19 +00:00
Jonathan Watt 1d609cb1b5 Bug 1425641, part 2 - Remove nsPrintJob::mOldPrtPreview. r=bobowen
MozReview-Commit-ID: Bu4SheVyDGD

--HG--
extra : rebase_source : 01fb811441d3703b992a1a9c2e21431e0491fd76
2017-12-06 10:49:22 +00:00
Jonathan Watt 46335998ec Bug 1425641, part 1 - Collect nsPrintJob members and remove some unneeded methods. r=bobowen
MozReview-Commit-ID: 8Z64aE5f61j

--HG--
extra : rebase_source : acaaaafaecf961160244a67e028adbe4bddf0e5b
2017-12-06 10:12:44 +00:00
Jonathan Watt f239219d4f Bug 1425178 - Rename nsPrintEngine to nsPrintJob. r=bobowen
MozReview-Commit-ID: 2HCNmeOLPd3

--HG--
rename : layout/printing/nsPrintEngine.cpp => layout/printing/nsPrintJob.cpp
rename : layout/printing/nsPrintEngine.h => layout/printing/nsPrintJob.h
2017-12-04 11:44:17 -06:00
Mantaroh Yoshinaga 8ecd3aa6bd Bug 1246883 - Load UA Stylesheet when printing the SVG document. r=jwatt
Currently, Gecko load only minimal-xul.css if the document is the SVG[1].
In the case of printing SVG document, gecko should load ua.css for using style
which related to print.

This patch will load ua.css when printing the SVG document.

[1] http://searchfox.org/mozilla-central/rev/67f38de2443e6b613d874fcf4d2cd1f2fc3d5e97/layout/base/nsDocumentViewer.cpp#2472

MozReview-Commit-ID: JtdaEvX8QTw

--HG--
extra : rebase_source : 6208827fce6639f6175a875b93d3a0371281b35a
2017-12-13 08:58:05 +09:00
cku 1d858e08d2 Bug 1399787 - Part 14. Prevent RemotePrintJobChild using ipc calls after the channel was destroyed. r=jwatt
If in the future nsDeviceContextSpecWin::BeginDocument was to return
NS_ERROR_FAILURE, then the channel between RemotePrintJobParent and
RemotePrintJobChild will be close at [1]. RemotePrintJobChild keep using ipc
calls after the channel is broken and hits assertions.

PS:
We always hits this assertion by forcing nsDeviceContextSpecWin::BeginDocument
returning NS_ERROR_FAILURE. It's not relative to the change we made in
previous patches.

[1]
https://hg.mozilla.org/mozilla-central/file/b186fddce27f/layout/printing/ipc/RemotePrintJobParent.cpp#l44
MozReview-Commit-ID: 79mZBf301nb

--HG--
extra : rebase_source : 58076a18be56d7eea37ea2f5a147db0048e3493f
extra : intermediate-source : 88df2caad42694dd77f2a518ea8d460d6c88b8c6
extra : source : b920088860904c5d28f3dd2f6eda790dc09be003
2017-10-23 15:57:18 +08:00
cku a545e475c8 Bug 1399787 - Part 12. Delay dispatching FinalizePrint message until the last page was processed. r=jwatt
For the last page, here is the final three messages sent between the content
process, RemotePrintJobChild, and the chrome process, RemotePrintJobParent, for
printing:
1. The content process sends *ProcessPage* to the chrome process via
   SendProcessPrint to request the chrome process print the last page.
2. The content process sends *FinalizePrint* to the chrome process via
   SendFinalizePrint to notify the chrome that there are no more outstanding
   print requests, and that the chrome process can release interal resource
   now.
3. The content process receive PageProcessed message from the chrome process.

This calling sequence is fine for sync style PrintTarget (even though the
FinalizePrint message is sent out a bit ealy). Since a sync PrintTarget
completes its print task right after receiving *ProcessPage* message in #1,
sending FinalizePrint before getting PageProcessed response is harmless.

But this message dispatching sequence does cause a problem for async style
PrintTargetEMF. After getting a message sent in #2, PrintTargetEMF release all
resources before getting a EMF conversion response from the PDFium process. So
the last page can not be printed correctly. This patch reorder the #2 and #3
message, that is to send FinalizePrint after the content process received
PageProcessed message of the last page.

MozReview-Commit-ID: 9ZVSrFnuHBU

--HG--
extra : rebase_source : a54b264998abeeeb0814768e1dd3f6749de97def
extra : source : 70ce23becf8840408cd72e7f933a167090519c09
2017-11-06 16:28:51 +08:00
cku 7f167d3fc5 Bug 1399787 - Part 11.c. Add assertions to make sure no page-done callback from the PrintTarget after the print job done. r=jwatt
MozReview-Commit-ID: FsDqjpy2wtR

--HG--
extra : rebase_source : 76a77c2f1f1ca54e3b8dec53581e1ba9a0e71b03
2017-11-30 11:55:12 +08:00
cku 1162cb1de7 Bug 1399787 - Part 11.b. Use PrintTargetEMF to print chrome documents. r=jwatt
MozReview-Commit-ID: 9BjQ8PIZAWL

--HG--
extra : rebase_source : 510632b481a066e59b1ca8bd254e76afefa3b1a7
extra : source : 2091394a5746d40eec9bfd1acc2741b19f9a54e6
2017-11-13 15:29:32 +08:00
cku 3654a24e84 Bug 1399787 - Part 11.a. Use PrintTargetEMF to print content documents. r=jwatt
Before we introduce PrintTargetEMF, all PrintTargets finish page printing task
before the end of PrintTarget::EndPage(). Unlike others, a page printing
in PrintTargetEMF is done after receiving an async callback from the pdfium
process. So we have both async and sync page printing behavior now. This patch
is trying to make both of them work correctly while priting a content document.

MozReview-Commit-ID: 2PHJToFlvtu

--HG--
extra : rebase_source : 9d2d7cf7330a157a0e5c6a414c75de94ca3fb5a1
extra : source : f61eb00f83acf45511d8448922212dccb12b05aa
2017-11-05 04:36:37 +08:00
Cosmin Sabou 79d933ec34 Backed out 22 changesets (bug 1399787) for shutdown leaks on windows 7 debug tc-M without e10s r=backout on a CLOSED TREE
Backed out changeset 463d676df5da (bug 1399787)
Backed out changeset fc9776a2605d (bug 1399787)
Backed out changeset 2e91a90dfbc3 (bug 1399787)
Backed out changeset e82ab72f71ee (bug 1399787)
Backed out changeset d7fef200e8b9 (bug 1399787)
Backed out changeset a7d70f7f3335 (bug 1399787)
Backed out changeset 2800f9d20d96 (bug 1399787)
Backed out changeset 9dfa404abf9d (bug 1399787)
Backed out changeset 09b3c172a01e (bug 1399787)
Backed out changeset f9fd3e750636 (bug 1399787)
Backed out changeset 01284c55bf8a (bug 1399787)
Backed out changeset c2ab1b454283 (bug 1399787)
Backed out changeset e7bfa51404c5 (bug 1399787)
Backed out changeset 3fd2a734f887 (bug 1399787)
Backed out changeset ef21f295db3f (bug 1399787)
Backed out changeset c186893ce0fc (bug 1399787)
Backed out changeset 323da3bddaaa (bug 1399787)
Backed out changeset 3b89f189edff (bug 1399787)
Backed out changeset a47bd86c35ee (bug 1399787)
Backed out changeset 558526301a4c (bug 1399787)
Backed out changeset baa99fb50ba9 (bug 1399787)
Backed out changeset 6d82ed0ba805 (bug 1399787)
2017-12-08 13:09:56 +02:00
cku 843516539c Bug 1399787 - Part 14. Prevent RemotePrintJobChild using ipc calls after the channel was destroyed. r=jwatt
If in the future nsDeviceContextSpecWin::BeginDocument was to return
NS_ERROR_FAILURE, then the channel between RemotePrintJobParent and
RemotePrintJobChild will be close at [1]. RemotePrintJobChild keep using ipc
calls after the channel is broken and hits assertions.

PS:
We always hits this assertion by forcing nsDeviceContextSpecWin::BeginDocument
returning NS_ERROR_FAILURE. It's not relative to the change we made in
previous patches.

[1]
https://hg.mozilla.org/mozilla-central/file/b186fddce27f/layout/printing/ipc/RemotePrintJobParent.cpp#l44
MozReview-Commit-ID: 79mZBf301nb

--HG--
extra : rebase_source : a2de88bb45bc2fe8cbe9a0ca5327f09268a34b6d
extra : intermediate-source : 88df2caad42694dd77f2a518ea8d460d6c88b8c6
extra : source : b920088860904c5d28f3dd2f6eda790dc09be003
2017-10-23 15:57:18 +08:00
cku 3e848a98ac Bug 1399787 - Part 12. Delay dispatching FinalizePrint message until the last page was processed. r=jwatt
For the last page, here is the final three messages sent between the content
process, RemotePrintJobChild, and the chrome process, RemotePrintJobParent, for
printing:
1. The content process sends *ProcessPage* to the chrome process via
   SendProcessPrint to request the chrome process print the last page.
2. The content process sends *FinalizePrint* to the chrome process via
   SendFinalizePrint to notify the chrome that there are no more outstanding
   print requests, and that the chrome process can release interal resource
   now.
3. The content process receive PageProcessed message from the chrome process.

This calling sequence is fine for sync style PrintTarget (even though the
FinalizePrint message is sent out a bit ealy). Since a sync PrintTarget
completes its print task right after receiving *ProcessPage* message in #1,
sending FinalizePrint before getting PageProcessed response is harmless.

But this message dispatching sequence does cause a problem for async style
PrintTargetEMF. After getting a message sent in #2, PrintTargetEMF release all
resources before getting a EMF conversion response from the PDFium process. So
the last page can not be printed correctly. This patch reorder the #2 and #3
message, that is to send FinalizePrint after the content process received
PageProcessed message of the last page.

MozReview-Commit-ID: 9ZVSrFnuHBU

--HG--
extra : rebase_source : 2b4f9efa1352f7255576ae7c688c5a3750b7db42
extra : source : 70ce23becf8840408cd72e7f933a167090519c09
2017-11-06 16:28:51 +08:00
cku 9d58eb170e Bug 1399787 - Part 11.c. Add assertions to make sure no page-done callback from the PrintTarget after the print job done. r=jwatt
MozReview-Commit-ID: FsDqjpy2wtR

--HG--
extra : rebase_source : 3c1db998b483e7eaea3c6ffae8fdea139fed32b7
2017-11-30 11:55:12 +08:00