- Added automatic plugin updater.
- Expanded tooltip API
API
- Renamed
getInlineStyle()togetStyle()to better reflect browser APIs. - Fixed invalid links in Javadoc.
- Updated
NodeFlag.TOOLTIPjavadoc. - Added
TagNames.TOOLTIPconstant.
General
- Added
tooltipevent for when an element's tooltip element is changed. - Added default styling for disabled
buttonelements. - Can now load tooltips from XML by setting
role="tooltip"on an element. - Improved tooltip handling.
- Changed
tooltipelement default styling to have white text and slightly thicker borders. - Added info that was missing from
/delphi debug dump-pagecommand output. - Fixed tooltip flicker.
- Fixed an issue where either an element's
widthorflex-basiswould become negative - Fixed how Delphi detects what element you're hovering over.
- Fixed some render elements not being cleaned up and removed when their DOM element was removed.
- Removed unused
scrollevent (Impossible to support given how Minecraft's client and server communication works)
Devtools
- Added "Box" tab to devtools, it lets you view the box model of a selected element, showing you the margin, outline, padding, size, inner size and position of an element.
- Added ability to scroll through a page's XML in the element tree tab, instead of just being limited to the first 23 lines.
- Center tab names in devtools.
- Devtools, style tab can now disable/enable individual styles.
- Added ability to force
:hoverand:activestates for selected elements in Styles tab. - Added ability to modify an element's inline style in the Styles tab.
- Added highlighting when hovering over elements in the Elements tab. (Highlights appear on the page the devtools is for)
- Fixed issue loading the styles tab when variables were used in the CSS.
- Fixed styles tab not resetting when changing to other tab or page.
CSS Engine
- Fixed some errors with parsing nested selectors and properties.
- Fixed
margin-inline-endbeing used as the value formargin-inline-start. - Fixed incorrect class selector testing.
- Fixed
inline-flexnot using FlexBox layout lol. - Fixed broken styles after modifying inline style of an element before said element was appended to the document tree.
- Add
inline-flexas a keyword fordisplay - Add a basic "Styles" tab to Devtools.
- Fix an error with cancellable events.
- Correctly update element outline and border when changing style.
- Updated Style API.
- Fix visual twitch with italic or bold text.
- Fix min/max size CSS properties not doing anything.
- Missing semicolons in CSS will be treated as warnings instead of errors.
- Improve element tooltip handling
- Add commands for managing an open page's viewers
- Use
delphi.commands.devtoolsas permission for devtools command - Add default styling for
<sup>and<sub>elements.
Changes
- Add FlexBox support
- Move layout engine to its own module
- Refactor layout engine
- Added
vertical-alignCSS property. - Added
flex-growCSS property - Added
flex-shrinkCSS property. - Added
gapCSS property. - Added
row-gapandcolumn-gapCSS properties. - Added
align-selfCSS property - When performing math operations with
pxunits, convert them to world units before calculation. - Fix wrong input type used when checking if input should be validated as number.
- Added bStats metrics support
- Fixed a tooltip graphical issue
- Properly update depth and things when calling
setTitleNode()
Additions
- Replace Bukkit's conversations for input elements with new Dialogs
- Added
getSource()method to stylesheets - Added
/delphi devtoolsand/delphi devtools <menu name>for opening devtools easily
Changes
- Add support for
promptattribute on<input/>elements - Update translations
- Add translations support to devtools
- Made
inputevent cancellable - Update devtools
Fixes
- Fix wrong method call that resulted in NPE in
ViewBuilderImpl
- Remove very inconvenient
scripting.propertiesfile required for enabling JS support. - Fix
!importantnot parsing in CSS - Add
flex-basisproperty for future Flexbox implementation
Main Changes
- Added JavaScript support with GraalVM's Polyglot (GraalVM itself is not required)
- Added
<canvas>which allows developers to draw images - Switched to new XML parser for more lenient, HTML-like parsing, even the most malformed XML should now be parsed
- Added support for custom DOM events
- Integrated Scheduler API into JS
- Added color functions to JS
- Optimize canvas elements to use the fewest number of entities possible
Bug Fixes
- Fix the
Color.hsvafunction being completely broken - Don't print attribute values of attributes no-value attributes and properly escape attribute values
- Fix the area between pixels of Canvas elements flickering
- Fix plugin messages not being correctly translated
- Fix issue with event listeners
- Fix weird twitch with text nodes when their content changed



