Cursors via NSCursor
Brought to you by:
torrey
Implementation of X11 cursor handling using NSCursor instead of QuickDraw CCursHandle.
Replaces hw/darwin/bundle/quartzCursor.c. hw/darwin/bundle/Imakefile also needs to be updated to refer to the .m instead of the .c.
Tested with fvwm2's window sizing cursors (various sizes). NOT tested with a real color cursor. NOT tested with cursors larger than 16x16. MallocDebug finds no obvious errors.
quartzCursor.m
Logged In: YES
user_id=37183
Oops, you should probably disable the CURSOR_DEBUG function before committing this.
Logged In: YES
user_id=37183
This patch is buggy: it crashes when the X server restarts (i.e. after all X11 clients exit). Adrian also reports a crash using Netscape, but I haven't reproduced it yet.
Logged In: YES
user_id=37183
Patch for patch. This fixes my restart crash and probably Adrian's Netscape crash:
quartzCursor.m:276
- NSCursor *nsCursor = (NSCursor *)pCursor->devPriv[pScreen->myNum];
+ NSCursor *nsCursor = pCursor ? (NSCursor *)pCursor->devPriv[pScreen->myNum] : nil;
Logged In: NO
I am new to the Unix world. Xfree86 runs on my powerbook G4 800. I
was able to redirect my display from a Unix box but on app I was running
asked for some fonts: timr12, timb14, helvr12, helvr14, helvb12, helvb14.
How do I get these fonts on Xfree86.
Regards,
Johnny
Logged In: YES
user_id=133579
This patch has not been forgotten, it is "maturing". :-) This patch works as advertised in rootless, but breaks cursor switching in full screen Quartz mode. We are considering changing the full screen implementation details so this patch would work there as well. This would have a number of advantages, but until full screen is straightened out this patch is in a holding pattern.
Logged In: YES
user_id=37183
It may be desirable to put this patch on hold. Jaguar contains support for large cursors (64x64 with sufficient hardware), but only through QuickDraw. NSCursor doesn't support the large cursors yet. We may want to implement large QD cursors and not use NSCursor until later, if at all. (Jaguar also may fix the QD cursor crashes that helped motivate this change in the first place.)