At the moment, when creating a project, the user is greeted with the dialog containing: 1. Name 2. Filename 3. Base path
The user is expected to type the name of the project into (1), and then, Geany tries to guess the base path and file name. The guess simply takes the project directory specified in settings and appends the name. When the project is located anywhere else than in the projects directory, the guessed values are wrong and have to be entered manually which is quite annoying. In addition, the dialog doesn't make it clear that the user should start with (1), when he starts with (2) or (3), he has to fill in all 3 values manually.
I think we can do better - instead of entering the project name and guessing base path based on that, we can go the other way round; first, get the base path and then, from the base path provided by the user, set the project name and project file.
With this approach, Project->New: a. First pops up a open directory dialog to specify base path b. After that, opens the (currently used) New Project dialog which is pre-filled in the following way: 1. Name: The last directory in base_path 2. Filename: depending on "store project file inside the project base directory" settings either in base_path/(1).geany or projects_dir/(1).geany 3. Base path: path specified in (a)
This way, in most cases, the user will only have to select the base directory in the first step and use the pre-filled values without any modification no matter whether the project is stored in the projects directory or not.
The other 2 patches: 1. Simplify configuration of the project by automatically opening the project properties dialog upon project creation. 2. Use "Store project file inside the project base directory" by default For more description of these 2 patches, see the commit messages. You can view, comment on, or merge this pull request online at:
https://github.com/geany/geany/pull/3018
-- Commit Summary --
* Improve user experience when creating new projects * Automatically open Project Properties dialog upon project creation * Store project files in base directory by default
-- File Changes --
M src/keyfile.c (2) M src/project.c (67) M src/ui_utils.c (15) M src/ui_utils.h (2)
-- Patch Links --
https://github.com/geany/geany/pull/3018.patch https://github.com/geany/geany/pull/3018.diff