Re: Cursor updates - bug or programmer ignorance?
Re: Cursor updates - bug or programmer ignorance?
- Subject: Re: Cursor updates - bug or programmer ignorance?
- From: Quincey Morris <email@hidden>
- Date: Wed, 21 Jan 2009 11:41:11 -0800
On Jan 21, 2009, at 10:49, Luke Evans wrote:
I tried the trojan horse NSCursor subclass. The backtrace is:
(gdb) backtrace
#0 -[TraceCursor set] (self=0x13b5a0, _cmd=0x96c69d34) at /Users/
luke/Projects/TableTester/TraceCursor.m:24
#1 0x911d85ce in _handleInvalidCursorRectsNote ()
#2 0x935cb9a2 in __CFRunLoopDoObservers ()
#3 0x935cccfc in CFRunLoopRunSpecific ()
#4 0x935cdcd8 in CFRunLoopRunInMode ()
#5 0x93a022c0 in RunCurrentEventLoopInMode ()
#6 0x93a020d9 in ReceiveNextEventCommon ()
#7 0x93a01f4d in BlockUntilNextEventMatchingListInMode ()
#8 0x9114cd7d in _DPSNextEvent ()
#9 0x9114c630 in -[NSApplication
nextEventMatchingMask:untilDate:inMode:dequeue:] ()
#10 0x9114566b in -[NSApplication run] ()
#11 0x911128a4 in NSApplicationMain ()
#12 0x000025d8 in main (argc=1, argv=0xbffff768) at /Users/luke/
Projects/TableTester/main.m:13
The only thing I can see (vaguely) useful here is the
_handleInvalidCursorRectsNote, the rest being just event marshalling.
Maybe this is just old-school cursor management demanding attention
when I thought I could just implement the modern tracking area stuff
to manage the cursor?
It shouldn't be necessary to do any cursorRects management if you're
not using them yourself. Something is calling resetCursorRects (or a
similar method), and NSScrollView is dutifully paying attention.
You probably have enough specific information here to justify a bug
report, assuming there aren't (say) any custom or 3rd-party controls
in the window that might be messing with the cursor rects.
As a workaround, you could also try calling disableCursorRects for the
window. The only two important cases of built-in cursor changing
behavior I can think of are setting the I-beam in text fields and
resetting to the arrow when exiting a managed region, and I *think*
they both use NSTrackingArea now -- so disabling cursor rects might
not break anything important. :)
_______________________________________________
Cocoa-dev mailing list (email@hidden)
Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden