1
0
Fork 0
mirror of https://github.com/geometer/FBReaderJ.git synced 2025-10-04 02:09:35 +02:00

encoding detection fixes

This commit is contained in:
Nikolay Pultsin 2012-03-18 03:39:02 +00:00
parent c849daa8e8
commit f0cc6dda87
7 changed files with 28 additions and 10 deletions

View file

@ -81,6 +81,24 @@ static void fillMetaInfo(JNIEnv* env, jobject javaBook, Book &book) {
}
}
void fillLanguageAndEncoding(JNIEnv* env, jobject javaBook, Book &book) {
jstring javaString;
javaString = AndroidUtil::createJavaString(env, book.language());
if (javaString != 0) {
env->CallVoidMethod(javaBook, AndroidUtil::MID_Book_setLanguage, javaString);
env->DeleteLocalRef(javaString);
}
javaString = AndroidUtil::createJavaString(env, book.encoding());
if (javaString != 0) {
env->CallVoidMethod(javaBook, AndroidUtil::MID_Book_setEncoding, javaString);
env->DeleteLocalRef(javaString);
}
env->CallVoidMethod(javaBook, AndroidUtil::MID_Book_save);
}
extern "C"
JNIEXPORT jboolean JNICALL Java_org_geometerplus_fbreader_formats_NativeFormatPlugin_readMetaInfoNative(JNIEnv* env, jobject thiz, jobject javaBook) {
shared_ptr<FormatPlugin> plugin = findCppPlugin(env, thiz);
@ -100,7 +118,6 @@ JNIEXPORT jboolean JNICALL Java_org_geometerplus_fbreader_formats_NativeFormatPl
extern "C"
JNIEXPORT void JNICALL Java_org_geometerplus_fbreader_formats_NativeFormatPlugin_detectLanguageAndEncoding(JNIEnv* env, jobject thiz, jobject javaBook) {
// TODO: implement
shared_ptr<FormatPlugin> plugin = findCppPlugin(env, thiz);
if (plugin.isNull()) {
return;
@ -111,7 +128,7 @@ JNIEXPORT void JNICALL Java_org_geometerplus_fbreader_formats_NativeFormatPlugin
return;
}
//fillLanguageAndEncoding(env, javaBook, *book);
fillLanguageAndEncoding(env, javaBook, *book);
}
static bool initBookModel(JNIEnv *env, jobject javaModel, BookModel &model) {