Commit Graph

2869 Commits

Author SHA1 Message Date
Allan Odgaard
c7ef9d2d78 Fix typo v2.0-alpha.9563 2014-09-02 21:16:43 +02:00
Allan Odgaard
a241fd8a5a Checkin release notes 2014-09-02 21:15:48 +02:00
Allan Odgaard
751a564fe2 Escape can now be used to clear a recorded key equivalent
If there is no recorded key equivalent then the key is passed to super.
2014-09-02 20:44:17 +02:00
Allan Odgaard
74e9448738 Use a scope bar view for the different bundle item types 2014-09-02 20:44:17 +02:00
Allan Odgaard
918406d52d Update bundle item chooser UI 2014-09-02 20:44:17 +02:00
Allan Odgaard
7e63510cfd Document changed on disk would sometimes be marked as modified
We wrap the “update document” in an undo group, but if we already have an undo group at a higher level then our “end group” would be postponed to the root group, which would delay updating the document revision, and thus the revision we use as the disk revision would be wrong.

We workaround this by forcing the undo group to end and thus ignore the one at the higher level, which should be safe.
2014-09-02 18:59:29 +02:00
Allan Odgaard
e91bf08e69 Allow forcing an undo group to be closed 2014-09-02 18:59:28 +02:00
Allan Odgaard
4d6a8174f0 Fix variable names in debug statement 2014-09-02 18:59:28 +02:00
Allan Odgaard
85f23eb53c Add crash report info to OakShowSheetForWindow
Trying to figure out why this function crashes due to uncaught exception with reason: ‘Modal session requires modal window’.
2014-09-02 18:59:28 +02:00
Allan Odgaard
49b82c9ecb Let ‘edit’ be default action when settings item is selected (⌃⌘T)
Also use performClick: on the window’s default button cell when using return to select an item.
2014-09-02 16:53:01 +02:00
Allan Odgaard
536e79a404 Show setting name (or variable) instead of umbrella item (⌃⌘T) 2014-09-02 16:52:29 +02:00
Allan Odgaard
a22053e7e7 Add public API to obtain a bundle item’s shell variables 2014-09-02 16:52:29 +02:00
Allan Odgaard
98b08464c7 Workaround for NSSpellChecker advancing the event loop
This fixes #1260 though we may want to update our design to work with an asynchronous spell checker.
2014-09-02 11:19:34 +02:00
Allan Odgaard
dc525ba234 Add tab settings for Onigmo submodule 2014-09-01 17:38:33 +02:00
Allan Odgaard
91e3c2c0de Ask for search results to fade out when being removed 2014-09-01 17:37:11 +02:00
Allan Odgaard
d2a2a9dfdd Don’t call NSOutlineView’s sizeLastColumnToFit
This doesn’t seem to be required, might only have been an issue with cell-based outline views, or perhaps only on an older version of the OS.
2014-09-01 17:37:11 +02:00
Allan Odgaard
5cc60a6d5b Use NSOutlineView’s insertItemsAtIndexes:… instead of reloadData
We wrap it in begin/endUpdates because the number of results badges might otherwise show briefly, as expansion happens post-insertion.
2014-09-01 17:37:11 +02:00
Allan Odgaard
4e5e4ef601 Add badges to show number of search results (when collapsed)
This is implemented by observing NSOutlineView’s did expand/collapse item notification and then asking for a full reload of the outline view.

None of the granular reload methods would cause the view to be recreated, and there is no “isExpanded” property that the view can bind to.

Given the above, it might be a good idea to introduce an NSTableCellView subclass / view controller for the group view and have this handle it, to avoid the overhead of asking for a full reload each time an item is expanded/collapsed (which is multiplied by number of items when using expand/collapse all).
2014-09-01 17:37:11 +02:00
Allan Odgaard
da27ee570e Remove unused cell-based outline view method 2014-09-01 17:37:11 +02:00
Allan Odgaard
df31d85a8b Remove old image name reference from xib 2014-09-01 17:37:10 +02:00
Allan Odgaard
c1d7484b7d Use typecast to ensure compiler finds the proper delegate method
Without it, it uses -[NSFileManager delegate] and complains that we are comparing id<NSFileManagerDelegate> with OFBOutlineView*.
2014-09-01 17:37:10 +02:00
Allan Odgaard
a50846ba6c Don’t let our NSCell superclass know about our image
When linking with the 10.10 SDK our cell was misbehaving, showing either no image or only the image. The explanation might be NSCell’s setImage: implementation which is documented as: “If the receiver is not an image-type cell, the method converts it to that type of cell.”.
2014-09-01 17:37:10 +02:00
Allan Odgaard
6aaaaf7f26 NSImage: Use lockFocusFlipped: instead of deprecated setFlipped: 2014-09-01 17:37:10 +02:00
Allan Odgaard
33d347cedd Use toggle button for status bar instead of NSTextField subclass 2014-09-01 17:37:10 +02:00
Allan Odgaard
8940593af0 Rely on bindings for document edited and Replace All button state
Also fix an issue where it would show Replace Selected even with search results hidden.
2014-09-01 17:37:10 +02:00
Allan Odgaard
75e7ebaca2 Don’t implement the NSCopying protocol for FFResultNode
This doesn’t seem to be a requirement when using view-based NSOutlineViews, and as our implementation wasn’t actually doing any copying, better to not pretend we conform to this interface.
2014-09-01 17:37:10 +02:00
Allan Odgaard
9b3dd8c0f4 Don’t use COPYFILE_METADATA with files on network drives
According to a user report this is causing TextMate to freeze. Reported to Apple as <rdar://17480649>.
2014-09-01 17:37:10 +02:00
Allan Odgaard
2aae17aeb3 fixup! Add items to recent menu when ‘mate’ is called without -w option 2014-09-01 17:36:57 +02:00
Allan Odgaard
854fa91f10 Only cause preferences files to be created for TextMate
This function is called when running ‘bl’ and ‘test_network’, so previously we would end up with ‘bl.plist’ and ‘test_network.plist’ in ~/Library/Preferences.
2014-08-30 16:37:50 +02:00
Allan Odgaard
0d04dc7efa Give the find dialog a more predictable key view loop 2014-08-30 16:19:23 +02:00
Allan Odgaard
7d448c993f Remove --change-dir from mate’s usage information
I don’t think anyone uses it, so consider it deprecated and subject for removal.

Also update the short options list to the currently valid options.
2014-08-30 16:19:23 +02:00
Allan Odgaard
923e92afe7 Update ignore regexp (for Show TODO List command) 2014-08-30 15:41:21 +02:00
Allan Odgaard
5412a767e8 Partially revert bc31da8f03
The menu items containing ‘«unit» / Selection’ in their default title are automatically updated to show the proper unit by our text view’s menu validation.
2014-08-30 15:41:21 +02:00
Allan Odgaard
d6f84b33d2 Remove a FIXME
The issue here was that a line of non-printable characters would return a height of zero.
2014-08-30 15:41:21 +02:00
Allan Odgaard
d12a091f5e Remove commented code 2014-08-30 15:41:21 +02:00
Allan Odgaard
5ba236ec67 Remember HTML output window frame on a per command basis
Some commands clearly should not share output window frame, OTOH it might be tedious having to position every new command used (if the default position is undesired).

We should probably re-use last command’s frame if there isn’t already a frame stored for the command (that’s what TextMate 1.x did). It might also be possible to group commands via its semantic class, so all run commands use the same window frame, though currently semantic classes have unique (language) suffixes.
2014-08-30 15:41:21 +02:00
Allan Odgaard
05cf40d77b Convert tabs in search results to em-spaces
This is to decrease the tab width which technically should be doen by creating NSTextTab objects (with tab positions), but that is too complex and I think ideally we should visualize the tabs (e.g. “‣”) like we do in the search/clipboard history windows.
2014-08-30 08:51:33 +02:00
Allan Odgaard
db1fa96114 Add items to recent menu when ‘mate’ is called without -w option
One can force adding to the recent menu by using --recent or disable it (for files we do not wait on) using --no-recent.
2014-08-30 08:51:33 +02:00
Allan Odgaard
4afbf0c0e3 Remove incorrect text about -w being ignored for multiple files
Also update it in an attempt of improving it.
2014-08-28 22:02:49 +02:00
Allan Odgaard
9c5557b442 Boolean mate options are now --[no-]option to force on/off 2014-08-28 22:02:49 +02:00
Allan Odgaard
b624726f9f Remove unused option 2014-08-28 22:02:49 +02:00
Allan Odgaard
14211e5f29 Change all local variables to use camelCase 2014-08-28 22:02:49 +02:00
Allan Odgaard
356a21d7e7 Add button to remove search results from the list 2014-08-28 13:40:24 +02:00
Allan Odgaard
9e0d0e9b34 Limit data reload of results outline view 2014-08-28 13:40:24 +02:00
Ronald Wampler
d60c47ef42 Commit button title summarizes the number of files to be committed 2014-08-28 13:40:24 +02:00
Ronald Wampler
0361afe340 Rework the commit window as a sheet (document modal)
Previously, the commit window was changed from a "always on top" window to a more typical window that could be minimized or sent to the background. While this made viewing the diffs more convenient, we could easily loose track of it or at worst end up with multiple dangling commit windows. By making it document modal, this prevents dangling windows. Furthermore, since the commit window is now attached to the main project window and the file browser already has the SCM status, we hide the file list by default and dropped the action button. Users can choose to show the file list via a checkbox and the action button's menu is still available via the file list's context menu.
2014-08-28 13:40:24 +02:00
Ronald Wampler
4b31a3fde0 Send diffs to a separate window 2014-08-28 10:16:25 +02:00
Allan Odgaard
542158c9f0 Inherit project folder when moving document to new window
This only happens if the document being moved is a child of the project folder.
2014-08-27 12:48:40 +02:00
Allan Odgaard
5a45023f9e Add new method to Find class: ‘takeSearchResultToRemoveFrom:’
This can be used after a completed search to prune the results. Currently though no UI is connected to this action.
2014-08-27 09:26:56 +02:00
Allan Odgaard
7262dd9d27 Switch search results to a view-based outline view
Currently does not support dragging of the file icon nor does it show number of matches in a single file when results are collapsed.
2014-08-27 09:14:10 +02:00