Skip to content
This repository has been archived by the owner on Dec 22, 2023. It is now read-only.

Releases: c-smile/sciter-js-sdk

4.4.8.34

28 Mar 01:56
Compare
Choose a tag to compare

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

15 Mar 03:40
Compare
Choose a tag to compare

4.4.8.33

Fixes:

New features:

    • [globalThis.]evalModule("module text"); - like eval("text") but "module text" is parsed by module rules;
    • [virtual-list] scrollBy(deltay) method;

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

23 Feb 03:19
Compare
Choose a tag to compare

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 and tripleclick 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

21 Feb 05:22
Compare
Choose a tag to compare

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, ...
  • 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 is 1.

4.4.8.29

14 Feb 02:18
Compare
Choose a tag to compare

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.
  • 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/