| Age | Commit message (Collapse) | Author |
|
|
|
|
|
|
|
|
|
|
|
attributes used are currently a bit lame, since we don't support
nested attributes. So the attribute stored is:
layouts.<layout_name>.{x,y}
where layout_name is one of: force, user, ring.
Note that force layout still takes time initially, because alpha is
always set to 1 initially. This should probably be changed when a layout
is loaded.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
on zen mode entry:
- start layout
- automatic centering mode: every tick adjust the scale and translation
to fit the visible nodes
if user drags or wheels out
cancel automatic centering mode
(layout keeps updating regardless)
implementation details: additional state 'zen_mode__auto_center' and
additional handlers for wheel and mousedown. Better to have a single
flow in the future:
{mouse wheel event, mouse down event) -> update zen_mode__auto_center (or have implicit
state via bacon) -> d3 zoom behavior
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
accidentally pushed
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
selection when appropriate
|
|
|
|
|
|
|
|
Whereas node text class was not set correctly on selection.
|
|
|