2015r4

Released December 17th, 2015.

Xojo 2015r4 is primarily a bug fix release. Some notable improvements include:

  • Added CGFloat data type to make it easier to create Declares to iOS and OS X Cocoa frameworks.

  • The Code Editor is now noticeably faster when working with large projects.

  • You can use the TextAlign property to more easily set the alignment for web text controls.

  • Added SecureAuth property to MySQLDatabase to allow connections to pre-4.1.1 authentication protocols.

Bug fixes (106 cases)

Case

Area

Description

41650

Build

Build progress dialog identifies Windows x86-64 builds in the same manner as OS X and Linux x86-64 builds.

41533

Build Pipeline

The folder icon on OS X is high-resolution again.

39626

Compiler

Operator_Lookup's name can now be a Text parameter and not just String.

40140

Compiler

Fixed a bug that could result in an error dialog being presented for every resource in the project that failed to be copied to the executable's resources folder.

41233

Compiler

Fixed a bug with the compiler's handling of Boolean values when targeting 64-bit or ARM.

41352

Compiler

Fixed a bug that would prevent extremely large structures from working when building for 64-bit or ARM.

41450

Compiler

Fixed link errors regarding 'oleaut32' when building for 64-bit OS X.

41485

Compiler

Fixed a crash that could occur when canceling compilation.

41491

Compiler

Fixed building Windows console and service applications from a case-sensitive filesystem.

41617

Compiler

Fixed a bug that could cause problems with incremental compiling if a class or module had “Using” clauses.

41626

Compiler

Worked around a bug in 10.7 that causes a kernel panic during linking.

39027

Database Plugins

MSSQLServerDatabase PreparedStatement now works properly for SQLSelect instead of always returning Nil.

40739

Database Plugins

ODBCDatabase no longer crashes when retrieving large SQL columns.

39686

Debugger

The debugger once again shows ByRef parameter values correctly.

11115

Framework > All

XML exceptions no longer 'skip' exception handlers.

41560

Framework > All

SMTPSecureSocket no longer fails with 503 TLS already negotiated when the server sends the capabilities list more than once.

41345

Framework > Linux

Return menu shortcut now works, also now differentiates the Return key from the Enter (keypad) shortcut.

39224

Framework > Macintosh (Cocoa)

Xojo.IO.FolderItem is now usable on OS X without crashing.

41328

Framework > Macintosh (Cocoa)

Since drawers are no longer supported the “Drawer” choice for a Window type has been removed.

41747

Framework > Macintosh (Cocoa)

Text.Join now works correctly if the separator character is non-ASCII. This only affected OS X and iOS.

31191

Framework > Web

WebMapLocation no raises an exception if the provider returns zero locations for an address.

38890

Framework > Web

WebSessions no longer die when the client moves from network to network.

41115

Framework > Web

WebPicture no longer results in Nil picture data when defined from a FolderItem.

41130

Framework > Web

WebPicture no longer uses twice as much memory as necessary when defined from a Picture object source.

41295

Framework > Web

External web control wrappers no longer cause JavaScript errors.

41362

Framework > Web

Gradients now work properly on IE Edge.

41365

Framework > Web

Setting a WebFile with the data from a MemoryBlock now works if the previous value was from a FolderItem.

41652

Framework > Web

WebMapViewer no longer uses the deprecated Sensor url parameter.

39543

Framework > Windows

(Windows/Linux) Picture.Open now honors JPEG's orientation flag and flips/rotates the picture as necessary.

40331

Framework > Windows

RegistryItem.Value no longer fails to expand a REG_EXPAND_SZ field properly if its expanded size is greater than 260 characters. This change also separates the REG_SZ and REG_EXPAND_SZ KeyTypes. See docs for RegistryItem.KeyType.

41202

IDE

Image in the icon editor shows a scaled thumbnail immediately instead of after you edit the icon set.

41213

IDE

The UI correctly reflects that This Computer is selected when you load an example.

41301

IDE

Removed blank menu items.

41685

IDE

Images of all kinds draw their explanatory text in black not grey

7536

IDE > Auto Complete

True and False appear in autocomplete suggestions following a pragma statement.

7725

IDE > Auto Complete

Control array names now autocomplete in code editors.

8026

IDE > Auto Complete

Structures autocomplete beyond the first level when you have structures that contain structures.

41677

IDE > Auto Complete

Image Set names autocomplete where expected.

41549

IDE > Build Automation

Copy Files Steps copy to the correctly named directories for Windows builds whether you use build folders or not.

13194

IDE > Code Editor

Bookmarks and break points no longer get dropped when you delete whole lines prior to the bookmark / breakpoint.

14975

IDE > Code Editor

Index parameter on control arrays is no longer reported as an unused local variable.

38709

IDE > Code Editor

Deleting a group of items now resets the selection.

40564

IDE > Code Editor

Fixes to the IDE restored typing speed

41218

IDE > Code Editor

Make the syntax help area at the bottom of the code editor scrollable when necessary.

41478

IDE > Code Editor

When editing an IDE build script (Insert > Build Steps > Script) pressing CMD+UpArrow, CMD+DownArrow, home or end no longer causes an exception.

41511

IDE > Code Editor

Code editor indents as expected when you add code to a line that starts as if <condition> then to make it a one line if statement.</condition>

41530

IDE > Code Editor

Members that are private now only show in autocomplete when in scope/accessible.

41577

IDE > Code Editor

Typing speed should be back to normal (if not better than it has been recently).

41584

IDE > Code Editor

Use of proportional fonts (like System 0) in the Code Editor no longer lead to strange insertion point positions.

41665

IDE > Code Editor

Spaces are now trimmed from lines when copying and pasting multiple lines.

41425

IDE > Constant Editor

Turned off styles in the constant default value editor.

40836

IDE > FileIO

Template projects will save with the default name of “untitled” instead of the name of the template project.

41382

IDE > FileIO

Special characters, like umlauts, in the team name do not cause error in text projects.

41290

IDE > Find &amp; Replace

After reloading a web project, search properly searches all items.

39810

IDE > Inspector

An illegal cast exception that could arise when naming methods and properties similarly on a web page has been fixed.

41123

IDE > Inspector

WebSDK tray controls do not show the style property.

41241

IDE > Inspector

Tightened up the spacing in the Compatibility Flags (on the Advanced Inspector) so they better fit on a normal Inspector widths.

41337

IDE > Inspector

Changes to database properties for DataControl are now retained.

41411

IDE > Inspector

Web Deployment popups are the right size and not truncated.

41492

IDE > Inspector

Changing a web style name commits the change if you change the style name and do not press enter/return/tab and add an new style element.

41519

IDE > Inspector

Changing the iOS debug device marks the project as changed.

41550

IDE > Inspector

Pressing enter when you select the module name in the inspector no longer beeps on Windows OS.

41641

IDE > Inspector

External Objective C methods retain all aspects of their declaration and no longer drop the selector when copying and pasting.

41713

IDE > Inspector

Can now use Int64 with Inspector Behavior.

41545

IDE > Language Reference

Language reference jumps to the correct location online or locally with the newer documentation sets.

41228

IDE > Layout Editor

Fixed a regression with copy/pasting controls between layouts so that names are properly retained if possible or assigned a new name if necessary.

41417

IDE > Layout Editor

When adding controls to layouts they will adopt the last used Scope setting as code items (constants, properties, methods, etc) do. However since controls only have Public and Private as options for scope if you set a code item to Protected then add a control it will default to Private. Subsequent items will also be added as Private.

41438

IDE > Layout Editor

Tray controls can't be parents of visual controls (this includes toolbars since they are kind of special in this regard).

41514

IDE > Layout Editor

Locked positions for controls in web layouts properly save and restore.

41779

IDE > Layout Editor

Paste of a copied page panel that has controls on different panels is handled correctly again.

41361

IDE > Library

Fixed up ordering and grouping of items in all Library set ups to make them more consistent from project type to project type.

57

IDE > Miscellaneous

Custom properties on menu item subclasses now show in the Inspector.

15475

IDE > Miscellaneous

Toolbar (Desktop) is now properly compiled so that you can create classes that subclass it.

21815

IDE > Miscellaneous

Binary project files (and by extension XML) write out tab order for non-UI controls in the same manner as text projects do: all write this as -1.

23861

IDE > Miscellaneous

Tab names stay up to date with the item name as it's changed.

23907

IDE > Miscellaneous

Undo entry after drag and drop now correctly displays “Drag &amp; Drop”.

35599

IDE > Miscellaneous

Text on the dialog shown when creating a control set is now correct.

40500

IDE > Miscellaneous

Any time ChrB(0) is sent to a DebugLog, it is replaced by a space to ensure proper log display.

41019

IDE > Miscellaneous

PSD&#39;s import with their transparency into the File Type Set editor.

41154

IDE > Miscellaneous

Fixed a NilObjectException that cold occur when pressing stop while in the middle of sending to a remote stub.

41201

IDE > Miscellaneous

Require UTI&#39;s to use the correct character set but does NOT enforce the basic style (reverse domain name).

41279

IDE > Miscellaneous

Right clicking on a row in the Errors panel no longer causes an exception in some circumstances.

41287

IDE > Miscellaneous

Cancelling the run of a web app when the dialog asking if you want to keep waiting pops up no longer causes an exception.

41311

IDE > Miscellaneous

Cancelling an update that is in progress no longer causes an exception.

41350

IDE > Miscellaneous

Remaining activations message no longer shows %1 remaining but the actual number of remaining activations.

41353

IDE > Miscellaneous

MP4 files, when dragged into a project, are handled as video, not audio. Projects with existing items that are shown as MP4 audio are not modified.

41360

IDE > Miscellaneous

File Type Sets Editor now resizes appropriately when initially opened.

41516

IDE > Miscellaneous

Breakpoints and bookmarks save and restore more accurately.

41521

IDE > Miscellaneous

Fixed an issue where the UTI editor would have focus rings that bleed into unselected areas.

41522

IDE > Miscellaneous

Tab order on an individual File Types UTI pane is more sensible.

41543

IDE > Miscellaneous

Closing one of many Workspace windows on a dirty document no longer prompts to save when you close the first window. Instead you are prompted to save when you close the last window.

39754

IDE > Navigator

Inappropriate Cut/CopyDelete/Etc no longer appear for menu items in the Navigator.

41321

IDE > Navigator

Tooltips work more consistently in the Navigator.

41351

IDE > Navigator

Numeric constant icons now show as the “.01” icon in the Navigator.

41424

IDE > Navigator

Fixed cosmetic issue in Navigator where fragments of the second line of a multiline value would sometimes show.

41629

IDE > Navigator

Adding an event to an item that is shown as a result of the filtering will clear the filter and reveal the newly added event so you can edit it.

41635

IDE > Navigator

It is no longer possible to insert a container control into a console project.

29361

IDE > Project Editor

Badging of controls scope is consistent with what's done for code items like methods and properties.

15865

IDE > Scripting

ProjectItem IDE Script method returns the full path within the project to the currently selected project item.

41421

IDE > Scripting

Toolbar on Script Editor window properly shows as active and enabled as appropriate.

15076

IDE > Web Page Editor

The IDE&#39;s representation of how a browser will draw a multiline label is more accurate, although it may still vary from what different browsers will do.

24745

IDE > Web Page Editor

When you edit a WebRadioGroup, WebToolbar and WebSegmentedControl and select an element the Inspector is immediately made visible.

24061

IDE > Window Editor

The default events for layouts and containers is the Open event and it will be selected when adding events if it has not been added already.

41683

Miscellaneous

iOS ImageMaker utility image exports now use filenames for app icons and launch images that include the size and scale. Also updated text instructions, added About dialog, and auto-select all sizes for export.

41757

Miscellaneous

Windows installers no longer run on Windows XP.

41811

Remote Debugger Stub

Empty menu items have been removed.

Changes (24 cases)

Case

Area

Description

20291

Compiler

Added a TargetWindows constant that evaluates to True when running on Windows.

41379

Compiler

Warning message about suspicious use of Declares has been updated to be clearer about what is being reported. It now report with a message like the following: “The method foo in User32.dll* does not appear to be available on OS X” The specific method, library and target are used in the message.

13421

Framework > All

ListBoxes now support up to 256 visible columns.

40510

Framework > All

SQLiteDatabase updated to SQLite version 3.9.2.

41304

Framework > Web

WebFile and WebPictures now use ETags in addition to modification dates for caching.

41389

Framework > Web

Removed IE8/ExCanvas support from WebGraphics.DrawString.

40778

Framework > Web > Frame

The web framework now recognizes the Epiphany browser on Raspberry Pi.

41323

Framework > Web > WebButton

WebDragItem now has OriginX and OriginY properties which indicate the X and Y coordinate within the Sender WebControl where the drag began.

12132

IDE > Code Editor

Changing a plain property to a computed property creates the computed property with the same scope as the original.

37405

IDE > Code Editor

Code editor tip area shows signature + description if there is one.

40852

IDE > Inspector

Build Settings Command Line property is now multiline.

41374

IDE > Inspector

Made it so it's much harder for users to overlook the list of missing interfaces a class may be implementing by listing them first, in red, with a tag that says *missing”.

16879

IDE > Layout Editor

Controls that have a hidden attribute no longer show in the Project Controls section of the Library.

2864

IDE > Miscellaneous

Make it so Cmd+Opt+digit are assigned in successive order to IDE scripts added to the IDE Scripts menu.

5003

IDE > Miscellaneous

Close button on issue resolution dialog becomes the default once all items are resolved.

5381

IDE > Miscellaneous

When renaming a class external item supers are also renamed and the Navigator is updated.

15940

IDE > Miscellaneous

Newly added labels now default the Transparent property to True.

41385

IDE > Miscellaneous

Interface list will resize itself up to 75% of the window height that its being opened on if you have not resized it. If you stretch it larger (width and height) it will reopen at a max of the window height and width.

41564

IDE > Miscellaneous

There is a new applies to NONE so you can disable a step without having to drag it out of the build step list.

38156

IDE > Navigator

Filtering shows results ordered by how closely an item matches the given filter string based on the Levenshtein distance of the match from the filter string.

23955

IDE > Project Editor

The Description property in the Inspector is now multiline.

29503

IDE > Web Page Editor

The Target field of a WebToolbar container item now uses a PopupMenu to select containers from the project.

10845

IDE > Window Editor

Each tab of a tab panel can now be set using a constant to allow for localization.

35690

Miscellaneous

iOS ImageMaker now allows you to drag PNG images onto the App Icon Canvas.

New items (5 cases)

Case

Area

Description

41248

Database Plugins

Added MySQLCommunityServer.SecureAuth property which is True by default. This property allows users to authenticate using old password hashes (i.e. pre-4.1.1 authentication protocol) if needed.

38261

Framework > All

Added the CGFloat data type, which is aliases to Single on 32-bit builds and Double on 64-bit builds. This serves as a transitionary type until only 64-bit iOS and OS X builds are supported. At that point, CGFloat will be deprecated and Double should be used in its place.

40633

Framework > All

Added CharacterSpacing property to Graphics class for Desktop apps. This property is expressed as a percentage of spacing between characters. Positive and negative values are accepted.

41607

Framework > Web

Web Text Controls now have a TextAlign property. Valid values are Default (Inherit from parent), Left, Center and Right.

41571

IDE

Image sets are now available in desktop projects.

Docs and examples (12 cases)

Case

Area

Description

41788

Examples

Added Examples/Advanced/MemoryBlock/FastStringAppend example.

41807

Examples

Removed extra MenuItems from Window menu in WindowMenu example to fix an exception.

34457

Language Reference > Documentation

Updated Color page in Dev Center with missing methods and information.

38563

Language Reference > Documentation

Corrected sample code on VirtualVolume page.

39099

Language Reference > Documentation

EasyTCPSocket.Error and EasyUDPSocket.Error links now go to the correct pages.

39373

Language Reference > Documentation

Fixed typo in SQLiteDatabase.Backup sample code.

40362

Language Reference > Documentation

Added HttpOnly parameter to WebSession.Cookies.Set page.

41252

Language Reference > Documentation

Removed unnecessary known issue from Split page.

41498

Language Reference > Documentation

MenuItem page now more clearly shows properties that are design-time only and has individual pages link to MenuItem.KeyboardShortCut, which is what you use to change these values at runtime.

41556

Language Reference > Documentation

Updated search keywords so that searching the Dev Center for full namespace (such as Xojo.Net.HttpSocket) now displays HTTPSocket in the auto-complete.

41654

Language Reference > Documentation

Corrected sample code on TextInputStream page.

41732

Language Reference > Documentation

Updated IDE_Script page in wiki to refer to IDE Scripting sections in Xojo Dev Center.