summaryrefslogtreecommitdiff
path: root/platform/java/mupdf_native.c
AgeCommit message (Collapse)Author
2016-09-16JNI: Avoid throwing IllegalargumentException.Sebastian Rasmussen
2016-09-16JNI: Avoid getting context if not needed.Sebastian Rasmussen
2016-09-16JNI: Remove forgotten FIXME.Sebastian Rasmussen
This case can be handled gracefully since commit 2d3eca6dec6b8fc7a169b3fc357904069df6b6c4.
2016-09-15JNI: Catch fitz exceptions and convert to Java exceptions.Sebastian Rasmussen
2016-09-15JNI: Don't replace Java exception with one from fitz.Sebastian Rasmussen
The JNI interface throws exceptions of its own, keep those instead of replacing them.
2016-09-15JNI: Throw IllegalArgumentException for null arguments.Sebastian Rasmussen
2016-09-15JNI: Delete global ref to Separation class after use.Sebastian Rasmussen
2016-09-15JNI: Check context in consistent way.Sebastian Rasmussen
Also there is no need to check self pointer since JVM does not even call the JNI binding for null pointers.
2016-09-15JNI: Fix compiler warning about unused variables.Sebastian Rasmussen
2016-09-14Rename helper function in mupdf_native.cRobin Watts
This avoids a symbol clash when using scripts/destatic.sh
2016-09-14Android example - Add proofing support.fred ross-perry
2016-09-14Fix clang compiler warnings.Sebastian Rasmussen
2016-09-08Add options to control heuristics in structured text.Sebastian Rasmussen
2016-09-08JNI: Separating big fz_try()s into smaller scopes.Sebastian Rasmussen
By making the scope smaller fitz exceptions and Java exceptions can be disentangled. This makes it clearer what happens in failure cases.
2016-09-08JNI: Remove redundant cleanup.Sebastian Rasmussen
2016-09-08JNI: Delete local reference to text span font.Sebastian Rasmussen
If a large number of text spans uses a huge number of fonts the JMV may run out of local references since we never cleaned up the local reference to the font objects.
2016-09-08JNI: Copy data back to Java arrays.Sebastian Rasmussen
The Java arrays are the destination when reading from Buffer.
2016-09-08JNI: Make sure to keep fitz objects passed to Java objects.Sebastian Rasmussen
2016-09-08JNI: Handle errors from AndroidBitmap_unlockPixels().Sebastian Rasmussen
2016-09-08JNI: Move failure testing code outside of fz_try().Sebastian Rasmussen
2016-09-08JNI: Use Android enum for detecting failure.Sebastian Rasmussen
2016-09-08JNI: Add a number of new to_*() C to Java conversions.Sebastian Rasmussen
Adding to_Rect_safe(), to_jRectArray_safe(), to_ColorSpace_safe() to_Image_safe() and to_Point_safe() disentangles fitz exceptions from Java exception and also makes the code more uniform.
2016-09-08JNI: Handle exceptions from JVM properly.Sebastian Rasmussen
2016-09-08JNI: Cosmetic reordering of code.Sebastian Rasmussen
Including removal of unnecessary #ifdef.
2016-09-08JNI: Throw OutOfBoundsException for out of range values.Sebastian Rasmussen
2016-09-08JNI: Throw IOException when Buffer fails to read/write.Sebastian Rasmussen
2016-09-08JNI: Make exceptions unchecked.Sebastian Rasmussen
Previously all exceptions thrown by the library would be converted into checked exceptions, but there was no sensible response to expect from a client.
2016-09-08JNI: Check arguments and throw suitable exceptions.Sebastian Rasmussen
2016-09-01JNI: Support size() and push() for arrays.Sebastian Rasmussen
2016-09-01JNI: Keep arguments before giving them to constructor.Sebastian Rasmussen
The arguments will be freed by the finalizer of the object. The finalizer for an object is called even if the constructor throws an Exception or an OutOfMemoryError.
2016-09-01JNI: get_context() may throw error and should be handled separately.Sebastian Rasmussen
2016-09-01JNI: Do not check self pointer, it is always valid.Sebastian Rasmussen
If an object reference is NULL the JVM will signal NullPointerException before the JNI-code is executed.
2016-09-01JNI: Check for exceptions after calling method.Sebastian Rasmussen
The return value from CallObjectMethod() is not valid if an exception is thrown, so check for exceptions before looking at the return value. Mentioned at http://developer.android.com/training/articles/perf-jni.html
2016-09-01JNI: Use short form of NULL checks.Sebastian Rasmussen
2016-09-01JNI: Use jboolean/JNI_TRUE/JNI_FALSE everywhere.Sebastian Rasmussen
2016-09-01JNI: Whitespace/comment/error message cleanup.Sebastian Rasmussen
2016-09-01JNI: Remove unused nativeAnnots/-Links.Sebastian Rasmussen
2016-09-01JNI: Remove unused variables and cast byte array region.Sebastian Rasmussen
Fixes two compiler warnings.
2016-09-01JNI: Update to new pdf_load_stream interface.Sebastian Rasmussen
2016-08-23Java - correct the JNI signatures for bbox fields in StructuredText inner ↵Fred Ross-Perry
classes.
2016-08-16Android java - ad textAsHtml() to the Page class.fred ross-perry
The JNI implementation is taken from core.textAsHtml() in the old viewer.
2016-08-16JNI: Add finalizers for Shade and PDFGraftMap.Sebastian Rasmussen
2016-08-08Java/JNI: Added blocks/lines/spans/chars to StructuredText.fred ross-perry
added TextBlock, TextLine, TextSpan and TextChar inner classes to StructuredText. Calling StructuredText.getBlocks() returns an array of TextBlocks, which in turn contains an array of TextLines, etc.
2016-08-07JNI: Only store links/annotations if all are successfully handled.Sebastian Rasmussen
2016-08-02JNI: Add/change PDFDocument.save() related methods.Sebastian Rasmussen
Added methods: * PDFDocument.hasUnsavedChanges() * PDFDocument.canBeSavedIncrementally() The interface for PDFDocument.save() now returns the number of errors encountered while saving.
2016-08-02JNI: Delete forgotten global references to classes.Sebastian Rasmussen
2016-07-20JNI: Add PDFDocument methods for grafting objects onto documents.Sebastian Rasmussen
2016-07-20JNI: Add DisplayList.toStructuredText().Sebastian Rasmussen
2016-07-20JNI: Implement PDFOBject.write*() methods.Sebastian Rasmussen
2016-07-20JNI: fz_var()/return to make behavior correct upon fz_throw().Sebastian Rasmussen
Previously in many instances the code was allowed to continue after running jni_rethrow() or jni_throw(). When doing so it used variables whose values may have changed inside fz_try(). Those variables must in that case be declared using fz_var(). Another way of avoiding this from happening (and thus having to use fz_var()) is to return from the function immediately after jni_rethrow()/jni_throw(). All remaining occurrances where this is not possible still needs fz_var(). The code is now changed so that it either uses fz_var() or returns early to avoid using variables that have not been declared using fz_var().