Commit Graph

548 Commits

Author SHA1 Message Date
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
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
9c35f445de Convert strings files to 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
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
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
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
Allan Odgaard
2a3b442bf2 ARC: Update TextMate (core application) 2012-12-28 02:47:19 +01:00
Allan Odgaard
70979f4eeb ARC: Update BundlesManager framework 2012-12-24 16:50:20 +01:00
Allan Odgaard
53d0a03484 ARC: Update OakDebug framework 2012-12-24 16:32:01 +01:00
Allan Odgaard
09abc8eede Fix software update logic
It would previously not ask to update (but go directly to download) when doing a manual update check.
2012-12-24 14:09:41 +01:00
Joachim Mårtensson
d501a4e81d Limit redraw
Do some checks to see if there is more to parse on the following line, before invoking the (layout) callback.
2012-12-24 13:43:22 +01:00
Allan Odgaard
1791a48571 Fix potential crash when using “Edit Command…” button
The block used the ‘uuid’ variable, this variable was however a (const) reference, so it wasn’t safe to use within the block.

While fixing the bug (by introducing a local non-reference variable for the bundle item) we have also changed the code slightly, so that “Edit Command…” only shows when a bundle item is found (this is mainly in preparation for running shell commands that doesn’t have a bundle item, e.g. from a future “Filter Through Command” dialog).
2012-12-24 01:23:33 +01:00
Allan Odgaard
06d4b51f44 Fix memory leak
This was introduced when we introduced block-based alert sheets for command errors.
2012-12-24 01:22:29 +01:00
Allan Odgaard
c2d3690848 Remove ‘CT’-prefix from user functions 2012-12-21 16:05:28 +01:00
Allan Odgaard
8c4c927397 Workaround for possible NULL pointer
Seeing a few crashes related to CFRetain() called from CTFontCreateWithName(). My guess is that a nil font results from a bad/corrupted config file, so the actual fix might be to ensure we have a font (at a higher level).
2012-12-21 16:00:42 +01:00
Allan Odgaard
7428cd0939 Add workaround for 10.8 API
This should cause TextMate to once again run on 10.7 (issue #643).
2012-12-20 18:52:31 +01:00
Allan Odgaard
601cf28366 Use the low priority dispatch queue for update checks
Presently mainly a semantic change, as the dispatch queues are mostly empty, but as we adopt GCD for more things, it’ll be more important to put background tasks in a queue with lower priority than the one handling user requested tasks.
2012-12-20 14:02:39 +01:00
Allan Odgaard
2374aafde2 Clear delegate/datasource in dealloc
There are crash reports showing the gutter view accessing its datasource in OakDocumentView’s dealloc (based on a “bounds did change” notification fired when releasing a view).
2012-12-20 14:02:39 +01:00
Allan Odgaard
c7780d1392 Add placeholder text for “time remaining” 2012-12-20 14:02:39 +01:00
Allan Odgaard
cd78f6d29d Eliminate two instance variables 2012-12-20 14:02:39 +01:00
Allan Odgaard
bb38a193e2 Set window autosave name 2012-12-19 20:42:55 +01:00
Allan Odgaard
97ca44f8ad Use NSRunningApplication for application name 2012-12-19 19:42:45 +01:00
Allan Odgaard
f87a11f1bb Improve s/w update dialog text
A “Downgrade” button now appear if the version on the server is lower than the current one. This would e.g. happen if the user has upgraded to a nightly build and does a manual version check (for non-nightly builds).

If the version on the server is the same version as the one running, the user can make a “Redownload” button appear by holding down shift (⇧) when running the update check.
2012-12-19 19:42:45 +01:00
Allan Odgaard
0bac97c9ae Use GCD + blocks for s/w update download 2012-12-19 19:42:45 +01:00
Allan Odgaard
6969d7a98e Use GCD + blocks for s/w update check 2012-12-19 19:42:36 +01:00
Allan Odgaard
71be61cbbb Enable ARC by default
We now explicitly disable it for targets that hasn’t yet been upgraded to ARC. This way, it’s easier to get an overview of which targets hasn’t yet been upgraded and ensures new targets has ARC enabled.
2012-12-19 19:42:36 +01:00
Allan Odgaard
88358ccf26 ARC: Update SoftwareUpdate framework 2012-12-19 19:42:36 +01:00
Allan Odgaard
ed45e1a241 Handle download in s/w update singleton 2012-12-19 19:42:35 +01:00