2014-07-24 4 views
2

Chrome에서 NPAPI 대신 파일 업 로더 PPAPI 플러그인을 작성해야합니다.NaCl에서`pp :: FileChooser_Dev`를 호출하지 못했습니다

hello_nacl_cpp 프로젝트를 vs_addin 사례로 확장하여 PPAPI와 NaCl을 테스트합니다. 코드는 다음과 유사합니다 :

... 

int32_t showSelectFileDialog() { 
    pp::CompletionCallbackWithOutput< std::vector<pp::FileRef> > cb = 
     factory_.NewCallbackWithOutput(&NaClProjectInstance::onFilesSelected); 

    int32_t ret = file_chooser_.Show(cb); 

    return ret; 
} 

void onFilesSelected(int32_t result, 
        const std::vector<pp::FileRef>& files) { 
    std::stringstream ss; 

    if (result == PP_OK) { 
     // ok 
    } else { 
     ss << "undo select file? error code: " << result; 

     PostMessage(pp::Var(ss.str())); 
    } 
} 
... 

위의 코드에서 PPAPI 플랫폼을 선택하고 디버깅해도 괜찮습니다. 그러나 NaCl64 플랫폼에서 결과는 PP_ERROR_NO_USER_GESTURE(-41)입니다. 이 문제를 어떻게 해결할 수 있습니까?

답변

0

/** *이 값은 * 마우스 클릭 또는 키 입력 이벤트와 같은 사용자 제스처가 없기 때문에 실패한 것입니다. * 제스처를 요구하는 동작의 예는 파일 선택기 대화 상자를 표시하고 전체 화면 * 모드로 전환됩니다. HandleInputEvent

에 */ PP_ERROR_NO_USER_GESTURE = -41,

호 showSelectFileDialog()