JavaScript Engine Build Notes
JavaScript Engine 19.0.6.48
cWebGrid: Fixed text color issue in grids for theDf_Web_Creme,Df_High_ContrastandDf_Modern_Skythemes.cWebList: Fixed a bug causing lookup lists to not center properly on the currently selected row.cWebList: Fixed a bug causing the list to load wrong data before the first record after a Ctrl+Home.cWebColumnLink: Fixed a bug causingcWebColumnLinkto wrap differently than it used to.WebOrderMobile: ChangedpbFillHeighttofalseon ZoomOrder detail list which conflicted withpbScrollbeingfalse.
JavaScript Engine 19.0.5.47
- Increased minimal supported version in browser check message (not the check itself) to Internet Explorer 11.
- Fixed syntax issue in the designer that prevented it from reaching the browser check on Internet Explorer 8 and older.
- The designer now suppresses JavaScript errors it might catch.
JavaScript Engine 19.0.5.46
WebList/WebGrid: Fixed bug (new in 19.0) where manual data-aware lists were not performing client-side sorting because they invalidly went into paged data loading.- Added missing
df.tNumberanddf.tDatesupport to valuetree serialization/deserialization in the JavaScript Engine. WebOrder: AddedpiContentWidthto the DemoFloatingPanel menu demo to improve animation looks.
JavaScript Engine 19.0.5.45
cWebTreeView: TheOnSelectnow only fires when the selected item actually changes (BT: 7087).cWebFloatingPanel: Changed positioning forfpFloatByControlandfpFloatFixedtoposition: fixedsince positioning was already calculated according to the browser window. This solved issues where the viewport is not full-screen.cWebList: Improved behavior of search popup for date and datetime fields so it no longer fills in a complete date when opening (BT: 6835).- Performed JSLint validation and fixed several syntactical issues in the JavaScript Engine.
JavaScript Engine 19.0.5.44
cWebGrid: Improved the logic that determines the initially selected column to take the disabled state into account.piCurrentColumnnow defaults to-1, meaning it is automatically determined. It used to be0, which fixated to the first column even if it is disabled (BT: 7250).- WebMobileZoom Wizard: Changed caption of the cancel button generated by the wizard to "Cancel Changes" instead of "Clear/Add" which suggested it would clear the view.
- WebMobileZoom Wizard: Changed the CSS classname of the cancel changes button to
WebIcon_Refreshas the previously used name did not exist. cWebGroup: SettingpbCollapsibletotrueon a group with nested groups caused the nested groups to show the collapse button as well.cWebGroup: Fixed a bug (new in 19.0) causing JavaScript errors when nesting panels inside a group.- Designer: Dragging a control from the class palette while a control of the same type was selected prevented the new control from being dropped inside that control.
cWebGrid: Fixed automatic rowid generation when adding data to a non-data-aware grid that doesn't implementOnSaveRow.Df_Flat_Touch/Df_Flat_Desktop: AddedWebIcon_RefreshCSS class showing a refresh icon and working properly on buttons and menu items.
JavaScript Engine 19.0.5.43
cWebFloatingPanel: AddedpiContentWidthproperty that fixates the content width for thefpFloatLeft..pePositionmodes.
JavaScript Engine 19.0.5.42
cWebList: Improved positioning of swipe button on applications withpbScrollset tofalse.- Designer: Fixed keyboard support.
- Designer: Fixed focus stealing issue when changing object structure in mobile select views.
- Designer: Updated background color and error message style to match Studio.
JavaScript Engine 19.0.5.41
cWebAccordionCard: FixedpbExpanded.cWebColumnHighlight: Changed casing ofpsHighlightCssClasstopsHighlightCSSClassto match other property names.- Added
_wpfunction again that went missing with the addition of server web properties.
JavaScript Engine 19.0.5.40
- Added
typeTimeas data type for DEO objects with support for masking and input filtering. ThepsTimeFormaton thecWebAppclass determines the default display and edit format. cWebList: On a scrolling list it now prevents the rubber band scrolling at the page level (the bouncing header issue).cWebList: Client-side sorting on columns withpeDateTypeset totypeDateTimenow actually sorts on date and time values.cWebForm: Made sure thatpbPasswordoverrides thepbHtml5NumberOnMobileproperty.cWebTreeView: AddedOnCollapseandOnExpandevents.cWebColumn: TheOnHeaderClickevent now always fires regardless of thepbSortableandpbColumnSortableproperty values. SettingpbOnHeaderClicktotruestill cancels the default sort order change.cWebSlider: Improved behavior inside designer.cWebMenuList: Renamed CSS classnameWebML_DevidertoWebML_Divider.cWebModalDialog: FixedpbShowCaptionon initialization and JavaScript error when changing at runtime.cWebApp: Fixed error inUrlParameterfor cases where no referer URL is passed (this might happen when using CORS).
JavaScript Engine 19.0.4.39
cWebListSwipeButton: Fixed a bug causing errors when using the swipe button in non-data-aware lists.cWebListSwipeButton: Improved keyboard control (arrow keys).cWebForm: Disabled JavaScript input filtering withtype="number"on mobile devices as this prevented the decimal separator from being entered. Input filters rely on cursor position which can't be queried ontype="number"elements.- Added copyright notice on the console when the framework initializes.
JavaScript Engine 19.0.4.38
cWebList: Fixed a bug in the maximum scroll offset calculation for rows with margins.cWebFloatingPanel: Fixed a repositioning issue while the panel was hiding infpFloatByControlmode.Df_Flat_Desktop,Df_Flat_Touch: Merged extended icon font.
JavaScript Engine 19.0.4.37
Df_Flat_Desktop: Reduced height ofcWebProgressBarto fix alignment with other controls.cWebObject: Fixed theCallbackprocedure that was shifting the callback parameters one position.- Marked
paPubPropertyModesandUrlDecodeas private (as originally intended). - Fixed
peChangedViewExitActionwherecveAbandonChangesandcveConfirmAbandonChangeswere inverted. cWebService: MarkedRegisterStandardInterfaceas private as the procedure never did anything on web services.cWebColumnCheckbox: Fixed a bug that could cause a click on the checkbox in the selected row to be ignored. This only happened whenOnChangewas implemented and aDataSetUpdateRowwas sent.cWebDatePicker: Improved behavior inside the designer.cWebErrorHandler: ImplementedIgnoreAllErrors.cWebErrorHandler: Added old styling naming convention APIs as private to improve portability of code between Windows and web.cWebFloatingPanel: Improved positioning logic.
JavaScript Engine 19.0.3.36
- Designer: Implemented designer for card container and cards.
JavaScript Engine 19.0.3.35
cWebCombo: Improved the refill &psValuelogic to ensure refill always respects the proper value.- Refactored
df.sys.string.triminto.trimfunction with polyfill for old browsers. Df_Flat_Touch: Removed white font color on fields with errors.Df_Modern_Sky: Prevented text wrapping on toolbar items.cWebBaseDEO: Incremented default value ofpiMaxLengthfrom 50 to 32KB.- Designer: Improved dropping of controls on empty views and selected panels.
- Designer: Improved usability of
cardcontainerinside the designer.
JavaScript Engine 19.0.3.34
WebFloatingPanel: IfpePositionis set tofpFloatByControlandpiWidthis set to0, it now takes the width of the control it is set to float by.WebFloatPanel: Fixed the logic forfpFloatByControlwhere it was rendering off-screen while it should have rendered above the control.WebFloatingPanel: Fixed an issue where a hiddencWebFloatingPanelwas still taking up space while it was hidden.WebList: Fixed thephoKeyBuddyproperty that was broken in Alpha 2.Df_Flat_Touch: Reduced the height of a collapsedWebGroup.cWebResourceManager: Addedpptxto the list of mime types.cWebApp: Fixed a bug causingWebSetResponsiverules on the default view to not be applied when a view is opened for the second time.WebAccordionContainer: Improved sizing logic ofpbFillHeightand added support for dynamically changingpbAutoHeight,pbMultiOpenandpbFillHeight.WebAccordionContainer: Improved behavior inside the designer.WebMenuList: Improved themes so they properly show the submenu arrow.WebColumn: AddedpeWordBreakproperty that controls how new lines and wrapping of the data are handled. The default valuewbNonemaintains the default behavior of ignoring line breaks and not wrapping text.
JavaScript Engine 19.0.3.33
Df_Flat_Touch&Df_Flat_Desktop: Fixed buttons causing horizontal scrollbars.WebGrid: Fixed bug where tabbing out of the new row didn't change the column to the first column as expected.WebMenuList: Added resize after initialization.WebList: Added support for margins between rows. The scrolling engine now picks up on the margin and takes it into account.WebApp.js: Added client-side only property todf.WebAppcalledpbCheckVersionthat can be used to disable the version check in case you includedf-min.jsdirectly.Df.js: Fixed an issue preventingdf-min.jsfrom being used directly.cWebPropertyManager: Changed TODO item into a regular comment.
JavaScript Engine 19.0.3.32
WebList: Improved row height calculation solving several scrollbar position and height issues.Df_Flat_Touch&Df_Flat_Desktop: Added space between buttons insidecWebColumnButton.
JavaScript Engine 19.0.3.31
cWebGrid: Fixed column selection bug that caused JavaScript errors when usingMoveToColumnObjectand changingpiCurrentColumnin the designer.
JavaScript Engine 19.0.3.30
cWebCardContainer: Height calculation improvements for "WithBullets" style.cWebHtmBox: Removedoverflow-x: hiddenstyle which caused issues with swipable cards.Df_Flat_Touch/Df_Flat_Desktop: Improved styles of swipable cards.
JavaScript Engine 19.0.3.29
cWebColumn: Fixed setter ofpsCaption.cWebParentCombo: If the field has no index andpiIndexis not set it now uses the primary index where it previously defaulted to index 0 (not available on non-recnum tables).cWebCardContainer: Added support for swiping cards (pbSwipeCards = true).cWebCardContainer: NewWithBulletsCSS class for the Df_Flat themes that shows bullets underneath cards indicating the current position.- Designer: Fixed a JavaScript error when selecting columns on a list/grid with the header turned off.
JavaScript Engine 19.0.3.28
WebSuggestionForm: AddedShowSuggestionsprocedure that can be used to force the suggestions to show.WebGroup: Added a resize after the collapse/expand animation has finished.WebAccordionContainer: Added a resize after the collapse/expand animation has finished.WebFloatingPanel: Fixed a bug where the panel was not displaying when used outside the view.WebFloatingPanel: ThephoFloatByControlproperty now supports menu items as well.WebMenuList/WebMenuButton: Improved sizing logic.- The
CreatedDateandCreatedTimefields of theWebServerPropstable are now properly filled.
JavaScript Engine 19.0.2.27
WebList/WebGrid: Added missingDataSetUpdateRow,DataSetRemoveRow,DataSetAppendRow,DataSetInsertRowBeforeto the refactored WebList.WebGrid: Fixed clearing of non-data-aware grid.WebGrid: Improved focus handling.WebGrid: FixedWebColumnCheckboxnot responding directly to click.- Improved positioning of
WebCheckboxandWebColumnCheckboxforDf_Flat_TouchandDf_Flat_Desktop. - Designer: Fixed a bug occurring when dragging a column.
JavaScript Engine 19.0.2.26
WebList: Fixed the setter ofpbShowSelectedthat was broken with the list refactoring.WebList: Fixed column resizing with hidden rows issue.WebList: Fixed column size calculation when column properties change.
JavaScript Engine 19.0.2.25
cWebColorPickernow adjusts its size whenAddPaletteItemorUpdatePalettechange the amount of color rows.cWebColorForm: ItspbColorBackgroundproperty now properly adjusts at runtime.
JavaScript Engine 19.0.2.24
- Fixed non-scrolling list issue where it blocked touch events preventing its container from being scrolled using momentum scrolling.
- Improved usability of
WebListSlideButtonon non-scrolling lists. - Fixed
cWebTimerwhich wasn't automatically starting outside of views (BT: 7241).
JavaScript Engine 19.0.2.23
- Improved support for
cWebGridwithin the drill-down model. - Improved support for
cWebGridcombined withpbNewLine. - Fixed jumping/flickering of grid when selecting cells while the current edit cell is scrolled off the screen.
- Removed height from toolbar items for
Df_Flat_Touch&Df_Flat_Desktopas it was set too high and is unneeded. - Fixed
WebListfrom showing the field content in columns marked as password column.
JavaScript Engine 19.0.2.22
- Fixed styles for expandable groups that got merged out in the previous build.
- Improved list styles to remove inconsistencies between non-scrolling and scrolling lists.
- Fixed
WebGridwhich was always non-scrolling while it should respond topbScroll.
JavaScript Engine 19.0.2.21
- Refactored the
cWebListandcWebGridJavaScript classes. The server-side API remains the same while the client-side implementation has been overhauled. This should fix several bugs and stability issues and introduces the newpbScrolloption. - The
cWebListandcWebGridnow support a "non-scrolling" mode where they don't have scrollbars but grow according to their content. This will make the container scroll when necessary and can be more "web-like". The newpbScrollproperty controls the scrolling. - Fixed bug in
cWebMenuButtonwhere dynamically loaded menu items were shown multiple times when visiting a view for the second time.
JavaScript Engine 19.0.2.20
- Fixed several compatibility issues for old browsers.
- The
cWebGroupnow has a new collapsible feature controlled bypbCollapsible(which determines if a group can be collapsed/expanded) andpbExpanded(which controls current state). - Updated slide button row styles.
JavaScript Engine 19.0.2.19
- Fixed bug in swipable list buttons where the buttons would not hide if another row was opened and the list scrolled in between.
- Refactored
df.events.addDomListenerintodf.dom.on.
JavaScript Engine 19.0.2.18
- Added
ContentTypefunction tocWebResourceManagerthat is called when a file is streamed to determine the MIME type it should send. Augmenting this function allows customization and extension of the mime type list. - Fixed a character encoding issue with server-side web properties.
- Fixed DDO reentrancy issue with server-side web properties.
- Added
OnPostInitializeevent tocWebAppthat can be implemented to set configuration options otherwise missed. - Moved the support for deleting records from
cWebGridtocWebList. The propertypbAllowDeleteRowwill default tofalseforcWebListand totrueforcWebGrid. - New
cWebListSwipeButtonclass that can be used insidecWebListto render buttons that become visible when the row is swiped to the left or right (touch devices only). - Added swipe buttons to the
SelectCustomerview of theWebOrderMobile. - Fixed the
WebOrderMobilethat was accidentally using theDf_Flat_Desktoptheme instead ofDf_Flat_Touch. - Fixed a bug in the "styled radio" where clicking the first radio didn't always check it (Chrome, Edge).
- Improved style of the disabled checked checkbox for
Df_Flat_TouchandDf_Flat_Desktop. - The
WebOrdersample: itsCustomerWebLookupnow haspbAutoServerset totrueso that it shows constrained data when opened from the Multi DDO Structure sample.
JavaScript Engine 19.0.1.17
- The
cWebFloatingPanelnow supports absolute positioning. cWebList: Fixed a bug causing a JavaScript error when enabling a list on a hidden tab page.cWebAccordionCard: Fixed thepbScrollproperty which was not showing the scrollbar when needed.- Designer: Improved logic for
piColumnSpan = 0while changingpiColumnIndex. - Designer: Improved support for
cWebAccordionCard.
JavaScript Engine 19.0.0.15
Packages
- Fixed a bug in the server-side web property system causing errors when doing the first
WebGetfrom insideOnConstrain. - Added a proper error when using
WebGet/WebSeton server-side web properties while the handler is not initialized (table missing or similar). - Added
RemoveMemberofcJsonObjectto the BaseMetaData system. - Added
cWebAccordionPanelandcWebAccordionCardto the classlist. - Added new control demos to the samples.
- Added
WebAppServerPropsto theWebOrderMobilesample.
JavaScript Engine
- Added
psBtnCssClassproperty tocWebTabPageandcWebAccordionCard(BT: 7217). - Simplified names of floating panel CSS classnames.
- Added styles for
accordionpaneltoDf_Web_Creme. - Added styles for new controls to
Df_Flat_Touch&Df_Flat_Desktop.
JavaScript Engine 19.0.0.14
- Fixed pixel calculation issue in container sizing.
- Added assertion to
cWebCommandBarthat checks if the children are actually toolbars or menu bars.
JavaScript Engine 19.0.0.13
cWebList: Changed the found indicator duringLoadGridRowand events that it triggers (likeOnDefineTooltipandOnDefineRowCssClass). Note that you still shouldn't change the current record in the global buffer.- Improved error handling and display on server calls.
cWebMenuButton: AddedpbMenuShowIconsproperty.
JavaScript Engine 19.0.0.12
cWebColorForm: Ensured that clicking a color palette item updates the color in the form immediately.
JavaScript Engine 19.0.0.11
- Improved the DD Debug view to better handle diamond relations (BT: 7197).
- The
cWebColorFormcan now show the color in a rectangle to its left. - Updated styles for
cWebColorForm,cWebColorPicker,cWebCheckbox,cWebRadiounderDf_Flat_Touch. - Merged new accordion control (
cWebAccordionContainer&cWebAccordionCard).
JavaScript Engine 19.0.0.10
cWebSlider: Fixed bug wherepbRangestoppedOnChangefrom firing (BT: 7178).- When
pbOverrideStateOnShowisfalseand opening a view, it now always synchronizes the invoking view as well during the extra round-trip to load the view state from the client (BT: 7191). cWebGrid: Fixed generation of rowids on newly added rows for manual grids. A bug caused the row change to block withpbOfflineEditingset tofalse(BT: 7194).
JavaScript Engine 19.0.0.9
cWebActionMenu: Fixed the issue where items added directly to thecWebActionMenuwere not properly displayed on initialization (BT: 7174).- File Upload: Fixed the check for
psAcceptfilters to accept multiple dots in the file name (BT: 7175). cWebList/cWebGrid: Fixed an issue causing content to not be rendered if onlypiMinHeightis set (pbFillHeight = false,piHeight = 0).
JavaScript Engine 19.0.0.8
- Fixed the search feature of non-data-aware lists that wasn't working for numeric and date columns (BT: 7170).
JavaScript Engine 19.0.0.7
- Added missing
Forward Send End_Construct_Objectto classes usingcWebBaseMenu_mixin(BT: 7167). cWebCombo: Improved the filling logic that caused problems when being filled twice during the view load (BT: 7166).cWebColorPicker: ExtendedcWebColorPickerandcWebColorFormwith color palette logic and showing color as a tile instead of the entire background.cWebColumn_mixin: MarkedpiColumnas public as it is useful for makingOnManualLoadGridDatamore dynamic.cWebMenuButton: Fixed the disabling logic.- Changed initialization of WebApps so that running a single view in a page doesn't load the login dialog automatically. Now application logic should show the login dialog when needed.
- Improved behavior of
WebRadio&WebCheckboxcontrols in the designer. - Cleaned up improper control constructor definitions in the JavaScript.
JavaScript Engine 19.0.0.6
- Added new
CallBackprocedure tocWebObjectthat makes it simple to do an extra round-trip to update the user interface. Df_Windows_Like: Fixed list/grid header styles for multi-line rows.- Fixed bug preventing client-side event handlers from cancelling the server-side event to be triggered. Doing an
oEvent.stop()orreturn falsenow actually stops the event from being sent to the server. cWebBaseMenu: The property name mismatchpsServerOnItemClickis now corrected (it is now properly calledpsClientOnItemClick).- InfoBalloon: Fixed the destroy function causing a JavaScript crash when navigating forward to a view after it has been closed with a validation error displayed (BT: 7163).
- InfoBalloon: Improved the way the balloon hides itself so that it no longer blocks controls behind it.
Df_Flat_Touch&Df_Flat_Desktop: Updated the fonts to the latest version of the Lato font.
JavaScript Engine 19.0.0.5
- Added missing include statements for the new classes in
df-include.js(so they are included when running in debug mode). - Fixed a bug in the designer causing JavaScript errors when resizing the left panel while there is no center panel.
cWebCheckbox: Now allows custom styled checkboxes.Df_Flat_TouchandDf_Flat_Desktopthemes use this to improve the looks of the checkbox. Both themes also support the CSS classFlipSwitchthat transforms it into a mobile touch-style flip switch.cWebRadio: Now allows custom-styled radios.Df_Flat_TouchandDf_Flat_Desktopthemes use this to improve their looks.Df_Flat_TouchandDf_Flat_Desktopupdated how text colors are applied and added new focus styles forWebForm,WebComboandWebTreeView.
JavaScript Engine 19.0.0.4
cWebDateForm: Fixed issue whereOnChangewas not firing on iOS (BT: 7156).cWebMenuList: Added several setters as part of making the API public.cWebMenuButton: Added several missing setter methods so that properties can be changed at runtime.- The
cWebMenuListandcWebFloatingPanelclasses are now public and on the class palette. cWebSuggestionFormnow has thepbShowResultsproperty allowing it to be used for keypress event handling only while showing the suggestions/search results in a separate control.cWebListnow has aphoKeyBuddyproperty that can be set to make the list respond to keyboard operations on another control (cWebBaseUIObject).cWebColumnHighlight: New column type that highlights keywords.cWebColorPicker: New color picker control.cWebColorForm: Color picker in popup form.cWebWindow: Added several missing setter methods.
JavaScript Engine 19.0.0.3
cWebGroup: Fixed nesting issue showing the caption element on nested groups while it shouldn't (BT: 7136).- Changed Global.asa template to always include
PageScopedSession=Truefor new projects. This should reduce debugging issues when using file upload and download features. - Removed custom logic for relative URLs when sending AJAX calls as modern browsers handle this better. This also improves support for inclusion in other pages and usage of HTTPS.
- Improved the
ClientResizeprocedure ofcWebAppso that it enforces an extra resize on top of the one triggered by most operations. - Several improvements to sizing logic of controls and containers.
- Fixed "Attempt to run uncompiled expression" error with numeric fields on mobile (BT: 7117).
JavaScript Engine 19.0.0.2
- Added check to prevent recursive looping in case of an empty grid (BT: 7104).
- Removed assertion "Position x where you want label y is unreachable for the slider." from
cWebSlideras it would cause errors when dynamically changing labels andpiMaxValuewhen reinitializing a view. - New
pbAllowHtmlproperty oncWebBaseMenu_mixinthat can be used to allow usage of HTML inpsCaptionofcWebMenuItemobjects. - Fixed height calculation of the
cWebGroup, which didn't take the box model used on the container element into account (BT: 7105). - Fixed a bug in the
WebGridcausing clicking on empty rows below the data to not insert a new row if a "new row" was still selected (BT: 7107). cWebTreeView: Fixed a CSS bug for all themes butDf_Windows_Likecausing the expand/collapse icon to not display properly with only a single item at root level (BT: 7113).- Added
maximum-scaleto the viewport tag of theWebOrderMobileand new webapp template. This prevents zooming when changing orientation on iOS. - Extended
cCryptographerwithImportPlainTextKeyfunction to use plain text keys as opposed to derived keys. - Added explicit conversion to
StrJoinFromArrayto solve strange results when passing in a different type of array.