(note: unfortunately, i don't have the file 2_4b4r3.zip, so his changes are provided here) Changes in SuperWaba 2.0 beta 4 release 3 47. fixed exiting the app dont switch to the desired program in PalmOS >= 3.0. 48. fixed "handle over-locked" error when running SW more than 13 times. 49. new J:\org\superwaba\palm\JDK1.3 README.txt. thanks to Daniel Tauschke . now make.bat tests if its my home to avoid copying prc files. . changed in rundemo.bat: now tests if were using jdk1.3 and use oldjava.exe instead of java.exe 50. changed equalsIgnoreCase(Object) to equalsIgnoreCase(String) to ensure compatibility with JDK . fixed some bugs in make.bat. Thanks to Philip Steiner, Jean Rissoto and Daniel Tauschke 51. new method Control.repaintNow(boolean eraseBack). . add Peter Dickerson improvements in MenuBar / PopupMenu 52. Now the window is dragged/menu is poped up only if you drag/click on the title area. 53. fixed TabPanel/remove containers that was not being repainted. Please report any flickering that the code changes may cause. 54. bypassed bug in drawBitmap_gray that it was reading one more byte than allowed. This bug was not fixed, but bypassed by allocating 1 more byte for the image. Note: this bug was bypassed and not fixed to not slowdown the bitblt routine. 55. fixed bug when drawing a bmp at a negative x/y value that would make nothing appear. . changed Applet to ignore case of arguments. 56. added possibility to scale the applet up to 4x. Use the "/scale n" parameter. Note: now the default is 2x 57. Created a jar file to make SW run in the Browser. NOTE: due to function inlining when optimization is turned on, SW must be compiled with OPTIMIZATIONS TURNED OFF prior you make the jar file; otherwise, the Browser will give strange "xxx is not accessible" exceptions... . Turned optimization off on make.bat 58. Fixed an ArrayIndexOutOfBoundsException that occured when passing the /bpp parameter 59. avoid flickering when start applet. 60. if applet, load it as a resource first. In the browser using the archive was fetching the whole archive at each request. 61. fixed memory leak; now releasing mainGrHandle in any OS. . renamed examples\clock to examples\watch . improved rundemo.bat. added rundemo.bat files to all examples to run it as application. 62. reintroduced the Window.flicker boolean: If true, the background is erased on each paint. If false, you must take care of erasing the background 63. Placed a try/catch in waba.fx.NativeMethods4JDK.drawBitmap. 64. new methods Rect.intersectWith and Rect.unionWith. 65. remade the drawBitmap routine. 66. Optimized drawBitmap routine. Now if you create a bitmap where (noClipOrTranslate && bmp.x/y == 0 && bmp.w == screen.w && bmp.h <= screen.h) then it will be drawed instantaneously. 67. changed make.bat files to compile *.java instead of %appName%.java 68. fixed: In device only, when moving Welcome/ThanksTo to the left of the screen and doing a scroll in the text, the text is shifted up 2 pixels. Problem was caused by a bug in the MAKE32 macro. 69. improved performance of Menu. Now it only saves the hole screen instead of each PopupWindow. . Created flag Window.saveBehindWhenPopup . now the classes\make.bat can have as 2nd parameter "only". thus, make compile only will just compile the SW classes without warp'ing them. Changes in SuperWaba 2.0 beta 4 release 4 70. improved MenuBar performance, by removing unnecessary restore of saved screens. 71. fixed error when loading 4bpp images at desktop and at device. Thanks to Strehler marco 72. fixed error when trying to display a piece of a bitmap larger than the screen 73. fixed error when a penDown event caused an fatal error and it was wrongly being catched to break the vm running loop. 74. bypassed exit error in PalmOS <= 2.0: now it switches to the preferences app. In PalmOS >= 3.0, it switches to the launcher. Thanks to Ben Combee for some important tips. . new RunningAsApp.txt file. 75. added Jean Rissoto's changes to correct appPath problem. 76. added Jean Rissoto's changes that fixes an error when changing the attributes of a Catalog and not write to it the changes are not saved. 77. fixed "Vm.exit in loop" bug . removed applicationRunning flag. 78. now SW issues some "cannot allocate memory" errors when trying to alloc memory and fail in the graphics routines. . improved fatal error messages. 79. Yehuda asked to change Date.getJulianDay to public. 80. added Yehuda improvements for the Keyboard class to support other languages (Hebbrew in his case) 81. corrected a memory that was never being freed (about 5k) and was making the vm crash after some runs. . fixed documentation for warp regarding the /x parameter . changed appPath to dataPath at the desktop side, as suggested by Jean Rissoto. note that appPath at commandline still works 82. now at desktop the catalog is stored at the same location it was readed. 83. fixed selection overflowing paint area on ListBox. Thanks to Peter Dickerson. 84. new class waba.sys.Thread to implement a simple thread model. See class javadocs for more details. new MainWindow methods: addThread and removeThread. Note: the original idea of how to implement Threads in Waba was from Isao Yamashita. Although i didnt used his code (which isnt available), i would like to thank him for the idea. 85. fixed a double call to onExit. now only the vm calls it. . optimization note: the SW classes (for the .pdb) must be compiled with optimization on and enabling inlining methods; otherwise, the String manipulation has a performance degradation above 20% . changed some classes to final for optimization purposes: java.lang.StringBuffer, waba.util.Data, waba.util.Hashtable, waba.util.IntHashtable, waba.util.IntVector. If you *really* need to extend one of those classes, tell me and i'll remove the final keyword 86. improved performance for drawBitmap (when x=0 and width=160) . new file: examples/threads . removed other fonts from jar file 87. fixed bug in TabPanel in that an event was being posted on the creation of the control 88. fixed repaint of menu bar bottom when switching menus