--- old/src/java.desktop/macosx/native/libawt_lwawt/awt/AWTView.m 2019-05-16 19:15:45.000000000 +0300 +++ new/src/java.desktop/macosx/native/libawt_lwawt/awt/AWTView.m 2019-05-16 19:15:45.000000000 +0300 @@ -37,6 +37,8 @@ #import #import +jboolean metalEnabled = JNI_FALSE; + @interface AWTView() @property (retain) CDropTarget *_dropTarget; @property (retain) CDragSource *_dragSource; @@ -52,6 +54,8 @@ //#define IM_DEBUG TRUE //#define EXTRA_DEBUG +#define METAL_DEBUG + static BOOL shouldUsePressAndHold() { static int shouldUsePressAndHold = -1; if (shouldUsePressAndHold != -1) return shouldUsePressAndHold; @@ -1477,3 +1481,19 @@ return underMouse; } + +jboolean GetStaticBoolean(JNIEnv *env, jclass fClass, const char *fieldName) +{ + jfieldID fieldID = (*env)->GetStaticFieldID(env, fClass, fieldName, "Z"); + return (*env)->GetStaticBooleanField(env, fClass, fieldID); +} + +JNIEXPORT void JNICALL +Java_sun_java2d_macos_MacOSFlags_initNativeFlags(JNIEnv *env, + jclass flagsClass) +{ + metalEnabled = GetStaticBoolean(env, flagsClass, "metalEnabled"); +#ifdef METAL_DEBUG + fprintf(stderr, "metalEnabled=%d\n", metalEnabled); +#endif +}