adobe / brackets

An open source code editor for the web, written in JavaScript, HTML and CSS.
http://brackets.io
MIT License
33.26k stars 7.64k forks source link

Investigate circular dependencies #1998

Open gruehle opened 11 years ago

gruehle commented 11 years ago

Running madge on the Brackets source shows that we have a number of circular dependencies.

Some of these are known, like DocumentManager<-->EditorManager, and would be very difficult to break. Others should be easy fixes. We should investigate each of these and split the easy fixes into separate bugs.

> madge --circular src/
document/DocumentManager -> editor/EditorManager
editor/EditorManager -> editor/Editor -> command/Menus
editor/EditorManager -> editor/Editor -> command/Menus -> widgets/PopUpManager
editor/EditorManager -> editor/Editor -> editor/CodeHintManager
editor/EditorManager -> editor/Editor
preferences/PreferencesManager -> preferences/PreferenceStorage
document/DocumentManager -> editor/EditorManager -> editor/InlineTextEditor
editor/EditorManager -> editor/InlineTextEditor
editor/EditorManager -> editor/InlineTextEditor -> editor/InlineWidget
editor/EditorManager -> widgets/StatusBar
document/DocumentManager -> project/ProjectManager
project/ProjectManager -> preferences/PreferencesDialogs
document/DocumentManager -> project/ProjectManager -> project/FileViewController
peterflynn commented 11 years ago

EditorManager -> Statusbar is covered by #1869

Editor -> Menus is only there to close popups on scroll, which might be changed by #1381.

pthiess commented 11 years ago

Reviewed