# Xojo 2024r2.1 Release Notes

Release Date: 2024-07-17

## Highlights from Xojo 2024r2

- `DatabaseConnection</topics/databases/connecting_to_a_database>` project item now available for Desktop, Web and Console projects.
- Web projects now support Control Sets.
- You can now add and remove panels from `WebPagePanel</api/user_interface/web/webpagepanel>` and `WebTabPanel</api/user_interface/web/webtabpanel>` at runtime.
- Better performance when using `WebListBox</api/user_interface/web/weblistbox>` with large data sources.
- `iOS MobileDateTimePicker</api/user_interface/mobile/mobiledatetimepicker>` now supports `Compact and Inline styles<mobiledatetimepicker.displaystyle>` for better use within tables.
- Apple's iOS privacy requirements can now be met with the new `Privacy Manifest Editor</topics/application_deployment/ios/meeting_apples_privacy_requirements>`.
- `String.CharacterCount<string.charactercount>` returns the actual number of characters in a String, which can be useful when dealing with multi-byte characters such as emoji.
- `Database.AddRow<database.addrow>` has a new overload that returns the unique ID of the added row.
- `Barcode</api/hardware/barcode>` is now supported on Linux.
- `TCPSocket</api/networking/tcpsocket>` is now supported on Android.
- Added `Graphics.LineCap<graphics.linecap>`, `LineDash<graphics.linedash>`, `LineDashOffset<graphics.linedashoffset>`, `LineJoin<graphics.linejoin>`, `MiterLimit<graphics.miterlimit>`, `Outline<graphics.outline>` and `ShadowBrush<graphics.shadowbrush>` for Android.

## Statistics

- Bugs fixed: 16

## IDE

### Resolved Issues

- Loading Example projects, that contain SQLite Database Connection items, can now correctly connect to the SQLite database file that is assigned to the connection item. ([76758](https://documentation.xojo.com/resources/release_notes/confidential.html))
- When connecting to the SQLite Database Connection item, we now look for the SQLite Database file next to the project if the absolute path to the database file is not found. ([76732](https://tracker.xojo.com/xojoinc/xojo/-/issues/76732))
- **Linux**: We now correctly bundle the Remote Debugger Console Linux ARM 64-bit version instead of an incorrect 32-bit version. ([76743](https://tracker.xojo.com/xojoinc/xojo/-/issues/76743))

## Framework

### Resolved Issues

- No longer raising an assertion if a control has been detected to be destructed twice. Instead we just ignore the secondary destructor. ([76890](https://tracker.xojo.com/xojoinc/xojo/-/issues/76890))
- ODBCDatabase.IsConnected now works as expected, especially when checking against MSSQL servers. ([76763](https://tracker.xojo.com/xojoinc/xojo/-/issues/76763))
- Clicking on a Separator no longer raises a failed assertion. ([76819](https://tracker.xojo.com/xojoinc/xojo/-/issues/76819))
- Fixed a regression when calculating the DesktopChart scale, AutoCalculateYAxis is set to True, and all the values in the dataset are the same. ([76846](https://tracker.xojo.com/xojoinc/xojo/-/issues/76846))
- Fixed regression when setting the fonts widths for the PDF Font Descriptor the second time a PDFDocument is instantiated. ([76776](https://tracker.xojo.com/xojoinc/xojo/-/issues/76776))
- **macOS**: Fixed macOS deployment target for Barcode from the wrong macOS 12.3 to macOS 10.14. ([76871](https://tracker.xojo.com/xojoinc/xojo/-/issues/76871))
- **Web**: Fixed a WebCombobox issue, when setting the Text property to a different value it wasn't possible to display the menu again. ([76910](https://tracker.xojo.com/xojoinc/xojo/-/issues/76910))
- **Web**: Fixed a WebButton issue that was preventing the user to change the Indicator property programatically. ([76882](https://tracker.xojo.com/xojoinc/xojo/-/issues/76882))
- **Web**: Fixed a WebListBox issue that was causing an exception being thrown, when setting DefaultRowHeight to a negative value. ([76778](https://tracker.xojo.com/xojoinc/xojo/-/issues/76778))
- **Web**: Fixed a WebButton issue causing font size and border corner radius to flicker, in some situations. ([76786](https://tracker.xojo.com/xojoinc/xojo/-/issues/76786))
- **Web**: Fixed a WebChart issue causing the control to throw JavaScript errors when there was more than one dataset. ([76728](https://documentation.xojo.com/resources/release_notes/confidential.html))
- **Windows**: DesktopXAMLContainer: setting the SelectedIndex of a winui:NavigationView now works correctly. ([76872](https://tracker.xojo.com/xojoinc/xojo/-/issues/76872))
- **Windows**: Setting a top-level menu item visibility to false no longer shifts the menu to the beginning of the menubar. ([76753](https://tracker.xojo.com/xojoinc/xojo/-/issues/76753))
