Code Monkey home page Code Monkey logo

Comments (4)

bryanforbes avatar bryanforbes commented on August 28, 2024

@kriszyp, @neonstalwart, @kitsonk, @csnover Any thoughts?

from core.

neonstalwart avatar neonstalwart commented on August 28, 2024

i'm currently on medication for a toothache... there's a lot of words to comprehend here 😄

i always thought that extension events were a reasonably elegant mechanism to provide a way to do things which are out of the ordinary but inevitably come up from time to time. as of this moment, i can't think of concrete cases but given that i think it's useful for those things which i don't typically think of i'd be in favor of having this kind of mechanism.

that said, i'm going to take a position i've taken a few times now... is it something that can be added later (either pre-2.0 or 2.0.x) once some concrete use cases arise to guide what it should look like? i think it's easier to leave something out and add it later than it is to get it wrong and have to live with it.

from core.

kitsonk avatar kitsonk commented on August 28, 2024

I think I am struggling like @neonstalwart to understand the use case that would be less confusingly solved by some other pattern. Personally I "get" synthetic events, but I have never "gotten" extension events, other than they were a way to try to "normalise" some things. I haven't ever found myself thinking "oh, I know how to solve this problem, extension events." (Of course, I may not have encountered problems they solve though...)

If we are saying that we believe the biggest use cases that were prevalent in Dojo 1 don't exist anymore and as Ben says, introducing that at a later date would clearly not be a breaking change, why would we tackle them now?

from core.

kfranqueiro avatar kfranqueiro commented on August 28, 2024

I almost had a reason to bring these back from the dead when I realized that dojo/mouse in Dojo 1 served a purpose beyond providing support to browsers without native mouseenter and mouseleave - it also provides support for using those events with event delegation. However, if i'm not mistaken, this is ridiculously easy to do manually:

delegate(rootNode, '.selector', 'mouseover', function (event) {
    if (dom.contains(this, event.target) && !dom.contains(this, event.relatedTarget)) {
        ...
    }
});

So, yeah. Still don't have a use case for extension events right now, and at this point we're thinking of going ahead and removing ExtensionEvent from on.ts.

from core.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.