Mousemove on webpage breaks weblistbox

Been trying to figure this one out for some time. Not sure if its a bug or by design or newbie. Could someone confirm this finding for me.

Platform Windows
Browser chrome
Product WE (obviously as the chrome in the above line gave that away)

Example.

Create a blank webpage, add a listbox to it, in the shown event add some data eg

webpage.listbox.shown = self.addrow str(ticks)

run the prog , all is good in the world you can select items in the listbox.

Now, on the webpage add an event handler of mousemove, DO NOT ADD ANY CODE TO IT, just an empty event handler.

Run it now, hey presto!, you can not select anything in the listbox.

Can someone confirm this?
Dave

[quote=66847:@dave duke]Now, on the webpage add an event handler of mousemove, DO NOT ADD ANY CODE TO IT, just an empty event handler.

Run it now, hey presto!, you can not select anything in the listbox.

Can someone confirm this?[/quote]

I was able to reproduce this, and have no workaround to offer. MousDown creates the same problem. The only workaround would be not to use either :stuck_out_tongue:

Look for a feedback case. If there isn’t one you should probably file a bug report.

I wouldn’t use WebPage.MouseMove. Period. All it does is flood the server with MouseMove events. I think this event is pretty worthless.

I have not tried anything with MouseDown yet so can’t respond to that one.

Look at WebControl.ContextualMenuAction and apply the example. It displays a rather nice contextual menu upon right-click. No need to look for anything else :slight_smile:

And you can apply that by control, or to the entire page. Is it not great ? :slight_smile:

[quote=66847:@dave duke]Now, on the webpage add an event handler of mousemove, DO NOT ADD ANY CODE TO IT, just an empty event handler.

Run it now, hey presto!, you can not select anything in the listbox.[/quote]

I found a workaround : place a webCanvas as window background and add the MouseMove or MouseDown to it. It does not break the listbox select and you can populate these events :slight_smile:

Uh… How about going to the downloads page and grabbing it manually?

Questions:

  1. Where is the “memory leak” ? In the browser or in your app?
  2. This WebContainer. Is it dynamic or is it an instance on the WebPage?
  3. Re: Feedback - Since you’re a beta tester, please go to the beta channel and download the latest version. I’m curious if you’re having the crashing problem there.

For what it’s worth, I was able to add feedback to the Start screen by:

  1. Open the Start screen
  2. Click the Down arrow at the bottom of the window to reveal the full application list
  3. Right-click Feedback
  4. Click Pin to Start

Feedback launches just fine from there.

I just wrote a quick app to verify the no select bug and found the canvas workaround, but did not suspect you where after a dynamic help popping up when hovering objects.

I just completed a small test app where an invisible styled label pops up when the mouse hovers on objects which is what I understand you want to do. I did not use mousemove but simply placed the code in the object mouseenter and mouseexit.

Upon enter I render the label visible, and place it above the object which top and left I have. No need to know where the mouse is. Upon exit I render the label invisible again.

Sure, it may be a little more work to place code in each object, but it is not specific, so you can copy/paste the events. You could also create a method and simply change the text through call parameter.

[quote=67138:@dave duke]I just happened to be watching memory usage as I moved the mouse around, and just by moving the mouse on the web canvas it seems to be leaking memory, I have managed to leak over 500mb by just moving the mouse around on the (canvas) on the webpage. It’s leaking about 2mb a second constant mouse movement.
The code in the canvas on mouse move is just webcontainer.visible=false
Michel, do you get this in your test program?[/quote]

How do you measure memory usage ?

Mousemove is a huge traffic gobbler, as your programs needs to know where is the mouse at any instant. It may account for the problem.

What I did does not require it.

[code]Sub MouseEnter()
Label1.visible = True
Label1.Left = Me.left+Me.width/2-(Label1.Width/2)
Label1.top = me.top-Label1.Height-20
End Sub

Sub MouseExit()
Label1.visible = False
End Sub
[/code]