Branch: master
Commits on Feb 13, 2019
  1. Only use checkbox convenience constructor on 10.14 or later

    sorbits committed Feb 13, 2019
    The button created on 10.12 or 10.13 has a “Button” label next to it when used in table views (as used in the Find in Project results and Commit sheet).
  2. OakSyntaxFormatter: Clean up font attributes

    rdwampler authored and sorbits committed Jan 10, 2019
    The issue is caused by commit f850dbd, which added support for font style changes. It did so by applying a single font across the entire string. But, in some cases not all characters (e.g., Chinese or Japanese characters) may be available for that font so these characters would not be rendered correctly while editing.
Commits on Dec 7, 2018
  1. Remove legal notice for XcodeEditor

    rdwampler authored and sorbits committed Dec 6, 2018
    The use of this framework was dropped in 4d82e4b.
Commits on Dec 6, 2018
  1. Associate search results with the current find delegate

    sorbits committed Dec 6, 2018
    This fixes the problem where a folder search has been done and the dialog is later re-opened for another project (which will then take ownership) and then selecting one of the old search results: The “select match” is now sent to the project that was active, when the search was performed.
  2. Do not set NSBackgroundStyleRaised for controls and text in status bars

    sorbits committed Dec 5, 2018
    It appears to be ignored on 10.14 but earlier versions of macOS rendered the elements with a shadow, which is probably not a good fit for our current design.
Commits on Dec 5, 2018
  1. Set ‘accessibilityElement’ on NSControl’s cell object

    sorbits committed Dec 5, 2018
    An alternative to accessing the cell directly is using NSAccessibilityUnignoredDescendant to obtain the object, but while it seems to abstract away whether or not it is the control or its cell which participates in accessibility, we forego the type checker.
  2. Use fontAttributesInRange: instead of attributesAtIndex:effectiveRange:

    sorbits committed Dec 5, 2018
    Semantically this seems slightly more appropriate, and giving a range allows us to pass the strings length as the length of the range, instead of assuming that the string has a first character for which we can get attributes, although for an empty string, passing in a zero-length range *does* throw an exception, so we must only call this when we know the string is non-empty.
  3. Do not request attributes for an empty NSAttributedString

    sorbits committed Dec 5, 2018
    This would throw an “out of bounds” exception.
  4. Refactor finder tags to use catalog colors

    rdwampler authored and sorbits committed Nov 22, 2018
    Also, reworked the OFBFinderTagsChooser to have a similar look as on 10.14.
Commits on Dec 4, 2018
  1. Set wantsLayer to YES for all NSVisualEffectView subclasses

    sorbits committed Dec 4, 2018
    This is required when using NSVisualEffectBlendingModeWithinWindow although on macOS 10.13 and later a view is layer backed by default.
  2. Migrate OakTextView to new Accessibility API

    dusek authored and sorbits committed Dec 1, 2018
    macOS 10.10 SDK introduced new protocol-based accessibility APIs. The
    old accessibility APIs are now deprecated. These APIs require a
    minimum deployment target of 10.10, which is fulfilled since TextMate
    2.0 rc 12.
    Main changes connected with this new API is that it is statically
    typed, so it is no longer necessary to convert parameters from (and
    results to) NSValue objects.
    Still some of the weakly-typed original APIs are not deprecated and
    have no alternative in the new API, notably e.g. the
    accessibilityArray* methods, so they are kept.
Commits on Dec 2, 2018
  1. Add one line of margin below tab views

    sorbits committed Dec 2, 2018
    At least on macOS 10.14 the auxiliary titlebar view is placed so that the bottom line of the view overlaps with the divider that separates the titlebar from the window content.
    While the tab view background color is using alpha, the divider was still visible, but it didn’t look that good when using the light appearance.
  2. Only skip updating to new layout when reloadData results in same layout

    sorbits committed Dec 2, 2018
    The problem with having the check in updateToLayout: is that the background view that extends to right window edge is not part of the layout, so while the width of this view may change when resizing the window, it would not result in a different layout.
  3. Remove unnecessary import

    sorbits committed Nov 22, 2018
Commits on Nov 22, 2018
  1. Let OakSyntaxFormatter use OakTheme

    sorbits committed Nov 22, 2018
    As the latter supports catalog colors, the styled string should automatically work in both light and dark mode.
  2. Add OakTheme: An Objective-C version of theme_t

    sorbits committed Nov 22, 2018
    This doesn’t do any caching of style lookups so performance is worse than theme_t and it also lacks an API to control the initial base font.
    For now, the intention is to use this for system dialogs, such as the Find dialog, but long-term it should also be used by OakTextView, at which point, caching and base font support should be added.
  3. Add UUID for the macOS System Theme

    sorbits committed Nov 22, 2018
    Theme available here: textmate/themes.tmbundle@e6e9185