mirror of
https://github.com/openjdk/jdk.git
synced 2025-09-18 18:14:38 +02:00
8181192: [macos] javafx.print.PrinterJob.showPrintDialog() hangs on macOS
Reviewed-by: prr, serb
This commit is contained in:
parent
8190890ef7
commit
87be0f2e80
3 changed files with 11 additions and 2 deletions
|
@ -376,7 +376,7 @@ static void javaPrinterJobToNSPrintInfo(JNIEnv* env, jobject srcPrinterJob, jobj
|
||||||
static JNF_MEMBER_CACHE(jm_getMaxPage, sjc_CPrinterJob, "getMaxPageAttrib", "()I");
|
static JNF_MEMBER_CACHE(jm_getMaxPage, sjc_CPrinterJob, "getMaxPageAttrib", "()I");
|
||||||
static JNF_MEMBER_CACHE(jm_getSelectAttrib, sjc_CPrinterJob, "getSelectAttrib", "()I");
|
static JNF_MEMBER_CACHE(jm_getSelectAttrib, sjc_CPrinterJob, "getSelectAttrib", "()I");
|
||||||
static JNF_MEMBER_CACHE(jm_getNumberOfPages, jc_Pageable, "getNumberOfPages", "()I");
|
static JNF_MEMBER_CACHE(jm_getNumberOfPages, jc_Pageable, "getNumberOfPages", "()I");
|
||||||
static JNF_MEMBER_CACHE(jm_getPageFormat, sjc_CPrinterJob, "getPageFormat", "(I)Ljava/awt/print/PageFormat;");
|
static JNF_MEMBER_CACHE(jm_getPageFormat, sjc_CPrinterJob, "getPageFormatFromAttributes", "()Ljava/awt/print/PageFormat;");
|
||||||
|
|
||||||
NSMutableDictionary* printingDictionary = [dst dictionary];
|
NSMutableDictionary* printingDictionary = [dst dictionary];
|
||||||
|
|
||||||
|
@ -412,7 +412,7 @@ static void javaPrinterJobToNSPrintInfo(JNIEnv* env, jobject srcPrinterJob, jobj
|
||||||
[printingDictionary setObject:[NSNumber numberWithInteger:fromPage] forKey:NSPrintFirstPage];
|
[printingDictionary setObject:[NSNumber numberWithInteger:fromPage] forKey:NSPrintFirstPage];
|
||||||
[printingDictionary setObject:[NSNumber numberWithInteger:toPage] forKey:NSPrintLastPage];
|
[printingDictionary setObject:[NSNumber numberWithInteger:toPage] forKey:NSPrintLastPage];
|
||||||
|
|
||||||
jobject page = JNFCallObjectMethod(env, srcPrinterJob, jm_getPageFormat, (jint)0);
|
jobject page = JNFCallObjectMethod(env, srcPrinterJob, jm_getPageFormat);
|
||||||
if (page != NULL) {
|
if (page != NULL) {
|
||||||
javaPageFormatToNSPrintInfo(env, NULL, page, dst);
|
javaPageFormatToNSPrintInfo(env, NULL, page, dst);
|
||||||
}
|
}
|
||||||
|
|
|
@ -886,6 +886,14 @@ public abstract class RasterPrinterJob extends PrinterJob {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
protected PageFormat getPageFormatFromAttributes() {
|
||||||
|
if (attributes == null || attributes.isEmpty()) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
return attributeToPageFormat(getPrintService(), this.attributes);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Presents the user a dialog for changing properties of the
|
* Presents the user a dialog for changing properties of the
|
||||||
* print job interactively.
|
* print job interactively.
|
||||||
|
|
|
@ -24,6 +24,7 @@
|
||||||
/* @test
|
/* @test
|
||||||
@bug 8167102
|
@bug 8167102
|
||||||
@summary PrintRequestAttributeSet breaks page size set using PageFormat
|
@summary PrintRequestAttributeSet breaks page size set using PageFormat
|
||||||
|
@ignore Exclude the test until 8167102 is resolved by a new reassessed fix
|
||||||
@run main/manual WrongPaperPrintingTest
|
@run main/manual WrongPaperPrintingTest
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue