                             widget.trigger("focus")
                             self.focusedWidget = widget
                         }
-                        
-                        handled = true
                     } else {
                         widget.trigger("focus")
                         self.focusedWidget = widget
-                        
-                        handled = true
                     }
+                    
+                    handled = true
+                    break
                 }
             }
         }

        return handled
    }
    
    override public func touchesEnded(touches: Set<UITouch>, withEvent event: UIEvent?) {
        self.widgetTouchesEnded(touches, withEvent: event)
    }
}
        }
        
        return handled
    }
    
    public func widgetTouchesMoved(touches: Set<UITouch>, withEvent event: UIEvent?) -> Bool {
