Skip to content

Commit 8f7589b

Browse files
committed
Fix mouse events (for wheel)
1 parent 4e4d2fb commit 8f7589b

File tree

2 files changed

+17
-4
lines changed

2 files changed

+17
-4
lines changed

haxe/ui/backend/ComponentBase.hx

Lines changed: 16 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -334,16 +334,23 @@ class ComponentBase {
334334
//***********************************************************************************************************
335335
// Events
336336
//***********************************************************************************************************
337+
private var hasMouseMove:Bool = false;
337338
private function mapEvent(type:String, listener:UIEvent->Void) {
338339
switch (type) {
339340
case MouseEvent.MOUSE_OVER:
340341
if (_eventMap.exists(MouseEvent.MOUSE_OVER) == false) {
341-
Mouse.get().notify(null, null, __onMouseMove, null);
342+
if (hasMouseMove == false) {
343+
Mouse.get().notify(null, null, __onMouseMove, null);
344+
hasMouseMove = true;
345+
}
342346
_eventMap.set(MouseEvent.MOUSE_OVER, listener);
343347
}
344348
case MouseEvent.MOUSE_OUT:
345349
if (_eventMap.exists(MouseEvent.MOUSE_OUT) == false) {
346-
//Mouse.get().notify(null, null, __onMouseMove, null);
350+
if (hasMouseMove == false) {
351+
Mouse.get().notify(null, null, __onMouseMove, null);
352+
hasMouseMove = true;
353+
}
347354
_eventMap.set(MouseEvent.MOUSE_OUT, listener);
348355
}
349356

@@ -361,6 +368,10 @@ class ComponentBase {
361368
case MouseEvent.MOUSE_WHEEL:
362369
if (!_eventMap.exists(MouseEvent.MOUSE_WHEEL)) {
363370
Mouse.get().notify(null, null, null, __onMouseWheel, null);
371+
if (hasMouseMove == false) {
372+
Mouse.get().notify(null, null, __onMouseMove, null);
373+
hasMouseMove = true;
374+
}
364375
_eventMap.set(MouseEvent.MOUSE_WHEEL, listener);
365376
}
366377
case MouseEvent.CLICK:
@@ -381,7 +392,6 @@ class ComponentBase {
381392
}
382393

383394
private function unmapEvent(type:String, listener:UIEvent->Void) {
384-
385395
}
386396

387397
private var _mouseOverFlag:Bool = false;
@@ -465,13 +475,16 @@ class ComponentBase {
465475
}
466476

467477
private function __onMouseWheel(delta: Int) {
478+
trace("mouse wheel");
468479
var fn = _eventMap.get(MouseEvent.MOUSE_WHEEL);
469480

470481
if (fn == null) {
482+
trace("nope");
471483
return;
472484
}
473485

474486
if (!inBounds(lastMouseX, lastMouseY)) {
487+
trace("nope2");
475488
return;
476489
}
477490

haxe/ui/backend/kha/StyleHelper.hx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -160,7 +160,7 @@ class StyleHelper {
160160
if (dropShadow.inner == true) {
161161
drawShadow(g, dropShadow.color, x, y, w, h, Std.int(dropShadow.distance), dropShadow.inner);
162162
} else {
163-
drawShadow(g, dropShadow.color, orgX - 1, orgY, orgW, orgH, Std.int(dropShadow.distance), dropShadow.inner);
163+
drawShadow(g, dropShadow.color, orgX - 1, orgY - 1, orgW, orgH, Std.int(dropShadow.distance), dropShadow.inner);
164164
}
165165
}
166166
}

0 commit comments

Comments
 (0)