NSCursor set не работает на не сфокусированном окне

РЕДАКТИРОВАТЬ: я сделал небольшой проект XCode на GitHub, который повторяет проблему, которую я описываю: https://github.com/mdinacci/testnscursor

У меня есть обычай NSTableCellView в котором я отслеживаю события входа / выхода мыши над NSTextField, Когда мышь входит в поле, я меняю курсор на указывающую руку:

- (void)mouseEntered:(NSEvent *)theEvent
{
    NSCursor *cursor = [NSCursor pointingHandCursor];
    [cursor set];
}

- (void)mouseExited:(NSEvent *)theEvent
{
    NSCursor *cursor = [NSCursor arrowCursor];
    [cursor set];
}

Таблица отображается внутри NSPopover и приведенный выше код прекрасно работает, когда поповер находится в фокусе, но не работает, когда поповер не сфокусирован. Вид ячейки получает события входа / выхода, но курсор просто не обновляется.

Это ошибка? Любые идеи, почему курсор не будет обновляться, когда поповер не в фокусе?

1 ответ

Решение

Apple подтвердила, что это ошибка (#2277286), и, насколько я знаю, доступного обходного пути нет.

Другие вопросы по тегам