Closed
Bug 135441
Opened 23 years ago
Closed 23 years ago
[FIX]API Freeze - Implement Printing Prompt Service (embedding)
Categories
(Core :: Printing: Output, defect)
Tracking
()
VERIFIED
FIXED
mozilla1.0
People
(Reporter: rods, Assigned: rods)
References
Details
(Keywords: embed, topembed+, Whiteboard: [adt2 RTM])
Attachments
(4 files)
(deleted),
text/html
|
Details | |
(deleted),
patch
|
dcone
:
review+
attinasi
:
superreview+
|
Details | Diff | Splinter Review |
(deleted),
patch
|
netscape
:
review+
|
Details | Diff | Splinter Review |
(deleted),
patch
|
jud
:
approval+
|
Details | Diff | Splinter Review |
Assignee | ||
Updated•23 years ago
|
Updated•23 years ago
|
Updated•23 years ago
|
Assignee | ||
Comment 1•23 years ago
|
||
removing the topembed- this is the first part of the check in for Bug 115136.
Assignee | ||
Comment 2•23 years ago
|
||
Assignee | ||
Comment 3•23 years ago
|
||
Phase #2 is in Bug 115136
Assignee | ||
Updated•23 years ago
|
Summary: API Freeze - Implement Printing Prompt Service (embedding) → [FIX]API Freeze - Implement Printing Prompt Service (embedding)
Comment 4•23 years ago
|
||
Comment on attachment 81154 [details] [diff] [review]
Phase #1 patch
tabbing issue in /cvsroot/mozilla/gfx/src/nsPrintSettingsImpl.cpp
+ mPrintPreview(aPS->mPrintPreview),
Should there be a constant for the number of headerStrs, instead of hard-coding
'3'?
+nsPrintSettings::CloneObj needs to check the allocation for null and return an
error instead of crashing the program
Why are you using 'Boolean' in gfx/public/nsPDECommon.h instead or
PR_PackedBool?
Other than that, sr=attinasi for the GFX changes
Attachment #81154 -
Flags: superreview+
Comment 5•23 years ago
|
||
Adding back topembed+. This is needed to freeze the printing API's.
Comment 6•23 years ago
|
||
from nsPrintingPromptServiceX.cpp
+
+ CFStringRef pathRef = ::CFStringCreateWithCString(NULL, pathBuf,
kCFStringEncodingUTF8);
+ if (!pathRef)
+ return nsnull;
+ CFURLRef url = ::CFURLCreateWithFileSystemPath(NULL, pathRef,
kCFURLPOSIXPathStyle, TRUE);
+ if (url)
+ gPDEPlugIn = ::CFPlugInCreate(NULL, url);
+
+ ::CFRelease(pathRef);
+ ::CFRelease(url);
this will leak pathRef if CFURLCreateWithFileSystemPath() fails. A small nit,
but worth fixing for correctness
+ long version;
+ if (::Gestalt(gestaltSystemVersion, &version) == noErr && version >=
0x00001000)
+ return NS_ERROR_NOT_IMPLEMENTED;
do clients of ShowProgress know that it's ok for ShowProgress() to return an
error and to not abort the print? Where are these clients? Do any embedding apps
have to implement something that would call ShowProgress? There's nothing in the
docs about returning an error being ok.
+#define NS_DIALOGPARAMBLOCK_CONTRACTID "@mozilla.org/embedcomp/dialogparam;1"
+
+static const char *kPrintProgressDialogURL =
"chrome://global/content/printProgress.xul";
why mix two different kinds of string constants? use one or the other.
Comment 7•23 years ago
|
||
>this will leak pathRef if CFURLCreateWithFileSystemPath() fails. A small nit,
>but worth fixing for correctness
oops, ignore this. i was hasty in my reading of the code.
Comment 8•23 years ago
|
||
> + return NS_ERROR_NOT_IMPLEMENTED;
do clients of ShowProgress know that it's ok for ShowProgress() to return an
error and to not abort the print?
Yes. The code which calls this from nsDocumentViewer.cpp (see phase #2 patch)
does that.
I do agree that the comments in nsIPrintingPrompt.idl should mention that.
There's long explaination in the comments of how mozilla's implementation of the
iface behaves. I don't think that should be there. An iface should just describe
itself and not a particular implementation of it.
> why mix two different kinds of string constants? use one or the other.
I'll clean that up.
Comment 9•23 years ago
|
||
+#define NS_DIALOGPARAMBLOCK_CONTRACTID "@mozilla.org/embedcomp/dialogparam;1"
Wasn't even referenced in src/mac/nsPrintingPromptService.cpp or
nsPrintingPromptServiceX.cpp. I snipped it from both files.
Comment 10•23 years ago
|
||
Comment on attachment 81154 [details] [diff] [review]
Phase #1 patch
r=dcone
Attachment #81154 -
Flags: review+
Assignee | ||
Comment 11•23 years ago
|
||
fixed
Status: ASSIGNED → RESOLVED
Closed: 23 years ago
Resolution: --- → FIXED
Comment 12•23 years ago
|
||
There is still bustage in the Xlib toolkit (the Xlib toolkit tinderbox
"speedracer" is currently gone from Seamonkey-Ports) ...
... I'll try to file a patch...
Status: RESOLVED → REOPENED
Resolution: FIXED → ---
Comment 13•23 years ago
|
||
Build error looks like this:
-- snip --
nsModule.cpp
Building deps for
../../../../../../../../home/mozilla/src/2002-05-02-08-trunk/mozilla/embedding/components/build/nsModule.cpp
/opt/SUNWspro/FD7/bin/CC -o nsModule.o -c -DOSTYPE=\"SunOS5\" -DOSARCH=\"SunOS\"
-DOJI -I../../../../../../../../home/mozilla/src/2002-05-02-08-trunk/mozilla/
embedding/components/build/../windowwatcher/src
-I../../../../../../../../home/mozilla/src/2002-05-02-08-trunk/mozilla/embedding/components/build/../appstartu
p/src
-I../../../../../../../../home/mozilla/src/2002-05-02-08-trunk/mozilla/embedding/components/build/../jsconsole/src
-I../../../../../../../../home/mozill
a/src/2002-05-02-08-trunk/mozilla/embedding/components/build/../find/src
-I../../../../../../../../home/mozilla/src/2002-05-02-08-trunk/mozilla/embedding/comp
onents/build/../webbrowserpersist/src
-I../../../../../../../../home/mozilla/src/2002-05-02-08-trunk/mozilla/embedding/components/build/../commandhandler/src
-I../../../dist/include/js -I../../../dist/include/xpcom
-I../../../dist/include/string -I../../../dist/include/windowwatcher
-I../../../dist/include/printin
gui -I../../../dist/include/webbrwsr -I../../../dist/include/gfx
-I../../../dist/include/webbrowserpersist -I../../../dist/include/jsconsole
-I../../../dist/i
nclude/find -I../../../dist/include/htmlparser
-I../../../dist/include/embed_base -I../../../dist/include/dom
-I../../../dist/include/txtsvc -I../../../dist/i
nclude/lwbrk -I../../../dist/include/mimetype -I../../../dist/include/content
-I../../../dist/include/uriloader -I../../../dist/include/necko -I../../../dist/
include/commandhandler -I../../../dist/include/xuldoc
-I../../../dist/include/embedcomponents -I../../../dist/include
-I/shared/bigtmp2/mozilla/2002-05-02-08-
trunk/objdir_ws7ea2_xlib/dist/include/nspr -I/usr/openwin/include -KPIC
-I/usr/openwin/include -mt -DDEBUG -D_DEBUG -DDEBUG_mozilla -DTRACING -g -O
-I/usr/openwin/include -DMOZILLA_CLIENT -DBROKEN_QSORT=1 -DSOLARIS=1
-DNSCAP_DISABLE_DEBUG_PTR_TYPES=1 -DD_INO=d_ino -DSTDC_HEADERS=1
-DHAVE_ST_BLKSIZE=1 -DHA
VE_INT16_T=1 -DHAVE_INT32_T=1 -DHAVE_INT64_T=1 -DHAVE_UINT=1 -DHAVE_UINT_T=1
-DHAVE_UINT16_T=1 -DHAVE_WCRTOMB=1 -DHAVE_MBRTOWC=1 -DHAVE_DIRENT_H=1
-DHAVE_SYS_
BYTEORDER_H=1 -DHAVE_MEMORY_H=1 -DHAVE_UNISTD_H=1 -DHAVE_NL_TYPES_H=1
-DHAVE_SYS_STATVFS_H=1 -DHAVE_SYS_STATFS_H=1 -DHAVE_SYS_VFS_H=1
-DHAVE_SYS_MOUNT_H=1 -DH
AVE_LIBM=1 -DHAVE_LIBDL=1 -DHAVE_LIBSOCKET=1 -DFUNCPROTO=15 -DHAVE_XSHM=1
-D_REENTRANT=1 -DHAVE_RANDOM=1 -DHAVE_STRERROR=1 -DHAVE_LCHOWN=1 -DHAVE_FCHMOD=1
-DH
AVE_SNPRINTF=1 -DHAVE_LOCALTIME_R=1 -DHAVE_STATVFS=1 -DHAVE_MEMMOVE=1
-DHAVE_RINT=1 -DHAVE_NL_LANGINFO=1 -DHAVE_STRTOK_R=1 -DHAVE_FLOCKFILE=1
-DHAVE_IOS_BINAR
Y=1 -DHAVE_CPP_EXPLICIT=1 -DHAVE_CPP_SPECIALIZATION=1
-DHAVE_CPP_MODERN_SPECIALIZE_TEMPLATE_SYNTAX=1
-DHAVE_CPP_PARTIAL_SPECIALIZATION=1 -DHAVE_CPP_ACCESS_CHA
NGING_USING=1 -DHAVE_CPP_AMBIGUITY_RESOLVING_USING=1 -DHAVE_CPP_NAMESPACE_STD=1
-DHAVE_CPP_UNAMBIGUOUS_STD_NOTEQUAL=1 -DHAVE_CPP_NEW_CASTS=1 -DHAVE_CPP_DYNAMI
C_CAST_TO_VOID_PTR=1 -DNEED_CPP_UNUSED_IMPLEMENTATIONS=1
-DHAVE_I18N_LC_MESSAGES=1 -DMOZ_DEFAULT_TOOLKIT=\"xlib\" -DMOZ_WIDGET_XLIB=1
-DMOZ_ENABLE_XREMOTE=1 -
DMOZ_X11=1 -DIBMBIDI=1 -DACCESSIBILITY=1 -DMOZ_MATHML=1 -DMOZ_LOGGING=1
-DDETECT_WEBSHELL_LEAKS=1 -DMOZ_USER_DIR=\".mozilla\" -DMOZ_XUL=1
-DINCLUDE_XUL=1 -DNS
_MT_SUPPORTED=1 -DUSE_IMG2=1 -DMOZ_DLL_SUFFIX=\".so\" -DXP_UNIX=1
-DUNIX_ASYNC_DNS=1 -DJS_THREADSAFE=1 -DNS_PRINT_PREVIEW=1 -DMOZ_REFLOW_PERF=1
-DMOZ_REFLOW_P
ERF_DSP=1
../../../../../../../../home/mozilla/src/2002-05-02-08-trunk/mozilla/embedding/components/build/nsModule.cpp
"../../../../../../../../home/mozilla/src/2002-05-02-08-trunk/mozilla/embedding/components/build/nsModule.cpp",
line 52: Error: Could not open include file "n
sPrintingPromptService.h".
"../../../../../../../../home/mozilla/src/2002-05-02-08-trunk/mozilla/embedding/components/build/nsModule.cpp",
line 66: Error: nsPrintingPromptService is not
defined.
"../../../../../../../../home/mozilla/src/2002-05-02-08-trunk/mozilla/embedding/components/build/nsModule.cpp",
line 66: Error: inst is not defined.
"../../../../../../../../home/mozilla/src/2002-05-02-08-trunk/mozilla/embedding/components/build/nsModule.cpp",
line 66: Error: inst is not defined.
"../../../../../../../../home/mozilla/src/2002-05-02-08-trunk/mozilla/embedding/components/build/nsModule.cpp",
line 66: Error: Type name expected instead of
"nsPrintingPromptService".
"../../../../../../../../home/mozilla/src/2002-05-02-08-trunk/mozilla/embedding/components/build/nsModule.cpp",
line 66: Error: inst is not defined.
"../../../../../../../../home/mozilla/src/2002-05-02-08-trunk/mozilla/embedding/components/build/nsModule.cpp",
line 66: Error: inst is not defined.
"../../../../../../../../home/mozilla/src/2002-05-02-08-trunk/mozilla/embedding/components/build/nsModule.cpp",
line 66: Error: inst
is not defined.
"../../../../../../../../home/mozilla/src/2002-05-02-08-trunk/mozilla/embedding/components/build/nsModule.cpp",
line 66: Error: inst is not defined.
"../../../../../../../../home/mozilla/src/2002-05-02-08-trunk/mozilla/embedding/components/build/nsModule.cpp",
line 66: Error: inst is not defined.
"../../../../../../../../home/mozilla/src/2002-05-02-08-trunk/mozilla/embedding/components/build/nsModule.cpp",
line 66: Error: inst is not defined.
"../../../../../../../../home/mozilla/src/2002-05-02-08-trunk/mozilla/embedding/components/build/nsModule.cpp",
line 82: Error: NS_PRINTINGPROMPTSERVICE_CID i
s not defined.
"../../../../../../../../home/mozilla/src/2002-05-02-08-trunk/mozilla/embedding/components/build/nsModule.cpp",
line 82: Error: NS_PRINTINGPROMPTSERVICE_CID i
s not defined.
"../../../../../../../../home/mozilla/src/2002-05-02-08-trunk/mozilla/embedding/components/build/nsModule.cpp",
line 82: Error: NS_PRINTINGPROMPTSERVICE_CONTR
ACTID is not defined.
"../../../../../../../../home/mozilla/src/2002-05-02-08-trunk/mozilla/embedding/components/build/nsModule.cpp",
line 82: Error: Cannot use unsigned(*)(nsISupp
orts*,const nsID&,void**) to initialize const unsigned short.
15 Error(s) detected.
gmake[4]: *** [nsModule.o] Error 15
gmake[4]: Leaving directory
`/shared/bigtmp2/mozilla/2002-05-02-08-trunk/objdir_ws7ea2_xlib/embedding/components/build'
gmake[3]: *** [libs] Error 2
gmake[3]: Leaving directory
`/shared/bigtmp2/mozilla/2002-05-02-08-trunk/objdir_ws7ea2_xlib/embedding/components'
gmake[2]: *** [libs] Error 2
gmake[2]: Leaving directory
`/shared/bigtmp2/mozilla/2002-05-02-08-trunk/objdir_ws7ea2_xlib/embedding'
gmake[1]: *** [tier_9] Error 2
gmake[1]: Leaving directory
`/shared/bigtmp2/mozilla/2002-05-02-08-trunk/objdir_ws7ea2_xlib'
-- snip --
Comment 14•23 years ago
|
||
Comment 15•23 years ago
|
||
Comment on attachment 82176 [details] [diff] [review]
Xlib bustage fix for 2002-05-02-08-trunk
r=cls
Attachment #82176 -
Attachment description: Bustage fix for 2002-05-02-08-trunk → Xlib bustage fix for 2002-05-02-08-trunk
Attachment #82176 -
Flags: review+
Comment 16•23 years ago
|
||
Attachment 82176 [details] [diff] has been checked into the trunk.
Comment 17•23 years ago
|
||
I am not much happy that all unix-platforms and ports (BeOS, GTK+, Photon, Qt,
Xlib, etc.) use includes from a dir called "gtk/" or use code from that.
I've learned from mozilla.org's history that people tend to add
GDK/GTK+-specific code in these dirs some day - breaking all platforms/ports
which do not have GTK+ stuff... ;-(
I can file a patch to rename this dir from "gtk/" to "unixshared/" - should I
file a seperate bug for that ?
... rods ?
Assignee | ||
Comment 18•23 years ago
|
||
close this and file a separate bug, we can fix that soon.
Assignee | ||
Comment 19•23 years ago
|
||
Never mind on the new bug, the directory has been copied (thanks leaf) and here
is the patch:
Index: printingui/src/Makefile.in
===================================================================
RCS file: /cvsroot/mozilla/embedding/components/printingui/src/Makefile.in,v
retrieving revision 1.3
diff -u -r1.3 Makefile.in
--- printingui/src/Makefile.in 6 May 2002 07:02:45 -0000 1.3
+++ printingui/src/Makefile.in 6 May 2002 11:51:59 -0000
@@ -27,7 +27,7 @@
include $(DEPTH)/config/autoconf.mk
ifneq (,$(filter gtk gtk2 xlib qt beos,$(MOZ_WIDGET_TOOLKIT)))
-DIRS
+= gtk
+DIRS
+= unixshared
endif
ifeq ($(MOZ_WIDGET_TOOLKIT),os2)
Status: REOPENED → ASSIGNED
Comment 20•23 years ago
|
||
cls:
Can you r= the patch in comment #19, please (_small_ "Makefile.in"-patch only) ?
Comment 21•23 years ago
|
||
r=cls on the Makefile.in change in comment #19
Assignee | ||
Comment 22•23 years ago
|
||
the makefile changes have been checked in, I just need to remove the files now.
Assignee | ||
Comment 23•23 years ago
|
||
Oops, fixed
Status: ASSIGNED → RESOLVED
Closed: 23 years ago → 23 years ago
Resolution: --- → FIXED
Assignee | ||
Comment 24•23 years ago
|
||
I am verifying this, it went in and didn't change printing. This was a checkin
to "get it into the build"
Status: RESOLVED → VERIFIED
Assignee | ||
Comment 25•23 years ago
|
||
all the new embedding file are already checked in, they are just not in the
build
Comment 26•23 years ago
|
||
adding adt1.0.0+. Please get drivers approval and then check into the 1.0 branch.
Comment 27•23 years ago
|
||
Is this on the 1.0 branch. If yes, pls add fixed1.0.0, so that QA knows to
verify this on the branch.
Blocks: 143047
Whiteboard: [adt2 RTM]
Comment 28•23 years ago
|
||
*** Bug 147678 has been marked as a duplicate of this bug. ***
Comment 29•23 years ago
|
||
Disregard previous comment- this is NOT a duplicate of bug 147678- entered wrong
number.
Comment 30•23 years ago
|
||
changing to adt1.0.1+ for checkin to the 1.0 branch for the Mozilla1.0.1
milestone. Please get drivers approval before checking in.
Comment 31•23 years ago
|
||
please land on the 1.0.1 branch. once there, remove the "mozilla1.0.1+" keyword,
and add the "fixed1.0.1" keyword.
Keywords: mozilla1.0.1+
Updated•23 years ago
|
Attachment #84099 -
Flags: approval+
Keywords: fixed1.0.1 → verified1.0.1
You need to log in
before you can comment on or make changes to this bug.
Description
•