Index: xc/ChangeLog =================================================================== RCS file: /cvs/xorg/xc/ChangeLog,v retrieving revision 1.454 diff -u -2 -0 -r1.454 ChangeLog --- xc/ChangeLog 12 Oct 2004 19:13:42 -0000 1.454 +++ xc/ChangeLog 12 Oct 2004 22:16:00 -0000 @@ -1,20 +1,30 @@ +2004-10-12 Roland Mainz + * xc/programs/xman/print.c + * xc/programs/xmore/print.c + * xc/programs/xphelloworld/xpawhelloworld/xpawhelloworld.c + Bugzilla #1601: Fix problems with wrong page counts in xedit&co. + when a global "*geometry" resource was overriding the internal + geometry management used by XawPrintShell(=usually adjust to + current page size, the resource was turning this into a static + value). + 2004-10-12 Egbert Eich * programs/Xserver/hw/xfree86/drivers/ati/r128_driver.c: Set fbdev mode as the default mode on PPC (Olaf Hering). * programs/xkbcomp/rules/xorg: * programs/xkbcomp/rules/xorg.lst: * programs/xkbcomp/rules/xorg.xml: * programs/xkbcomp/symbols/inet: Added support for IBM space saver keyboard (Stefan Dirsch). Added support for Cherry CyMotion Master XPress (Marcus Schaefer). * programs/Xserver/hw/xfree86/drivers/i810/i830_driver.c: (I830BIOSLeaveVT): Change order of SetDisplayDevice(), HWRestore(), UnbindGART() and RestoreBIOSMemSize() to be exactly opposite to the Save procedure in EnterVT() (Matthias Hopf, Alan Hourihane). * programs/Xserver/hw/xfree86/drivers/nv/nv_dac.c: (NVDACSave): * programs/Xserver/hw/xfree86/drivers/nv/nv_driver.c: (NVRestore), Index: xc/programs/xman/print.c =================================================================== RCS file: /cvs/xorg/xc/programs/xman/print.c,v retrieving revision 1.1 diff -u -2 -0 -r1.1 print.c --- xc/programs/xman/print.c 8 Jun 2004 02:44:35 -0000 1.1 +++ xc/programs/xman/print.c 12 Oct 2004 22:17:10 -0000 @@ -277,40 +277,44 @@ */ XpuSetJobTitle(pdpy, pcontext, jobtitle); /* Configuration done, set the context */ XpSetContext(pdpy, pcontext); /* Get default printer resolution */ if (XpuGetResolution(pdpy, pcontext, &dpi) != 1) { fprintf(stderr, "%s: No default resolution for printer.\n", apd->programname); XpuClosePrinterDisplay(pdpy, pcontext); return; } apd->toplevel = toplevel; apd->pdpy = pdpy; apd->pcontext = pcontext; apd->pscreen = XpGetScreenOfContext(pdpy, pcontext); apd->jobtitle = jobtitle; n = 0; + /* Override any geometry resource settings as XawPrintShell adjusts it's size + * to the current page siue when |XawPrintLAYOUTMODE_DRAWABLEAREA| or + * |XawPrintLAYOUTMODE_PAGESIZE| are used. */ + XtSetArg(args[n], XtNgeometry, "+0+0"); n++; XtSetArg(args[n], XawNlayoutMode, XawPrintLAYOUTMODE_DRAWABLEAREA); n++; apd->printshell = CreatePrintShell(toplevel, apd->pscreen, "printshell", args, n); n = 0; XtSetArg(args[n], XtNresizable, True); n++; XtSetArg(args[n], XtNright, XtChainRight); n++; apd->content.form = XtCreateManagedWidget("form", formWidgetClass, apd->printshell, args, n); printFontNormal = GetPrintTextFont(pdpy, "-*-courier-medium-r-*", dpi); printFontBold = GetPrintTextFont(pdpy, "-*-courier-bold-r-*", dpi); printFontItalic = GetPrintTextFont(pdpy, "-*-courier-medium-o-*", dpi); printFontSymbol = GetPrintTextFont(pdpy, "-*-symbol-*-*-*", dpi); n = 0; XtSetArg(args[n], XtNfromHoriz, NULL); n++; XtSetArg(args[n], XtNfromVert, NULL); n++; XtSetArg(args[n], XtNtop, XtChainTop); n++; XtSetArg(args[n], XtNright, XtChainRight); n++; XtSetArg(args[n], XtNresizable, True); n++; XtSetArg(args[n], XtNfont, printFontNormal); n++; /* fontset would be better */ Index: xc/programs/xmore/print.c =================================================================== RCS file: /cvs/xorg/xc/programs/xmore/print.c,v retrieving revision 1.4 diff -u -2 -0 -r1.4 print.c --- xc/programs/xmore/print.c 8 Jun 2004 02:44:35 -0000 1.4 +++ xc/programs/xmore/print.c 12 Oct 2004 22:17:10 -0000 @@ -288,40 +288,44 @@ */ XpuSetJobTitle(pdpy, pcontext, jobtitle); /* Configuration done, set the context */ XpSetContext(pdpy, pcontext); /* Get default printer resolution */ if (XpuGetResolution(pdpy, pcontext, &dpi) != 1) { fprintf(stderr, "%s: No default resolution for printer.\n", apd->programname); XpuClosePrinterDisplay(pdpy, pcontext); return; } apd->toplevel = toplevel; apd->pdpy = pdpy; apd->pcontext = pcontext; apd->pscreen = XpGetScreenOfContext(pdpy, pcontext); apd->jobtitle = jobtitle; n = 0; + /* Override any geometry resource settings as XawPrintShell adjusts it's size + * to the current page siue when |XawPrintLAYOUTMODE_DRAWABLEAREA| or + * |XawPrintLAYOUTMODE_PAGESIZE| are used. */ + XtSetArg(args[n], XtNgeometry, "+0+0"); n++; XtSetArg(args[n], XawNlayoutMode, XawPrintLAYOUTMODE_DRAWABLEAREA); n++; apd->printshell = CreatePrintShell(toplevel, apd->pscreen, "printshell", args, n); n = 0; XtSetArg(args[n], XtNresizable, True); n++; XtSetArg(args[n], XtNright, XtChainRight); n++; apd->content.form = XtCreateManagedWidget("form", formWidgetClass, apd->printshell, args, n); textfontset = GetPrintTextFontSet(apd->programname, pdpy, dpi); n = 0; XtSetArg(args[n], XtNinternational, True); n++; XtSetArg(args[n], XtNfromHoriz, NULL); n++; XtSetArg(args[n], XtNfromVert, NULL); n++; XtSetArg(args[n], XtNtop, XtChainTop); n++; XtSetArg(args[n], XtNright, XtChainRight); n++; XtSetArg(args[n], XtNresizable, True); n++; XtSetArg(args[n], XtNfontSet, textfontset); n++; XtSetArg(args[n], XtNlabel, "Page: n/n"); n++; XtSetArg(args[n], XtNjustify, XtJustifyRight); n++; Index: xc/programs/xphelloworld/xpawhelloworld/xpawhelloworld.c =================================================================== RCS file: /cvs/xorg/xc/programs/xphelloworld/xpawhelloworld/xpawhelloworld.c,v retrieving revision 1.2 diff -u -2 -0 -r1.2 xpawhelloworld.c --- xc/programs/xphelloworld/xpawhelloworld/xpawhelloworld.c 23 Apr 2004 19:55:00 -0000 1.2 +++ xc/programs/xphelloworld/xpawhelloworld/xpawhelloworld.c 12 Oct 2004 22:17:10 -0000 @@ -285,40 +285,44 @@ if( !pdpy ) Error(("XOpenDisplay failure.\n")); dpi = 0; pscreen = XDefaultScreenOfDisplay(pdpy); } toplevel = XawOpenApplication(&app, pdpy, pscreen, "xpawprintshelldemo", "XpXawPrintShellDemo", applicationShellWidgetClass, &argc, argv); if( !toplevel ) Error(("XawOpenApplication failure.\n")); if( doPrint ) { n = 0; + /* Override any geometry resource settings as XawPrintShell adjusts it's size + * to the current page siue when |XawPrintLAYOUTMODE_DRAWABLEAREA| or + * |XawPrintLAYOUTMODE_PAGESIZE| are used. */ + XtSetArg(args[n], XtNgeometry, "+0+0"); n++; XtSetArg(args[n], XawNlayoutMode, XawPrintLAYOUTMODE_DRAWABLEAREA); n++; print_shell = XtCreatePopupShell("myprintshell", xawPrintShellWidgetClass, toplevel, args, n); /* we're mapping/unmapping at start/end page time */ XtSetMappedWhenManaged(print_shell, False); shell = print_shell; } else { shell = toplevel; } sprintf(fontname, "-adobe-courier-medium-r-normal--40-*-%ld-%ld-*-*-iso8859-1", dpi, dpi); textFont = XLoadQueryFont(pdpy, fontname); if( !textFont ) { sprintf(fontname, "-*-*-*-*-*-*-*-160-%ld-%ld-*-*-iso8859-1", dpi, dpi);