The headlines:- *** This version is the last stable version before moving to API level 26 *** 1. Added a new app.ExtExec() command which allows you to execute Linux shell commands in the powerful Linux environment provided by the free app called Termux. The Termux app runs as a service and there's almost no limit to what you can achieve with a full blown Linux machine running on your Android device! How about installing git, or nodejs or using ssh or gzip. Try typing 'busybox' at the terminal prompt to see what built-in commands are already available to you (Instructions for using Termux from DS below) 2. I've also added French, German and Russian language options, so you can see menus and samples in your own language. Docs will be translated once we have the English version finished (it's being worked on) 3. You can now add your own HTML based extensions to WiFi editor (for both left and right tabs). You need to put your (unzipped) extension files in a /sdcard/DroidScript/Extensions folder. I've included two samples in the release folder which demonstrate both local and remotely hosted extension content. (This should also work in the Chromebook editor, but I've not tested it yet) Note: You could create a plugin in install extensions automatically You can get the release here:- http://androidscript.org/alpha/DroidScript_165a1 Here is the full list of changes since the last official release:- DS 165 - Added app.ExtExec() command (can now execute commands in Termux!). - Added French, German and Russian language options. - Added extensions facility to WiFi editor (for both left and right tabs) - Fixed Chromebooks menu button. - You can now drop *.obj files onto the Wifi editor file browser. - Fixed SetOnLongTouch() callback failure on Text controls. - Fixed docs failing to copy or run samples. - Added support for PixelBook (untested). - Added 'exact' option to app.SetAlarm (only works for single shot alarms). - Various typos etc fixed in samples (thanks to BareK) - Added Wifi IDE F3 and Shift+F3 for searching for selected word (same as Ctrl+K). - Added Ctrl+L for deleting current line (same as Ctrl+D) - Added Ctrl+G for goto line. DS 164a4 - Fixed scaling bug with re-loading images after calling app.SetDensity. - Enabled Cam/audio + location in WebView and HTML apps ('NoCapture','NoLocate' to disable). - Added app.script() method (async load of local scripts) - Added Angry Birds style game demo for game engine. - Game engine libs now exluded from non-game APK builds. DS 164a3 - Various Game engine updates. - Added app.ExtractPlugins method. - Added obj.Method( name,types,p1,p2,p3,p4 ) access Java via reflection (premium). DS 163a1 - Added Block based editing for DSJ files! - Added screenshot button to Wifi IDE (screen shots now captured to .edit folder). - Added 'nofocus' option to app.Alert() method (useful for kiosk mode) - Added dlg.IsVisible() method. - Added new app.CreateWizard + new 'Wizard' sample for premium users. - Fixed recent bug with img.SetImage() not allowing image as first param. - Added 'base64' mode to app.WriteFile method (writes a base64 string to raw binary data) - Added app.SimulateScroll( obj,x,y,dx,dy,count,fling ) method, simulates mouse wheel scrolls. - Added app.SimulateDrag( obj,x1,y1,x2,y2,step,pause ) method, simulates mouse drag. - Shortened startup time on Chromebooks. DS 162a2 - Removed jqplot from internal assets, moved jquery to /Sys/Libs. - Removed 'WebView Gauges' and 'WebView Graphs' samples moved to downloadable demos. - Fixed drawer lock/unlock bug. - Enabled mixing of width/height vals with 'FillX', 'FillY' option. - Fixed app.SetScreenMode to remove menus when null/empty string used. - Changed app.SetScreenMode to fire OnConfig. DS 162a1 - Added game engine! - Fixed Launcher sample to use android.intent.action.MAIN instead of .VIEW. Calling Termux scripts from DS ========================= Enable Termux to access sdcard:- Goto Android settings/apps/termux and enable Install termux tasker plugin:- https://f-droid.org/packages/com.termux.tasker/ Create a simlink folder for the termux tasker plugin from termux home dir like this:- mkdir .termux mkdir /sdcard/termux /sdcard/termux/scripts ln -s /sdcard/termux/scripts .termux/tasker To call a termux script from DS:- app.WriteFile( "/sdcard/termux/scripts/hello.sh", "echo Hello $1" ) var err = app.ExtExec( "termux", "hello.sh", "Dave", "hide" ) if( err ) alert( "Termux Error:" + err )