--- a/web/res/metadataplayer/Trace.js Tue Dec 18 17:16:26 2012 +0100
+++ b/web/res/metadataplayer/Trace.js Wed Dec 19 16:52:21 2012 +0100
@@ -16,22 +16,11 @@
}
IriSP.Widgets.Trace.prototype.draw = function() {
- this.lastEvent = "";
if (typeof window.tracemanager === "undefined") {
console.log("Tracemanager not found");
return;
}
var _this = this,
- _mdplisteners = {
- "search.open" : 0,
- "search.closed" : 0,
- "search" : 0,
- "search.cleared" : 0,
- "search.matchFound" : 0,
- "search.noMatchFound" : 0,
- "search.triggeredSearch" : 0,
- "TraceWidget.MouseEvents" : 0
- }
_medialisteners = {
"play" : 0,
"pause" : 0,
@@ -39,17 +28,8 @@
"seeked" : 0,
"play" : 0,
"pause" : 0,
- "timeupdate" : 2000
+ "timeupdate" : 10000
};
- IriSP._(_mdplisteners).each(function(_ms, _listener) {
- var _f = function(_arg) {
- _this.eventHandler(_listener, _arg);
- }
- if (_ms) {
- _f = IriSP._.throttle(_f, _ms);
- }
- _this.onMdpEvent(_listener, _f);
- });
IriSP._(_medialisteners).each(function(_ms, _listener) {
var _f = function(_arg) {
_this.eventHandler(_listener, _arg);
@@ -74,10 +54,10 @@
this.tracer.trace("TraceWidgetInit", {});
this.mouseLocation = '';
- IriSP.jQuery(".Ldt-Widget").on("click mouseover mouseout", ".Ldt-TraceMe", function(_e) {
+ IriSP.jQuery(".Ldt-Widget").on("click mouseenter mouseleave", ".Ldt-TraceMe", function(_e) {
var _target = IriSP.jQuery(this);
- var _widget = IriSP.jQuery(this).attr("widget-type"),
+ var _widget = _target.attr("widget-type") || _target.parents(".Ldt-Widget").attr("widget-type"),
_data = {
"type": _e.type,
"x": _e.clientX,
@@ -88,42 +68,16 @@
_class = _targetEl.className,
_name = _targetEl.localName,
_id = _targetEl.id,
- _value = _targetEl.value,
- _traceInfo = _target.attr("trace-info"),
- _lastTarget = _name + (_id && _id.length ? '#' + IriSP.jqEscape(_id) : '') + (_class && _class.length ? ('.' + IriSP.jqEscape(_class).replace(/\s/g,'.')).replace(/\.Ldt-(Widget|TraceMe)/g,'') : '');
- _data.target = _lastTarget
- if (typeof _traceInfo == "string" && _traceInfo.length) {
+ _value = _target.val(),
+ _traceInfo = _target.attr("trace-info");
+ _data.target = _name + (_id && _id.length ? '#' + IriSP.jqEscape(_id) : '') + (_class && _class.length ? ('.' + IriSP.jqEscape(_class).replace(/\s/g,'.')).replace(/\.Ldt-(Widget|TraceMe)/g,'') : '');
+ if (typeof _traceInfo == "string" && _traceInfo) {
_data.traceInfo = _traceInfo;
- _lastTarget += ( ";" + _traceInfo );
}
if (typeof _value == "string" && _value.length) {
_data.value = _value;
}
- switch(_e.type) {
- case "mouseover":
- if (_this.lastTarget != _lastTarget) {
- _this.player.trigger('TraceWidget.MouseEvents', _data);
- } else {
- if (typeof _this.moTimeout != "undefined") {
- clearTimeout(_this.moTimeout);
- _this.moTimeout = undefined;
- }
- }
- break;
- case "mouseout":
- if (typeof _this.moTimeout != "undefined") {
- clearTimeout(_this.moTimeout);
- }
- _this.moTimeout = setTimeout(function() {
- if (_lastTarget != _this.lastTarget) {
- _this.player.trigger('TraceWidget.MouseEvents', _data);
- }
- },100);
- break;
- default:
- _this.player.trigger('TraceWidget.MouseEvents', _data);
- }
- _this.lastTarget = _lastTarget;
+ _this.eventHandler('UIEvent', _data);
});
}
@@ -136,7 +90,7 @@
_arg = {}
}
switch(_listener) {
- case 'IriSP.TraceWidget.MouseEvents':
+ case 'UIEvent':
_traceName += _arg.widget + '_' + _arg.type;
delete _arg.widget;
delete _arg.type;
@@ -152,7 +106,6 @@
default:
_traceName += _listener.replace('.','_');
}
- this.lastEvent = _traceName;
if (typeof this.extend === "object" && this.extend) {
IriSP._(_arg).extend(this.extend);
}
@@ -160,4 +113,4 @@
if (this.js_console && typeof window.console !== "undefined" && typeof console.log !== "undefined") {
console.log("tracer.trace('" + _traceName + "', " + JSON.stringify(_arg) + ");");
}
-}
+}
\ No newline at end of file