jdk/src/java.desktop/macosx/native/libawt_lwawt/sun/awt/JavaComponentAccessibility.m
changeset 26037 508779ce6619
parent 26000 7d2b9a7ae7ce
parent 25859 3317bb8137f4
equal deleted inserted replaced
25992:e9b05e933ddd 26037:508779ce6619
  1106     static JNF_STATIC_MEMBER_CACHE(jm_getFocusOwner, sjc_CAccessibility, "getFocusOwner", "(Ljava/awt/Component;)Ljavax/accessibility/Accessible;");
  1106     static JNF_STATIC_MEMBER_CACHE(jm_getFocusOwner, sjc_CAccessibility, "getFocusOwner", "(Ljava/awt/Component;)Ljavax/accessibility/Accessible;");
  1107 
  1107 
  1108     JNIEnv *env = [ThreadUtilities getJNIEnv];
  1108     JNIEnv *env = [ThreadUtilities getJNIEnv];
  1109     id value = nil;
  1109     id value = nil;
  1110 
  1110 
       
  1111     NSWindow* hostWindow = [[self->fView window] retain];
  1111     jobject focused = JNFCallStaticObjectMethod(env, jm_getFocusOwner, fComponent); // AWT_THREADING Safe (AWTRunLoop)
  1112     jobject focused = JNFCallStaticObjectMethod(env, jm_getFocusOwner, fComponent); // AWT_THREADING Safe (AWTRunLoop)
       
  1113     [hostWindow release];
       
  1114     
  1112     if (focused != NULL) {
  1115     if (focused != NULL) {
  1113         if (JNFIsInstanceOf(env, focused, &sjc_Accessible)) {
  1116         if (JNFIsInstanceOf(env, focused, &sjc_Accessible)) {
  1114             value = [JavaComponentAccessibility createWithAccessible:focused withEnv:env withView:fView];
  1117             value = [JavaComponentAccessibility createWithAccessible:focused withEnv:env withView:fView];
  1115         }
  1118         }
  1116     }
  1119     }