2016r2 Release Notes

From Xojo Documentation

You are currently browsing the old Xojo documentation site. Please visit the new Xojo documentation site!

(July 12, 2016)

This release primarily focuses on iOS features. Notable changes and new features include:

Download Xojo today.

Release Notes

Bug Fixes (153 cases)

Case Area Description
43324 Build Corrected issue with formatting of plist entry.
43411 Build Building now defers app nap until builds are completed.
43630 Build Pipeline Updated the XPM file to reflect the new Xojo icon.
40340 Compiler Fixed a failed assertion in CGIA32.cpp that could be triggered by code that references missing types.
40474 Compiler Fixed the location reported by the compiler when referencing a member of Super that does not exist.
43789 Compiler Fixed more assertions in the compiler that were due to unresolved type errors.
37845 Crashes & Assertions » Crash Viewing a Window's DockItem property in the debugger no longer crashes the application.
43169 Crashes & Assertions » Failed Assertion On Windows, setting the mode or period of a timer repeatedly will no longer raise a potential assertion in WinTimer.cpp due to a timer resource limit.
42573 Database Plugins SQLiteDatabase no longer leaks when closing connection.
22297 Debugger Running an application in the debugger on OS X no longer brings up the system's firewall dialog.
43031 Debugger Viewing an object that goes out of scope in the debugger no longer causes the application to crash under certain circumstances.
43320 Debugger Fixed a crash in the debugger that could be caused by computed properties setting other properties to Nil.
44050 Debugger The debugger now shows structure array values immediately instead of showing stale data.
44068 Debugger Fixed an occasional crash that could occur when quitting a debugged app after viewing an Auto while it was paused in the debugger.
44120 Debugger Fixed viewing shared computed properties in the debugger.
22581 Framework » All Fixed a use after free with the NetworkInterface class.
43768 Framework » All Creating a new Picture Image no longer crashes if any of the bitmaps are Nil, rather a NilObjectException is now raised.
43790 Framework » All An OutOfBoundsException when accessing the parameter info for the default constructor no longer occurs.
43817 Framework » All Xojo.IO.SpecialFolder.GetResource now works on OS X console and web.
43897 Framework » All Fixed a bug that could cause Variants holding Currency values to compare incorrectly.
44208 Framework » All UDPSocket's BroadcastAddress property now consistently returns when no network interface is specified.
44275 Framework » All On Linux, creating a MouseCursor with a multi-representation Picture no longer raises a failed assertion.
44288 Framework » All Fixed a bug in JSONItem where short names could still cause key collisions.
43627 Framework » Linux On Linux, Xojo.Net.HTTPSocket RequestHeaders are now sent out correctly instead of being omitted.
43427 Framework » Macintosh Fixed a crash relating to the ActionNotificationReceiver interface.
28116 Framework » Macintosh (Cocoa) Listbox's CellKeyDown event now fires on OS X for non-ASCII keys.
39949 Framework » Macintosh (Cocoa) Reduced CPU usage when there are sleeping threads that were then suspended.
44374 Framework » Macintosh (Cocoa) XmlNode.Xql no longer crashes when namespaces are specified.
33656 Framework » Web Setting a WebImageView picture to Nil now removes the image on the browser.
34741 Framework » Web WebSDK controls which don't have a Javascript Namespace defined and are not inheriting one from their super will now throw a build error instead of just throwing a Runtime Exception. Additionally, we are now enforcing unique namespaces with a build error.
42560 Framework » Web WebSegmentedControls now render properly when a user defined style is applied.
42891 Framework » Web Web controls are now correctly removed when their parent control is not visible.
43143 Framework » Web WebSegmentedControls now correctly support custom styles on a control by control basis.
43502 Framework » Web WebDialog Tab Order now cycles properly when the first control on the dialog is a button.
43573 Framework » Web WebImageView opacity animates correctly again.
44272 Framework » Web Refactored WebFileUploader to deal with a situation where the running user's Temporary directory doesn't exist (as specified by the TEMP environment variable).
37862 Framework » Web » Frame Dimensions of WebPages, WebContainers and WebDialogs are now correctly reported when the Resized events fire.
40580 Framework » Windows Optimized Xojo.Net.HTTPSocket on Windows so it's no longer 3-4 times slower than HTTPSecureSocket.
43007 Framework » Windows Windows BevelButtons now draw properly in HiDPI.
43220 Framework » Windows On Windows, drawing a stretched image on an Alpha Picture, or with Transparency set, no longer fills with a gradient effect.
43687 Framework » Windows Windows ActiveX controls are now sized properly in HiDPI, this includes our native HTMLViewer.
43694 Framework » Windows Windows TextArea font is now scaled properly for HiDPI.
43697 Framework » Windows Windows Graphics.ScaleX and ScaleY now return correct values in HiDPI.
43752 Framework » Windows Windows now picks the correct hi-res image when drawing in Listbox’s CellBackgroundPaint/CellTextPaint event.
43769 Framework » Windows Fixed scaling issue when rendering with GDI+ on Windows.
43779 Framework » Windows An embedded ContainerControl now returns the correct ScaleFactor.
43792 Framework » Windows On Windows, font no longer appears twice as large in HiDPI.
43845 Framework » Windows On Windows, assigning an ImageSet to a MenuItem no longer requires GDI+.
43947 Framework » Windows On Windows, the native HTMLViewer can now load pages from FolderItems that contain diacriticals.
44214 Framework » Windows The System.NetworkInterfaceCount and System.GetNetworkInterface now only shows connected interfaces on Windows. This matches the OS X and Linux behavior.
44341 Framework » Windows ScaleFactorChanged event is now triggered when the system DPI settings change (works for Windows 8.1 and 10).
42592 Framework » iOS Fixed a memory leak with iOSSQLiteDatabase.SQLSelect.
44495 Framework » iOS iOSContainerControl now inherits from iOSControl.
41272 IDE Scratch/Temp folder will be kept around 100 mb and items will be deleted on a least recently used basis.
42871 IDE When you right-click on an inactive window and select a command, the correct command is now sent to the window.
43257 IDE About box segmented control no longer sports a focus ring around the selected segment.
43325 IDE Corrected a typo in the IDE plist entry.
43449 IDE Tab order editor now resolves constants for captions.
43450 IDE Tab order editor filters out items that have tab stop off.
43929 IDE Auto-Layout Offsets are retained as positive or negative as necessary.
44237 IDE Tabs images on the iOS screen views display properly.
25568 IDE » Auto Complete Editing the return type when the autocomplete ellipsis are showing no longer results in trimming off of the last few characters in the return type field.
35329 IDE » Auto Complete Moving focus out of the parameters field or return type field then moving it back and continuing to type no longer trims off a few extra characters from where the insertion point is.
43626 IDE » Build Automation Can now add to the Copy File Build Step on Linux using the + command bar item.
15028 IDE » Code Editor Search and replace changes declarations as expected. Note there is a refresh bug that is separately reported where the Navigator may not immediately show the updated name.
25630 IDE » Code Editor Contextual menus are now kept up to date and have cut/copy/paste/etc enabled properly.
36728 IDE » Code Editor Windows IDE no longer flickers when IDE is activated (this also fixes the code editor from flickering when the autocomplete popup is shown/dismissed).
43260 IDE » Code Editor Selection using ctrl-shift-home and ctrl-shift-end now work properly.
44325 IDE » Code Editor Multiple bare exception statements at the end of a sub / function now have code folding widgets.
43634 IDE » FileIO Collect project items works as expected again.
43827 IDE » FileIO IDE now displays an error when you try to import a project item that is incompatible with the project type (e.g. importing a Window into a Console project).
25715 IDE » Find & Replace Double clicking a search result behaves the same as single clicking it.
35564 IDE » Find & Replace Tab order in search pane fixed.
44238 IDE » Find & Replace File Type Sets now work with Find/Replace.
44240 IDE » Find & Replace Several items that were not handled properly by search and replace now are, including: enum names, structure names, delegate names, event definition names, menu handler names, note names, and using clauses.
43505 IDE » Icon Editor Images imported into icon panes like the App Icon editor display properly.
37301 IDE » Inspector Copy paste and duplication of string properties no longer double up quotes.
41580 IDE » Inspector Opening the Interface chooser now commits outstanding Inspector changes.
43192 IDE » Inspector Inspector items should all align correctly on each OS now.
44151 IDE » Inspector Fixed alignment of Entitlements Inspector property names.
44160 IDE » Inspector Inspector switch controls no longer render incorrectly in the Windows IDE.
44176 IDE » Inspector Invalid column width settings are not retained and rewritten to ones that are valid.
41988 IDE » Language Reference Links on pages that originated in the new LR on Dev Center pages behave as expected when clicking links that should navigate between topics.
42930 IDE » Language Reference When there are identical pages with the same topics, the Dev Center content will supercede the wiki content.
43238 IDE » Language Reference Focus is set to the search field when opening the local Language Reference Viewer.
43319 IDE » Language Reference SQLiteDatabase for iOS has been renamed to iOSSQLiteDatabase since it is not the same SQLiteDatabase as in the classic framework. Supporting classes have also been renamed.
43367 IDE » Language Reference HTML tags have been removed from descriptions originating from Dev Center.
43372 IDE » Language Reference Updated local LR to include the WebMapViewer.GoToLocation method.
43375 IDE » Language Reference IDE now shows ScaleFactor changed event description.
43426 IDE » Language Reference Updated local LR to include Graphics.ScaleX, ScaleY and ScaleFactorChanged.
43572 IDE » Language Reference Items in the REALbasic namespace that have both a method and class are now found in the local LR and on the wiki.
43624 IDE » Language Reference Local language reference has correct references for WebRadioGroup.SelectionChanged.
43733 IDE » Language Reference LR no longer makes a mess of certain pages with Information boxes on them (like the border property).
43863 IDE » Language Reference Scripting pages are now in the local docs.
44216 IDE » Language Reference Type and source search tags in offline Doc Viewer are no longer case sensitive.
44297 IDE » Language Reference Window.Frame and other "design time properties" are included in offline doc reference.
44355 IDE » Language Reference TextArea.ScrollPosition behaves in the local LR as expected.
42812 IDE » Layout Editor Desktop layout editor no longer renders low-res on HiDPI screens when dragging controls from the Library or Navigator.
42929 IDE » Layout Editor Make it so if the window frame would be larger than 4000 in either dimension or < 1 in either dimension we put up a suitable message so the user knows why the frame is not drawn.
43265 IDE » Layout Editor An issue with how toolbars and webstyles behaved that could make a project perpetually indicate that it has unsaved changes has been fixed.
43373 IDE » Layout Editor ContainerControls now render in hi-res on HiDPI screens.
43488 IDE » Layout Editor Remove ability to lock controls for iOS Projects since this is not properly supported with auto-layout (see 43628). Loading a project with locked iOS controls removes the locks.
43814 IDE » Library iOSMessageBox is now in the Pickers section of the Library.
42768 IDE » Menu Editor Desktop Menu Editor now renders correctly on HiDPI screens.
43355 IDE » Menu Editor Tabbing through the Index field in the Inspector for a menu item no longer sets the value to 0. And you can now clear the value.
7907 IDE » Miscellaneous Projects remember their size, position, and maximized state.
20527 IDE » Miscellaneous Added new menu shortcuts: * If you press ctrl/cmd+] it moves from find -> issues -> messages -> find (and so on) * If you press ctrl/cmd+[ it moves from issues -> find -> messages -> issues (backwards) * If the bottom pane is not showing and you hit one then it shows starting with either Find (ctrl/cmd+]) or Messages (ctrl/cmd+[)
24615 IDE » Miscellaneous Advanced SQL dialog restored and Type field is now a popup menu.
25882 IDE » Miscellaneous Updating the super class of a class in the Navigator that is then further derived also updates the row icons for those derived classes.
27116 IDE » Miscellaneous Toolbar editor can now be scrolled using trackpad scrolling gestures.
27312 IDE » Miscellaneous When you clear the search field the results list and match count are also cleared.
33936 IDE » Miscellaneous Undoing the implementation of an interface on a toolbar no longer raises a warning from the IDE.
40879 IDE » Miscellaneous Fixed a NilObjectException that could occur when debugging.
42621 IDE » Miscellaneous Focus no longer switches between screens when tabbing through the navigator in certain multi-monitor setups.
42737 IDE » Miscellaneous Learn More uses the same size font as Check Now on the Preferences > Updates pane.
43080 IDE » Miscellaneous Can now add IOSImage properties to Inspector Behavior to expose them in the Inspector for iOS projects.
43193 IDE » Miscellaneous Column widths for desktop ListBoxes turn newlines into commas and generate a valid column widths expression.
43263 IDE » Miscellaneous When you switch away from an editor that is in inline editing mode and it eventually gets closed to keep the number of cached editors down it no longer leaves the controls in a state where they are marked as already being edited inline. Previously this could leave the IDE in a state where the control can not be returned to inline editing mode unless you save, close the project and reload it.
43369 IDE » Miscellaneous Icon on build dialog is now hi-res on HiDPI screens.
43392 IDE » Miscellaneous File Type Set Editor no longer tries to use files that are not image types as images.
43415 IDE » Miscellaneous Window title and label for the Add Event Dialog say the same thing instead of disagreeing on Windows and Linux.
43506 IDE » Miscellaneous Can use both the backspace and delete keys to remove one item from an Image Set.
43538 IDE » Miscellaneous Tab text on Linux is now more vertically centered.
43541 IDE » Miscellaneous Badly constructed partial paths no longer cause an exception when opening a project.
43584 IDE » Miscellaneous Images with individual representations assigned now retain those images and do not flip dimensions. NOTE : THIS CHANGE MAY AFFECT existing projects using images as there were spots where the height and width were bing transposed.
43684 IDE » Miscellaneous Xojo TrayItem on Windows now renders smooth icons at different magnifications.
43765 IDE » Miscellaneous Some very slow code encountered when printing a really large constant has been fixed.
43772 IDE » Miscellaneous Changing the color without having committed the name change on a control no longer causes an issue.
44094 IDE » Miscellaneous IDE properly asks to save if you have several workspaces open showing changes when you quit.
44175 IDE » Miscellaneous IDE warns that a project is read-only or locked and that it needs to be Saved As before you can successfully modify it.
44304 IDE » Miscellaneous Colors save and restore properly.
44311 IDE » Miscellaneous Template list no longer leaves a visual artifact if you make the window larger.
42037 IDE » Navigator Changing the scope of a web control wrapper retains the correct icon.
43103 IDE » Navigator Large and small font size selections for Navigator has the large size actually larger than the “not large” size on all OS platforms.
43323 IDE » Navigator Clearing the text in the Navigator filter field with auto filter OFF causes it to correctly reset the Navigator.
43855 IDE » Navigator Paste of a copied build step pastes into a selected target if there is one.
44256 IDE » Navigator Make it so classes named "Note”, "Folder" and "Image" do not take on the icons of those special Navigator types - since they are not those types of project items.
25027 IDE » Project Editor Contextual and menu bar menus offer the same edit choices.
26526 IDE » Project Editor Windows and Menu Bars will, if deleted from a containing folder, return to being in that folder when the deletion is undone.
13250 IDE » Report Editor Reports can now use constants in labels and other controls.
26994 IDE » Scripting Insertion point no longer moves when editing a script and deactivating then reactivating the IDE.
32763 IDE » Scripting Open file dialog has script types in the file type list.
43400 IDE » Scripting Added an artificial 3 second delay to the IDECommunicator IPCSocket to allow the OS to completely release the socket before trying to listen again.
44415 IDE » Scripting BuildApp no longer returns the previous build's path when the current build fails because of a compile error.
44197 IDE » Toolbar Editor Toolbar editor on Windows no longer draws in totally white as you drag making it impossible to reorder items.
43032 IDE » Web Page Editor Adding web controls should no longer get empty event lists after the computer has slept.
20156 IDE » Window Editor Can tab between controls on a layout again.
23427 IDE » Window Editor The paste board color is user selectable in Preferences->Layout so they can choose one that does not make it impossible to see certain controls, like the disclosure triangle, when they are dragged to the pasteboard.
24825 IDE » Window Editor Dragging a generic object to a layout then changing the super class behaves as expected and displays are refreshed.
25176 IDE » Window Editor Made it so the select contextual menu on the layout editor is once again hierarchical based on control parenting.
42934 Plugin SDK Setting and clearing the icon for BevelButtons and ImageWells now works properly.
43632 Remote Debugger Stub Remote Debugger Stub no longer crashes if one or more of the previous files still exist on the target computer.
43935 Remote Debugger Stub Fixed Code Signature on OS X Remote Debugger Desktop.

Changes (22 cases)

Case Area Description
44454 Build Pipeline Mac Remote Debugger Desktop code signature has been fixed.
43094 Compiler 'Async' and 'Await' are now reserved words.
44064 Framework » All TypeMismatchExceptions raised by failed Auto conversions now contain the information of the expected type and the actual type.
44063 Framework » Web Web Apps have a Supports HiDPI in the Shared Build Settings.
43913 Framework » iOS iOS applications are now linked against the iOS 9 SDK. This can cause differences in behavior, which are generally outlined in Apple's UIKit release notes.
43925 Framework » iOS Support for iOS 7 has been dropped. The minimum required version is now iOS 8.
44218 Framework » iOS The SqliteDatabase for iOS has been renamed to iOSSqliteDatabase along with its supporting recordset, field and exception classes.
14779 IDE » Code Editor Arrow key and ctrl+arrow key move as expected by Windows users.
20120 IDE » Code Editor Make it so you can right click an item in the Navigator to change it's scope. This supports multiple selection.
41230 IDE » Find & Replace Switching the search scope selector in the lower search pane reruns the search.
43188 IDE » Language Reference An exact match is selected in the list. This assumes you’re not searching for many things at once (which is possible).
43558 IDE » Language Reference LR retains position size and maximized state. Note that it won’t retain a minimized state as when you minimize it then try to open it later it would be minimized which defeats the purpose.
43666 IDE » Language Reference Dev Center entries for keywords are displayed instead of older Doc Wiki entries.
43982 IDE » Language Reference Initial page for the offline Doc Viewer displays search tips from
44093 IDE » Layout Editor WebPage Layout Editor graphics have been updated for Windows 10.
23933 IDE » Miscellaneous Pressing the help button in the toolbar opens the help for whatever is selected in the editor.
26274 IDE » Miscellaneous External items now show a tooltip with their full path when you hover over them in the Navigator.
26343 IDE » Miscellaneous There’s a very short contextual menu in the icon editor panes that has Delete, Paste and Import. These each obey the selected mode (image, mask or preview - both image and mask) as set in the overall editor so you can manipulate just the image, just the mask or both from the contextual menu. Note this same editor is used for File Type Sets so these work there as well.
42896 IDE » Structure Editor Structure editor can show 32 and 64 bit sizes.
13272 IDE » Web Page Editor When you edit cells in the columnar inline editor, pressing enter or return in a cell will move to “the next cell” and start editing like pressing tab does.
43560 IDE » Web Page Editor More speed improvements for the Web Page editor.
44274 Miscellaneous Building and running iOS applications now requires that Xcode 7 or Xcode 8 is installed.

New Items (19 cases)

Case Area Description
43636 Compiler The GetTypeInfo operator can now be used with all intrinsic types, structure types, and enum types.
39087 Framework » All The GetTypeInfo operator now returns an instance of the new framework's Xojo.Introspection.TypeInfo class rather than the old framework's Introspection.TypeInfo class. This change should not break compatibility for most existing projects because the result of GetTypeInfo can be converted to or compared with old framework Introspection.ClassInfo objects. As part of this change, GetTypeInfo is now available for use on iOS.
23891 Framework » Web Web apps now parse X-Forwarded-For, X-Forwarded-Proto and X-Forwarded-Host headers and replace the values of Session.RemoteAddress, Session.Secure and Session.Header("Host") respectively.
29686 Framework » Web Web Framework now supports Retina/HiDPI in browsers which support it.
36019 Framework » iOS iOSPicturePicker class is available in iOS apps to allow selection of images on the device or taken with the camera.
36918 Framework » iOS Added iOSTable.ScrollToRow method to scroll the table to a specific row.
37340 Framework » iOS The iOSScrollableArea class allows you to view and display content that is larger than the size of the view itself.
37489 Framework » iOS iOSLocation class added to allow user to request location coordinates and updates from the device.
43455 Framework » iOS Added support for table row actions. See iOSTable's ActionsForRow and RowAction events for details.
43456 Framework » iOS You can now enable re-ordering of iOSTable rows by using the iOSTableDataSourceReordering interface with a data source.
43905 Framework » iOS You can now embed controls within an iOSTable cell by using the iOSCustomTableCell class. Note: The iOSTable API (and related interfaces) has changed slightly in this release and is not source compatible with older releases.
43906 Framework » iOS Added the iOSMotion class, which allows applications to read accelerometer and gyroscope measurements.
43907 Framework » iOS iOSSharingPanel class is available for iOS apps to share pictures, text and URLs.
40857 IDE New iOS projects will use a default launch screen storyboard and NOT contain launch images by default as launch images are being deprecated by Apple in iOS 8 and newer.
43229 IDE Adding the first image to an image set establishes the basic proportions that the remaining images added to it must conform to. If they do not they get a warning message in the editor that they will be scaled.
43637 IDE » Find & Replace Added some more ability to navigate things using the keyboard: * cmd-g moves forward in the bottom pane results (if it can). In the search results this means move to the next search result. In compile errors this is the next compile error. * cmd-shift-g moves backwards Windows and Linux have appropriate short cuts using ctrl-g and ctrl-alt-g.
36133 IDE » Layout Editor Can now add iOS navigation and iOS toolbar buttons from the layout.
43628 IDE » Layout Editor Locked iOS controls behave as expected and constraints cannot be altered when one is locked.
22554 IDE » Web Page Editor There is a new AutoAdjust command bar item that presents a dialog to make auto adjusting tab order simpler.

Docs and Examples (26 cases)

Case Area Description
43222 Documentation Corrected sample code on Assigns page.
43424 Documentation Incorrect events no longer show in LR for WebTimer.
43466 Documentation Fixed the example code for TextOutputStream.LastErrorCode.
44230 Documentation Added a note to FolderItem.Alias to indicate that you should use TrueItem or TrueChild to get a reference to the alias itself.
42398 Documentation » Miscellaneous Added some examples to WebApplication properties, removed Run event handler from displaying on doc page.
42405 Examples Correct Windows app name for IDECommunicator example project.
43569 Examples Advanced/Shell/Interactive Shell example now works on Linux/Pi.
43805 Examples Sample Inno Setup scripts are now available in Examples/Platform-Specific/Windows/Making Installers.
43836 Examples Updated Office Automation examples.
44030 Examples Fixed error checking in MSSQLServerExample for ShowDataButton.
44179 Examples Added Web App SQLite example.
44398 Examples Fixed typo in image creation for ObjectInCanvas example.
42410 Language Reference » Documentation Added WebRequest.Secure property to doc page.
42434 Language Reference » Documentation Added sample code to Xojo.Core.MemoryBlock and classic MemoryBlock pages for LittleEndian property.
43390 Language Reference » Documentation Updated Label.AcceleratorKey and Label.Text to describe how to use accelerator keys.
43604 Language Reference » Documentation Xojo.IO.SpecialFolder.GetResource now indicates that it can be used with Windows, Linux and console apps.
43755 Language Reference » Documentation Added method assign syntax to RegistryItem.DefaultValue page.
43873 Language Reference » Documentation Xojo.Net.HTTPSocket.ValidateCertificate page now shows default value of True.
43889 Language Reference » Documentation Xojo.IO.SpecialFolder is in local Lang Ref viewer.
43921 Language Reference » Documentation Corrected type of WebToolbarButton.Icon from Picture to WebPicture in the online docs.
44036 Language Reference » Documentation Clarified ExecuteJavaScript vs. WebControl.ExecuteJavaScript usage.
44058 Language Reference » Documentation Fixed links to DevCenter MemoryBlock/MutableMemoryBlock from classic MemoryBlock page.
44221 Language Reference » Documentation Documentation for ListBox.Expanded updated to mention that setting Expanded to true results in the ExpandRow event being called. Also that that setting it false calls the CollapseRow event.
44324 Language Reference » Documentation Added WebThread page to Dev Center.
44328 Language Reference » Documentation ListBox.RowDepth now notes that top-level row has depth = 0.
44381 Language Reference » Documentation Wiki pages updated to show Bind, BindType, etc. as methods inherited from PreparedStatement.