summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStanislav Kuzmin <necrostaz@gmail.com>2023-05-10 14:23:55 +0100
committerKen Sharp <ken.sharp@artifex.com>2023-05-10 14:23:55 +0100
commit219e16aabc84905b17ae7dbaf6718a62d100e6a4 (patch)
treece3742438da0d76c62101a6b981f15428b1ed184
parent9598c88c8fbb117019dffc1e88e526dbe1559daf (diff)
downloadghostpdl-219e16aabc84905b17ae7dbaf6718a62d100e6a4.tar.gz
mswinpr2 device - honour User settings with default printer
Bug #693637 "Some of user options are not working in windows printer driver when option QueryUser set to 3." Some (undocumented!) User settings which can only be altered by sending PostScript were not being applied when the QueryUser setting was 3 (use system default printer). This was despite the Copies being set in this case, so this was clearly an oversight.
-rw-r--r--devices/gdevwpr2.c16
1 files changed, 16 insertions, 0 deletions
diff --git a/devices/gdevwpr2.c b/devices/gdevwpr2.c
index a5e690c5e..7ea287d50 100644
--- a/devices/gdevwpr2.c
+++ b/devices/gdevwpr2.c
@@ -1607,8 +1607,24 @@ win_pr2_print_setup_interaction(gx_device_win_pr2 * wdev, int mode)
free(devname);
if (mode == 3) {
+ devmode->dmFields |= DM_COPIES;
devmode->dmCopies = wdev->user_copies * wdev->print_copies;
pd.nCopies = 1;
+
+ if(wdev->user_orient){
+ devmode->dmFields |= DM_ORIENTATION;
+ devmode->dmOrientation = wdev->user_orient;
+ }
+
+ if (wdev->user_color) {
+ devmode->dmFields |= DM_COLOR;
+ devmode->dmColor = wdev->user_color;
+ }
+
+ if(wdev->user_paper){
+ devmode->dmFields |= DM_PAPERSIZE;
+ devmode->dmPaperSize = wdev->user_paper;
+ }
}
wdev->user_page_begin = pd.nFromPage;