Commit Graph

486 Commits

Author SHA1 Message Date
Boris Dušek
5369b7cf81 Add support for “Zoom follows the keyboard focus”
Zoom is an OS X accessibility feature that lets sighted visually
impaired users magnify screen content. This commit notifies Zoom of
changes of TextMate’s caret position on screen so that Zoom can
automatically follow the caret when the user moves it.
2012-12-14 21:55:12 +01:00
Boris Dušek
224ee5fd5e VoiceOver/accessibility support for text view
This commit adds support for most common accessibility
methods/attributes to the OakTextView component. In user's language,
VoiceOver users (i.e. blind and visually impaired users) can now use
TextMate to read and write text.

A few less used accessibility attributes remain to be supported -
especially AttributedStringForRange and StyleRangeForIndex which should
allow blind users to e.g. see and seek for spelling errors in text.
2012-12-14 21:55:12 +01:00
Allan Odgaard
36902cbc6c Factor out ng::range_t ⇔ NSRange methods 2012-12-14 21:55:12 +01:00
Michael Sheets
8bdbeacfcd Add indentOnPaste to ordering in bundle editor 2012-12-14 18:03:37 +01:00
Joachim Mårtensson
b03ee2f6ee Use same mechanism to limit redraw in modifiedURLs 2012-12-14 18:03:37 +01:00
Joachim Mårtensson
417ecef624 Refactored calculations of touched filebrowser items into its own method 2012-12-14 18:03:36 +01:00
Michael Sheets
ac8f88b33e Always set the TM_SOFT_TABS variable
Backwards compatibility for commands that expect the variable to always exist or match the NO state, this matches the behavior of 1.x.
2012-12-11 17:52:20 +01:00
Joachim Mårtensson
d983d5a5d2 Limit file browser refresh on open/close
If changes are limited to visible rows, we only reload these.
2012-12-11 17:52:16 +01:00
Allan Odgaard
c995b758c8 fixup! Allow disabling document status in file browser
If ‘location’ was nil, we would implicitly create a std::string from that, which is not allowed (and crashes).
2012-11-14 11:18:51 +07:00
Josh Goebel
dc34d5c9d9 Allow disabling document status in file browser
Disabling this is achieved by setting `fileBrowserDocumentStatus` to `false` in `.tm_properties`.

Disabling it should remove potential delays after opening, closing, and saving files when file browser is showing a lot of files. It is meant as a temporary workaround until the performance issues are addressed.
2012-11-12 13:28:34 +07:00
Adam Strzelecki
e5ac757fb6 Make command properties drawer shorter.
Re-layout input & output fields, so they don't enlarge whole drawer too much.
2012-11-12 13:28:34 +07:00
Allan Odgaard
91903319be ARC: Update BundleEditor framework 2012-11-12 13:28:34 +07:00
Allan Odgaard
921efb9f6e Don’t link with QuartzCore
This was originally done for CoreAnimation (which is no longer used).
2012-10-24 21:07:21 +07:00
Robert Hencke
7a9ff232fe Apply default gutter theme when no theme is active
Previously, if no themes were active, the gutter colors would
not be set.  This would, effectively, give you random gutter colors
on TextMate startup. (or, sometimes, a completely transparent gutter).
2012-10-24 21:07:21 +07:00
Allan Odgaard
6908062ac9 Fix command input with column selections
Discontinuous selections are still not supported for commands — probably the command should be run for each selection.

Issue #524.
2012-10-24 18:19:24 +07:00
Allan Odgaard
78d0effb5a ARC: Update Preferences framework 2012-10-24 18:19:18 +07:00
Allan Odgaard
b81bac3fda Change {updates → api}.textmate.org
Ideally we’d use the REST_API define setup for a few other targets.
2012-10-01 01:17:00 +02:00
Allan Odgaard
c8983cf95d Remove unused function
Previously was used by the ‘bl’ utility.
2012-09-30 23:06:58 +02:00
Allan Odgaard
da6afa03f0 Fix concurrency bug in path::make_dir
The function could fail if the directory was created after the function had tested that it didn’t exist, as the mkdir() would then fail (with “Already Exists”).
2012-09-30 23:06:58 +02:00
Allan Odgaard
494d38df16 Cycle discontinuous selections when using ‘transpose’
It performs a cyclic permutation. If there are only two selections, this is equivalent to swap, but with more discontinuous selections, it is possible to repeat the transpose until the selections are ordered as desired.
2012-09-30 23:06:58 +02:00
Allan Odgaard
e1b3f71a69 Let about window show license (if any)
There is currently no way to add a TextMate (1.x) license to the key chain, but those who used TextMate r9147 or earlier should have one stored already.
2012-09-30 23:06:57 +02:00
Allan Odgaard
aef4a2206c Use caret’s right scope when expanding tab triggers 2012-09-30 15:25:45 +02:00
Allan Odgaard
fa6659db28 Update dyn.caret/selection scopes
If there is one or more selections:

    dyn.selection

If there is a single zero-width selection:

    dyn.caret.mixed.columnar

If there are multiple carets and/or selections:

    dyn.caret.mixed

When there is only a single caret or a single continuous selection the left scope may contain:

    dyn.caret.begin.line
    dyn.caret.begin.document

Likewise the right scope may contain:

    dyn.caret.end.line
    dyn.caret.end.document
2012-09-30 15:25:45 +02:00
Allan Odgaard
cba6b3275b Send crash reports in low-priority dispatch queue 2012-09-30 15:25:45 +02:00
Allan Odgaard
67ab3de2b1 Refactor crash reporting code 2012-09-30 15:25:44 +02:00
Allan Odgaard
49c37ca864 Skip ‘null’ payload fields when posting to server 2012-09-30 15:25:44 +02:00
Allan Odgaard
456374342a Remove use of openssl constants 2012-09-30 15:25:44 +02:00
Allan Odgaard
6272ea40e8 Remove release notes handling
This doesn’t really belong in the software update framework.
2012-09-29 00:20:38 +02:00
Allan Odgaard
98b4c07083 Add function to obtain bundle changes
This requires that the bundle contains a Changes.json.
2012-09-29 00:16:07 +02:00
Allan Odgaard
9f2a4c74da Add callback.document.will-save
Commands can prepare the document for saving in this callback, e.g. strip trailing whitespace (issue #35), ensure the line always has a newline character as the last byte in the document (issue #76), or similar.

Presently having a “will-save” command fail does not abort saving (but likely should). Also, there is no check to see if the command called requires the document to be saved before running, so that likely leads to an infinite loop.
2012-09-27 17:52:41 +02:00
Allan Odgaard
e1dd99a0f5 Add window to “document will save” notification
The text view needs to do a little work before saving a document (serialize folded text) and with the window as part of the user data, we can now skip that for text views in windows for which documents are not going to be saved.

This is not an ideal solution; long-term saving will be moved up to the DocumentWindowController which has the full view of all documents and text views.
2012-09-27 17:52:41 +02:00
Allan Odgaard
cf62b6e92b Improve error text for missing shell commands 2012-09-27 17:52:41 +02:00
Allan Odgaard
ea85d37dff Use literal ‘⇥’ instead of ‘\u21E5’ 2012-09-27 17:52:41 +02:00
Allan Odgaard
e1fc3993f0 Improve editor performance when file browser show lots of stuff
Delays may still be experienced when a file is opened or its “modified” state is changed but general edits should no longer be affected by how much is showing in the file browser.

This addresses issue #463.
2012-09-26 00:26:01 +02:00
Allan Odgaard
e958a04945 Potentially resize gutter when bounds change 2012-09-25 22:06:16 +02:00
Allan Odgaard
e969b4cade Hide OakControl implementation 2012-09-25 16:18:08 +02:00
Allan Odgaard
a9412d7920 Minor change to tab bar view properties
We now set the isExpanded property during initialize and use a property to reflect the current user preference for wether or not to collapse when there is just one tab.
2012-09-25 16:18:08 +02:00
Allan Odgaard
695ee00b3b Remove binding support from OakTabBarView
Initially this was used but I found that a data source approach worked better, as it made things more explicit (and this easier to follow).
2012-09-25 16:18:08 +02:00
Allan Odgaard
2edf3bb56e Add comments translating code points 2012-09-25 16:18:08 +02:00
Allan Odgaard
71c1febc34 Constrain gutter view’s top to that of the text view
This might be what’s causing the gutter view to sometimes be shorter than the text view, although it’s merely a hunch.
2012-09-25 16:18:01 +02:00
Allan Odgaard
a0c4af64bd Remove trailing whitespace
Only removed from non-empty lines.
2012-09-25 14:16:50 +02:00
Allan Odgaard
983bce86aa Use @autoreleasepool blocks 2012-09-25 12:30:12 +02:00
Allan Odgaard
7df336664a Add set_basic_environment
This is in cases where we don’t want the “clean” environment setup by default.
2012-09-24 21:32:29 +02:00
Ole Gammelgaard Poulsen
ca25560f19 Added tm_query CLI that returns settings and variables for a file 2012-09-24 21:32:29 +02:00
Allan Odgaard
4ed34392d6 Use synthesized instance variables 2012-09-24 21:15:47 +02:00
Allan Odgaard
c3de1a09f5 Move code out of header 2012-09-24 20:58:43 +02:00
Allan Odgaard
962bf5149b ARC: Update HTMLOutputWindow framework 2012-09-24 20:58:43 +02:00
Allan Odgaard
45d38ff6c8 Use synthesized instance variables 2012-09-24 20:58:43 +02:00
Allan Odgaard
7e53c15b67 ARC: Update layout framework (tests) 2012-09-24 20:58:43 +02:00
Allan Odgaard
426b3d1257 ARC: Update CrashReporter framework 2012-09-24 20:58:42 +02:00