On 16/01/2021 17:37, Philip Gladstone wrote:

I'm the author of pskreporter.info and I'm trying to work out why it doesn't 
work in seamonkey. The root cause appears to be that pointermove events are not 
being delivered to the application.

In particular, the following test demonstrates the difference between firefox 
and seamonkey

* Go to https://pskreporter.info/pskmapn?hhhh
* After the page loads, open the developer tools and set in the console 
'disable_timers = 1' and then wait a couple of seconds.
* Now press break in the source debugger. It should break on the next event
* Now move the mouse into the map area and observe that it does not break.
* Clicking on the + or - in the top left corner will trigger a break.

SM 2.53.5.1 Linux x86; NoScript 5.1.9.

I loaded the site and enabled JS for pskreporter.info, cdn.polyfill.io, cdn.jsdelivr.net, unpkg.com, ajax.googleapis.com, and bootstrapcdn.com. Now there's a world map with day/night overlay and lots of pins. In the map area, only the +/- and the copyright links are abinding gives this ctive. The count of reception records at the bottom of the page increments continually.

Following steps 2-4, I get a break on step 3 at map_control_oln.js:4363 (repeatably). Step 4 is as you say. Step 5: no break.

In Chrome, you can figure out that it is this element that has the pointermove 
event handler:
<div class="ol-viewport" style="position: relative; overflow: hidden; width: 100%; 
height: 100%;">...

However I can't tell where the event handler is in seamonkey.
...

In the Inspector tab of the SM dev tools, you should see a little "ev" in a black-filled box after each element that has any attached event handler.

For me, the same element shows the pointermove event handler as

function(t) {
  this.originalPointerMoveEvent_ = t;
  var e = !(!this.down_ || !this.isMoving_(t));
  this.dispatchEvent(new Da(t.type, this.map_, t, e))
}

If I run the minified ol.js through beautifier.io I find this at line 14776:
                }, e.prototype.relayEvent_ = function(t) {
                    this.originalPointerMoveEvent_ = t;
                    ...

As you say, the event is obviously not being delivered: maybe some this is not being bound as expected or some issue with preventDefault?

HTH

/df

--
London
UK
_______________________________________________
support-seamonkey mailing list
[email protected]
https://lists.mozilla.org/listinfo/support-seamonkey

Reply via email to