Version 2.3

released on March 24, 2015

Breaking changes

  • Default parse format is changed for datepicker and calendar controls from "%Y-%m-%d" to "%Y-%m-%d %H:%i". Both of them can be altered within current locale.

  • Sizing of layouts changed. In Webix 2.2 and earlier height and width on layout didn't include padding and margins. Starting from Webix 2.3 height and width of layout is a full size of layout, including all margins and paddings.

Check migration guide for more details.

New features

  • new material skin
  • [pro] barcode widget
  • [pro] organogram widget
  • [pro] multiselect and datepicker filters to Pivot
  • [pro] header sorting and value formatting in Pivot
  • [pro] processing of equal file names in File Manager
  • [pro] file upload for IE9 in File Manager
  • onChange event for toolbar and form to capture user changes
  • onValues event for toolbar and form
  • getMenu method for menu to get current menu/submenu object
  • parseTimeFormat is added as "%H:%i" by default to parse "time" strings
  • badges and icons for list and menus (and views based on them)
  • badges for buttons
  • placeholder for richselect
  • spacer element in menu view
  • ability to provide submenu configuration in submenuConfig property of the topmost menu
  • ability to trigger onReady in a synchronous way
  • "Today" and "Clear" buttons are added to the date editor. They are hidden by default.
  • editor object can receive full data item

Updates

  • DataCollection has getCursor and setCursor methods by default
  • second click on a button with popup property will close the popup
  • autoConfig can be reused for datatable, e.g. after clearAll() call
  • $touchCapture flag in component configuration for touch limited mode. Used for slider control.
  • before sending to server side all dates are serialized
  • error handlers of webix.remote calls will receive the text of response
  • treestore has ability to serialize all data or filtered one
  • scrollable "Month" view in Scheduler
  • better default styling, ability to customize layout configuration

Fixes

  • fix regression in data loader initialization
  • correct values for onChange event in slider
  • using TreeDataLoader instead of DataLoader
  • unfiltering to affect not filtered view
  • getActiveId() for empty carousel
  • correct rendering of buttons after changing visibility state
  • removeView() to remove related value from form values
  • onChange event in form triggers only on edit operations in form
  • readonly mode for datepicker and colorpicker
  • onChange event for slider
  • using template.escape with null or undefined values
  • key navigation in empty combo
  • incorrect adding of hidden views in accordion
  • using quotas in button's text
  • onChange handlers for text and select controls used as ActiveContent
  • tooltip for inputs, progress in IE8
  • x-scroll in tree
  • tree horizontal scroll
  • borders in top level (and borderless) space layout
  • using removeView() to remove current view in the multiview
  • special chars handling in text inputs
  • progress bar positioning (scrolling offset for "icon" type only)
  • top and bottom positioning
  • layout uses fixed height and width without alterations
  • recurring editStop() calls
  • tree horizontal scroll
  • slider fix for Touch in limited mode
  • webix.ajax(url) call returns promise
  • promiz will not occur if error was caught
  • promiz throws an error only in debug version
  • fonts for compact skin
  • hiding columns with colspan
  • clipboard breaks focus in the editor
  • dynamic loading on touch devices
  • scrolling to the last row index in case of scroll overflow
  • IE8 fixes: preventing default actions and mouse event handling
  • hiding columns with colspan
  • regression in skin mapping
  • borders in datatable when Bootstrap used
  • clipboard breaks focus in the editor
  • drag-n-drop for columns in the datatable, header with colspans
  • dynamic loading on touch devices
  • fixing promiz functionality which can export self to external structure when global "module" is defined
  • maximum tab number calculation
  • TreeStore: each method and filtered branches
  • applying new configuration after config reloading in datatable
  • tabs rendering (border-box sizing)
  • multiselect ignores non-existing values
  • set optionHeight for skins
  • checkAll() and uncheckAll() methods
  • configuration of richselect with options from HTML
  • inputHeight in case of labelPosition top
  • tree ignores open call for already opened items
  • regression in getValue() of colorpicker
  • attribute checking in block-selection for datatable
  • value property in tabview
  • fixed data throttle usage
  • Date serialization during ajax operations
  • resetting uploader after file choosing
  • focusing checkbox editor in Chrome
  • disabled counter in IE10
  • options with quote in Multiselect
  • regression in getValue of colorpicker
  • resetting text filter value after reloading data from the server side
  • filters in treestore
  • autoheight in templates
  • tabbar "more" icon styling
  • block selection and custom scroll
  • block selecting and dbl-click events
  • block selection in scrolled state
  • block selection in the empty datatable
  • getValue(), "editable" value
  • setLocale() and arrays extend
  • setValue() and getValue() of datepicker
  • setLocale() extend for complex properties
  • remove icons from Scheduler calendars
  • timepicker position
  • FileManager locale: confirmation popups; collisions resolving without url handler
  • conflicts between native navigation keys and navigation hotkeys
  • server side filter reacts on navigation keys
  • object id for gridsuggest
  • solve request collisions (delete+rename/move/create)
  • createFolder for fileManager
  • default hotkeys for windows
  • treestore serialize (filtering)
  • moving items in tree and tree table while in the filtered state
  • missed methods in TreeCollection
  • "format" of datepicker and filemanager fixes
  • processing setState with empty filter value
  • select filter in FF
  • regression in click handling inside of multi-level popup
  • incorrect filter processing during setState call
Back to top