Release Notes

You can find more information about new features, known issues, and fixed issues (including installation issues for the BlackBerry 10 Native SDK) in the Native SDK release notes.

We also have an upgrade guide available that can help you transition your beta 3 app to beta 4. Check out the upgrade guide here.

Highlights - Cascades beta 4

The title bar highlight.

Title bar changes

Several changes have been made to the TitleBar control in Cascades. The appearance has been improved, and support for dark themes and bright themes has been incorporated.

The font change highlight.

Font size changes

Some of the font sizes have changed a bit. If you use system fonts in your apps, you shouldn't need to make any changes to accommodate the new sizes. If you use custom font sizes, you might need to adjust your UI to accommodate the new sizes.

The dialogs, prompts, and toasts highlight.

Dialogs, prompts, and toasts

Several new features have been added to enhance your experience with these components. Among other additions, you can now enable emoticons, add custom buttons, and customize the message that appears when you use a system credentials prompt.

New in this release

Cascades UI framework

Built-in controls

  • Title bar - The TitleBar control has changed color and is now blue. You can use the branded property to specify whether you want to use a blue title bar in your apps. The title bar also uses a different default color depending on the theme that you set for your app. If you use the dark theme, the title bar remains dark. If you use the bright theme, the title bar can be either blue or bright, with blue being the default appearance for bright-themed apps.
  • List view - In a ListView, the list items have changed slightly in font size, height, and divider appearance.
  • Segmented control - A SegmentedControl can be used in a title bar. To preserve a consistent look and feel, the SegmentedControl has been aligned.
  • Web view - The WebView control has been improved. You can now share cookies (persistent information across requests) among all WebView controls that are running in the same process. A new class, WebCookieJar, manages cookies as strings in a database.

Other features

  • Text editor API - You can now programmatically insert text into text controls. You can also control the position of the cursor within these controls, and you can track the text that's currently selected.
  • Font sizes - The predefined font sizes (such as XSmall, Medium, XLarge, and so on) have changed slightly. If you use system font sizes in your apps, these changes shouldn't affect the appearance of your UI, but you should test for any inconsistencies.
A highlight of the title bar changes.

The color of the title bar has changed.

  • Animations - To make it easier to create the animations you want, you can now turn off implicit animations for the width and height properties of UI controls.
  • Animated GIF controls - You can now control the animation in animated GIF images. For example, you can now stop and start the animation directly from your app.
  • Dialog boxes, prompts, and toasts - Several additions and improvements have been made to these controls, including the following:
    • You can use the emoticonsEnabled property to display smiley faces as emoticons in a SystemDialog, SystemCredentialsPrompt, or SystemPrompt.
    • You can associate an action with the return key in a SystemDialog, SystemListDialog, or SystemPrompt using the returnKeyAction property.
    • You can add a custom button to a SystemPrompt or SystemCredentialsPrompt.
    • The buttonAreaLimit property has moved from the SystemDialog class to the SystemListDialog class.
    • You can customize a message that is displayed when invalid credentials are entered in a SystemCredentialsPrompt using the validationMessage property.
    • You can use the new system classes, SystemProgressDialog, SystemProgressToast, and SystemUiProgressState, to create standardized progress dialog boxes and prompts.
  • Notifications - You can set, retrieve, or reset the invocation request that is associated with a Notification. When you reset the invocation request for a notification, this resets the invokeRequest property to a context-specific default value, which is a bb::system::InvokeRequest instance.
  • Payment Service - There are several new classes and other elements that can help you make your Payment Service apps more effective:
    • You can use new classes DigitalGoodReply, PriceReply, and ExistingPurchasesReply to analyze replies to PaymentManager requests. The PaymentReply class is the base class for all PaymentManager replies. The DigitalGoodReply, PriceReply, and ExistingPurcasesReply classes are children of PaymentReply and provide details for specific PaymentManager requests.
    • You can use a new constant, PaymentManager::Subscription_App, as the digitalGoodId in a call to the requestSubscriptionStatus() function to check the status of an app that is priced as a subscription item in BlackBerry World.
A highlight of dialogs and toasts.

Dialogs, prompts, and toasts have been improved.

  • Location - The Maps API has been improved. There is now support for pin drops using the MapLongPressToPinDrop class. A user can press a location on a map to drop a pin at that location. You can create points on a map (represented by latitude and longitude coordinates) using the Point class. You can also define the limits of a geographical area on a map using the BoundingBox class.

Other features

  • Development mode notifications - Previously, when you turned on development mode on the device, you would see an indicator at the top of the screen. Now, a notification is displayed in the BlackBerry Hub.

Known limitations

  • Issues with sending output to the console

    In this release, the qDebug() and console.log() functions do not work the same way as they did in previous releases. Previously, when you used these functions in your JavaScript/QML code, the function sent the debug information to the console, and you could view the information in the Console view in the IDE. Now, this function does not send output to the console. Instead, this function sends debug information to the slogger2 log.

    You can now view all slogger2 log information in the Device Log view in the QNX Momentics IDE. To open the Device Log view, on the Window menu, click Show View > Other. Expand Debug and select Device Log.

    If you want to view log information in the console, you can use the fprintf() function with stdout or stderr as the output stream to receive output directly to the console. Or, you can use a function similar to the following:

    void myMessageOutput(QtMsgType type, const char* msg){
        fprintf(stdout, "%s\n", msg);
        fflush(stdout);
    }
    

    Then, you can register this handler function with QDebug by calling the qInstallMsgHandler() function in your main function after the default Application creation, similar to the following:

    int main(int argc, char **argv)
    {
        Application app(argc, argv);
        qInstallMsgHandler(myMessageOutput);
        ...
    }
    

    After this, qDebug() calls will be logged to the console.

  • QML preview in Linux

    QML preview functionality is not working on Linux, and only works on Windows and Mac OS at the moment. Linux users can deploy their applications to a device or simulator to test the look of their QML components.

  • BBM Social Platform and the simulator

    The BBM Social Platform APIs are not currently supported in the BlackBerry 10 Dev Alpha simulator. To test and debug your app, you'll need a BlackBerry 10 Dev Alpha device. To learn how to run your BlackBerry 10 application on a device, see Build, test, and deploy your app.

  • Using older drivers with QML preview

    Any drivers more than 12 months old are unsupported and can lead to issues with rendering, including, but not limited to, complete disabling of whole QML preview feature. The user will also be notified about this situation by a dialog within the QNX Momentics IDE.
    Workaround: Update to the latest drivers.

  • Push pins for geographic data on a MapView control

    Push pins are added to MapView through MapData. MapData for a Mapview is obtained by calling the mapData() function. Push pins can be added through MapData::add(bb::platform::geo::Geographic *geo) or MapData::add(const bb::platform::geo::GeoList &elements). If you add the push pins to the MapView, the push pins will not render at all. Subsequently, the user is not able to interact with push pins. Bubbles around the push pins will not render either. The APIs do not show any errors during compilation or cause an unexpected termination at runtime.

  • API does not have permission to access the chat database

    The access_sms_mms permission does not work correctly. If you try to save a text message in your app, you'll receive an error message and the text message is not saved.

Fixed in this release

Cascades UI framework

6044389

A multi-line Label with TextAlign set to Center didn't display correctly when switching orientations (portrait to landscape mode).

6029915

If you rotated the device while peeking from one page to the next, the application and peek session became unresponsive.

6019784

The first creation of a Color class from QML used to take longer than intended.

6018586

A Label ignored its maximum width if the preferred width was not set.

6013627

Previously, when using a Menu with 4 ActionItems, the 4 ActionItems weren't evenly spaced.

6001811

If you played a video then switched from landscape to portrait orientation, the video flickered. Also, when you had a Label with textStytle.textAlign set to TextAlign.Center, the label rendered incorrectly when switched between landscape and portrait mode.

5999455

The segments of a SegmentedControl didn't animate properly, the wrong colors were used during transitions.

5968716

When an unbound-target-selection menu was opened, the title bar was animated in from the right hand side of the screen (right to left) while the remainder of the list slides were animated in from the bottom of the screen to the top. The entire sheet is intended to animate onto the screen together in one cohesive transition.

5968549

Selecting an unbound invoke action, such as Share, proceeds to the target selection menu but it didn't display the title in the header of that menu.

5962935

When attempting to copy text from a work account message to a personal account message, no notification was given that pasting text from work to personal messages wasn't allowed, but the text was not copied as expected.

5959988

If a TextField was located near the bottom of a Sheet and it obtained focus, the virtual keyboard hid the TextField.

5958853

When a long email was received, the text in the middle was cut off and didn't display properly.

5957552

If you had a TitleBar in a NavigationPane, making the TitleBar visible from a slot function sometimes caused the TitleBar not to be seen at all.

5956684

Labels used more memory than intended.

5956340

Zooming in or out on a ScrollView control flickered during the rubber band effect.

5944495

If you had a TabbedPane containing images on tabs, there were black areas at the top of the images when viewing the images in full-screen mode and landscape orientation.

5933132

Sometimes when minimizing an application, a different application Cover was momentarily displayed.

5915931

Sometimes when switching between the application and a context menu, the circle of search remained longer expected.

5913776

The fine cursor sometimes appeared when the field is empty.

5888210

When typing into a TextField, the submit key didn't emit a submitted signal and didn't call the connected slot function.

5887514

In landscape orientation, the overflow menu had no line to separate Share from Delete.

5850960

If you had a TextArea with a height of 400, after releasing your finger scrolling up, the list used to scroll down.

5849019

Touch events below a TitleBar didn't emit a signal.

5839021

Sometimes when highlighting text in emails, the highlighting continueed after the touch had finished.

5830141

Loading an image with an ImageTracker control didn't work properly and couldn't accept ResourceState or ResourceTracker enumerations.

5793911

The scrollToPosition() function on a ListView took longer than expected.

5768557

When a TextField is moved, the fine cursor didn't follow.

5730866

TextFields didn't maintain the correct text position when many lines are entered.

5452387

Applications with multiple Pages sometimes crashed when copying text from one Page to another.

5423720

Sometimes targets (http://, mailto:, and so on) were not invoked when called from a TextField or TextArea.

4389394

When using the Croatian or Kazakh character sets, some characters were missing.

3859167

When receiving onTouch events from applications that used child classes of CustomControl, unexpected values used to be returned on the events. An example would be positional change between touch events of over 300 pixels in under 70 ms.

3813679

Dynamic objects and variables consumed more memory than intended. Heap memory usage on many controls has been reduced, but will continue to be reduced further on other controls.

3669945

The defaultImageSource property of ImageButton didn't prefix the file path with "file://", but the imageSource property did.

3596128

TextStyle.base components couldn't be set to null, even though in the API reference, the default was stated as a null TextStyle. Also, altering TextStyle.base didn't emit the onBaseChanged signal.

3596112

The TextStyle.onBasedChanged signal was emitted after setting the same base value.

3593657

The default value of TextStyle.base was specified as null in the API documentation, but at runtime the value is undefined. The expected value on return is now undefined.

3555132

The ImageTracker.onImageChanged signal was emitted even when setting the image to the same image.

3190445

Margins didn't function correctly for any controls without a set value. When a control was initialized, or the margin was reset, the getMargin() function wouldn't return a consistent value.

3163347

The titleChanged, valueChanged, and modeChanged signals for DateTimePicker are not being emitted correctly, or at all, when their respective changes occur.

Cascades platform APIs

6056211

When using the SpellChecker API, the checkWord() function and suggestion functions always timed out and returned false even though the word was correct, if using specific timeout values including: 3000, 4000, 7000, and 8000.

6055590

The open() and startViewfinder() functions of Camera had to be called twice to open the camera and start its viewfinder for the first time.

6054364

The show() function and exec() static function of NotificationDialog control didn't work properly and didn't display the specified effects.

5988166

If a hard-link was specified and the original file had owner and write access, the sender must have had owner permissions for the target to be invoked.

5950965

Peek feature for cards didn't work on the BlackBerry 10 Dev Alpha Simulator.

5842334

The Qt NFC APIs was missing documentation on QNdefRecord class.

5561615

The ForeignWindow::controlFrameChanged signal was not emitted on rotation changes of the device. The signal was emitted on the first layout but not subsequent rotations.

5148962
5147742

When free storage on the device was less than 1 GB and video was recorded until the device storage was full, the videoCaptureStopped signal was not received when the device storage was full. Also, when this occurred, the videoCaptureFailed signal was received with an error set to RecordingSpaceFull.

Cascades Builder

6065712

When using the NotificationDialog API, the error() and result() functions returned an incorrect value if the dialog was dismissed by a button selection.

6018911

Custom components were listed under attached objects when the QML file wasn't immediately under the assets folder.

3608228

On a BlackBerry 10 Dev Alpha device, attempting to debug a Cascades application over Wi-Fi resulted in a timeout error, which stopped the debug session.

3596004

Invoking code assist after 'TextStyleDefinition' didn't display 'onBaseChanged' as an option in the property list.

Cascades Exporter plug-in for Adobe Photoshop

6052837

Text in Cascades application displayed larger on a device or simulator than it does in Photoshop, around 5 times larger.

6014884

On a Mac 10.6, a .tmz file name that contained a '/' character showed an error with "Problem null".

6012062

The Reset option on the Rescale dialog wasn't working properly and didn't reset the pixel values to their original value.

BlackBerry Messenger Social Platform

5982271

If a user denied an app permission to connect to BBM when the app first launched, or changed the permissions in the global settings for the app, the app crashed.

5850653

After adding an image to a profile box, the image did not display.

5849928

A contact's profile box items did not appear in the correct chronological order on the current user's BlackBerry 10 device, and the timestamps were incorrect.

5829149

When a user launched an app and the app attempted to register with the BBM Social Platform, after the user clicked Continue in the BBM Setup dialog, BBM did not launch.

Known issues

Cascades UI framework

6338532

When a ListView control's flickMode is set to a non-default value and a slot function is connected to the flickModeChanged() signal, calling the resetFlickMode() function doesn't set the flickMode back to the default value and no signal is emitted.

6324732

When using an ImageView, the implicit layout animations cannot be disabled. Normally, you disable implicit layout animations in QML by setting implicitLayoutAnimationsEnabled to false.

6323178

The requestFocus() function is not obtaining focus on TextArea and TextField controls.

6317826

Notifications in the BlackBerry Hub cannot be dismissed. The notifications will time out after 10-15 minutes or can be turned off completely.

6313861

After a device reboots, development mode is turned off, however the notification that it is on remains in the BlackBerry Hub.

6307969

The development mode indicator has been replaced with a notification in the BlackBerry Hub.

6304350

If you are using your device in Portrait mode and then switch to Landscape, your device might not display as expected.

6300779

Sometimes BBM gets stuck during startup on endless startup animations.
Workaround: Restart BBM.

6271622

Right-to-left languages in the BlackBerry Hub display as left-to-right, instead of right-to-left.

6260370

Fine cursors are placed directly under your finger and can be difficult to see where the fine cursor is.

6255860

If you're using ActionItems with the default title string, a dynamic language switch through Settings doesn't translate those ActionItem title strings.

6254238

On a text control with the editable property set to false, if you cut text from that control through the context menu, then reopen the context menu, you are able to paste text into a text control which you are not supposed to.

6219413

If multiple itemsChanged() signals are fired in quick succession on a ListView, the ListView doesn't update properly.

6217519

If you have one finger holding an item in the context menu, pressing off the context menu with another finger closes the context menu.

6217428

If you have one finger holding an item in the context menu, swiping from right to left with another finger on the same context menu expands the menu.

6217397

When using two handed interaction on the context menu, a release of the finger that initiated the menu starts navigation.

6210076

The cursor width might change depending on whether the cursor is placed at the end of a block of text, or between characters within the block of text.

6169311

If Retranslate.onTranslationChanged is called on a ListView item, then the application is closed, you might receive an error message.

6031114

When returning from a peek transisition, the TitleBar from the previous view sometimes gets stuck to the returned view.

6020503

Receiving an incoming call and moving the call bar to the bottom of the screen causes the call bar to be stuck at the bottom of the screen.

6019786

Setting the imageSource property on any ImageView-like control (such as ImagePaintDefinition) takes longer than expected, around 3 ms. This issue reduces the creation time of the application scene.

6003065

A list sometimes stutters when scrolling up and down.

5997437

If you open a link in your work calendar, your device might open it in your personal browser.

5988986

When connecting the SubmitKey for a TextField, the "Submit" text is not displayed for the enter key.

5984308

If you're editing a Notebook and receive an incoming call, the call screen and edit Notebook screen overlap each other.

5976723

When highlighting text that is longer than the containing area, text can't be highlighted if it's past the visible area.

5960667

Cascades applications logs statements in a .log file instead of a .slog file.

5932006

List of attachments in some emails are sometimes cut off and don't all display correctly.

5874575

While editing a video, running a preview and switching to landscape mode causes the controls to become unresponsive and application to terminate unexpectedly.

5328837

When text is entered into a TextField that is longer than the TextField, there is no ellipsis at the beginning of the text.

5794226

If you try to save a text message, you will get an error message and text message is not saved.

4623831

The Pictures application can sometimes terminate unexpectedly when adding pictures to an album.

3630528

A ListView component defined in QML with a GridListLayout displays only the grid header and does not display data within each cell.

3621228

The API documentation indicates that the TextField.resetHintText() slot function resets hint text to an empty string, but the function actually resets hint text to "Enter text".

3556364

When using a GridListLayout object, calling the GridListLayout.setSpacingAfterHeader() function does not add spacing after the header. If the spacingAfterHeader property is connected to a slot function, a signal is not emitted when the setSpacingAfterHeader() function is called, as it should.

3555874
(3637004)

When using HeaderListItem with layoutDirection set to LeftToRight or RightToLeft, the parent ListView has infinite scrolling and non-header items are hidden.

3139275

Default-size TextFields in Containers with LeftToRight layouts can push some Labels out of view by exceeding the bounds of the Container.

2983165

With nested Containers and touch behavior set to start tracking on a touch down event, touching the child Container causes the parent Container to respond as if it had been touched.

Cascades platform APIs

6400671

The 24-Hour time setting is not set properly according to the region locale selected, and sometimes the 12-hour time is shown instead.

6375247

Target filters currently can register with the invocation framework dynamically (by calling the APIs), which is against the restrictions set for target filter registration. These restrictions prohibit the target filters from registering with the invocation framework through static (listing filters in the bar-descriptor.xml file) or dynamic (by calling the APIs).

6365332

When international characters are used in a URL, the translation sometimes is incorrect and the proper URL isn't displayed.

6343376

In the HardwareInfo class API reference, the processorCount(), processorSpeed(), processModel() functions state that the application must have read_moredeviceinfo permission to access this information. However, to access this information, the application must have read_hardware_inventory permission instead.

6326947

On the BlackBerry 10 Dev Alpha Simulator, when using the SpellChecker API, a list of suggested words might not return. Also, calling checkWord() sometimes returns true when a misspelled word is passed in.

6332277

When creating an application based off bb::core::Application and Qt only, a connected thumbnail() signal is not emitted when the application is minimized.

6324317

Using the SpellChecker API, the suggestions() method sometimes times out on the first time it's called and returns no suggestions. If suggestions() is called again after this, the list of suggestions is returned.

6301237

If you have a SystemUiInputField control and setMaximumLength() is called with a negative value, calls to inputFieldTextEntry() doesn't return the input string.

6288652

If your application has an app cover and the application is minimized then locked, the application doesn't occupy the full screen when unlocked and maximized.

6286103

The target() and targetType() functions of InvokeTargetReply class are returning incorrect values when target of type Viewer is invoked using the unbounded invocation.

6280503

When using the DataSource class with source is set to a remote URL through setSource() function, the type() function always "unknown data type" (which is 0) until the content is loaded through the load() function. However, this is not currently stated in the documentation.

6276381

After creating a DisplayInfo object for a secondary display, calls to physicalSize() on that DisplayInfo object can sometimes return incorrect values.

6251593

The API reference for resetEmoticonsEnabled() of the SystemCredentialsPrompt class says the function resets the main text of the pop-up to QString::null. However, the function actually resets the emoticonsEnabled property back to default false value.

6218365

The move() method of QListDataModel incorrectly moves items. If the 'from' index is lower than the 'to' index, the item is moved to the 'to' index minus 1.
Workaround: If you're moving to any index except for the last, move to an index expected plus one. There is no way to move to the last index with this issue present.

6198778

When using the HardwareInfo class in an application with access_device_model_name permission, the modelName() and modelNumber() functions don't return the correct information. The access_device_model_name permission is not working correctly.

6172139

There is missing documentation on QtNfcSubset classes including some enumerations and constructors in QNdefRecord, QNdefMessage, QNdefNfcSmartPosterRecord, QNdefNfcTextRecord, and QNdefNfcUriRecord.
Workaround: Look at the respective header files in the installation folder.

6146657

If you create an app of core::application (instead of a common cascades app), signal asleep() is not emitted when the app screen is minimized.
Workaround: use a common cascades app (an app of bb::cascades::Application).

6052188

The invoked(const bb::system::InvokeRequest&) signal of the InvokeManager class emits incorrect signal for setFileTransferMode(FileTransferMode::Type type).

5969845

Sometimes, if invocation requests are pending, peeking and closing the card does not work.

5934941

The peek feature is not working correctly when using with any card class while in landscape mode.

5933235

MenuManager does not create the menu if you set the TargetTypes to -100.

5868072

Invoking multiple cards while in landscape mode distorts the user interface.

5776714

After prolonged use, the peek functionality does not work correctly and prevents apps from launching and minimizing.

5731088

When a card is closed, InvokeManager::peekEnded() signal is emitted twice. It should only be emitted once.

5648426

When using a ArrayDataModel and QListDataModel, the itemsChanged() signal is emitted with clear() is called on an empty data model.

5601217

If you have an ArrayDataModel containing QString types of values, a call to indexOf() looking for a QString type value within the range of the model returns a index, even if the QString type value isn't in the model.

5522084

On the BlackBerry 10 Dev Alpha Simulator, calling secondaryDisplayId() from the DisplayInfo class returns invalid display, no secondary display is simulated.

4393245

Using the JsonDataAccess class with a .json file saved as UTF-8 with byte order mark (BOM) shows an error when calling error().
Workaround: Save the file as UTF-8 without BOM.

3271117

If you call find() on the empty GroupDataModel, a QVariantList containing a single 0 is returned (saying that we found an match at the very first item in the model) instead of an empty QVariantList as expected.

3212561

Classes that inherit DataModel, such as GroupDataModel, QListDataModel, and XmlDataModel, are missing some description information for implemented super class functions, such as childCount(), hasChildern(), type(), and data().

Cascades Builder

6337173

When using the Memory Analysis Tool to analyze Cascades projects, the Memory Problems view takes longer than expected to populate the errors.

6302191

Using the IDE with older/unsupported video drivers may result in Momentics terminating unexpectedly without any error.
Workaround: Disable QML preview.

6285351

Sometimes compilation can fail if you're linking to libbbcascades.

6262710

Due to the nature of QML preview, auto-build is not supported.
Workaround: Manually build.

6166623

To debug sample projects that are loaded through the QNX Momentics IDE, debug code needs to be added to main.cpp. Newly created projects do not need enable debugging.
Workaround: If you're debugging based on a sample project, the debug code needed in main.cpp is putting #include <Qt/qdeclarativedebug.h> before the main() function.

6062949

When updating nine-slice margins for an image, changes may not be seen in QML preview.
Workaround: close and reopen QML file.

6059288

If a running debug session is interrupted, the JavaScript debugger may lose the debug session. Some scenarios of interrupting a running debug session are: a change of the launch configuration, the debug session times out, and other debug sessions are started.
Workaround: Restart the debug session and avoid interrupting it.

6055459

The debugger may terminate unexpectedly when displaying variable values in the Variables view, specifically when you are debugging QMap or QMultiMap objects.

6042185

The conditional breakpoint doesn't work in both of JavaScript section of QML file and JavaScript function of JavaScript file.

6037185

After debugging with a JavaScript breakpoint, applications do not run on a device.
Workaround: Test on the BlackBerry 10 Dev Alpha Simulator.

6034758

An empty onClicked slot function in QML has an error at runtime but not in the QML editor.

5886848

WebView controls don't render in QML preview.

5822545

Hitting breakpoints in JavaScript will not suspend native/C++ threads in the application.

5156833

Syntax highlighting (pretty-printing) of some Qt classes isn't displayed properly in the IDE (for example, QString, QVector, QChar, and others).

5148956

QML preview doesn't render international characters correctly.

5814025

Sometimes when editing JavaScript, code completion displays no-proposals when there are proposals to display, including on console functions (such as the console.debug() function) or math functions (such as the Math.sin() function ). The functions still work at runtime though.

3872958

The Add Library Dependency wizard allows you to pick a new library to add to your project. You can modify Makefiles and .pro files for non-managed projects.

3674748

The debugger displays errors when watching expression values on Cascades objects.

3665573

When using the Debug Perspective on a Mac, variable information does not appear in the 'Variables View' after you debug an application.

3628816

It's not possible to browse for a file in the 'Image Source' text field of the Properties View.
Workaround: Specify the path manually.

3575287

When using TextStyle controls, the properties view is not updated properld and doesn't reflect changes in property content.

3147605

Attempting to use code assist for the first time in a project can cause code assist to function incorrectly, or not at all.
Workaround: Save, close, and re-open the project.

Cascades Exporter plug-in for Adobe Photoshop

6328894

On a Mac computer with the developer view enabled (BB10 Toolbar is shown and export review is enabled), after an image is exported with a preview, results are displayed, and the user closes the image, the exporter window inside Photoshop is disabled and can't be interacted with.
Workaround: To avoid this issue, close the BB10 Toolbar before exporting. If the issue has already happened, disable and enable the extension.

6295515

When exporting a 9-sliced image with developer view enabled, the export review doesn't show the image.
Workaround: To avoid this issue, detach the exporter plugin from the toolbar, so it is a standalone panel.

5889725

Adobe Photoshop CS5 windows do not minimize properly when the builder extension is enabled on a Mac Snow Leopard.
Workaround: Disable the extension.

BlackBerry Messenger Social Platform

6298374

After blocking a contact from sending application download invitations by selecting "block future invites from <contact>" from a pending application invite, the user is unable to unblock the contact.

5963384

A user cannot block future download invitations from a contact. After selecting "block future invites from <contact>", the contact is still able to send the user invitations.

5934714

You can create more than the maximum allowable 3 items in an application profile box on a BlackBerry 10 device.

5845968

Profile boxes are not updated in real time. For example, when a contact's profile box is modified, the changes are not immediately updated on the current user's BlackBerry device.
Workaround: Navigate away from the profile box and then return to it.

Looking for release notes for previous betas?

You can find the release notes for the previous beta releases on the following pages:

  1. 1. Choose your focus

    This is the focus controller. Use this controller to choose your primary development approach (Cascades or Core).

    By selecting a focus, you get to decide what content should be front and center on the site.

  2. 2. Download the tools

    Before you start developing, you'll need to visit the Downloads tab. Here you'll find downloads for the BlackBerry 10 Native SDK, BlackBerry 10 Device Simulator, and some other useful tools.

  3. 3. Try the sample apps

    Now featuring a filter control, the Sample apps tab allows you to search for samples by name or by feature.

    Select either the Core or Cascades check boxes to display the samples relevant to your focus.

  4. 4. Educate yourself

    The Documentation tab contains tons of examples, tutorials, and best practices to guide you along the path towards building an awesome app.

    The documentation for your preferred focus always appears at the top of the left-hand navigation, but you can still access the rest of the documentation at the bottom.

  5. 5. Start developing

    The Reference tab is where you'll find essential details about how to use our APIs.

    You can use the left-hand navigation to choose how you would like to browse the reference: by module, by topic, or alphabetically. If you have an idea of what you are looking for, start typing it in the Filter box.