In preparation for the 1.1 Release I would like to solicit inputs for features that you would like to see (depending upon the request some may be pushed to further releases).
Currently I am looking at 4 main features: 1) Pluggable Controllers, 2) Hierarchical Controllers, 3) Better Decoupling of Views, and 4) Factories for event and controller creation.
Pluggable Controllers: I am not sure how useful this feature would be but it would only require that Flex mxml files implement a View interface with a setController method.
Hierarchical Controllers: One side effect of having the handler for an event in the same class as the event itself is that you cannot have multiple controllers acting on the same event which is especially useful for having the main application view handle an event in addition to the active flex view in a view stack. Currently you can accomplish this by having the event handling dispatch another event. What I am thinking about is providing the option for the event to not handle itself and allow the controller to handle it (this follows the more traditional Command pattern used in MVC frameworks). Since you override the base controller anyway this is easy to do. You could also choose to bubble the event up to the top level controller.
Better Decoupling of Views: In some cases in your views you cannot bind to a data structure in your model or you need to perform a more complex operation than binding along will solve. In this case, the event handlers are coupled to the view in the sense that if something changes on the view (like their names), the event handler will have to change as well. If your view implements the View interface then the event handler can call view.update("command",...) with variable arguments to do what you want. If this limited to view only manipulations then this could be considered acceptable since we leave view only logic with the view anyway for Flex GUI events. However, this capability is one I am unsure about including unless their is demand for it.
Factories for Controllers and Events: Use Factory methods with String Identifiers to create your controllers and events so their is no dependence on their constructors. The factories would read the actual class names from an XML file and any other info needed for construction. At some point this could turn into a complete dependency injection framework like Spring but for the client.