Merge pull request #1757 from mitchellh/point

macos: ime coordinate needs to be converted from view to window coords
This commit is contained in:
Mitchell Hashimoto
2024-05-10 20:55:08 -07:00
committed by GitHub

View File

@ -971,11 +971,14 @@ extension Ghostty.SurfaceView: NSTextInputClient {
// Ghostty coordinates are in top-left (0, 0) so we have to convert to // Ghostty coordinates are in top-left (0, 0) so we have to convert to
// bottom-left since that is what UIKit expects // bottom-left since that is what UIKit expects
let rect = NSMakeRect(x, frame.size.height - y, 0, 0) let viewRect = NSMakeRect(x, frame.size.height - y, 0, 0)
// Convert the point to the window coordinates
let winRect = self.convert(viewRect, to: nil)
// Convert from view to screen coordinates // Convert from view to screen coordinates
guard let window = self.window else { return rect } guard let window = self.window else { return winRect }
return window.convertToScreen(rect) return window.convertToScreen(winRect)
} }
func insertText(_ string: Any, replacementRange: NSRange) { func insertText(_ string: Any, replacementRange: NSRange) {