Previously, XCC would indiscriminately add files to the Xcode project via the pbxprojModifier.py script. This resulted in duplicate references to a file.
This fix adds a check to see if the file is already included in the project's sourceGroup folder, and will return None if it is.
Fixes#1866
This commit changes the current XCodeCapp menubar icon to use higher contrast colours, making it easier to see when XCC is working or idle.
Previously, the colours were black and dark green. With this change, the colours are black and orange (taken from the Cappuccino logo).
This commit includes the original PSD artwork as well as rendered versions of the icons in PNG format.
Errors are now displayed in a data view showing:
- the file
- the error message
- A button that allows you to open the errored file in the default system editor
Before this fix, XCodeCapp always ran under /bin/bash, causing problems when trying to source the files from other shells, like /bin/zsh
This fix reads the shell information directly from the user's environment and XCC to run using that shell.
Events are not so reliable, there are many flaws and special cases (like trashing a folder etc)
In order to simplify the process is the following
- We receive an event
- We tidy up the shadow files
- We check if the given path exists
- If it's a folder, we continue
- If it's a file and it exists : we run handleFileModification
- If it's a file and it doesn't exist: we run handleFileRemoval
The first method (updateUserDefaultsWithLastEventId) just
sets the default while the other (synchronizeUserDefaultsWithDisk)
forces a synchronization with the disk.
This is a small fix that makes XcodeCapp update the latestEventId value
in the defaults database at the end of each FSEvents callback.
Prior to this fix, the synchronization was performed only when the user
actively decided to stop listening to a project.