=== modified file 'src/com/goldencode/p2j/ui/client/gui/EditorGuiImpl.java' --- src/com/goldencode/p2j/ui/client/gui/EditorGuiImpl.java 2016-02-16 20:45:37 +0000 +++ src/com/goldencode/p2j/ui/client/gui/EditorGuiImpl.java 2016-03-03 16:07:52 +0000 @@ -1344,10 +1344,14 @@ { Widget src = super.findMouseSource(p); - return (src == editor || src == contentPane || this == src.parent(EditorGuiImpl.class)) ? - this : src; + // Exclude the mouse source component if it is unregistered ~ it have no id. (editor) + if (src == null || src.getId() == null) + { + return null; + } + + return (src == contentPane) ? this : src; } - /** * Get the widget's actual bounds === modified file 'src/com/goldencode/p2j/ui/client/gui/driver/web/WebMouseHandler.java' --- src/com/goldencode/p2j/ui/client/gui/driver/web/WebMouseHandler.java 2016-01-04 08:14:16 +0000 +++ src/com/goldencode/p2j/ui/client/gui/driver/web/WebMouseHandler.java 2016-03-03 04:54:26 +0000 @@ -63,7 +63,7 @@ } else { - Widget editor = WidgetRegistry.findAncestor(w, EditorGuiImpl.class); + Widget editor = WidgetRegistry.findAncestor(target, EditorGuiImpl.class); if (editor != null && editor.getId() != null) { widgetId = editor.getId().asInt(); === modified file 'src/com/goldencode/p2j/ui/client/widget/AbstractContainer.java' --- src/com/goldencode/p2j/ui/client/widget/AbstractContainer.java 2016-02-10 19:24:23 +0000 +++ src/com/goldencode/p2j/ui/client/widget/AbstractContainer.java 2016-03-03 04:53:51 +0000 @@ -361,8 +361,7 @@ continue; } - return (found != null && found.getId() != null) ? found : - (w.getId() == null ? null : w); + return (found == null) ? w : found; } return null;