...bedding/browser/photon/src/PtMozilla.cpp /home/timeless/mozilla/embedding/browser/photon/src/PtMozilla.cpp: In function `void mozilla_modify(PtWidget_t *, const PtArg_t *)': /home/timeless/mozilla/embedding/browser/photon/src/PtMozilla.cpp:518: no matching function for call to `nsDerivedSafe<nsIWebBrowserPrint>::Print (nsCOMPtr<nsIDOMWindow> &, nsCOMPtr<nsIPrintOptions> &, CWebBrowserContainer *&)' ../../../../dist/include/webbrwsr/nsIWebBrowserPrint.h:46: candidates are: nsresult nsIWebBrowserPrint::Print(nsIDOMWindow *, nsIPrintSettings *, nsIPrintListener *) line: print->Print( window, printService, moz->MyBrowser->WebBrowserContainer ); I'm now running a continuous build tinderbox, hopefully i'll have it sending tindermail by the week's end.
I had an ifdef there and then I removed it before check in because for some reason I thought it would be ok, maybe I hadn't had my coffee yet....
rod, if you find the right spot for the ifdef, a=leaf for checking in to the tree while closed.
Created attachment 59330 [details] [diff] [review] uncompiled patch Copy nsPrintSettingsImpl.h and nsPrintSettingsImpl.cpp from /mozilla/embedding/tests/mfcembed to /mozilla/browser/photon/src and then apply this patch. In the future, as changes are made to the nsIPrintSettings.idl I will keep any and all copies of nsPrintSettingsImpl.* up to date.
I checked in a quick patch so it compiles and will probably run fine. But the "uncompiled patch" above should be compiled, and tested, and then checked in with the addition of nsPrintSettingsImpl.h and nsPrintSettingsImpl.cpp
/home/timeless/mozilla/embedding/browser/photon/src/PtMozilla.cpp:70: nsPrintSettingsImpl.h: No such file or directory http://bonsai.mozilla.org/cvsblame.cgi?file=mozilla/embedding/tests/mfcembed/nsPrintSettingsImpl.h So now QNX requires MFC. /me returns the drawing board
ok so i can't follow directions. can I have some of your coffee? it compiled.
I am assuming by now that you have figured out that you do not need MFC. The basic plan for the interfaces was that we do not want to expose nsIPrintOptions. The plan all along (or for sometime now) has been to expose nsIPrintSettings and it really is up to the embedder to provide an implementation for that interface. I decided for testing purposes to implement it for MFCEmbed which is the implementation you can/did grab. If there is an easy way to put that implementation in one place where mulitple embedders could use it that would be great. I don't have the time at the moment to think too hard about that.
nsIPrintSettings* printSettings = (nsIPrintSettings*)new nsPrintSettings(); Can we change this to be a component? i'd prefer to use #include "nsIPrintSettings.h" over #include "nsPrintSettingsImpl.h"
You can do whatever you want for photon. If you want to make it a component than go for it. As I stated in http://bugzilla.mozilla.org/show_bug.cgi?id=112048#c7 I provided a very simple implementation of nsIPrintSettings. All the nsIWebBrowserPrint interface cares about is that it gets a nsIPrintSettings. The idea discussed in several meetings is that each browser window would have it's own copy of an object that implements nsIPrintSettings, and what they did NOT want was a singleton. nsIPrintOptions is a singleton and that will now be public only to the internals of layout etc.
Just to let you know, I am making some changes to the photon embedding code to fix some bugs and add in some stuff I saw in the gtk code (it is based on that). I will look at the print issues and hopfully have something by the end of the week.
major printing changes on the way
Status: NEW → ASSIGNED
Target Milestone: --- → mozilla0.9.9
My code is in, will the changes break all existing printing?
What going on, is this still a blocker?
These changes have just landed on the head branch. Printing should now work and all compile problems are gone. Can someone else test these changes, timeless?
sorry i can't test them. my QNX build is absolutely broken. I can try and contact you via phone or something to discuss my problems.
Start by AIM'ing me rodspearswork and then I can call you
for now i'm going to clobber severity. the earliest i can play with this will be sunday.
Severity: blocker → normal
Assignee: rods → nobody
Status: ASSIGNED → NEW
QA Contact: sujay → printing
Photon support got removed with 563462
Status: NEW → RESOLVED
Last Resolved: 6 years ago
Resolution: --- → WONTFIX
You need to log in before you can comment on or make changes to this bug.