Closed
Bug 464315
Opened 17 years ago
Closed 17 years ago
make Mac OS X cursor code 64-bit ready
Categories
(Core :: Widget: Cocoa, defect)
Tracking
()
RESOLVED
FIXED
mozilla1.9.2a1
People
(Reporter: jaas, Assigned: jaas)
References
Details
Attachments
(1 file, 1 obsolete file)
30.64 KB,
patch
|
mstange
:
review+
roc
:
superreview+
|
Details | Diff | Splinter Review |
Some key cursor methods in our Mac OS X cursor implementation are not available in 64-bit. We still use Quickdraw's SetCursor function to display many cursors, and we still load an old-style .rsrc file for cursor images.
This makes our cursor code 64-bit safe by removing usage of all APIs that don't exist in 64-bit Mac OS X. It comes with some behavioral changes, some we should fix and others we probably don't need to.
eCursor_wait: This is now just a regular cursor. 64-bit Mac OS X does not provide such a cursor.
eCursor_copy: This is now just a regular cursor. 64-bit Mac OS X does not provide such a cursor.
eCursor_alias: This is now just a regular cursor. 64-bit Mac OS X does not provide such a cursor.
eCursor_context_menu: This is now just a regular cursor. 64-bit Mac OS X does not provide such a cursor.
eCursor_spinning: This is now just a regular cursor. 64-bit Mac OS X does not provide such a cursor.
eCursor_no_drop, eCursor_not_allowed: This is now just a regular cursor. 64-bit Mac OS X does not provide such a cursor.
I'll see what we can do about using custom images for some of these.
This implements "eCursor_wait" and "eCursor_spinning", the most important of the cursors missing in 64-bit Mac OS X. I implemented them using manual animation of Cocoa cursors based on images. Whether or not we should be using these cursors in Firefox any more is another issue.
I think we should take this patch now despite the remaining missing cursors. They aren't critical and we can file separate bugs on implementing them. This patch uses the standard cursor for the missing cursors.
Attachment #356580 -
Attachment is obsolete: true
Attachment #356585 -
Flags: review?(mstange)
Updated•17 years ago
|
Attachment #356585 -
Flags: review?(mstange) → review+
Comment 3•17 years ago
|
||
Comment on attachment 356585 [details] [diff] [review]
fix v1.1
I can't review the Makefile changes (I have zero experience with makefiles), but they make sense to me.
+/*! @method cocoaCursorWithImageNamed:hotSpot:
+ @abstract Create a Cocoa NSCursor object with a Gecko image resource name and a hotspot point.
Here the alignment is a little wrong.
Other than that, the patch looks good to me.
The old cursorWithFrames method as well as the spinX.tiff images appear to have been unused by Firefox. Are they used by Camino?
Attachment #356585 -
Flags: superreview?(roc)
Attachment #356585 -
Flags: superreview?(roc) → superreview+
(In reply to comment #3)
> The old cursorWithFrames method as well as the spinX.tiff images appear to have
> been unused by Firefox. Are they used by Camino?
I know at one time they were, because at one time someone had made a custom spin cursor that was colorized. However, according to bug 392623, they haven't been since at least 1.9.0; the ones in the .rsrc were overriding the .tiffs instead.
Looks like bug 358159 is now essentially a dupe of this bug, too.
The spinX.tiff images are used in my patch here. They weren't used before. And yes, fixing this will fix 358159.
Comment 6•17 years ago
|
||
(In reply to comment #3)
> Here the alignment is a little wrong.
You didn't fix this in your checkin.
pushed to mozilla-central
http://hg.mozilla.org/mozilla-central/rev/77cadc513819
Markus, I'll fix that in a followup checkin, sorry.
Status: NEW → RESOLVED
Closed: 17 years ago
Resolution: --- → FIXED
![]() |
||
Comment 8•16 years ago
|
||
I didn't find any follow-up bug for the missing cursors. I filed bug 489734.
Comment 9•16 years ago
|
||
Looks like this caused 533801.
Depends on: 533801
Updated•15 years ago
|
Target Milestone: --- → mozilla1.9.2a1
You need to log in
before you can comment on or make changes to this bug.
Description
•