2015r3 Release Notes

From Xojo Documentation

(October 20, 2015)

Xojo 2015 Release 3 is one of the largest releases in Xojo history. Major changes and new features include:

  • 64-bit Desktop, Web and Console apps for OS X, Linux and Windows
  • Raspberry Pi 2 (32-bit ARMv7 Linux) apps for desktop, web and console apps
  • Web Drag and Drop support
  • The ability to create bookmarks to lines of code
  • iOSLabel now supports different line breaks
  • You can now “Collect” all your project items into a single bundle to make distribution easy
  • All-new File Type Set Editor for managing files used by your apps
  • iOSContainerControl to create reusable iOS controls

Note: With 2015r3, Xojo no longer supports building apps for Windows XP.

Release Notes

Bug Fixes (259 cases)

Case Area Description
24010 Build If an external IDE script cannot be found the IDE will, when it tries to run that step, show a warning and cancel the build.
40209 Build ICNS files are written using PNGS for all sizes.
31855 Compiler Instead of asserting, an error is now reported if an enum contains a string value.
38837 Compiler Compiler: Integer constants without an explicit type are now treated as Integer instead of Int32.
39763 Compiler Fixed a crash in the compiler when empty parenthesis were used as an expression.
39765 Compiler Fixed a crash with enumerations that have an invalid underlying type.
39855 Compiler Fixed a crash that would occur when using Mod where the second operand was zero.
39994 Compiler Fixed a handful of crashes that could occur if a class inherited from itself.
39995 Compiler Fixed a crash when an invalid value was entered into the Implements field of the method editor.
40001 Compiler Fixed a crash when there was a method with multiple parameters marked Extends.
40078 Compiler Constants referring to other constants now resolve using the proper name lookup rules.
40079 Compiler Fixed a crash that could occur with enumerations in rare cases.
40086 Compiler Fixed a crash when a class has a superclass that implements something that is not an interface.
40087 Compiler Fixed the class interface aggregate cycle checking to be correct in all cases.
40095 Compiler Fixed a crash that could occur if the underlying type of an enumeration was an array.
40096 Compiler Fixed a crash that could occur if a parameter was specified to be ByRef and ParamArray.
40128 Compiler Fixed a crash that could occur when #If blocks had a conditional value that didn't evaluate to a boolean constant and there was an #ElseIf.
40139 Compiler Fixed a failed assertion that could occur if a structure field had an unresolved type that happened to have the same name as another non-type symbol.
40342 Compiler Fixed the alignment of 64-bit integers inside of naturally aligned structures.
38863 Crashes & Assertions » Crash Compiler: Fixed a bug where applications would crash if an exception was raised through a very large function.
39076 Crashes & Assertions » Crash Fixed a crash that would occur if RuntimeExcerption.Stack was accessed from a binary lacking function names.
27064 Database Plugins ODBC Plugin: Binding string of type ODBC_TYPE_LONGSTRING no longer truncates string to 2 characters.
35603 Database Plugins The DNS chooser dialog now shows up again on OS X when the ODBCDatabase.DataSource is empty.
40349 Database Plugins ODBC Plugin: Fixed a host of issues related to prepared statements: - Binding ODBC_TYPE_STRING/LONGSTRING now works properly - Binding empty strings now works properly - Fixed a potential memory buffer overrun with long sql statements, binding long strings, etc. - Improved error reporting for prepared statements - Updating Date values with Null is now possible
27807 Debugger Can resize splitters in debugger whether the IDE is paused while debugging or not.
30860 Debugger When starting the debugger the bottom pane, if open, will hide the bottom pane so the debugger can properly show.
32726 Debugger Console Remote debugger Stub can be used from an SSH system and does not require the OS X Terminal app or xterm.
34893 Debugger Running a web app no longer badges the IDE dock icon.
38668 Debugger Debugger pane can be resized vertically as well as horizontally even when not viewing debugging data.
39341 Debugger Properties exposed with Inspector Behavior (esp. Text) retain their values when set in the Inspector.
18420 Framework » All Email attachments save as expected regardless of being base64 encoded or not. Only base64 encoded are decoded before saving.
21325 Framework » All Variant's Int64Value now handles exponents.
34709 Framework » All HTTPSocket, HTTPSecureSocket, SMTPSocket, SMTPSecureSocket now support longer username/password combinations for proxies and http authentication.
34980 Framework » All WebListBox.LastIndex now defaults to -1 instead of 0.
38643 Framework » All EmailAttachment now adds filename (Latin1 and UTF8) parameter to Content-Disposition attachment header if the attachment has its name property set.
39274 Framework » All Xojo.Data.GenerateJSON no longer throws an InvalidArgumentException when passed empty text.
39307 Framework » All Text variant comparisons with String, Integer, Double, etc. now works instead of raising a failed assertion.
39319 Framework » All An off by one error in the index of method for the new MemoryBlock has been fixed.
39331 Framework » All Int8 and Uint8 can be used with the Str function with and without format strings.
39398 Framework » All GenerateJSON no longer throws an InvalidFormatException when passed a zero-length String.
39516 Framework » All All: SMTP connections using STARTTLS have been refactored so that an intercepting insecure server cannot accept the connection.
39981 Framework » All Windows/Linux: Subtracting or adding a DateInterval to a Xojo.Core.Date now properly modifies the significant fields of the date properly.
31664 Framework » Linux Change the pace of the indeterminate progress bar to something a little slower.
38795 Framework » Linux Built apps now look in the generic "Libs" folder for plugins and shared libraries if available.
40259 Framework » Linux Using Xojo.Net.HTTPSocket in Console apps no longer crashes in Ubuntu 12.04 or older.
38659 Framework » Macintosh (Cocoa) RadioButtons on TabPanels and PagePanels have the pre-2014r2 behavior again.
40672 Framework » Macintosh (Cocoa) Fixed a crash that would occur when closing a fullscreen or split window on OS X 10.11.
15116 Framework » Web WebRadioGroups are now the correct height in the browser.
38655 Framework » Web Fixed a WebDialog refresh bug which caused WebLabels to render incorrectly when a dialog had been closed and opened again.
38880 Framework » Web WebCanvas now has a DisableDiffEngine property.
40125 Framework » Web Fixed a bug in WebListbox which made the use of external datasources using the DataCell interface fail. Added a RefreshCell method to allow pushing DataSource changes down to the browser.
40188 Framework » Web WebListBox.LastIndex now gets set to -1 when DeleteAllRows is called, matching the desktop behavior.
40242 Framework » Web Web: Fixed a bug which prevented IE11 and IE Edge from being detected properly.
40262 Framework » Web Firefox and Internet Explorer 9+ will now play H.264 MP4 videos in their native players instead of using Flash.
40268 Framework » Web Web: Fixed a bug which prevented gzip compression from being applied to http responses.
40309 Framework » Web Web: WebTextField and WebTextArea now fire the TextChanged event when the text set in the inspector is cleared.
40511 Framework » Web Internet Explorer 11 is recognized as a supported browser again.
39704 Framework » Web » Frame WebHTMLViewer.URL no longer destroys the backing webfile if the encoding of the URL being set is not UTF8 and that's the only difference.
40060 Framework » Web » Frame Closing a WebPage, WebDialog or WebContainer no longer shows an error about closing controls.
40048 Framework » Web » Javascript WebSDK no longer overwrites the XojoCustom namespace if it already exists.
20850 Framework » Windows Modernized Open/Save/Select dialogs (i.e. using Vista+ style dialogs instead of XP style). Note: setting the Cancel caption only works on Windows 7+.
24826 Framework » Windows Adding a movie to a project no longer autoplays it.
33565 Framework » Windows WebKit based HTMLViewer no longer increments the reference count of its CefBrowser when getting the Handle property.
34080 Framework » Windows The GDI+ graphics functions now falls back on a generic MS Sans Serif font if an unsupported font was used (this fixes various issues like StringWidth returning 0).
38693 Framework » iOS When you set the Value for a segmented control on iOS that item is now marked as selected so that other changes to the control, such as changing a caption, work as expected.
38972 Framework » iOS You can once again use the Browse option selecting an image for an image view. On iOS it creates an image asset, not a picture, the same as if you dragged an image into the project.
39500 Framework » iOS A segmented control with no segments no longer results in an error when you analyze the project.
40599 Framework » iOS Changes to some enumerations for consistency: * iOSImageView.ContentsMode ENUMERATION renamed to be plural (ContentModes) * iOSProgresWheel.Shade ENUMERATION renamed to be plural (Shades) * iOSToolbar.Context ENUMERATION renamed to be plural (Contexts) * iOSDatePicker.DatePickerMode ENUMERATION renamed to iOSDatePicker.Modes (pluralized & renamed)
36874 IDE Adding an event handler puts the focus on that item in the Navigator, or the last one if you add several at once, and this results in the code editor having focus so you can type immediately.
38771 IDE Assets no longer silently reload if they have lost track of one of the images in one of the asset types.
39240 IDE An error that could arise when you copied and pasted a property has been fixed.
39430 IDE The feedback icon in the toolbar has been fixed.
40402 IDE Deleting an event from a control set no longer causes issues after deleting it.
40891 IDE Accented characters now work fine as project item names.
20233 IDE » Auto Complete Toolitems on a Toolbar now autocomplete.
36047 IDE » Auto Complete SQLiteDatabase on iOS no longer shows methods that apply to the non-iOS SQLiteDatabase in autocomplete.
36417 IDE » Auto Complete Items that are not accessible for the project type are not shown by autocomplete.
39125 IDE » Auto Complete Text constants are now shown in autocomplete.
39325 IDE » Auto Complete All sortable array types show Sort and SortWith as possible autocompletion methods.
39383 IDE » Auto Complete Autocomplete now shows a structure's ByteValue method.
39406 IDE » Auto Complete Until keyword now autocompletes properly. Do loops are also closed in a more contextually sensitive way : * If you start the loop with DO<press return="" shift=""> it will be closed with "loop until” * If you start the loop with "do until" it will be closed with "loop" </press>
37246 IDE » AutoLayout Positioning controls in IOS using cursor keys no longer hangs the IDE.
38744 IDE » AutoLayout Baseline constraints are not removed when you resize horizontally as they were in the example. They get revised to a top constraint if the height is changed.
38777 IDE » AutoLayout Controls that have constraints that depended on a control that was being deleted were not be reset and would just be removed. This fix puts constraints back on to those affected controls.
39004 IDE » AutoLayout Can set baseline constraints and set them relative to other controls baselines.
19073 IDE » Code Editor The IDE no longer reformats method parameters when loading code.
25588 IDE » Code Editor Code editor is active immediately after adding event handler.
26363 IDE » Code Editor GoTo property with arrays now works correctly.
26837 IDE » Code Editor Adding an event puts the focus in the event’s code editor.
27203 IDE » Code Editor Option-return on OS X once again inserts a line continuation character.
28670 IDE » Code Editor Enumerations only support the various integral types (integer, Uinteger, int8, uint8, etc).
28688 IDE » Code Editor Constant name changes are property retained.
28942 IDE » Code Editor Clicking elsewhere retains changes as expected.
35320 IDE » Code Editor When you press shift + return there is always a new blank line added and the insertion point is on that new blank line.
38594 IDE » Code Editor Scroll offsets are accounted for when the code editor canvas is asked for the rectangle for some text so the special characters palette and dictionary show up in the right spot.
38651 IDE » Code Editor Selecting text and getting the OS X dictionary definition works again.
38847 IDE » Code Editor Attributes and compatibility settings are NOT retained on a control instance placed on a layout. This make iOS consistent with desktop applications.
39878 IDE » Code Editor Bug icons are centered using the same metrics as the hit boxes and line folding mechanisms.
40195 IDE » Code Editor Shift-return to close a block thats opened with a select case is now correctly closed with "end select”.
40732 IDE » Code Editor Minor typing change in the short summary for constants properties and methods so they consistently use “As”.
41039 IDE » Code Editor Help Syntax in Code Editor displays the correct signature for the item the mouse is hovering over.
40036 IDE » Constant Editor Dynamic constants of Text type now work.
40781 IDE » FileIO Make it so when the IDE loads an old Binary or XML project the unnamed items that are in the project get loaded in a way a user can remove them. This mimics what occurs for text projects.
30201 IDE » Find & Replace Capitalization on help tags for search fixed. Descriptions are accurate.
40404 IDE » Find & Replace Find->Replace All no longer drops a default value on a property on a class/window/etc where it used to.
40700 IDE » Find & Replace Finds using RegEx are shown correctly in the find panel.
21169 IDE » Inspector Windows IDE: Tabbing through Inspector fields now shows the focus ring on PopupMenus and other controls that have such visual styles on focus.
34942 IDE » Inspector Changing a description marks the project dirty so that it gets properly saved.
35355 IDE » Inspector Fixed a bug where there were visual 'glitches' in the top 22 to 78 points of the window when the window was full screen or split screen.
36878 IDE » Inspector The type field for method, enums, event definitions and properties no longer persistently shows the popup every time you press tab if you select on of the items from the list. A second tab will move to the next field.
38093 IDE » Inspector Fixed labelling of the automatic cursor type so it's consistent across all web controls.
38725 IDE » Inspector Inspector editors that use popups will only commit "changes" when you actually select a different item in the pop up. Selecting the same item no longer dirties the item and therefore the project.
39066 IDE » Inspector Text properties, like the default value for text on an iOS Label, update when the only change is case.
39351 IDE » Inspector Windows IDE: Fixed the random PopupMenus/ComboBox dropdown list widths in the IDE (for example the Scope Popup in the Inspector), mostly being way too wide.
39360 IDE » Inspector You can now change the super class for all members of a control array.
39393 IDE » Inspector A pasted font name “sticks” if it is one in the list (is available).
39491 IDE » Inspector Text properties on control instances are set properly.
39566 IDE » Inspector Made it so you can expose all kinds of integer properties that you could not before. The list now includes: * Integer, UInteger, Single, Double, Int8, Int16, Int32, Int64, UInt8, UInt16, UInt32, UInt64 * String, Text * Color * Boolean
40610 IDE » Inspector Control names changes are remembered when you click elsewhere or leave the name field in some other way.
40837 IDE » Inspector IDE no longer raises an exception when field has been pasted into and loses focus.
39092 IDE » Language Reference Reachability of the online wiki is no longer tested if you have the local reference selected as default.
25476 IDE » Layout Editor Checkboxes in the IDE draw in all 3 possible states.
35185 IDE » Layout Editor Applying a style to the toggled appearance of a web toolbar item now draws properly in the layout editor.
35245 IDE » Layout Editor On Windows if you have a control array and clear the name from one member you no longer end up with an endless loop of messages saying the name cannot be blank.
38354 IDE » Layout Editor Redrawing the web tool bar in the IDE is significantly faster.
38734 IDE » Layout Editor Locking iOS controls on a layout is not an option as it completely messes up the IDE's constraint solving.
38898 IDE » Layout Editor Auto-Layout delta offsets were being calculated incorrectly, sometimes causing a control to move on every click.
39058 IDE » Layout Editor The Layout Editor no longer hangs if the width of the iOSTextArea control is narrower than the longest word.
39061 IDE » Layout Editor Subclasses of iOS controls in the navigator drag like the super class does and when dropped are set up comparably.
39096 IDE » Layout Editor Lines shows drag / grab handles all the time now including when vertical or horizontal.
39107 IDE » Layout Editor Subclasses of iOS controls will not permit being resized in ways the base class cannot be resized.
39213 IDE » Layout Editor Disabled debug logs about baselines that are no longer needed.
39463 IDE » Layout Editor Controls in the Layout Editor Tray area no longer show top, left, width or height properties.
39622 IDE » Layout Editor It is now possible to set up a split with tabs in either the main or detail area on a screen that is not large enough to see the entire iOS screen.
39903 IDE » Layout Editor In the iOS Layout Editor, Labels are now drawn using System Bold or System Italic when specified.
40243 IDE » Layout Editor Clicking from one tab to another tab in an iOS screen layout no longer drops changes made when viewing other tabs.
40325 IDE » Layout Editor WebLabels with MultiLine=False and content which contains multiple lines now draw properly.
40345 IDE » Layout Editor A group of controls can now be resized by any of the grab handles on any control in the group, rather than just the first.
34696 IDE » Library Missing descriptions for Class, Interface, Module, Folder and generic object have been added.
39345 IDE » Library Windows library description pane redraws cleaner without visual artifacts.
26861 IDE » Menu Editor When editing a menu the index no longer shows -2147483648 in red (it shows nothing instead).
39494 IDE » Menu Editor Plain text projects that have menu items subclasses in modules so they load the same as binary or xml would. This makes it not only legal to put a menu item super class in a module for vcp but now it works too.
40330 IDE » Menu Editor You can set an icon on a submenu.
14392 IDE » Miscellaneous Notes are not printed in color.
14427 IDE » Miscellaneous A note that has _ as the very last character no longer causes issues when loading a text project.
16249 IDE » Miscellaneous External items that are not missing will get examined for items to resolve and get resolved the same as internal items do.
25072 IDE » Miscellaneous With the Project Chooser window open most menu items are disabled.
25306 IDE » Miscellaneous IDE will only error if in fact it cannot remove the damaged license key file.
25828 IDE » Miscellaneous Language Reference window retains tool bar setting from one open instance to another and run to run.
26311 IDE » Miscellaneous Changes in the case of a control name are retained. If a control is a member of a control set all members are updated.
26894 IDE » Miscellaneous If you open the icon editor for the app icon (any actually) and do nothing but press OK the project is not marked as having changes since nothing changed.
27035 IDE » Miscellaneous Progress bar no longer positioned oddly when starting a debug session.
27847 IDE » Miscellaneous Pressing enter in the file type editor no longer causes an exception.
28020 IDE » Miscellaneous Can define most integer property types for use with Inspector Behaviour.
28113 IDE » Miscellaneous More updates to text file saving. There are still some changes that will occur like updating editor types in the behaviors sections. These are because old text files left out information and opening a project may update them. The best way to force as many of these to occur at once so your subsequent source control commits are less noisy is to: 1) Make one change (add a space and remove it to one piece of code) 2) Do an Analyze Project and save 3) Commit with all changes and subsequent commits will have a lot less noise as the project has been updated
28402 IDE » Miscellaneous Tray-only controls do not show size and positioning properties in the Inspector.
29255 IDE » Miscellaneous Removing one member of a Control Set no longer removes the event list from the Navigator.
29511 IDE » Miscellaneous Projects of all kinds now print all their members.
34666 IDE » Miscellaneous Clarified the explanation on the preference setting for asking about overwriting files when building so it's clear this setting only applies when not using the build folders.
35005 IDE » Miscellaneous The insert menu no longer holds the wrong items when you switch from one project type to another.
37515 IDE » Miscellaneous Illegal characters in the name of the app to be debugged are stripped out (so the app CAN be debugged). Illegal characters in the name of the app to be built will cause a build to fail as the name is illegal on the target platform.
37963 IDE » Miscellaneous Autocomplete works in the local language reference.
38117 IDE » Miscellaneous You can no longer create multiple event definitions with the same name.
38124 IDE » Miscellaneous Copy Files build step computes relative paths correctly on all platforms. It may use an absolute path on Windows if the project and file are on different volumes.
38233 IDE » Miscellaneous Editing a File Type/UTI now marks the project as changed.
38267 IDE » Miscellaneous You cannot define a property that duplicates the name of a an existing const property or event.
38536 IDE » Miscellaneous Switching the iOS device also sets the architecture popup accordingly.
38742 IDE » Miscellaneous An NilObjectException that could occur when executing a compound action has been fixed.
38820 IDE » Miscellaneous Event handlers a no longer silently dropped from Text project format.
38891 IDE » Miscellaneous IDE not handling the new targets caused it to not grab the right built application name and assert.
38952 IDE » Miscellaneous An exception that could occur when selecting one of the build settings and trying to print has been fixed. Doing this now will print the entire project.
38974 IDE » Miscellaneous Images should now save and reload from partial paths that can be preserved cross platform and even between machines.
39177 IDE » Miscellaneous Adding multiple using clauses to a project item will name them with unique names.
39242 IDE » Miscellaneous A NilObjectException that can occur using the goto location panel and navigating into a menu has been fixed.
39249 IDE » Miscellaneous Fixed a situation where if you used floating palettes then the IDE would be resized not based on what palettes were visible when a new project was created but based on the size the palettes would have if they were visible.
39263 IDE » Miscellaneous Fixed a bug that could change the type of a constant from integer to blank when you clicked on it.
39298 IDE » Miscellaneous The IDE no longer causes an exception when the size of columns uses measurements that do not work for a desktop listbox. For example, measurements like 60px (which work with WebListBox) do not work for the desktop.
39402 IDE » Miscellaneous Updated the Property/Text icon in the Navigator with a slightly thicker T.
39427 IDE » Miscellaneous String property editor recognizes changes that are from other means like paste and drag and drop and commits those changes properly.
39506 IDE » Miscellaneous Cleaned up extraneous separator lines in the View and Window menus on Windows and Linux.
39514 IDE » Miscellaneous An illegal cast exception when adding a computed property with a name that duplicated that of an existing pair of methods has been fixed.
39559 IDE » Miscellaneous Descriptions on notes in plain text format save and restore as expected.
39560 IDE » Miscellaneous An old oversight that would permit ‘,’ and ‘=‘ in the name of the note has been corrected so they can be used without causing further issues.
39676 IDE » Miscellaneous "Text as String" in a plugin parameter list no longer gets renamed.
39682 IDE » Miscellaneous Closing the last altered project window on Windows when you have the LR open no longer asks you twice if the "When closing the last window quit" option is enabled. Closing the last altered project on OS X no longer closes the LR as well since it handles the app running when no documents open differently than Windows.
39699 IDE » Miscellaneous Trailing spaces on lines are not stripped.
39712 IDE » Miscellaneous Changes to web styles save properly in text projects.
39738 IDE » Miscellaneous Selecting Find Implementors from the contextual menu of an Interface no longer does a second search for the Interface name.
39784 IDE » Miscellaneous Add event window has a useful minimum size.
39877 IDE » Miscellaneous Added shortcut key for Analyze Item on Windows and Linux (CONTROL-SHIFT-K).
39883 IDE » Miscellaneous Using the IDE scripting editor no longer causes a NilObjectException.
39953 IDE » Miscellaneous You now get a warning when plist files in the project cannot be found.
40020 IDE » Miscellaneous When quitting the IDE, each open project with unsaved changes is prompted to save, rather than just the first one with unsaved changes.
40074 IDE » Miscellaneous Can no longer insert a container control into a console project.
40075 IDE » Miscellaneous iOS projects can no longer have databases inserted into them.
40103 IDE » Miscellaneous Remote Debug Hosts list no longer beeps when you delete a remote host using the keyboard.
40104 IDE » Miscellaneous Preferences for setting the Windows AutoQuit functionality is now limited to running on Windows.
40127 IDE » Miscellaneous iOS projects also require a bundle ID.
40151 IDE » Miscellaneous Adding an image to a project named "backdrop" (or any other Window property) and trying to assign it to a control no longer causes compile errors or unexpected runtime behaviour.
40161 IDE » Miscellaneous iOS projects no longer incorrectly show error about enum type name.
40184 IDE » Miscellaneous A NilObjectException while determining the folder to cache intermediate code in no longer causes the IDE to assert.
40197 IDE » Miscellaneous Updated menu items which point to the New & Classic Framework references.
40214 IDE » Miscellaneous Fixed a NilObjectException in the IDE when selecting the Constants group row in an external item.
40274 IDE » Miscellaneous On OS X if the volume a project is loaded from goes offline when you have the project open the IDE won’t assert when you try to save it. Windows and Linux didn't experience this particular assertion.
40338 IDE » Miscellaneous No longer raises an OutOfBoundsException when you make control sizes really large - and it will actually clamp the size to the maximum (32767).
40354 IDE » Miscellaneous A missing external item no longer causes an OutOfBoundsException if it’s missing when the project is reopened.
40369 IDE » Miscellaneous An OutOfBoundsException in the code editor has been fixed.
40401 IDE » Miscellaneous Restore the behaviour where the first paste of an external item would paste an external (as long as no other external item with that name already existed) and subsequent ones would bring the item in as internal copies. It does this so we avoid have many external items all pointed at the same file on disk (which would be confusing as heck and cause other problems).
40417 IDE » Miscellaneous Warnings in encrypted items are again ignored. This was a regression from 2015r2.2.
40673 IDE » Miscellaneous Enter Full Screen no longer shows up twice on OS X 10.11.
40674 IDE » Miscellaneous Windows in the layout editor don’t draw disabled on OS X 10.11.
40817 IDE » Miscellaneous IDE no longer runs out of memory when there is a very long list of missing items to resolve.
40883 IDE » Miscellaneous Several spots in the IDE that were not looking up the dynamic constant have been fixed so they appear closer to how they will at runtime.
40903 IDE » Miscellaneous Make it so a declare like STATIC foo is treated similarly to DIM and doesn't strip out empty brackets.
40907 IDE » Miscellaneous UTI’s that an app accepts are NOT marked as exported any longer (which was horribly wrong).
40981 IDE » Miscellaneous A NilObjectException that could occur when trying to replace a property value on an object on a layout no longer occurs. Such a change isn’t actually permitted and the replace will fail . You have to change the name of the property on the base class.
41049 IDE » Miscellaneous WebToolbars that are smaller than the total width of all items on them no longer cause errors when trying to edit them.
27023 IDE » Navigator Controls in arrays sort lexically by name then by control array index. Controls that have been duplicated many times will sort similarly by the base name then the trailing numeric portion.
32340 IDE » Navigator The command bar + (right above the editor space) will properly update to allow or disallow the "Event handler" item in its menu when you change the super of a class selected in the Navigator.
37499 IDE » Navigator Cmd-double-click on an array property in the code editor will now jump to its declaration.
38683 IDE » Navigator Class Interfaces can no longer be dragged onto an iOS layout.
38792 IDE » Navigator Filtering of items now properly includes external items.
38793 IDE » Navigator Navigator contextual popup menu appears in the right spot.
39407 IDE » Navigator Updated the Pointer icon with one that's more consistent with the other property icons.
39565 IDE » Navigator Make it so all integer property types have integer icons (missing were the 8 and 16 bit sizes).
39627 IDE » Navigator When you delete an event handler from a control, searching for text contained in that event handler no longer shows that event.
39666 IDE » Navigator WebImageView, WebButton and WebRadioGroup icons now show properly in the Navigator.
40999 IDE » Profiler Profile data is no longer lost as profile editors close.
26415 IDE » Project Editor Items that are multiselected have their property lists properly merged to show only those properties that are common to all selected items
35228 IDE » Project Editor Changes to web styles save properly with Text projects.
39302 IDE » Rendering Using an enum in the Inspector Behaviour for Web controls functions properly.
39689 IDE » Rendering No longer creates a warning for a property named NotifyControls for WebPages that do not have any WebControl subclasses on them.
40100 IDE » Rendering No longer get a compile error when adding a Xojo.Core.Timer to a web page.
39970 IDE » Report Editor Using a picture with the same name as a report segment (header, footer) or report property no longer causes an error when trying to run or compile.
39842 IDE » Scripting Autocomplete in an IDE script no longer causes an exception.
40130 IDE » Scripting IDECommunication IPC Socket now closes properly every time the IDE exits.
40344 IDE » Scripting Windows Copy Files Steps create any required subdirectories as expected and handle both LFS (C:\ style) and UNC paths (\\server\path style).
15542 IDE » Style Editor Updated the web style color picker values titles to # and % since you pick either a value (#) or a percentage (%). This replaces the "Hex" title which is misleading as you only entered hex in one portion of the editor when editing values.
25283 IDE » Style Editor Can edit the border size field using arrow keys, delete, backspace, etc.
40925 IDE » Style Editor Style Editor refreshes and doesn’t wipe out colors as set.
39562 IDE » Updater Labels on the update window are now the same color as the background on Windows and Linux.
23428 IDE » Web Page Editor CueText on WebSearchField shows correct localized value in the IDE.
26173 IDE » Web Page Editor Changes made using the popover are properly retained so they work with Undo and mark the project as modified.
27153 IDE » Web Page Editor The inline editor for a listbox can scroll columns horizontally (so if you have a lot of them you can get to them all). The editor doesn’t try to exactly mimic the column widths you have set up as this can result in columns that cannot be edited. If the column is > 60 pixels wide we use it as set but if < 60 we force the editor’s representation to be 60 pixels so you can edit every column.
37783 IDE » Web Page Editor Accessing a page with a toolbar and an item on it no longer causes the project to be marked as changed despite nothing having changed.
24062 IDE » Window Editor If you delete an image that’s used as a window background, the window redraws without the image as expected.
25512 IDE » Window Editor Popovers have a close icon on them.
25581 IDE » Window Editor Scrollers redraw themselves in the correct orientation as they are resized in the IDE.
27269 IDE » Window Editor If you create a popup menu and set the initial value to a bunch of #constant style values the IDE will draw the constants correctly and not show "#constant" instead.
29175 IDE » Window Editor When multiple items are selected the position properties (top, left, width & height) items will show as "Multiple" if several are selected. Tabbing into / out of such an item has no effect. If you select and change the value it will take effect.
30091 IDE » Window Editor Containers have consistent property groupings in the Inspector whether it's a subclass or instance on a window.
21100 Plugin SDK REALstandardGetter and REALstandardSetter work with all intrinsic types.
38589 Plugin SDK Fixed a bug where REALGetPropValueObject would return false even though it succeeded.
38840 Plugin SDK REALLockText and REALUnlockText now function properly.
39849 Plugin SDK Fixed the currency prop value getters and setters.
40351 Plugin SDK Shared Methods and Properties now work with plugin controls, instead of causing a runtime error.
31649 Remote Debugger Stub Console Remote debugger Stub can be used from an SSH system and does not require the OS X Terminal app or xterm.
33678 Remote Debugger Stub Console Remote debugger Stub can be used from an SSH system and does not require the OS X Terminal app or xterm.
34560 Reporting Round Rectangles on reports no longer appear as ovals.

Changes (54 cases)

Case Area Description
6231 Build Windows/Linux: built apps that include resources now creates a Resources folder which includes the app name in its folder name, just like the Libs folder. You can also rename it to just "Resources" after the fact, and the framework will find it just like the Libs folder.
40144 Build Using Xcode 7 and its iOS Simulator is supported now.
18982 Compiler The Inline68k keyword has been removed. This has done nothing since support for compiling Mac 68k code was dropped and existed only for backwards compatibility.
38391 Compiler Upgraded to LLVM 3.6.
38731 Compiler The compiler can now build for 64-bit executables for Windows and OS X.
39414 Compiler The Linux IDE can now build for Linux x86-64 and Linux ARM.
39578 Compiler Deprecated the WindowPtr and Short data types.
40239 Compiler The version of LLVM used by XojoScript is now LLVM 3.7.
41051 Compiler The compiler no longer creates an empty libs folder if there are no plugins present.
41052 Compiler Declares to non-system libraries work now.
38781 Framework » All Removed the deprecated and non-functional OpenREALDatabaseOldFormat function.
39292 Framework » All The socket on Windows has been updated to use Winsock2.
370 Framework » Linux Reduced thread CPU usage on Linux for mostly idle threads. This difference will most likely be visible on single core processors, but this fix also benefits multi-core and other platforms.
39533 Framework » Linux Ticks is now guaranteed to be a monotonic clock.
31751 Framework » Web Converted web framework to use the new Xojo framework JSON methods.
39513 Framework » Web WebSDK controls can now be integrated into the Xojo Drag and Drop system.
39792 Framework » Web Internet Explorer 8 has been removed from the list of supported browsers as it limits our ability to provide updated capabilities and security patches.
39797 Framework » Web Minimum browser requirements have been updated to: Safari 6.1+ Firefox 17+ Chrome 37+ IE9+
40002 Framework » Web Added support for detecting the IE Edge browser using WebSession.EngineType.EdgeHTML enumeration.
40731 Framework » Web Updated web framework to allow the Raspberry Pi Epiphany Web Browser.
39838 Framework » Web » Frame The XojoCloud Firewall class is now available in Linux Console and Linux Web Apps so users can create helper apps which have the power to open/close firewall ports if necessary.
38265 Framework » Windows Message logging has had speed improvements: 1) a queue of messages has been added so the app being debugged can write at full speed and the IDE messages pane will be updated from that instead of trying to keep up in real time. 2) the scrollback area only retains the last 5000 items at most 3) the queue may be flushed out if it gets more than 1000 messages behind
39769 Framework » iOS iOSToolButton.Type enum has been renamed to iOSToolButton.Types (note the extra ’S’). This will break existing code that uses this enum.
39396 IDE Currency has its own special icon in the navigator.
39446 IDE The Mac Creator code is not used by anything on OS X since 10.6 / 10.7. It will be preserved if set but is not used when compiling the application.
38553 IDE » AutoLayout It is now possible to set a control’s width = its height and vice versa. Note that you can cause yourself a lot of problems should you set width = height and height = width, so don’t do that.
29858 IDE » Code Editor You can drag a control instance into the code editor from the navigator and the name of the control will be inserted at the cursor position.
40017 IDE » Code Editor &u literals are now colorized similarly to string/text literals.
40986 IDE » Code Editor Added a preference that allows people to turn autocomplete off.
33475 IDE » Layout Editor The description area below the library can now be scrolled.
36330 IDE » Layout Editor Grab handles are now on control frames instead of outset slightly.
38897 IDE » Licensing Dates are shown like Aug 5, 2015 instead of the ambiguous numeric form.
40522 IDE » Licensing Changed caption of the download button on the license pane of the About window to Update.
19 IDE » Miscellaneous The replacement of the old File Type set with the UTI pane removes the long deprecated File Type from the editor. OS Type can be set (for legacy purposes) but its use is strongly discouraged by Apple.
19961 IDE » Miscellaneous Main toolbar now has tooltips (OS X only).
37596 IDE » Miscellaneous Compatibility flags allow for setting of project type and 32 / 64 bit in the Inspector.
38636 IDE » Miscellaneous Analyze one item now has its old Cmd+Shift+K shortcut (ctrl+shift+K on Windows and Linux).
38722 IDE » Miscellaneous Made it so if you have an item open as the top level item in a tab and you delete it in another tab, the open tabs showing it are closed.
38762 IDE » Miscellaneous Analysis warning for name lookup differences is disabled in new projects by default.
38802 IDE » Miscellaneous Feedback report bodies are started with a line that says what version of the IDE is in use. This is the same string used in the about window.
38807 IDE » Miscellaneous Web projects have architecture setting for OS X targets.
39022 IDE » Miscellaneous Cocoa x86_64 is now an allowed build script build target.
39567 IDE » Miscellaneous Byte and short now have proper icons based on their type (integer) and can be used as properties that are exposed to the inspector behavior and will be set correctly using the mass property setter.
39667 IDE » Miscellaneous Project Chooser Dialog caption updated with more descriptive text. Button captions reverted back to OK and Cancel
39679 IDE » Miscellaneous Added iOS QuickStart to the Help menu.
39821 IDE » Miscellaneous Project > Go To Search was never used so it has been removed.
40061 IDE » Miscellaneous Missing file dialog list is now multiselectable.
40064 IDE » Miscellaneous Binary projects now specifically use 32 bit sized values.
38971 IDE » Navigator Generic icon in the Navigator now has a blue cube instead of a green one.
39780 IDE » Scripting Added new IDE Script BuildApp constants (for iOS Universal app, 64-bit).
39795 IDE » Scripting If you select an external Objective-c method and use the IDE script command to report its type you will get "External Objective-C Method" returned.
40131 IDE » Scripting IDE: App Nap is now disabled while the IDECommunicator is connected.
40494 IDE » Style Editor Adding a component to a web style scrolls to the newly added item.
40105 Miscellaneous Windows Setup file now includes a correct File Version info, instead of

New Items (29 cases)

Case Area Description
37112 Build Build folder names have been updated. Existing ones have not been changed to avoid breaking existing build scripts The names are now: Linux Linux 64 bit << new Linux ARM << new Mac OS X (Intel) Mac OS X (Cocoa Intel) OS X 64 bit << new Windows Windows 64 bit << new
39526 Compiler The compiler now issues an error when calling Objective-C declares on non-iOS or OS X platforms.
40490 Compiler The desktop framework is now supported for ARM.
2211 Framework » All All non-structure single dimension arrays now have an overload of the Sort function that can be used to customize the sort order.
40724 Framework » Linux Can now build desktop app for Raspberry Pi 2 (Linux ARMv7).
20384 Framework » Web Web Framework now supports drag and drop.
32859 Framework » Web Web: WebCanvas now has a DisableDiffEngine property.
37892 Framework » Web Added new property AcceptingConnections as Boolean which allows you to Start/Stop a web app's ability to accept connections. Setting this property to False will stop the server(s) and disconnect all active sockets immediately.
39440 Framework » Web WebCanvas now has a DisableDiffEngine property.
40269 Framework » Web Web: Re-enabled gzip compression on images for browsers that support it.
39791 Framework » Web » Frame Standalone SSL web apps now use TLSv1.2.
36581 Framework » iOS iOSLabel now has a variety of clipping modes that can be used for times when you want clipping instead of wrapping.
38901 Framework » iOS Added iOS Container Controls (iOSContainerControl).
14820 IDE » Code Editor The external method editor can now define an external Objective-C method and its associated selector.
33898 IDE » Code Editor Added bookmarking with project-specific bookmarks that work similarly to breakpoints.
28875 IDE » Find & Replace Added a View->Hide Find and shortcut for toggling the Find/Errors/Messages panel (Shift-Command-F, Shift-Control-F).
3499 IDE » Miscellaneous Collect Project Items - will collect the items next to a SAVED project - if it’s not saved it will do nothing (wont be enabled) - items remain external - items will be grouped (pictures, data, scripts etc) - the collection of item will NOT rename items on disk so duplicates will cause collection to report errors that are visible in the errors pane IF you do NOT want it to modify the project you have open do a "Save As" first then Collect them into the new copy. Collection DOES dirty the project but does NOT automatically save it.
30538 IDE » Miscellaneous When you run your project, the bottom pane (Find, Errors, Messages) will close if it is open so that the debugger has more room for its display.
38348 IDE » Miscellaneous For iOS projects dragging a picture into the project will by default create an image asset with the picture set as the 1x version. Holding the option key down will still import the picture as a Picture project item.
38593 IDE » Miscellaneous File Types Set/UTI editor permits specifying importable and exportable.
38737 IDE » Miscellaneous iOS applications now have a full set of capabilities editors to make it easy to add GameCenter, etc to the entitlements needed (in the Advanced Inspector tab for the iOS Build Settings).
39476 IDE » Miscellaneous ICNS files are not written out for non-OS X targets.
11196 IDE » Project Editor The File Types Editor has undergone an enormous overhaul and now lets users on all platforms set up and manage UTI's (which also happens to work for windows file types and Linux since they require a subset of the data a UTI provides).
39488 IDE » Scripting Added docs for new IDE Build Targets for 64-bit and Pi.
40129 IDE » Scripting Added an EnvironmentVariable method to the IDE scripting context for getting those values from the environment in which the IDE was launched.
40704 IDE » Scripting IDE Script supports NewIOSProject command.
41036 IDE » Warnings Panel For certain kinds of errors (right now it's ONLY linker errors) you can right click and copy the error message since it MAY be many lines long
39408 Miscellaneous Added Project-Deploy Application to the menu for deploying Xojo Cloud apps (Command-Shift-B, Control-Shift-B).
38599 Plugin SDK Plugins SDK: The size of plugin data structures is no longer required to be the same across all platforms. Also, the offsets of members in structures that are used with REALStandardGetter or REALStandardSetter can now vary across platforms.

Docs and Examples (43 cases)

Case Area Description
39596 Documentation Added “See Also” sections to better relate WebApplication.TimeOut, WebApplication.SessionTimeout, WebSession.Timeout and WebSession.TimedOut.
40174 Documentation Xojo.Introspection classes doc pages now show correct full name prefix of “Xojo.Introspection”.
40228 Documentation Updated ISO links on Xojo.Core.Locale page.
40254 Documentation Added Return (keyed &h24) to Keyboard page.
40273 Documentation Added BottomLayoutGuide and TopLayoutGuide to iOSView properties.
40280 Documentation Removed incorrect note on SQLiteDatabase.CreateBlob about read-only blobs.
40514 Documentation Xojo.Introspection.ConstructorInfo page now includes Parameters method.
39195 Documentation » User's Guide Profiling information is only gathered when an app quits normally. Added additional information regarding this for web apps to User Guide Book 3: Framework, Section 8.8: Debugging and Profiling.
39254 Documentation » User's Guide Corrected SQL typo in Framework Guide, section 10.1 (Retrieving Data from a Database).
38269 Examples Examples/Xojo Framework/UsingExample works again.
38909 Examples For iOS AlertSheet example, changed Libs from “Cocoa” to “Foundation.Framework”.
38978 Examples Examples/iOS/Speak updated to use AVFoundation library in Declare. And speech now works in iOS 8.3 Simulator.
39420 Examples In EEWeb example, added back missing DB file to Copy Files Step for Xojo Cloud.
39591 Examples Added Examples/Communication/Serial/Serial Bar Code Reader Example that shows how to read values from a barcode scanner using the Serial class.
39592 Examples Added Space Rocks game example for desktop and iOS (Examples/Games/SpaceRocks).
15856 Language Reference » Documentation Updated System.NetworkInterfaceCount to note that it only counts connected interfaces.
16717 Language Reference » Documentation RegExMatch.SubexpressionString and SubexpressionStringB were incorrectly listed as properties instead of methods.
25657 Language Reference » Documentation Added docs for DataSource and DataCell interfaces used by WebListBox.
30858 Language Reference » Documentation Searching for items with special URLs (like &b) results in a search page where the links actually work.
38833 Language Reference » Documentation Int64 number range is now listed as -9,223,372,036,854,775,808 to +9,223,372,036,854,775,807.
38860 Language Reference » Documentation Xojo.Core.Date.Nanosecond property is no longer listed in docs as Nanoseconds.
38884 Language Reference » Documentation Fixed typo in SMTPSocket example code.
38893 Language Reference » Documentation Added missing “Using” clause to HTTPSocket.SetRequestContent sample code.
38959 Language Reference » Documentation Corrected typos on Xojo.Math page.
38984 Language Reference » Documentation BinaryStream sample code no longer uses ReadShort.
39005 Language Reference » Documentation Added Constructor to Xojo.IO.FolderItem page.
39042 Language Reference » Documentation Corrected text formatting for iOSView.Active/Deactivate events.
39262 Language Reference » Documentation Added Text data type to VarType page.
39278 Language Reference » Documentation Updated links to Microsoft Office Developer docs on ExcelApplication, WordApplication and PowerPointApplication pages.
39481 Language Reference » Documentation Removed references to OS X Carbon on SegmentedControlItem.Title and SegmentedControlItem.Icon.
39507 Language Reference » Documentation Updated IDEScripting PDF with latest info from 2015r2.2.
39654 Language Reference » Documentation WebApplication.SSLPort page is a read-only property, not a design-time property.
39773 Language Reference » Documentation Added additional note to Timer to indicate that it runs in the main thread.
39774 Language Reference » Documentation Added WebThread page.
39836 Language Reference » Documentation Pages for Const command also show ability to specify the type.
39908 Language Reference » Documentation Updated Currency data type pages to indicate precise range of values it supports.
40021 Language Reference » Documentation Corrected sample code for Xojo.Crypto.PBKDF2.
40116 Language Reference » Documentation Added a page to link to dialog-related pages when searching for “dialog” in wiki.
40334 Language Reference » Documentation Added missing IndexOf method to Xojo.Core.MemoryBlock page.
40450 Language Reference » Documentation Added additional information about Priority to Thread page.
40454 Language Reference » Documentation Corrected type in SQLiteDatabsae.LastRowID example to Int64.
40460 Language Reference » Documentation Declare page in wiki now has correct bold/italics for keywords and parameters.
40692 Language Reference » Documentation Added a warning to IPCSocket and Mutex pages about possible name conflicts when same temp folder is used.