Skip to content

Commit

Permalink
Revert "Use can-dom-mutate for events"
Browse files Browse the repository at this point in the history
  • Loading branch information
imaustink authored Nov 10, 2017
1 parent 4bfe43e commit c1f442c
Show file tree
Hide file tree
Showing 11 changed files with 243 additions and 270 deletions.
26 changes: 18 additions & 8 deletions dom/attr/attr-test.js
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,12 @@ unit.test("attributes event", function (assert) {

assert.equal(div.getAttribute(ev.attributeName), "bar");
domEvents.removeEventListener.call(div, "attributes", attrHandler1);
};
domEvents.addEventListener.call(div, "attributes", attrHandler1);

domAttr.set(div, "foo", "bar");

setTimeout(function () {
var attrHandler = function(ev) {
assert.ok(true, "removed event handler should be called");

Expand All @@ -45,13 +50,11 @@ unit.test("attributes event", function (assert) {
domEvents.removeEventListener.call(div, "attributes", attrHandler);
done();
};

domEvents.addEventListener.call(div, "attributes", attrHandler);
domAttr.remove(div, "foo");
};

domEvents.addEventListener.call(div, "attributes", attrHandler1);
domAttr.set(div, "foo", "bar");
}, 50);

});

unit.test("attr events without MUTATION_OBSERVER", function (assert) {
Expand All @@ -61,14 +64,20 @@ unit.test("attr events without MUTATION_OBSERVER", function (assert) {
getMutationObserver(null);

var div = document.createElement("div");

var attrHandler1 = function(ev) {
assert.equal(ev.attributeName, "foo", "attribute name is correct");
assert.equal(ev.target, div, "target");
assert.equal(ev.oldValue, null, "oldValue");

assert.equal(div.getAttribute(ev.attributeName), "bar");
domEvents.removeEventListener.call(div, "attributes", attrHandler1);
};
domEvents.addEventListener.call(div, "attributes", attrHandler1);

domAttr.set(div, "foo", "bar");

setTimeout(function () {
var attrHandler = function(ev) {
assert.ok(true, "removed event handler should be called");

Expand All @@ -84,12 +93,13 @@ unit.test("attr events without MUTATION_OBSERVER", function (assert) {
};
domEvents.addEventListener.call(div, "attributes", attrHandler);
domAttr.remove(div, "foo");
};

domEvents.addEventListener.call(div, "attributes", attrHandler1);
domAttr.set(div, "foo", "bar");
}, 50);

});



unit.test("attr.set CHECKED attribute works", function (assert) {

var input = document.createElement("input");
Expand Down Expand Up @@ -633,8 +643,8 @@ if (!isServer()) {
assert.equal(domAttr.get(input, "focused"), true, "it is now focused");
done();
});

mutate.appendChild.call(ta, input);

});
}

Expand Down
15 changes: 13 additions & 2 deletions dom/attr/attr.js
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@
// # can/util/attr.js
// Central location for attribute changing to occur, used to trigger an
// `attributes` event on elements. This enables the user to do (jQuery example): `$(el).bind("attributes", function(ev) { ... })` where `ev` contains `attributeName` and `oldValue`.
var setImmediate = require("../../js/set-immediate/set-immediate");
var getDocument = require("can-globals/document/document");
var global = require("can-globals/global/global")();
var isOfGlobalDocument = require("../is-of-global-document/is-of-global-document");
Expand All @@ -14,7 +15,6 @@ var getMutationObserver = require("can-globals/mutation-observer/mutation-observ
var each = require("../../js/each/each");
var types = require("can-types");
var diff = require('../../js/diff/diff');
var dispatchNodeAttributeChange = require('can-dom-mutate').dispatchNodeAttributeChange;

require("../events/attributes/attributes");
require("../events/inserted/inserted");
Expand Down Expand Up @@ -534,7 +534,18 @@ var formElements = {"INPUT": true, "TEXTAREA": true, "SELECT": true},
// ## attr.trigger
// Used to trigger an "attributes" event on an element. Checks to make sure that someone is listening for the event and then queues a function to be called asynchronously using `setImmediate.
trigger: function (el, attrName, oldValue) {
dispatchNodeAttributeChange(el, attrName, oldValue);
if (setData.get.call(el, "canHasAttributesBindings")) {
attrName = attrName.toLowerCase();
return setImmediate(function () {
domDispatch.call(el, {
type: "attributes",
attributeName: attrName,
target: el,
oldValue: oldValue,
bubbles: false
}, []);
});
}
},
// ## attr.get
// Gets the value of an attribute. First checks if the property is an `attr.special` and if so calls the special getter. Otherwise uses `getAttribute` to retrieve the value.
Expand Down
183 changes: 0 additions & 183 deletions dom/events/-mutation-events/make-mutation-event.js

This file was deleted.

49 changes: 0 additions & 49 deletions dom/events/-mutation-events/mutation-events.js

This file was deleted.

Loading

0 comments on commit c1f442c

Please sign in to comment.