HTML5 deployment
hh
hh at hyperhh.de
Sat Feb 1 09:38:42 EST 2020
* There are some things relating 1 & 2 one could think about:
Start with mouseEvents (incl. wheel) and modifier keys.
Then one could use native fields so that the browser does the keyboard job
and executes all shortcuts for fields.
To get/set field values is easy. A native styled field is also possible
(see my demo at hyperhh.de/html5).
My technique is to use ordinary LC fields, hide these (and optionally use
them as container). Then adjust the native field rects to these hidden field
rects in the movestack/resizestack handlers.
* For 3 it would be enough to define ONE 'window'/canvas of id 'menu' for the
menus with a z-level of say 23121950 and similarly define ONE 'window'/canvas
for the tooltips of id 'tooltip' with a z-level of say 23121949.
That implies: do NOT create a new window for each menu/tooltip.
Probably function createWindow in em-dc.js needs a switch for that (I could
not find out where this method is called for menus/tooltips).
Then insert the two lines
canvas.classList.add('lcStack');
canvas.id('stack_'+tWindowID);
after current line 128 of em-dc.js, so one has several methods to get stack
objects.
* For 4 one could use the lib I use for htmlPlayer. This needs jQuery but it
is the only one I've found that works with LC-menus. I added a short script
to put stacks into a panel.
> Sean wrote:
> em-event.js is the one for 1 & 2 causing the problem mainly because of its
> use of now deprecated event handlers. That's what I am working on right
> now.
>
> em-dc, em-nativeLayer and em-surface are what is likely to do with 3 & 4.
> Maybe also em-preamble-overlay.js.
>
> em-clipboard obviously may have some relevance to the clipboard issue but
> I'm working on the assumption first it is more likely just a keyboard/input
> event issue.
>
> > Hermann wrote:
> > 1. *Full* keyboard and mouse (incl. wheel) support.
> >
> > 2. Support for usual field shortcuts (selectAll, copy, cut, paste,
> > undo) and rawkey handlers.
> >
> > 3. Improve the canvas generation:
> >
> > Currently LC generates canvases for stacks, tooltips and
> > menus that are without querying windowIDs for all stacks
> > undistinguishable. Often menus and tooltips are hidden by stacks:
> >
> > 3a. Menus need to have an own fixed (very high) z-level,
> > 3b. Tooltips need to have an own fixed (very high) z-level,
> > 3c. Stacks need an own class for easier access in DOM.
> >
> > 4. Add a draggable, resizable windowing system (adding titlebar,
> > decorations) with automatic layering (z-levels).
More information about the use-livecode
mailing list