Currently, the plugin follows the IntelliJ Java concept of displaying a Class oriented view of the project. It is common to combine multiple classes / objects into a single Scala source file. Support for this scenario is not strong, and I think is a point of confusion and frustration for some.
I would suggest:
1. Show the .scala files in the Project view.
Perhaps this level would remain omitted from the Packages view.
At the moment, I have to go to the Scope -> All view to see the .scala files, which is unintuitive.
2. Support the 'move' and 'copy' and 'rename' refactorings at the .scala file level as well as at the Class / Object / Trait level.
Rename: com/package/MyFile.scala -> com/package/MyFileRenamed.scala
Move / Copy: com/package/MyFile.scala -> com/newpackage/MyFile.scala (the package declaration in the file should be updated)
3. Extend the Move and Copy refactorings for Scala Class / Object / Trait to optionally specifiy the name of the target .scala source file.
This could be an existing file, or a new file. Special support could be provided to move a class in a multi-class source file to its own file, named after the class.
These refactorings should be able to work on multiple selections, for example to move some related classed and objects from MyFile.scala to MySmallerFile.scala.
To simplify all of this, a constraint could be placed that the folder structure is kept consistent with the package structure. Violations of this convention should be highlighted with an Inspection.
What other ideas do people have for supporting this?