Commit Graph

930 Commits

Author SHA1 Message Date
Allan Odgaard
1c164e3ce0 Do not timestamp our code signing
This means that the signature will be invalid when the certificate expires, though it also means that codesign runs faster, and as my certificate is valid for another 4 years, people shouldn’t be using the builds released today when the certificate expires.
2013-01-22 19:23:15 +01:00
Allan Odgaard
7c305f744f Delete old file chooser code 2013-01-22 19:23:15 +01:00
Allan Odgaard
645f8d91e1 Let OS handle keys for Go to Tab submenu
My memory is a little vague here, but I believe the point of handling the menu keys was to workaround a bug in NSMenu.

The bug was that NSMenu would look at (the target of) cached menu items, probably for UI validation, so potentially sending methods to unretained objects, which could lead to a crash. Several workarounds were attempted (like clearing the target property after the menu had been displayed) but the only effective one was overloading key handling.

I’m quite sure though that this bug is no longer relevant.
2013-01-22 11:00:27 +01:00
Allan Odgaard
4590a77a71 Switch HTML output window back to NSWindow
The motivation for using a panel was to avoid the window from becoming main (so key equivalents would be sent to the document window, if not handled by the HTML output window). Unfortunately window ordering ignores non-main windows when a window is closed meaning that bringing up the Find dialog from an HTML output window and then closing it, would bring the current main window to front, eclipsing the HTML output window.
2013-01-22 10:15:29 +01:00
Allan Odgaard
7b8b13fa2f Improve behavior when resizing subviews
Now resizing one subview has the other view locked at its current size and will stay at that size. Previously if you made the window smaller, causing the HTML view (on right) to shrink, and then resized the file browser to be smaller, the HTML view would grow until it had reclaimed the pixels lost during window resize.

Additionally, when resizing the window, the HTML view (on right) will shrink to its minimum size before the file browser starts to shrink. Previously this was “undefined” and after shrinking a window, you could actually see the two views resize to redistribute the loss.
2013-01-22 08:03:07 +01:00
Allan Odgaard
49a822c0d5 Remove instance data from header
Also add type-safety by introducing a protocol for the delegate.
2013-01-22 08:03:07 +01:00
Allan Odgaard
3c92d2aeb9 Introduce ‘after_bump’ build target
This target is solely intended for other targets to depend on, and will cause the dependents to be rebuilt after the APP_REVISION has been increased.

For example ‘Contributions.md’ technically depend on commit history (and online lookups), but in practice we can’t specify this in its dependencies, so previously we had to manually touch the file, if we wanted the HTML to be regenerated.

Now we can have it done automatically after each ‘bump’ by adding this rule:

    build path/to/Contributions.md: touch | after_bump

For the records, I bump the revision *before* I do ‘ninja deploy’. This ensures that deployed versions do not share revision number with a custom build (I do another ‘ninja bump’ after a successful deploy and ./configure will also set APP_REVISION to ‘current + 1’).
2013-01-22 08:03:07 +01:00
Allan Odgaard
725b9613dd When recreating build file, don’t expand APP_REVISION
This is just to make “bumping” the revision safer. Previously the revision number would be two places in the generated build file, and both needed to be bumped. Now there is only one instance. Generally the revision is bumped with ‘ninja bump’ so the user shouldn’t care about it, but sometimes manual intervention is required.
2013-01-22 08:03:07 +01:00
Allan Odgaard
9711e92897 Only build ‘bl’ if not already built
Also ensure the tbz archive is created atomically.
2013-01-22 08:03:07 +01:00
Allan Odgaard
306ea6bbb4 Checkin release notes v2.0-alpha.9349 2013-01-21 15:03:53 +01:00
Allan Odgaard
e7ada88e42 Minor tweak to file chooser UI 2013-01-21 15:03:52 +01:00
Allan Odgaard
d00b9b34aa Change how we update TextMate.app
We now keep the root folder and instead replace the inner Contents folder — hopefully this way LaunchServices won’t add the update as a new entry (causing duplicates to show up in the Open With menu).
2013-01-21 15:03:52 +01:00
Allan Odgaard
97439b9a0b Remove the projectDirectory setting
As I add sub-projects (like the CommitWindow) under Applications, I don’t want those to pickup the parent project’s root, when they are opened on their own.
2013-01-21 15:03:52 +01:00
Allan Odgaard
0208414672 Download s/w updates to cache folder
This should hopefully solve the issue with the (on some systems) fairly aggressive temp cleaner.

Also remove the archive incase the user cancels the update, now that we are extracting it to a less temporary location.
2013-01-21 15:03:52 +01:00
Allan Odgaard
b0c4363c48 Introduce path::cache
This gives the cache location — this one is not cleaned as often as the temp directory.
2013-01-21 15:03:52 +01:00
Allan Odgaard
c874a81246 Indicate cell prefersTrackingUntilMouseUp
Not really sure if there is any difference, but at least with this, the table view should expect trackMouse:inRect:ofView:untilMouseUp: to run a local event loop (until NSLeftMouseUp).
2013-01-21 15:03:52 +01:00
Allan Odgaard
e19686c9d8 Handle targets with no dependencies
These would not be added to the dependency graph and thus no build instructions were generated for them.
2013-01-21 15:03:52 +01:00
Michael Sheets
6970031245 Restyle navigation bar to be more in line with Lion.
- The shading is a combination of the scope bar and textured button used in Lion/Mountain Lion.
- Add an inactive state.
- Increase click area of the forward/back buttons while decreasing the image size.
- Switch popup menu cell to NSBackgroundStyleLight, previously the text would go to gray when inactive this prevents that though it does lose the drop shadow.
- Various tweaks to alignment and spacing.
2013-01-21 00:38:26 -06:00
Allan Odgaard
4ad6dc99a9 Use ‘nil’ to indicate no represented file
The window uses the empty string, but since we use our represented file property to create proxy icons, test if we should setup SCM status watching, etc., we don’t want to test for either nil or empty string in all these places.

This fixes exception from creating OakFileIconImage from empty string.
2013-01-21 06:12:16 +01:00
Allan Odgaard
cbe38c92ce Initialize encoding pop-up (Preferences)
Previously this would always show UTF-8 and cause an existing setting to be overwritten (with UTF-8) when bringing up the preferences window.
2013-01-21 05:54:28 +01:00
Allan Odgaard
564571ab8b Pass SCM info to file chooser 2013-01-20 12:49:35 +01:00
Allan Odgaard
a02305df2d Add ‘scmInfo’ property to file chooser
If set, the file chooser will use this to obtain file SCM status.
2013-01-20 12:49:35 +01:00
Allan Odgaard
98b19afcba Let file chooser setup OakFileIconImage
This makes it a lot faster as we don’t need to stat the files etc. Presently though there is no SCM badging.
2013-01-20 12:49:35 +01:00
Allan Odgaard
ba58611c66 Add API to OakFileIconImage
This allows manually setting up SCM status, link badge, and similar, which avoids having OakFileIconImage do any disk access.
2013-01-20 12:49:35 +01:00
Allan Odgaard
63d734295b Cache custom icon images
Also fix it so that a file named ‘gen_html’ doesn’t get the HTML icon (as we no longer use path::rank for finding the best icon).
2013-01-20 12:49:35 +01:00
Allan Odgaard
6bdf883abf fixup! Optimize path::disambiguate 2013-01-20 12:49:34 +01:00
Allan Odgaard
5627d201db Opening multiple documents selects the last one
This way ⌘W can be used to close the current document and move to the “next” one which was part of the set opened.
2013-01-20 12:49:34 +01:00
Allan Odgaard
ee44735a88 Don’t re-use scratch document for already open documents 2013-01-20 12:49:34 +01:00
Allan Odgaard
cd40111b91 Skip modified tabs when opening with “close other” 2013-01-20 12:49:34 +01:00
Allan Odgaard
fe3dff7af6 Replace custom code with kSelectionExtendToWord 2013-01-20 12:49:34 +01:00
Allan Odgaard
36e612930d Don’t setup variables in test proxy 2013-01-20 12:49:34 +01:00
Allan Odgaard
ec79163f30 Avoid editor_t::variables for getting selected text 2013-01-20 12:49:34 +01:00
Allan Odgaard
46d870c5ca Let DocumentController provide SCM scopes 2013-01-20 12:49:33 +01:00
Allan Odgaard
340782dbc9 Update SCM variables with status 2013-01-20 12:49:33 +01:00
Allan Odgaard
55b6415339 Untitled files would be prefixed with a null string 2013-01-20 12:49:33 +01:00
Allan Odgaard
61b01c89f8 Use scm variables API 2013-01-20 12:49:33 +01:00
Allan Odgaard
beb7417400 Introduce API for getting “scm variables”
This is both convenience, since we setup the TM_SCM variables in several places, but will also allow to register for changed variables (and thus, fetch branch name in a thread).
2013-01-20 12:49:33 +01:00
Allan Odgaard
92685ecf07 Use C++11 for-loop instead of macro 2013-01-20 12:49:33 +01:00
Allan Odgaard
19030a7586 Use file’s existing icon when zooming it 2013-01-20 12:49:33 +01:00
Allan Odgaard
6c05cae8ed Use std::inserter helper function 2013-01-20 12:49:32 +01:00
Allan Odgaard
fb8ad13a49 Indicate modified status in file chooser 2013-01-20 12:49:32 +01:00
Allan Odgaard
0562d22716 Ensure we remove ourself from all observing
The file browser was still observing FSItemDidReloadNotification in its dealloc. Prior to ARC we used ‘self.outlineView = nil’ which removed us as observer, but after ARC we no longer execute that line.
2013-01-20 12:49:28 +01:00
Allan Odgaard
3b05ec3704 Let file chooser show icon and close button
The close button is currently not working.
2013-01-18 15:45:44 +01:00
Allan Odgaard
4f4a56fd7a Make OFBPathInfoCell a public class
This is temporary — if it should remain public, we should rename it and move it to the OakAppKit framework.
2013-01-18 15:45:43 +01:00
Allan Odgaard
f2ed528bb1 Improve code for showing VO tab menu
We now use standard API for showing the menu and position it relative to the VO-selected tab.
2013-01-18 15:45:43 +01:00
Allan Odgaard
701e26997e Fix typo in enum value 2013-01-18 15:45:43 +01:00
Allan Odgaard
d40a1fa431 Switch to generated properties 2013-01-18 15:45:43 +01:00
Allan Odgaard
686f9eadb1 Allow slashes in path string on find clipboard (⌘T) 2013-01-18 15:45:43 +01:00
Allan Odgaard
29638a948d Switch to reworked file chooser 2013-01-18 15:45:43 +01:00
Allan Odgaard
dea1376c5b Add reworked file chooser
Presently the ‘@symbol’ syntax is not implemented.

I have removed the glob text field (so fixes #601), if it comes back, it’ll likely be as a different control, but I think we can do without this extra filtering. You can set the various include/exclude patterns for the file browser.

The tabs are also gone, though you can still use Go → Go to Tab → [ Project Folder (⌘1) | Go → Open Documents (⌘2) ] and the “Open Documents” mode list all open documents from the current project window (so partial fix for #139).

It no longer waits for all items to be loaded when you hit return (fixes #672), though as all open documents from current window are preloaded, it shouldn’t cause a problem when pressing ⌘T + ↩ quickly to go to previous file.
2013-01-18 15:38:31 +01:00