The problem is that if another panel opens, that panel is not tied to our HTML output window, for example opening the Find dialog does not allow us to press return to search in the HTML output, and if we open a modal dialog, when that modal dialog is disposed, the *main window* will be brought to front (not the previously focused panel).
This effectively reverts commit 92953099e6.
Previously we used a heuristic and if the value looked like a path, checked that it actually existed.
The new approach makes the rules simpler, avoids a file system check, and also ensures that non-existing files *will* become dependencies.
The latter is useful if they are generated by local.ninja, typos, or actually unmet dependencies.
The terminal has a default limit of 256, which can be too low for users with a lot of open files, as TextMate also keeps a file descriptor open for parent folders, in order to observe file system changes.
On my system though, launching TextMate via Finder has the maximum number of open files set to 8-12,000, also when launching via ‘mate’ (as that uses the Launch Services), but a user had problems with around 160 open files.
Instead we just add one to the last number of last version.
With the new build system, the version of the build is extracted from the release notes, so this is the only source for the version number.
When building on macOS 10.15, the split view will show the NSBrowser split as collapsed and not allow the user to resize it, though only when running the build on macOS 10.14 or earlier.
The problem has disappeared. I have no idea what changed, though I did not notice the issue until 2-3 weeks ago, and the problem disappeared around the time of last macOS security update, though comparing my machine’s uptime with the time of the commit being reverted, there has been no reboot since that commit.
This reverts commit f74aa3fde8.
We add a border to the NSTextField in Dark Mode to match the system tool tips, but it appears that the frame returned by “fittingSize” does not take that into account, so it returns a frame 1-2 points too small to fit the text, resulting in the last line missing.
This appears to be a fairly new problem, so might depend on the SDK that we link with.
APFS does not support exchangedata(2) meaning that atomic save has to be done using a rename.
This means that the inode is not preserved and the date of the file’s directory is updated.
There are some disadvantages to this, and I have been running with atomic saving disabled shortly after switching to APFS, so I believe it is best to make this the default behavior.