Releases: c-smile/sciter-js-sdk
4.4.8.34
4.4.8.34
Fixes:
- [performance] 0x7FFF cap on length of paragraph text. This means that paragraphs cannot have more characters than 32767. HTML parser breaks text on multiple paragraphs if input exceeds that number.
- [windows,osx] fix of compound emoji handling in editors.
- Fix of https://sciter.com/forums/topic/sys-fs-splitpath-doesnt-work-as-expected/ ;
- [virtual-list] mousewheel adjustments;
- fix of https://sciter.com/forums/topic/selectable-div-context-menu-bug/;
- optional delaying setting focus() to after measure (performance);
- fix of AV on broken Windows machines that cannot create layered popup Direct2D windows;
- removal of redundant debugging printout;
- [Windows]
Event.keyState()
fix; NUMPAD ENTER
fix;
New features:
- [API, pre 5.x.x.x], purpose of these two functions is to support non-C/C++ integrations.
SciterExec()
- application methods/commands;SciterWindowExec()
- window methods/commands;
- [css,JS] "multi-entry aspects" - aspect functions that have
aspect.detached()
method are detachable. see: samples/css++/aspect.htm and sdk.js/samples.css/css++/aspect.htm
4.4.8.33
4.4.8.33
Fixes:
import "module"
->import "module.js"
substitution fix;- Fix of https://sciter.com/forums/topic/style-set-specificity-breaking-change/ ;
- [reactor]
<div state-html={...} />
update optimization; - [CSS]
attr(window-frame): "...";
fix;
New features:
-
[globalThis.]evalModule("module text");
- likeeval("text")
but "module text" is parsed by module rules;
-
- [virtual-list]
scrollBy(deltay)
method;
- [virtual-list]
4.4.8.32
Fixes:
<input|time no-seconds />
fix.- fix of positioned double painting: https://sciter.com/forums/topic/problem-with-4-4-8-30/
parseValue()
support of BigInt's- SDK sdk[.js]/include/value.h VALUE::T_CURRENCY is renamed to VALUE::T_BIG_INT - that allows to pass int64 from native code to JS as BigInt value.
- [windows] fix of 1px border around maximized window;
- [macos] navigation shortcuts (CMD+LEFT/RIGHT, OPTION+UP/DOWN etc.)
- behavior:selection fix;
- Skia backend, fix of bitmap_graphics, text rendering.
flow:horizontal;
layout fix;@media width > 600px {...}
;
4.4.8.31
New features:
- new sample samples.sciter/immediate-mode-painting/pie-chart.htm - circular progress indicator.
Demonstrates use of units with Graphics;
Fixes:
- [JS++]fix of angle literals parsing, like const s = 90deg;
- [MacOS] fix of
doubleclick
andtripleclick
event generation; - [MacOS] fix of AV in spellcheck functionality;
- [a11y] fix of aria-labeledby handling;
- [CSS] fix of rules application ordering;
Sciter.parseValue()
fix of error generation on erroneous inputs;
4.4.8.30
New features:
-
JS extended by Length, Duration and Angle units.
ES2017 introduced numbers with units already, like BigInt:
const maxSafeInteger = 9007199254740991n;
This version adds more number units:
- lengths:
100px
,12pt
,1em
, ... - durations:
20ms
,2s
- angles:
90deg
,0.5rad
,1turn
, ...
- lengths:
-
sciter.parseValue(string): any
That's "JSON++" parser - parses the string using JSON extended by CSS syntax rules, this is valid JSON++ format:
// Note: comments are supported in JSON++: { date: 2020-10-11; // date literal width: 200px; // length literal; number: 42; // guess what? // Note: names may have '-' in them array-plain: [1,2,3,4]; // plain JS array array-list: 1 2 3 4, 5 6 7 8; // JS [[1,2,3,4],[5,6,7,8]] // name tokens are parsed to strings: foo: incredible; // JSON eq. "foo": "incredible" }
-
Event.platformKeyCode
- reports native key code like wParam in WM_KEYDOWN on Windows. -
physicalDevicePixelRatio
- [MacOS] "retina" pixel ratio, on other platforms it is1
.
4.4.8.29
New features:
-
css selectors:
:last-of-type
,:first-of-type
,:only-of-type
-
[JS] implementation of
-
console.assert(expr,fmt, ...)
console.assert(expr,{fields...})
Note that in Sciter
console.assert
throws error if expr is falsy - in browsers console.assert() just prints stuff to console. -
- sdk.js/widgets/tabs/ sample - that
<tabs>
thing.
- sdk.js/widgets/tabs/ sample - that
-
Experimental support of system menus:
<menu role="window-menu"> <li>File <menu> <li accesskey="^N">New</li> <li accesskey="^O">Open</li> <hr/> <li accesskey="Q">Quit</li> </menu> </li> ... </menu>
On Windows this creates native menu bar in the window. On MacOS it populates application menu bar. On Linux - not ready yet.
Note for window-frame != "standard" the menu is invisible but still makes sense as global hotkeys table.
For the demo see integration project in SDK.
Fixes:
- Fix of
KeyboardEvent.code
values to generaly match W3C specification; - Fix of functions taking varargs, like
@env.exec(...)
,printf(fmt,...)
and others; - Fix of mouse reactivity in regard
:hover
styles. - Fix of stack overflow in style-set: "..." applying roots with appearance:none.
- Fix of position:relative inside position:absolute, see: https://sciter.com/forums/topic/css-position-issue/