Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

New module lnjscheme #387

Open
wants to merge 27 commits into
base: master
Choose a base branch
from
Open

Commits on Nov 2, 2020

  1. ANDROID: additional error checking on JNI an more

    1.) Android 9/10 restricts access to JNI and Jave reflection API's.
    
    This adds additional checks.
    
    Commented out an possible optimization, which could be assumed to
    works, but does not for me so far.  Please leave this comment in, so
    we recall before we wonder why and try over and over again.  Once in a
    while we should ponder if it still does not work or why.
    
    2.) Clear Java exceptions.
    
    This enables to continue to run when an exception occured during a JNI
    call.  (Future versions shall forward this as an exception in Gambit.)
    
    3.) Avoid some JNI calls and provide more information about the
    Java/Android environment to Scheme.
    
    This is required for (upcoming) tricks to still call embedded dynamic
    libraries as subprocesses.
    
    It also enables to figure out a sane path to store app-private data
    instead of the deprecated hard coding of the publicly accessible path
    `/sdcard`.
    
    4.) Add support to switch the apps content view to Java and back.
    
    An upcoming module `webview` will need this.
    0-8-15 committed Nov 2, 2020
    Configuration menu
    Copy the full SHA
    d6cfb90 View commit details
    Browse the repository at this point in the history
  2. LNjSCHEME: new module lnjscheme - call any Androi API without JNI

    Any not-so-time-critical Android API/Java Method - except those
    restricted Android itself may be called without adding JNI code.
    0-8-15 committed Nov 2, 2020
    Configuration menu
    Copy the full SHA
    844b369 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    f7f67e5 View commit details
    Browse the repository at this point in the history

Commits on Nov 4, 2020

  1. CORE: log exceptions with context (part-cw#388)

    Co-authored-by: Matthias Görges <[email protected]>
    0-8-15 and mgorges authored Nov 4, 2020
    Configuration menu
    Copy the full SHA
    f6dae46 View commit details
    Browse the repository at this point in the history

Commits on Nov 7, 2020

  1. GLCORE: Performance optimizations (part-cw#385)

    Remove use of length, repeated list traversals and combinations of apply+append.
    0-8-15 authored Nov 7, 2020
    Configuration menu
    Copy the full SHA
    9b3d9e3 View commit details
    Browse the repository at this point in the history
  2. CAMERA: use FileProvider on Android to read and write data (part-cw#380)

    Apps that use FileProvider to pass URIs to activities must include ANDROID_xml_services and xml/file_paths.xml. 
    
    Also fixes build-binary to locate the support.v4 library needed for FileProvider. Finally, use onRequestPermissionsResult to bootstrap.java.in to fix permission requests hanging.
    peterlew authored Nov 7, 2020
    Configuration menu
    Copy the full SHA
    0527fb9 View commit details
    Browse the repository at this point in the history

Commits on Nov 8, 2020

  1. Configuration menu
    Copy the full SHA
    eabcc49 View commit details
    Browse the repository at this point in the history

Commits on Nov 9, 2020

  1. ANDROID: Add support to switch content view to Java and back part-cw#386

    
    
    An upcoming module webview will need this.
    0-8-15 authored and mgorges committed Nov 9, 2020
    Configuration menu
    Copy the full SHA
    fc59681 View commit details
    Browse the repository at this point in the history
  2. ANDROID: change sys_appdir to use getFilesDir() part-cw#386

    Avoid some JNI calls and provide more information about the Java/Android environment to Scheme.
    
    Co-authored-by: Matthias Görges <[email protected]>
    0-8-15 and mgorges committed Nov 9, 2020
    Configuration menu
    Copy the full SHA
    7312d92 View commit details
    Browse the repository at this point in the history
  3. ANDROID: Additional error checking on JNI part-cw#386

    1) Android 9/10 restricts access to JNI and Jave reflection API's. This adds additional checks. Commented out an possible optimization, which could be assumed to works, but does not for me so far.  Please leave this comment in, so we recall before we wonder why and try over and over again.  Once in a while we should ponder if it still does not work or why.
    2) Clear Java exceptions. This enables to continue to run when an exception occured during a JNI call.  (Future versions shall forward this as an exception in Gambit.)
    0-8-15 authored and mgorges committed Nov 9, 2020
    Configuration menu
    Copy the full SHA
    c2585dc View commit details
    Browse the repository at this point in the history
  4. 5 Configuration menu
    Copy the full SHA
    7561c9a View commit details
    Browse the repository at this point in the history

Commits on Nov 13, 2020

  1. LN_GLCORE Fix bug introduced in 9b3d9e3 when using multiple colors

    Problem stems from conversion of apply to case-based approach
    which didn't consider that colors in glCore:TextureDrawUnClipped
    is now a list of lists. Also patched glCore:TextureDrawClipped
    mgorges committed Nov 13, 2020
    Configuration menu
    Copy the full SHA
    cbea39a View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    1f656d1 View commit details
    Browse the repository at this point in the history

Commits on Nov 19, 2020

  1. ANDROID: additional error checking on JNI an more

    1.) Android 9/10 restricts access to JNI and Jave reflection API's.
    
    This adds additional checks.
    
    Commented out an possible optimization, which could be assumed to
    works, but does not for me so far.  Please leave this comment in, so
    we recall before we wonder why and try over and over again.  Once in a
    while we should ponder if it still does not work or why.
    
    2.) Clear Java exceptions.
    
    This enables to continue to run when an exception occured during a JNI
    call.  (Future versions shall forward this as an exception in Gambit.)
    
    3.) Avoid some JNI calls and provide more information about the
    Java/Android environment to Scheme.
    
    This is required for (upcoming) tricks to still call embedded dynamic
    libraries as subprocesses.
    
    It also enables to figure out a sane path to store app-private data
    instead of the deprecated hard coding of the publicly accessible path
    `/sdcard`.
    
    4.) Add support to switch the apps content view to Java and back.
    
    An upcoming module `webview` will need this.
    0-8-15 committed Nov 19, 2020
    Configuration menu
    Copy the full SHA
    5b3e1ad View commit details
    Browse the repository at this point in the history
  2. LNjSCHEME: new module lnjscheme - call any Androi API without JNI

    Any not-so-time-critical Android API/Java Method - except those
    restricted Android itself may be called without adding JNI code.
    0-8-15 committed Nov 19, 2020
    Configuration menu
    Copy the full SHA
    4aeb1cc View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    da5726b View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    d689216 View commit details
    Browse the repository at this point in the history
  5. Merge branch 'pr-module-lnjscheme' of github.com:0-8-15/lambdanative …

    …into pr-module-lnjscheme
    0-8-15 committed Nov 19, 2020
    Configuration menu
    Copy the full SHA
    9a370ca View commit details
    Browse the repository at this point in the history

Commits on Nov 20, 2020

  1. ANDROID: moved setContentView to after permissions

    Calling setContentView between permission requests would cause some apps to hang. This problem was previously addressed by adding a shell override function for onRequestPermissionResult, which is no longer needed and is removed in this commit
    peterlew authored and 0-8-15 committed Nov 20, 2020
    Configuration menu
    Copy the full SHA
    d842fa8 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    5789272 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    6b9d3dc View commit details
    Browse the repository at this point in the history
  4. ANDROID: better code position

    0-8-15 committed Nov 20, 2020
    Configuration menu
    Copy the full SHA
    2c70a6c View commit details
    Browse the repository at this point in the history

Commits on Nov 22, 2020

  1. Configuration menu
    Copy the full SHA
    4c46e18 View commit details
    Browse the repository at this point in the history

Commits on Nov 23, 2020

  1. JNI: conservative coding

    - #defines LAMBDANATIVE_JNI_VERSION to JNI_VERSION_1_4
    - uses `jint` as if it was an opaque type
    - checks via GetEnv before attaching a thread
      (there are claims on the Internet that this may save some overhead)
    - use AttachCurrentThreadAsDaemon instead of AttachCurrentThread for
      gut feeling
    0-8-15 committed Nov 23, 2020
    Configuration menu
    Copy the full SHA
    84b221e View commit details
    Browse the repository at this point in the history
  2. ANDROID: make mGLView static and initialization once only

    This appears to be the correct way and seems to actually solve the
    issue observed and not fixed by da86a5160 ff.
    0-8-15 committed Nov 23, 2020
    Configuration menu
    Copy the full SHA
    93485a1 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    5dfe4cc View commit details
    Browse the repository at this point in the history

Commits on Nov 24, 2020

  1. Revert "LNjSCHEME: revert change breaking things"

    This reverts commit 5dfe4cc.
    0-8-15 committed Nov 24, 2020
    Configuration menu
    Copy the full SHA
    138c742 View commit details
    Browse the repository at this point in the history