Comments (3)
In draggable-object.js
didInsertElement: function() {
let self = this;
//if there is a drag handle watch the mouse up and down events to trigger if drag is allowed
if (this.get('dragHandle')) {
//only start when drag handle is activated
if (this.$(this.get('dragHandle'))) {
//this.set('dragReady', false);
this.$(this.get('dragHandle')).on('mouseover', function(){
self.set('dragReady', true);
});
this.$(this.get('dragHandle')).on('mouseout', function(){
self.set('dragReady', false);
});
}
}
not setting the dragReady
to false fixes the issue. I'm not sure if this introduces any other issues. I assume you did not put it there for nothing. @mharris717 @dgavey Could you please advise? Not setting the dragReady
to false fails the Integration | Component | draggable object: Draggable Object is only draggable from handle
and Integration | Component | sortable objects: sortable object renders draggable objects
tests.
I can check if the dragHandle
property is set on the component and initialise the dragReady
to false at component initialisation. Would that solve any other issues? This passes the tests.
init: function() {
if (this.get('dragHandle')) {
this.set('dragReady', false);
}
this._super.apply(this, arguments);
},
didInsertElement: function() {
let self = this;
//if there is a drag handle watch the mouse up and down events to trigger if drag is allowed
if (this.get('dragHandle')) {
//only start when drag handle is activated
if (this.$(this.get('dragHandle'))) {
this.$(this.get('dragHandle')).on('mouseover', function(){
self.set('dragReady', true);
});
this.$(this.get('dragHandle')).on('mouseout', function(){
self.set('dragReady', false);
});
}
}
},
Happy to prepare a pull request.
from ember-drag-drop.
Your solution should work ok. I'm still a bit baffled why that was causing so many performance issues. Other than it's known that setting visual changes in didInsertElement can cause performance issues.
If you could prepare a PR that would be awesome. Thanks for checking on the tests as well.
from ember-drag-drop.
Thank you for the quick response. I have made a pull request #37. I'm not sure why the page was stalling with just this simple redraw. Each time I clicked a handle the warning was raised 72 times.
from ember-drag-drop.
Related Issues (20)
- Component#sendAction is deprecated HOT 16
- only allow specific object to be dropped HOT 2
- dragging "through" a draggable-object HOT 2
- drag-handle is not reconnected when component nested under draggable-object re-renders HOT 6
- fix the draggable-object-target lose the class accepts-drag HOT 2
- Multi list sorting - add draggable-object on drop
- 0.7.0 changelog and breaking changes ? HOT 1
- In Acceptance tests, drag-drop helper fails to trigger the dragend event
- Passing hasMany relationship into {{#sortable-objects}} HOT 1
- Possible to style sortable options like Spotify? HOT 2
- Cannot create 2 test using drap HOT 1
- Can not move DraggableObject into SortableObjects if SortableObjects is empty
- Example of sorting in README.md has errors
- Embroider compatibility problems HOT 1
- Trigger `dragenter` and `dragleave` as part of `dragOverMoves` option
- Full Ember Octane Compatibility? HOT 1
- Forward `dragleave` event to `@handleDragOut`
- DragOvering the DraggableObject from one SortableObjects to another not working properly. HOT 2
- "no obj for key" error
- Incompatible with `ember-cli-mirage` v3 HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from ember-drag-drop.