# Change Log ## 0.11.0 - Upgrade to glimmer 2.0.0 - Support Shine syntax for basic widgets (no support for table, tree, shapes, custom widgets, or custom shells) - Update samples to use Shine syntax ## 0.10.3 - Upgrade to glimmer 1.0.10 - Improvements to row_layout and grid_layout - Adding launch/shutdown class methods to Custom Shells ## 0.10.2 - Support multiple dialogs/message_box'es opened from a listener, handling correct ordering of display with a queue scheduler ## 0.10.1 - Delaying shell rendering till `#open` method is called as per the right expectation - When nesting dialogs on top of each other, disable all previously opened ones leaving only the top-most dialog active ## 0.10.0 - Hello, Dialog! Sample - Support `dialog` widget - Support `width` and `height` on `layout_data` for `row_layout` - Support `center` for `row_layout` ## 0.9.3 - Extracted pure Ruby Struct to pure-struct gem (since it's also used by YASL) - Alpha experimental incomplete implementation of Net::HTTP.post_form - Fixed issue with not being able to interact with a shell proxy (LatestShellProxy) after opening (made class autoupgradable to attached ShellProxy after document ready) ## 0.9.2 - Fixed issue with opening message_box after internalizing the Document.ready? block - Fixed issue with replacing newlines with HTML newlines in `label` and `message_box` text ## 0.9.1 - Log errors to error stream ($stderr) instead of standard out (STDOUT) - Fixed issue with opening shell caused by internalizing the Document.ready? block ## 0.9.0 - Support `menu_bar` - Hello, Menu Bar! Sample - Remove the need to call Document.ready? before opening a Glimmer shell - Support opening a message_box before creating a shell ## 0.8.0 - Hello, Pop Up Context Menu! Sample - Hello Message Box! - Update hello list samples - Support context menus `menu`/`menu_item` directly under a widget (using jQuery UI) - Support generating new lines when entering `label` `text` with \n (auto-converting to
) - Support generating new lines when entering `message_box` `message` with \n (auto-converting to
) - Support having any widget contribute static CSS to ShellProxy - Add Kernel#include_package shim to allow running JRuby include_package from Glimmer DSL for SWT without failing - Add WidgetProxy#swt_widget to allow running include_package from Glimmer DSL for SWT without failing ## 0.7.5 - Update login sample from Glimmer DSL for SWT's latest changes - Update contact_manager sample from Glimmer DSL for SWT's latest changes - Fixed issue regarding unavailable localStorage data when accessed by custom_widget_expression in hello_checkbox_group, hello_radio_group, and hello_custom_widget ## 0.7.4 - Hello, Button! Sample - Fix issue with aligning label as :left, :center, or :right via style style when fill_layout is used - Fix Hello, Browser sample by accessing https ssl website - Fix issue with filling space horizontally when using grid layout - Fix broken embedded `calendar` widget data-binding for hello_date_time.rb sample - Fix broken message_box after opening multiple shells - Fix issue with opening custom shells in new tabs/windows when CustomShell subclass is required conditionally ## 0.7.3 - Refactor to use to_collection gem - Fix issue with breaking `date`/`date_drop_down` data-binding as table editor on focus lost - Fix issue with requiring OS, File, and Display class after they've been extracted out ## 0.7.2 - `date_drop_down` `table_column` `editor` - `date` `table_column` `editor` - `time` `table_column` `editor` - Implement `on_focus_gained`, `on_focus_lost` universally on all widgets - Add support for Struct keyword_init to Opal - Fix issue with hello_table button/combo not being centered (yet stretched) - Fix issue with table item selection for booking not working after editing has been added - Fix escape keyboard event handling for combo table editor ## 0.7.1 - Combo table editor (enabled in Hello, Table! sample) - Fix issue with table cell selection for editing not working - Remove widget from parent upon dispose - Remove listeners upon widget dispose ## 0.7.0 - Hello, Table! Sample - `table` :editable style to enable auto-editing - `table` `header_visible` property to hide header when false - `table` `item_count` property to set minimum item count (fill empty rows when below in table items) - `table` selection data-binding - `table` built-in sorting support - `table_column` left text alignment and padding of 5px by default - `table` sort property and direction in GUI - `table_column` sort_property - `table_column` sort_by block - `table_column` sort block - `table` default sort via property, compare block, and property block - `table` additional sort properties - Prevent `table` unnecessary updates by comparing data to previous data and not updating when it's the same - Contact Manager sample support for on_key_pressed in text widgets upon hitting ENTER - Fix issue with edit table item error on sorting table ## 0.6.1 - Fix issue with rendering date_time without a block - Made listener event handling async to improve performance when triggering multiple events - Brought Tic Tac Toe sample up-to-date with changes in Glimmer DSL for SWT - Fixed silent error encountered in rendering custom widgets ## 0.6.0 - Hello, Date Time! Sample - Support `date_time`, `date`, `date_drop_down`, `time`, `calendar` keywords - Format Date/Time correctly as per SWT implementation by default - Make glimmer-dsl-opal gem into a Rails engine to support importing default static assets like CSS styles and images - Show drop down icon next to `date_drop_down` and `time` ## 0.5.1 - Fixed issue with Hello, Combo!, Hello, List...! samples ## 0.5.0 - Add `margin_top`, `margin_right`, `margin_bottom`, and `margin_left` to RowLayoutProxy - `radio` - Hello, Radio! Sample - `radio_group` - Hello, Radio Group! Sample - `checkbox` - Hello, Checkbox! Sample - `checkbox_group` - Fix issue with `label` `alignment` property - Fix issues with default `composite` `grid_layout` not getting its styles removed when setting `row_layout` - `button(:radio)` alias for `radio` - `check` alias for `checkbox` - `button(:check)` alias for `checkbox` - Hello, Group! Sample - Group widget ## 0.4.0 - Support `display` keyword representing an SWT Display - Support display `on_swt_keydown` event listener (display-wide widget observer) - Support `DisplayProxy#shells` method keeping track of open shell - Make a custom shell open in the same window if there is no shell open already - Support `sync_exec` keyword as just an alias to `async_exec` - Provide a makeshift require for 'glimmer-dsl-swt' that requires 'glimmer-dsl-opal' instead - Fake APIs on the web for OS.os?, File.read, Display.setAppName, Display.setAppVersion - Provide a minimal URI class that supports URI::encode_www_form_component and URI::decode_www_form_component from Ruby ## 0.3.0 - Support opening a custom shell in a browser tab/window by passing in query parameters to URL (e.g. ?custom_shell=keyword+option1=value1 etc...) - Make custom shells automatically open in a new tab/window (while standard shells continue to open in the same window by replacing its content) - Hello, Custom Shell! Sample ## 0.2.0 - Color support - Font support - Custom Widget Support - Hello, Custom Widget! sample - Updated Hello, Combo! sample to match the latest changes in Glimmer DSL for SWT - `SWT` full re-implementation in Opal as `Glimmer::SWT` with all the `SWT` style constants ## 0.1.0 - Code redesign to better match the glimmer-dsl-swt APIs - opal-jquery refactoring - opal-rspec test coverage ## 0.0.9 - Upgraded to glimmer gem v0.9.3 - Fixed issue with missing Glimmer::Opal::ElementProxy#id=(value) method breaking Contact Manager sample Find feature ## 0.0.8 - Contact Manager sample support ## 0.0.7 - Tic Tac Toe sample support - Login sample support ## 0.0.6 - Hello, Tab! sample support ## 0.0.5 - Hello, Browser! sample support ## 0.0.4 - Hello, List Single Selection! sample support - Hello, List Multi Selection! sample support ## 0.0.3 - Hello, Computed! sample support ## 0.0.2 - Hello, Combo! sample support ## 0.0.1 - Initial support for webifying Glimmer SWT apps - Support for Shell and Label widgets (text property only). - Hello, World! sample support