Commit Graph

3418 Commits

Author SHA1 Message Date
Allan Odgaard
8a2b97207c Refactor FSDirectoryDataSource
All code has been moved to the FSItem subclass.

The advantage is that bookkeeping becomes easier, for example no need to explicitly unregister paths (instead we can do that in the destructor).

The disadvantage is that sharing resources between items becomes harder, for example all (expanded) folders track file system and version control changes, though the existing code only accidentally shared these resources for identical paths, and it actually lacked a tracking system for retain counts.
2015-07-15 22:02:16 +02:00
Allan Odgaard
c56bb0c9f1 Double-tapping shift disables “freehanded mode” for single caret 2015-06-25 23:01:58 +02:00
Allan Odgaard
bf7f7b21d1 Checkin release notes v2.0-beta.7.5 2015-06-25 19:27:25 +02:00
Allan Odgaard
a69711755f Read the line number scale factor from user defaults
If you dislike the downscaling of the line numbers then run the following in a terminal:

    defaults write com.macromates.TextMate.preview lineNumberScaleFactor -float 1
2015-06-25 17:09:54 +02:00
Allan Odgaard
3fdc72b93a Support spell checking being “automatic by language”
This must be set in the spelling panel and changing language via the spelling panel does not update the buffer (recheck the text with the new spelling language), so toggle automatic spelling after using the spelling panel to change language.

Closes #1139
2015-06-24 00:46:49 +02:00
Allan Odgaard
86dc42fdf4 Add ability to unlearn words (as being spelled correctly)
This option is available in the context menu when bringing it up for previously learned words.
2015-06-24 00:42:05 +02:00
Allan Odgaard
f5fca8eb02 Refactor how we create context menu 2015-06-24 00:08:59 +02:00
Allan Odgaard
457969788e Use std::tuple for the OS version
This makes compatibility checks simpler, since we can use a single comparison operator.
2015-06-23 22:46:58 +02:00
Allan Odgaard
1767842229 Skip looking for shift/option modifier changes when mouse is down
Also skip updating the state if there has been no change (to the modifiers we’re interested in).
v2.0-beta.7.4
2015-06-18 19:21:52 +02:00
Allan Odgaard
265bdb6713 No need to queue an auto-refresh in the flagsChanged: method 2015-06-18 19:11:39 +02:00
Allan Odgaard
1919bce337 Delay context menu to next event loop cycle when using keyboard
This also failed prior to the recent refactoring. Might have started with 10.10, as I haven’t noticed this until recently.
2015-06-17 21:56:41 +02:00
Allan Odgaard
5d30498be2 Provide full line of context when asking for spelling suggestions 2015-06-17 21:41:10 +02:00
Allan Odgaard
70ef4c94c1 Remove use of deprecated NSSpellChecker API
We do not provide the full line to the new API, this will require a bit of refactoring.
2015-06-16 16:31:35 +02:00
Allan Odgaard
1ac59e2553 Update OakTextView to use NSDraggingSession API (10.7) 2015-06-16 16:20:39 +02:00
Allan Odgaard
af82d6e540 Update OakTabBarView to use NSDraggingSession API (10.7)
Previously used API has been deprecated.
2015-06-15 16:47:01 +02:00
Allan Odgaard
e8cba4dbae Support reloading tab bar view while a tab is being dragged
This would happen if dragging a tab into an unmodified document (in the same window) while holding down control (to insert the path of the dragged tab).

Here the document would change state to “modified” which would trigger a tab bar view reload, but since the drag session isn’t completed, we reload the tabs while one of them is “outside” the bar, which causes it to be added, and once the drag session completes, the original tab outside the bar, will be re-added, leading to two copies of the same tab.
2015-06-15 12:37:09 +02:00
Allan Odgaard
cb9e2e5fa4 Revert "Suppress warning from the atos Xcode tool"
The option that was recently made mandatory has now been removed.

This reverts commit b0814dfbd9.
2015-06-15 11:59:17 +02:00
Allan Odgaard
9d1d1a1a5a Link directly with static versions of boost libraries
This is currently using absolute paths since it’s a quick fix.
v2.0-beta.7.3
2015-06-13 19:16:10 +02:00
Allan Odgaard
9dc71d5687 Checkin release notes v2.0-beta.7.2 2015-06-13 18:09:29 +02:00
Allan Odgaard
4a7faba2c0 Do not show “TextMate is Outdated!” dialog for licensed copies 2015-06-12 14:18:53 +02:00
Allan Odgaard
e5404fb1ea Expose the registration window controller
Also make the registration window show up at the modal window layer. It should (probably) be using a modal session, though not entirely sure.
2015-06-12 14:18:19 +02:00
Allan Odgaard
980b0b9796 Double-tapping shift will now “deselect last” 2015-06-12 14:18:12 +02:00
Allan Odgaard
d17f509536 Implement a “deselect last” action method
If there are multiple (discontinuous) selections then this action will drop the last one.

If there are multiple carets (with no selections) then this action will drop all but the first caret.
2015-06-12 14:17:06 +02:00
Allan Odgaard
ec37b09faf Use find clipboard when no string is present in macro
This makes it possible to combine the “Use Selection for Find / Replace” with a non-simple find action (e.g. “Replace All”).

If any find options are set (case sensitive, regular expression, etc.) then these will trump the options set for the entry on the find clipboard.
2015-06-12 14:16:50 +02:00
Allan Odgaard
f4089e76fd Using Check Spelling at the end of a word now checks that word
This supports the workflow of typing a misspelled word and then using Check Spelling (⌘;) to fix it.
2015-06-12 14:16:12 +02:00
Allan Odgaard
b826f34584 Disabling anti-alias will now also apply to the line numbers 2015-06-12 14:14:39 +02:00
Allan Odgaard
9a7203cae1 Eliminate redundant anti-alias user defaults constant 2015-06-12 14:12:47 +02:00
Allan Odgaard
4f2f799c6b Convert filter string to decomposed unicode
Since we are doing a literal (byte-by-byte) subset match we need to have the filter string use the same unicode normalization form as the items it is matched against.

For favorites and the file chooser, the items are file system names, which default to the decomposed form.

Ideally the filtering algorithm would know about diacritics, but in practice the current solution should work for most actual scenarios, and is much simpler (thus faster).
2015-06-12 14:10:17 +02:00
Allan Odgaard
4827e354f0 Don’t call non-virtual member functions for nullptr 2015-05-09 21:40:29 +02:00
Joachim Mårtensson
70893f4583 Use dense_hash_map for style cache 2015-05-09 21:24:38 +02:00
Joachim Mårtensson
b7a1011f96 Update install instructions 2015-05-09 21:24:38 +02:00
Joachim Mårtensson
71960834ba Setup Google's sparsehash library for use 2015-05-09 21:24:38 +02:00
Joachim Mårtensson
f7dd4c0ace Add std::hash() implementation to scope_t 2015-05-09 21:21:01 +02:00
Allan Odgaard
50250bb402 Escape tilde in default glob pattern
In retrospect it was perhaps a mistake to use tilde as a special character in globs.
2015-05-06 21:20:21 +02:00
Allan Odgaard
0f4397769d Include the cstdlib header
This is to ensure we get the integer prototype for std::abs
2015-05-06 21:19:07 +02:00
Allan Odgaard
dbd33948f3 For unknown key binding actions we append this info to its name 2015-04-30 15:15:58 +02:00
Allan Odgaard
74ef6697ba Our doCommandBySelector: override should beep for unknown actions 2015-04-30 15:15:58 +02:00
Allan Odgaard
0edcddccfa Do proper escaping when constructing a glob from file path 2015-04-30 15:15:57 +02:00
Allan Odgaard
9ceb07e54c Add API to escape a string for use in a glob pattern 2015-04-30 15:15:57 +02:00
Allan Odgaard
c6c388e088 Add explicit link dependency 2015-04-30 15:15:57 +02:00
Ronald Wampler
d7121673ba Declare properties needsNewWebView and webView @dynamic
This suppress a warning with the latest version of clang shipped with Xcode 6.3.
2015-04-30 15:15:57 +02:00
Ronald Wampler
4aff7098a5 Use std::abs instead of abs()
This suppresses a couple of warnings with the latest version of clang shipped with Xcode 6.3.
2015-04-30 15:15:56 +02:00
Ronald Wampler
172ce9d428 Replace thread_local with boost equivalent
The new version of clang (Apple LLVM version 6.1.0) as shipped with Xcode 6.3, disabled TLS. According to http://clang.llvm.org/cxx_status.html, in order to support `thread_local`, the C++ runtime library from g++-4.8 or later is needed.

For now, we can use the boost `thread_specific_ptr`. This is probably a reasonable solution since 1) it should be portable with old and future versions of (Apple's) clang and 2) requires no additional dependencies.
2015-04-30 15:15:56 +02:00
Alexander Böhn / FI$H2k
23509380cb Fixed fatal error in Applications/indent/indent.cc
The static `std::map` instance (named just `map`, on line 79) had its initializer template params in the wrong order, which kept it from compiling. Swapping them as per this PR lets `indent` build and run with no issues.
2015-04-30 15:15:56 +02:00
Jason Gavris
f9e8192d00 Fix t_bump_date timezone 2015-04-30 15:15:56 +02:00
Waynn Lue
9d517741ef Moving a comma that seems misplaced 2015-04-30 15:15:56 +02:00
Yuu Q
5a1754bc01 Add missing shadow to find/replace history pop-up list
The NSComboBox, whose pop-up list has shadow, and so it will be nice for this similar control.
2015-03-28 09:45:41 +07:00
Allan Odgaard
9c69badaf6 Save with Xcode 6.2 (6C131e) 2015-03-28 09:45:40 +07:00
Allan Odgaard
8c3177113f Add missing newline to error output v2.0-beta.7.1 2015-03-26 12:19:19 +07:00
Allan Odgaard
b0814dfbd9 Suppress warning from the atos Xcode tool
Not sure why we get this warning since we do go via xcrun.
2015-03-26 12:15:18 +07:00