Commit Graph

764 Commits

Author SHA1 Message Date
Allan Odgaard
d96dbc4269 Clicking a ‘find all’ result would be handled twice
Normally this wouldn’t be noticed, as the second action would do the same as the first (go to the result in the associated project window), but when there was no project window a new window opens (to show the result), and that would be done twice.

This fixes issue #281.

There is still an issue with successive selections for the “no project window” situation, as each time, a new window is opened, rather than reuse the first one that opened.
2013-01-08 22:48:07 +01:00
Allan Odgaard
1a3c9d5db9 Add missing const qualifier 2013-01-08 22:48:07 +01:00
Allan Odgaard
e834b68343 Remove duplicate of public symbol 2013-01-08 22:48:07 +01:00
Allan Odgaard
5b9685fafa Remove unused method 2013-01-08 22:48:07 +01:00
Allan Odgaard
d082f38813 Make DocumentOpenHelper API block-based 2013-01-08 22:48:06 +01:00
Allan Odgaard
879cb2e777 Remove unused method 2013-01-08 22:48:06 +01:00
Allan Odgaard
a166ad481c Make OakSavePanel API block-based 2013-01-08 22:48:06 +01:00
Allan Odgaard
293d9a8e46 Ensure DisplayName doesn’t return nil
Although I don’t know when it would return nil, issue #649 indicates that it sometimes does. We now fallback on the full URL in this case (and returning ‘«nil»’ if the url itself is nil). This should give a hint about what file system entries would fail to return a display name.
2013-01-08 22:48:06 +01:00
Jacob Bandes-Storch
b277613ecd Add "Reveal Current Document" command
This reveals the current document in the file browser, by expanding directories to reach it, rather than changing the root directory of the browser.
2013-01-08 22:48:06 +01:00
Jacob Bandes-Storch
2162082f37 Move FS utility funcs from OFB to a separate file 2013-01-05 04:21:17 +01:00
Allan Odgaard
aa50c31636 Workaround for ruby’s YAML.load
JSON should be a subset of YAML so we use ruby’s YAML parser to parse GitHub’s JSON. This however leads to syntax errors reported by the parser (as noted in issue #637) but if the JSON is “pretty printed” it seems to parse it fine (seems to be the extra white space for associative array pairs).

We can trick GitHub into pretty printing the JSON result by setting the user agent to be curl, so that is all this workaround does.
2013-01-04 02:07:50 +01:00
Allan Odgaard
72c15833c5 Checkin release notes v2.0-alpha.9337 2013-01-03 21:26:04 +01:00
Allan Odgaard
3c32087595 Avoid weak pointers to NSViewController and NSWindowController
This is not supported on 10.7 (and leads to a crash).
2013-01-03 21:26:03 +01:00
Allan Odgaard
934ec2de5c Set window delegate to nil before we disappear
There are places where we iterate through the delegates of NSApp’s ordered windows. Since the window may stay around longer than it’s (NSWindowController) delegate, we should be sure to set NSWindow’s delegate property to nil.
2013-01-03 06:43:46 +01:00
Allan Odgaard
ecc25b38d4 Improve handling of session state
We now remember values like file browser history even if the file browser is not shown while saving session state (but has previously been, or state was provided during setup). We also use the file browser and HTML output sizes stored in the session info (previously we only used values from NSUserDefaults).
2013-01-03 05:47:42 +01:00
Allan Odgaard
371198729b Support HTML output placed on right side 2013-01-03 05:45:49 +01:00
Allan Odgaard
37c2412e25 Remove Edit → Mode submenu
The menu item within is not hooked up to anything (as mentioned in issue #650) and as my idea for finishing the indent settings UI does not involve this menu item, I am removing it to avoid further confusion.
2013-01-03 01:16:54 +01:00
Allan Odgaard
303ba070a4 Collapse two class extensions into one 2013-01-03 01:16:54 +01:00
Allan Odgaard
80379dcc06 Use auto-synthesized properties 2013-01-03 01:16:54 +01:00
Allan Odgaard
1aaab0c192 Happy new year 2013! 2013-01-02 01:46:48 +01:00
Allan Odgaard
9c35f445de Convert strings files to UTF-8 2013-01-02 01:46:48 +01:00
Allan Odgaard
5f635aa026 Build: Convert *.strings files to UTF-16 if needed
If the *.strings file does not contain an UTF-16 byte order mark (either big or little endian) then it is assumed to be UTF-8.
2013-01-02 01:46:48 +01:00
Allan Odgaard
074c20534e Improve debug logging 2013-01-02 01:46:48 +01:00
Allan Odgaard
47fa0f040c Use Objective-C literals for YES/NO 2013-01-02 01:46:48 +01:00
Allan Odgaard
8e937a7141 Require explicit import of OakFindProtocol.h 2013-01-02 01:46:48 +01:00
Allan Odgaard
8bcf126aba Minor refactoring 2013-01-02 01:46:47 +01:00
Allan Odgaard
93776ca9a1 Use Objective-C literals 2013-01-02 01:46:47 +01:00
Allan Odgaard
d9cf30986d Only expose instance variable to framework (@package) 2013-01-02 01:46:47 +01:00
Allan Odgaard
534df6e755 Remove implementation details from interface
The properties left in the interface are used with bindings so sort of public (as they are used “outside” the implementation file).
2013-01-02 01:46:47 +01:00
Allan Odgaard
079b762c42 Use block-based callback API 2013-01-02 01:46:47 +01:00
Allan Odgaard
012db690f5 Assign ⇧⌘P to Go → Project Folder
This key was previously assigned to File → Page Setup but as we currently don’t support that, and it is likely not going to see that big a use (when implemented) I think we can live without a key equivalent for that menu action.

Closes issue #525.
2013-01-02 01:46:47 +01:00
Allan Odgaard
9e332438e7 Use block-based alert API 2013-01-02 01:46:47 +01:00
Allan Odgaard
b84992bdb3 ARC: Update DocumentWindow framework 2013-01-02 01:46:46 +01:00
Allan Odgaard
3d45b788f1 Update block-based NSAlert API 2013-01-02 01:46:46 +01:00
Allan Odgaard
ef8994ee00 Use block-based notification API
This removes the need for a dummy observer object.
2013-01-02 01:46:46 +01:00
Allan Odgaard
c273b3d4fe Set Find and Go to Line dialogs to “join active space”
If user opens the dialog on one space, moves to another space (with a TextMate window) and then re-activate the (already open) dialog, it would previously switch back to the space containing the dialog, whereas with the changed setting, it now moves the dialog to the active space.

This should address issue #599.
2012-12-30 04:35:47 +01:00
Allan Odgaard
75be06e850 Offer double-click install of plug-ins
If the plug-in doesn’t set TMPlugInAPIVersion to 2 (in its Info.plist) a dialog will show, telling the user that the plug-in is not compatible with the current version of TextMate (which is most likely correct).

You can hold down option (⌥) to open the plug-in as a regular folder.

Addresses issue #392.
2012-12-30 03:40:54 +01:00
Allan Odgaard
6a79b5f432 Add preliminary bundle install support 2012-12-30 03:40:54 +01:00
Allan Odgaard
2024af398d Rework loading of plug-ins
We no longer require that the bundle identifier starts with ‘com.macromates’ instead the plug-in MUST set the TMPlugInAPIVersion key (in its Info.plist) to ‘2’ (the current API version).
2012-12-30 03:40:29 +01:00
Allan Odgaard
cb33722602 Update dialog plug-ins
They now set the TMPlugInAPIVersion key in their Info.plist.
2012-12-30 03:00:53 +01:00
Allan Odgaard
df914261f4 Update code to std::thread with lambda 2012-12-30 03:00:53 +01:00
Allan Odgaard
685039c0e9 Don’t rely on com.apple.CrashReporter existing
This used to contain an UUID used for identifying the client in network requests, but for majority of users, this is unset, so now we create our own UUID for the user agent string used when polling for software updates.
2012-12-30 03:00:53 +01:00
Allan Odgaard
09337a7ed4 Workaround for flamboyant progress bar
Starting with Lion (I think) the progress bar at the Bundles preferences pane won’t always hide after having installed a bundle.

The progress bar is set to not show when stopped, but for some reason this property does not seem to always be respected, but if we manually set the progress to zero before setting the property (bound to ‘animate’) to NO, then it does properly hide.
2012-12-28 02:47:20 +01:00
Allan Odgaard
88c1210a10 Remove private methods from interface 2012-12-28 02:47:20 +01:00
Allan Odgaard
6f1cef364d Support “Select Output” as caret placement
Issue #645.
2012-12-28 02:47:20 +01:00
Allan Odgaard
0dfb5d3116 ARC: Update OakFilterList framework 2012-12-28 02:47:19 +01:00
Allan Odgaard
701c9a0541 Use ‘std’ namespace prefix when calling search()
This is to avoid a clash with other things named ‘search’.
2012-12-28 02:47:19 +01:00
Allan Odgaard
33e11aedb0 Add copyWithZone: to OFBPathInfoCell
This is mainly to manually copy-construct the C++ instance counter that we use (in debug mode) to track leaks (or an erroneous extra release).

For good measure we also set the spinTimer instance variable to nil. Though this functionality isn’t presently used, so hasn’t actually caused a problem.
2012-12-28 02:47:19 +01:00
Allan Odgaard
ba274c160f Improve “performSelector: may leak” workaround 2012-12-28 02:47:19 +01:00
Allan Odgaard
a65b7640f9 Handle empty string given to glyphs_for_key
Previously it would work, but as it was calling utf8::to_ch with the empty string, this would trigger an assertion (when running a debug build).
2012-12-28 02:47:19 +01:00