Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 1 addition & 3 deletions Free Ruler/AppDelegate.swift
Original file line number Diff line number Diff line change
Expand Up @@ -867,9 +867,7 @@ extension AppDelegate {
}

private func updateMouseLocation() {
var mouseLoc = NSEvent.mouseLocation
mouseLoc.x = mouseLoc.x.rounded()
mouseLoc.y = mouseLoc.y.rounded()
let mouseLoc = NSEvent.mouseLocation

for controller in rulerManager.controllers where controller.isVisible {
controller.drawMouseTick(at: mouseLoc)
Expand Down
6 changes: 5 additions & 1 deletion Free Ruler/HorizontalRule.swift
Original file line number Diff line number Diff line change
Expand Up @@ -120,7 +120,11 @@ class HorizontalRule: RuleView {

let windowPoint = window.convertPoint(fromScreen: mouseLoc)
let viewPoint = convert(windowPoint, from: nil)
mouseTickX = viewPoint.x
mouseTickX = mouseTickX(forLocalMouseX: viewPoint.x)
}

func mouseTickX(forLocalMouseX localMouseX: CGFloat) -> CGFloat {
return localMouseX.rounded()
}

func drawMouseTick(_ mouseTickX: CGFloat) {
Expand Down
6 changes: 5 additions & 1 deletion Free Ruler/VerticalRule.swift
Original file line number Diff line number Diff line change
Expand Up @@ -125,7 +125,11 @@ class VerticalRule: RuleView {

let windowPoint = window.convertPoint(fromScreen: mouseLoc)
let viewPoint = convert(windowPoint, from: nil)
mouseTickY = viewPoint.y
mouseTickY = mouseTickY(forLocalMouseY: viewPoint.y)
}

func mouseTickY(forLocalMouseY localMouseY: CGFloat) -> CGFloat {
return localMouseY.rounded()
}

func drawMouseTick(_ mouseTickY: CGFloat) {
Expand Down
4 changes: 4 additions & 0 deletions FreeRulerTests/RulerCoreTests.swift
Original file line number Diff line number Diff line change
Expand Up @@ -2033,6 +2033,8 @@ final class RulerCoreTests: XCTestCase {
rule.mouseTickLineX(forTickX: 299, growthDirection: .negative),
299
)
XCTAssertEqual(rule.mouseTickX(forLocalMouseX: 50.49), 50)
XCTAssertEqual(rule.mouseTickX(forLocalMouseX: 50.5), 51)

let bottomTick = rule.tickLine(forX: 50, length: 10, rulerHeight: 40, tickSide: .bottom)
XCTAssertEqual(bottomTick.start, CGPoint(x: 50, y: 1))
Expand Down Expand Up @@ -2093,6 +2095,8 @@ final class RulerCoreTests: XCTestCase {
rule.mouseTickLineY(forTickY: 1, growthDirection: .positive),
1
)
XCTAssertEqual(rule.mouseTickY(forLocalMouseY: 50.49), 50)
XCTAssertEqual(rule.mouseTickY(forLocalMouseY: 50.5), 51)

let rightTick = rule.tickLine(forY: 250, length: 10, rulerWidth: 40, tickSide: .right)
XCTAssertEqual(rightTick.start, CGPoint(x: 39, y: 250))
Expand Down