1
1
mirror of https://github.com/qvacua/vimr.git synced 2024-12-29 16:56:40 +03:00

Merge branch 'develop' into 428-update-neovim

Conflicts:
	NeoVimServer/server_ui.m
This commit is contained in:
Tae Won Ha 2017-04-25 07:32:11 +02:00
commit 5f6e758293
No known key found for this signature in database
GPG Key ID: E40743465B5B8B44
19 changed files with 96 additions and 114 deletions

View File

@ -30,11 +30,8 @@ NS_ASSUME_NONNULL_BEGIN
- (void)encodeWithCoder:(NSCoder *)coder;
- (NSString *)description;
- (BOOL)isEqual:(id)other;
- (BOOL)isEqual:(id _Nullable)other;
- (BOOL)isEqualToBuffer:(NeoVimBuffer *)buffer;
- (NSUInteger)hash;
@end

View File

@ -67,8 +67,6 @@ static int _marked_delta = 0;
static int _put_row = -1;
static int _put_column = -1;
static bool _dirty = false;
static NSString *_backspace = nil;
#pragma mark Helper functions

View File

@ -17,9 +17,9 @@
<key>CFBundlePackageType</key>
<string>APPL</string>
<key>CFBundleShortVersionString</key>
<string>SNAPSHOT-179</string>
<string>SNAPSHOT-180</string>
<key>CFBundleVersion</key>
<string>179</string>
<string>180</string>
<key>LSMinimumSystemVersion</key>
<string>$(MACOSX_DEPLOYMENT_TARGET)</string>
<key>NSHumanReadableCopyright</key>

View File

@ -1,15 +0,0 @@
/**
* Tae Won Ha - http://taewon.de - @hataewon
* See LICENSE
*/
import Cocoa
public class DispatchUtils {
fileprivate static let qDispatchMainQueue = DispatchQueue.main
public static func gui(_ call: @escaping () -> Void) {
DispatchUtils.qDispatchMainQueue.async(execute: call)
}
}

View File

@ -15,11 +15,11 @@
<key>CFBundlePackageType</key>
<string>FMWK</string>
<key>CFBundleShortVersionString</key>
<string>SNAPSHOT-179</string>
<string>SNAPSHOT-180</string>
<key>CFBundleSignature</key>
<string>????</string>
<key>CFBundleVersion</key>
<string>179</string>
<string>180</string>
<key>NSHumanReadableCopyright</key>
<string>Copyright © 2016 Tae Won Ha. All rights reserved.</string>
<key>NSPrincipalClass</key>

View File

@ -9,11 +9,15 @@
*/
/**
* Extracted from snapshot-112 of MacVim
* Extracted from snapshot-131 of MacVim
* https://github.com/macvim-dev/macvim
* See VIM.LICENSE
*/
// We suppress the following warnings since the original code does have it...
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wshorten-64-to-32"
#import "MMCoreTextView.h"
static CTFontRef
@ -288,3 +292,4 @@ recurseDraw(const unichar *chars, CGGlyph *glyphs, CGPoint *positions,
}
}
#pragma clang diagnostic pop

View File

@ -119,7 +119,7 @@ public class NeoVimView: NSView, NeoVimUiBridgeProtocol, NSUserInterfaceValidati
0x1F910...0x1F918,
0x1F980...0x1F984,
0x1F9C0...0x1F9C0
].flatMap { $0 }
].flatMap { $0 }
fileprivate var _font = NeoVimView.defaultFont
fileprivate var _linespacing = NeoVimView.defaultLinespacing
@ -190,7 +190,7 @@ public class NeoVimView: NSView, NeoVimUiBridgeProtocol, NSUserInterfaceValidati
let noErrorDuringInitialization = self.agent.runLocalServerAndNeoVim()
// Neovim is ready now: resize neovim to bounds.
DispatchUtils.gui {
DispatchQueue.main.async {
self.agent.setBoolOption("title", to: true)
self.agent.setBoolOption("termguicolors", to: true)
@ -199,7 +199,7 @@ public class NeoVimView: NSView, NeoVimUiBridgeProtocol, NSUserInterfaceValidati
alert.alertStyle = .warning
alert.messageText = "Error during initialization"
alert.informativeText = "There was an error during the initialization of NeoVim. "
+ "Use :messages to view the error messages."
+ "Use :messages to view the error messages."
alert.runModal()
}
@ -278,21 +278,21 @@ extension NeoVimView {
let currentBufferIsTransient = buffers.first { $0.isCurrent }?.isTransient ?? false
urls.enumerated().forEach { (idx, url) in
if buffers.filter({ $0.url == url }).first != nil {
for window in tabs.map({ $0.windows }).flatMap({ $0 }) {
if window.buffer.url == url {
self.agent.select(window)
return
}
}
}
if currentBufferIsTransient {
self.open(url, cmd: "e")
} else {
self.open(url, cmd: "tabe")
if buffers.filter({ $0.url == url }).first != nil {
for window in tabs.map({ $0.windows }).flatMap({ $0 }) {
if window.buffer.url == url {
self.agent.select(window)
return
}
}
}
if currentBufferIsTransient {
self.open(url, cmd: "e")
} else {
self.open(url, cmd: "tabe")
}
}
}
public func openInNewTab(urls: [URL]) {
@ -608,7 +608,7 @@ extension NeoVimView {
let rowCells = self.grid.cells[row]
let startIdx = columnRange.lowerBound
var result = [ RowRun(row: row, range: startIdx...startIdx, attrs: rowCells[startIdx].attrs) ]
var result = [RowRun(row: row, range: startIdx...startIdx, attrs: rowCells[startIdx].attrs)]
columnRange.forEach { idx in
if rowCells[idx].attrs == result.last!.attrs {
let last = result.popLast()!
@ -631,7 +631,7 @@ extension NeoVimView {
Int(floor((self.bounds.height - self.yOffset - (rect.origin.y + rect.size.height)) / cellHeight)), 0
)
let rowEnd = min(
Int(ceil((self.bounds.height - self.yOffset - rect.origin.y) / cellHeight)) - 1, self.grid.size.height - 1
Int(ceil((self.bounds.height - self.yOffset - rect.origin.y) / cellHeight)) - 1, self.grid.size.height - 1
)
let columnStart = max(
Int(floor((rect.origin.x - self.xOffset) / cellWidth)), 0
@ -834,8 +834,9 @@ extension NeoVimView: NSTextInputClient {
let capslock = modifierFlags.contains(.capsLock)
let shift = modifierFlags.contains(.shift)
let chars = event.characters!
let charsIgnoringModifiers = shift || capslock ? event.charactersIgnoringModifiers!.lowercased()
: event.charactersIgnoringModifiers!
let charsIgnoringModifiers = shift || capslock
? event.charactersIgnoringModifiers!.lowercased()
: event.charactersIgnoringModifiers!
if KeyUtils.isSpecial(key: charsIgnoringModifiers) {
if let vimModifiers = self.vimModifierFlags(modifierFlags) {
@ -1066,15 +1067,15 @@ extension NeoVimView {
override public func mouseDown(with event: NSEvent) {
// self.window?.makeFirstResponder(self)
self.mouse(event: event, vimName:"LeftMouse")
self.mouse(event: event, vimName: "LeftMouse")
}
override public func mouseUp(with event: NSEvent) {
self.mouse(event: event, vimName:"LeftRelease")
self.mouse(event: event, vimName: "LeftRelease")
}
override public func mouseDragged(with event: NSEvent) {
self.mouse(event: event, vimName:"LeftDrag")
self.mouse(event: event, vimName: "LeftDrag")
}
override public func scrollWheel(with event: NSEvent) {
@ -1149,9 +1150,9 @@ extension NeoVimView {
self.agent.vimInput(result)
}
fileprivate func shouldFireVimInputFor(event:NSEvent, newCellPosition: Position) -> Bool {
fileprivate func shouldFireVimInputFor(event: NSEvent, newCellPosition: Position) -> Bool {
let type = event.type
guard type == .leftMouseDragged || type == .rightMouseDragged || type == .otherMouseDragged else {
guard type == .leftMouseDragged || type == .rightMouseDragged || type == .otherMouseDragged else {
self.lastClickedCellPosition = newCellPosition
return true
}
@ -1199,8 +1200,7 @@ extension NeoVimView {
fileprivate func vimScrollInputFor(deltaX: CGFloat, deltaY: CGFloat,
modifierFlags: NSEventModifierFlags,
cellPosition: Position) -> (String, String)
{
cellPosition: Position) -> (String, String) {
let vimMouseLocation = self.wrapNamedKeys("\(cellPosition.row),\(cellPosition.column)")
let (typeX, typeY) = self.vimScrollEventNamesFor(deltaX: deltaX, deltaY: deltaY)
@ -1222,7 +1222,7 @@ extension NeoVimView {
self.scrollGuardCounterX = self.scrollGuardYield - 1
} else if absDeltaX <= 2 {
// Poor man's throttle for scroll value = 1 or 2
if self.scrollGuardCounterX % self.scrollGuardYield == 0 {
if self.scrollGuardCounterX % self.scrollGuardYield == 0 {
self.agent.vimInput(vimInput)
self.scrollGuardCounterX = 1
} else {
@ -1238,7 +1238,7 @@ extension NeoVimView {
self.scrollGuardCounterY = self.scrollGuardYield - 1
} else if absDeltaY <= 2 {
// Poor man's throttle for scroll value = 1 or 2
if self.scrollGuardCounterY % self.scrollGuardYield == 0 {
if self.scrollGuardCounterY % self.scrollGuardYield == 0 {
self.agent.vimInput(vimInput)
self.scrollGuardCounterY = 1
} else {
@ -1254,7 +1254,7 @@ extension NeoVimView {
extension NeoVimView {
public func resize(toWidth width: Int32, height: Int32) {
DispatchUtils.gui {
DispatchQueue.main.async {
// NSLog("\(#function): \(width):\(height)")
self.grid.resize(Size(width: Int(width), height: Int(height)))
self.markForRenderWholeView()
@ -1262,14 +1262,14 @@ extension NeoVimView {
}
public func clear() {
DispatchUtils.gui {
DispatchQueue.main.async {
self.grid.clear()
self.markForRenderWholeView()
}
}
public func eolClear() {
DispatchUtils.gui {
DispatchQueue.main.async {
self.grid.eolClear()
let putPosition = self.grid.putPosition
@ -1282,7 +1282,7 @@ extension NeoVimView {
}
public func gotoPosition(_ position: Position, screenCursor: Position, currentPosition: Position) {
DispatchUtils.gui {
DispatchQueue.main.async {
self.currentPosition = currentPosition
// NSLog("\(#function): \(position), \(screenCursor)")
@ -1312,7 +1312,7 @@ extension NeoVimView {
self.grid.goto(position)
self.grid.moveCursor(screenCursor)
}
DispatchUtils.gui {
DispatchQueue.main.async {
self.delegate?.cursor(to: currentPosition)
}
}
@ -1338,14 +1338,14 @@ extension NeoVimView {
}
public func setScrollRegionToTop(_ top: Int32, bottom: Int32, left: Int32, right: Int32) {
DispatchUtils.gui {
DispatchQueue.main.async {
let region = Region(top: Int(top), bottom: Int(bottom), left: Int(left), right: Int(right))
self.grid.setScrollRegion(region)
}
}
public func scroll(_ count: Int32) {
DispatchUtils.gui {
DispatchQueue.main.async {
self.grid.scroll(Int(count))
self.markForRender(region: self.grid.region)
// Do not send msgs to agent -> neovim in the delegate method. It causes spinning when you're opening a file with
@ -1355,13 +1355,13 @@ extension NeoVimView {
}
public func highlightSet(_ attrs: CellAttributes) {
DispatchUtils.gui {
DispatchQueue.main.async {
self.grid.attrs = attrs
}
}
public func put(_ string: String, screenCursor: Position) {
DispatchUtils.gui {
DispatchQueue.main.async {
let curPos = self.grid.putPosition
// NSLog("\(#function): \(curPos) -> \(string)")
self.grid.put(string)
@ -1381,7 +1381,7 @@ extension NeoVimView {
}
public func putMarkedText(_ markedText: String, screenCursor: Position) {
DispatchUtils.gui {
DispatchQueue.main.async {
NSLog("\(#function): '\(markedText)' -> \(screenCursor)")
let curPos = self.grid.putPosition
@ -1399,7 +1399,7 @@ extension NeoVimView {
}
public func unmarkRow(_ row: Int32, column: Int32) {
DispatchUtils.gui {
DispatchQueue.main.async {
let position = Position(row: Int(row), column: Int(column))
// NSLog("\(#function): \(position)")
@ -1412,7 +1412,7 @@ extension NeoVimView {
}
public func bell() {
DispatchUtils.gui {
DispatchQueue.main.async {
NSBeep()
}
}
@ -1424,14 +1424,14 @@ extension NeoVimView {
}
public func updateForeground(_ fg: Int32) {
DispatchUtils.gui {
DispatchQueue.main.async {
self.grid.foreground = UInt32(bitPattern: fg)
// NSLog("\(ColorUtils.colorIgnoringAlpha(UInt32(fg)))")
}
}
public func updateBackground(_ bg: Int32) {
DispatchUtils.gui {
DispatchQueue.main.async {
self.grid.background = UInt32(bitPattern: bg)
self.layer?.backgroundColor = ColorUtils.colorIgnoringAlpha(self.grid.background).cgColor
// NSLog("\(ColorUtils.colorIgnoringAlpha(UInt32(bg)))")
@ -1439,7 +1439,7 @@ extension NeoVimView {
}
public func updateSpecial(_ sp: Int32) {
DispatchUtils.gui {
DispatchQueue.main.async {
self.grid.special = UInt32(bitPattern: sp)
}
}
@ -1448,7 +1448,7 @@ extension NeoVimView {
}
public func setTitle(_ title: String) {
DispatchUtils.gui {
DispatchQueue.main.async {
self.delegate?.set(title: title)
}
}
@ -1457,20 +1457,20 @@ extension NeoVimView {
}
public func stop() {
DispatchUtils.gui {
DispatchQueue.main.async {
self.delegate?.neoVimStopped()
}
self.agent.quit()
}
public func setDirtyStatus(_ dirty: Bool) {
DispatchUtils.gui {
DispatchQueue.main.async {
self.delegate?.set(dirtyStatus: dirty)
}
}
public func autoCommandEvent(_ event: NeoVimAutoCommandEvent, bufferHandle: Int) {
DispatchUtils.gui {
DispatchQueue.main.async {
// NSLog("\(event.rawValue) with buffer \(bufferHandle)")
if (event == .TEXTCHANGED || event == .TEXTCHANGEDI || event == .BUFWRITEPOST || event == .BUFLEAVE) {
@ -1496,7 +1496,7 @@ extension NeoVimView {
}
public func ipcBecameInvalid(_ reason: String) {
DispatchUtils.gui {
DispatchQueue.main.async {
if self.agent.neoVimIsQuitting {
return
}

View File

@ -15,10 +15,10 @@
<key>CFBundlePackageType</key>
<string>BNDL</string>
<key>CFBundleShortVersionString</key>
<string>SNAPSHOT-179</string>
<string>SNAPSHOT-180</string>
<key>CFBundleSignature</key>
<string>????</string>
<key>CFBundleVersion</key>
<string>179</string>
<string>180</string>
</dict>
</plist>

View File

@ -17,11 +17,11 @@
<key>CFBundlePackageType</key>
<string>APPL</string>
<key>CFBundleShortVersionString</key>
<string>SNAPSHOT-179</string>
<string>SNAPSHOT-180</string>
<key>CFBundleSignature</key>
<string>????</string>
<key>CFBundleVersion</key>
<string>179</string>
<string>180</string>
<key>LSMinimumSystemVersion</key>
<string>$(MACOSX_DEPLOYMENT_TARGET)</string>
<key>NSHumanReadableCopyright</key>

View File

@ -135,7 +135,6 @@
4BB409EE1DDA77E9005F39A2 /* ProxyWorkspaceBar.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4BB409ED1DDA77E9005F39A2 /* ProxyWorkspaceBar.swift */; };
4BB409EF1DDA77E9005F39A2 /* ProxyWorkspaceBar.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4BB409ED1DDA77E9005F39A2 /* ProxyWorkspaceBar.swift */; };
4BB489431D952CF6005BB0E8 /* WorkspaceToolButton.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4BB489411D952CF6005BB0E8 /* WorkspaceToolButton.swift */; };
4BB727131E97A6E5001571C1 /* DispatchUtils.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4BEE79141D16D2100012EDAA /* DispatchUtils.swift */; };
4BB727141E97A718001571C1 /* CocoaMarkdown.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 4B183E0D1E06E2940079E8A8 /* CocoaMarkdown.framework */; };
4BB727151E97A718001571C1 /* CocoaMarkdown.framework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = 4B183E0D1E06E2940079E8A8 /* CocoaMarkdown.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; };
4BBFF8621E280E31008A3C1A /* Swifter.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 4BBFF8611E280E31008A3C1A /* Swifter.framework */; };
@ -175,7 +174,6 @@
4BEBA5091CFF374B00673FDF /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4BEBA5081CFF374B00673FDF /* AppDelegate.swift */; };
4BEBA50B1CFF374B00673FDF /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 4BEBA50A1CFF374B00673FDF /* Assets.xcassets */; };
4BEBA50E1CFF374B00673FDF /* MainMenu.xib in Resources */ = {isa = PBXBuildFile; fileRef = 4BEBA50C1CFF374B00673FDF /* MainMenu.xib */; };
4BEE79151D16D2100012EDAA /* DispatchUtils.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4BEE79141D16D2100012EDAA /* DispatchUtils.swift */; };
4BEE79171D16D3800012EDAA /* CellAttributes.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4BEE79161D16D3800012EDAA /* CellAttributes.swift */; };
4BF07EE41D51326A009BECEB /* Credits.rtf in Resources */ = {isa = PBXBuildFile; fileRef = 4BF07EE61D51326A009BECEB /* Credits.rtf */; };
4BF6E29C1D34153C0053FA76 /* KeyUtils.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4BF6E29B1D34153C0053FA76 /* KeyUtils.swift */; };
@ -453,7 +451,6 @@
4BEBA5141CFF374B00673FDF /* VimRTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = VimRTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; };
4BEBA51A1CFF374B00673FDF /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
4BEBA6621D00157A00673FDF /* runtime */ = {isa = PBXFileReference; lastKnownFileType = folder; name = runtime; path = neovim/runtime; sourceTree = SOURCE_ROOT; };
4BEE79141D16D2100012EDAA /* DispatchUtils.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = DispatchUtils.swift; sourceTree = "<group>"; };
4BEE79161D16D3800012EDAA /* CellAttributes.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = CellAttributes.swift; sourceTree = "<group>"; };
4BF07EE51D51326A009BECEB /* Base */ = {isa = PBXFileReference; lastKnownFileType = text.rtf; name = Base; path = Base.lproj/Credits.rtf; sourceTree = "<group>"; };
4BF6E29B1D34153C0053FA76 /* KeyUtils.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = KeyUtils.swift; sourceTree = "<group>"; };
@ -691,7 +688,6 @@
4B4192171D0C52D700A0BEB2 /* Grid.swift */,
4BCADE071D11ED12004DAD0F /* CocoaExtensions.swift */,
4B1BB3521D16C5E500CA4FEF /* InputTestView.swift */,
4BEE79141D16D2100012EDAA /* DispatchUtils.swift */,
4BF6E29B1D34153C0053FA76 /* KeyUtils.swift */,
4B8AC0431DBCB3A1007CCC9B /* NeoVimObjectsExtensions.swift */,
);
@ -1258,7 +1254,6 @@
4B401B1A1D046E0600D99EDC /* NeoVimViewDelegate.swift in Sources */,
1929B728262BAA14FC93F6AC /* NeoVimView.swift in Sources */,
4B570DC31D303CAF006EDC21 /* NeoVimAgent.m in Sources */,
4BEE79151D16D2100012EDAA /* DispatchUtils.swift in Sources */,
4BDF641D1D0887C100D47E1D /* TextDrawer.m in Sources */,
4BDF64251D08CAB000D47E1D /* MMCoreTextView.m in Sources */,
4BDD058C1DBBC50000D1B405 /* NeoVimWindow.m in Sources */,
@ -1280,7 +1275,6 @@
isa = PBXSourcesBuildPhase;
buildActionMask = 2147483647;
files = (
4BB727131E97A6E5001571C1 /* DispatchUtils.swift in Sources */,
4B280EFF1D945DA5003FE725 /* AppKitCommons.swift in Sources */,
4B3965371DEB21300082D3C1 /* InnterToolBar.swift in Sources */,
4B6423AF1D8EFEA800FC78C8 /* Workspace.swift in Sources */,
@ -1499,7 +1493,7 @@
COMBINE_HIDPI_IMAGES = YES;
DEFINES_MODULE = YES;
DYLIB_COMPATIBILITY_VERSION = 1;
DYLIB_CURRENT_VERSION = 179;
DYLIB_CURRENT_VERSION = 180;
DYLIB_INSTALL_NAME_BASE = "@rpath";
FRAMEWORK_SEARCH_PATHS = (
"$(inherited)",
@ -1523,7 +1517,7 @@
COMBINE_HIDPI_IMAGES = YES;
DEFINES_MODULE = YES;
DYLIB_COMPATIBILITY_VERSION = 1;
DYLIB_CURRENT_VERSION = 179;
DYLIB_CURRENT_VERSION = 180;
DYLIB_INSTALL_NAME_BASE = "@rpath";
FRAMEWORK_SEARCH_PATHS = (
"$(inherited)",
@ -1650,7 +1644,6 @@
GCC_PREPROCESSOR_DEFINITIONS = (
"DEBUG=1",
"$(inherited)",
"CUSTOM_UI=1",
"INCLUDE_GENERATED_DECLARATIONS=1",
);
HEADER_SEARCH_PATHS = (
@ -1675,10 +1668,7 @@
4B854A201D31447C00E08DE1 /* Release */ = {
isa = XCBuildConfiguration;
buildSettings = {
GCC_PREPROCESSOR_DEFINITIONS = (
"INCLUDE_GENERATED_DECLARATIONS=1",
"CUSTOM_UI=1",
);
GCC_PREPROCESSOR_DEFINITIONS = "INCLUDE_GENERATED_DECLARATIONS=1";
HEADER_SEARCH_PATHS = (
"$(PROJECT_DIR)/neovim/build/include",
"$(PROJECT_DIR)/neovim/src",
@ -1719,7 +1709,7 @@
CLANG_WARN_UNREACHABLE_CODE = YES;
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
COPY_PHASE_STRIP = NO;
CURRENT_PROJECT_VERSION = 179;
CURRENT_PROJECT_VERSION = 180;
DEBUG_INFORMATION_FORMAT = dwarf;
ENABLE_STRICT_OBJC_MSGSEND = YES;
ENABLE_TESTABILITY = YES;
@ -1769,7 +1759,7 @@
CLANG_WARN_UNREACHABLE_CODE = YES;
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
COPY_PHASE_STRIP = NO;
CURRENT_PROJECT_VERSION = 179;
CURRENT_PROJECT_VERSION = 180;
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
ENABLE_NS_ASSERTIONS = NO;
ENABLE_STRICT_OBJC_MSGSEND = YES;

View File

@ -38,7 +38,7 @@ class FileItem : CustomStringConvertible, Hashable, Comparable, Copyable {
var description: String {
return "<FileItem: \(self.url), dir=\(self.isDir), hidden=\(self.isHidden), package=\(self.isPackage), "
+ "needsScan=\(self.needsScanChildren), childrenScanned=\(self.childrenScanned), "
+ "ignore=\(self.ignore), ignoreToken=\(self.ignoreToken), "
+ "ignore=\(self.ignore), ignoreToken=\(String(describing: self.ignoreToken)), "
+ "children=\(self.children.count)>"
}

View File

@ -36,7 +36,7 @@
<key>CFBundlePackageType</key>
<string>APPL</string>
<key>CFBundleShortVersionString</key>
<string>SNAPSHOT-179</string>
<string>SNAPSHOT-180</string>
<key>CFBundleSignature</key>
<string>????</string>
<key>CFBundleURLTypes</key>
@ -53,7 +53,7 @@
</dict>
</array>
<key>CFBundleVersion</key>
<string>179</string>
<string>180</string>
<key>LSMinimumSystemVersion</key>
<string>$(MACOSX_DEPLOYMENT_TARGET)</string>
<key>NSHumanReadableCopyright</key>

View File

@ -286,7 +286,7 @@ class MainWindow: NSObject,
fileprivate func open(urls: [URL: OpenMode]) {
// If we don't call the following in the next tick, only half of the existing swap file warning is displayed.
// Dunno why...
DispatchUtils.gui {
DispatchQueue.main.async {
urls.forEach { (url: URL, openMode: OpenMode) in
switch openMode {

View File

@ -47,8 +47,8 @@ class OpenQuicklyFilterOperation: Operation {
let truncatedItems = self.flatFileItems[0...min(self.maxResultCount, self.flatFileItems.count - 1)]
sorted = truncatedItems.map { ScoredFileItem(score: 0, url: $0.url) }
} else {
DispatchUtils.gui { self.openQuickly.startProgress() }
defer { DispatchUtils.gui { self.openQuickly.endProgress() } }
DispatchQueue.main.async { self.openQuickly.startProgress() }
defer { DispatchQueue.main.async { self.openQuickly.endProgress() } }
let count = self.flatFileItems.count
let chunksCount = Int(ceil(Float(count) / Float(self.chunkSize)))
@ -107,7 +107,7 @@ class OpenQuicklyFilterOperation: Operation {
return
}
DispatchUtils.gui {
DispatchQueue.main.async {
let result = Array(sorted[0...min(self.maxResultCount, sorted.count - 1)])
self.openQuickly.reloadFileView(withScoredItems: result)
}

View File

@ -66,7 +66,7 @@ class WorkspaceTool: NSView {
}
set {
DispatchUtils.gui {
DispatchQueue.main.async {
self.innerToolbar?.customToolbar = newValue
}
}

View File

@ -15,10 +15,10 @@
<key>CFBundlePackageType</key>
<string>BNDL</string>
<key>CFBundleShortVersionString</key>
<string>SNAPSHOT-179</string>
<string>SNAPSHOT-180</string>
<key>CFBundleSignature</key>
<string>????</string>
<key>CFBundleVersion</key>
<string>179</string>
<string>180</string>
</dict>
</plist>

View File

@ -7,23 +7,23 @@
<description>Most recent changes with links to updates for VimR.</description>
<language>en</language>
<item>
<title>SNAPSHOT-179</title>
<title>SNAPSHOT-180</title>
<description><![CDATA[
<ul>
<li>GH-389: Bugfix: The Files tool does not update when one folder is created.</li>
<li>GH-374: Bugfix: The tool buttons have a narrow area which does not react to mouse down when the tool is closed.</li>
<li>Hopefully the last snapshot before next release... 🙄</li>
<li>GH-405: Retain scroll position after reloading markdown</li>
</ul>
]]></description>
<releaseNotesLink>
https://github.com/qvacua/vimr/releases/tag/snapshot/179
https://github.com/qvacua/vimr/releases/tag/snapshot/180
</releaseNotesLink>
<pubDate>2017-04-18T20:29:01.988795</pubDate>
<pubDate>2017-04-23T22:14:51.677227</pubDate>
<minimumSystemVersion>10.10.0</minimumSystemVersion>
<enclosure url="https://github.com/qvacua/vimr/releases/download/snapshot/179/VimR-SNAPSHOT-179.tar.bz2"
sparkle:version="179"
sparkle:shortVersionString="SNAPSHOT-179"
sparkle:dsaSignature="MCwCFAFGLFa7V2SQYzW4n7Dn597DYd1pAhQza31EfX9DDPask+g/0rVCowRIoA=="
length="12098297"
<enclosure url="https://github.com/qvacua/vimr/releases/download/snapshot/180/VimR-SNAPSHOT-180.tar.bz2"
sparkle:version="180"
sparkle:shortVersionString="SNAPSHOT-180"
sparkle:dsaSignature="MC0CFGo8Gdgf38jMxf6/8Z8bKiuwC1bhAhUAnYOLIwl4CeaTluqpOV4t1plXmz0="
length="12205687"
type="application/octet-stream"/>
</item>
</channel>

View File

@ -6,6 +6,13 @@
* GH-398: Set the represented icon in the window title bar.
* GH-389: Bugfix: The Files tool does not update when one folder is created.
* GH-374: Bugfix: The tool buttons have a narrow area which does not react to mouse down when the tool is closed.
* Dependencies updates:
- RxSwift: 3.4.0
- Sparkle: 1.17
- github-markdown-css: 2.6.0
- swifter: 1.3.3
- Nimble: 6.1.0
- neovim: neovim/neovim@337299c8082347feecb5e733bed993c6a5933456
# 0.13.1-167