Closed Bug 1916 Opened 26 years ago Closed 23 years ago

META: Complete CSS2/3 cursor property support

Categories

(Core :: CSS Parsing and Computation, defect, P3)

defect

Tracking

()

VERIFIED WORKSFORME
Future

People

(Reporter: twilight, Assigned: pierre)

References

(Blocks 1 open bug)

Details

(Keywords: css2, css3, meta)

Attachments

(1 file)

The Following 8 Values for the Cursor property do not work. ne-resize nw-resize se-resize sw-resize wait help crosshair url("yourcursor.cur") <URI> The URL submitted has 6 of those cursors to be used but only show the default cursor. I did not include SE and SW resizes since they are in a sence the same as the NW and NE respectively. This was mentioned on the newsgroup for NGLayout, and as I said I am submitting this as a bug. I am using the Mozilla Nightly Build built on 98-12-12
Adding myself, joki and Bill Law to the cc: list. We'll need to load the cur/csr URL as a resource... should be tricky.
Assignee: peterl → joki
Two comments: 1) The above URL is broken. Has it moved or is it gone? 2) ne-resize and sw-resize, etc. may be the same on Windows, but they are not the same in X-Win (which has more descriptive looking resize cursors).
Sorry about that, someone renamed it to .html (back to css.htm now)
Whiteboard: [MAKINGTEST] Antti.Nayha@oulu.fi
Severity: trivial → minor
Summary: 8 Values for the Cursor Property (CSS2) do not work → 9 Values for the Cursor Property (CSS2) do not work
Whiteboard: [MAKINGTEST] Antti.Nayha@oulu.fi → [TESTCASE] CSS2 cursor property values need to be implemented
Removed the URL as it was still broken. Rewrote the bug report in accordance to the guidelines as follows: Overview Description: 9 values of CSS2's cursor property aren't supported. These are - crosshair - move - ne-resize - se-resize - sw-resize - nw-resize - wait - help - url('yourcursor.cur') Also, we might or might not want to support IE's proprietary "hand" value which is effectively a synonyme of "pointer". Steps to reproduce: 1. View the "CSS2 cursor property test" attachment. 2. Hover your mouse on each list item. Actual results: When the mouse is hovering over any of the nine (plus 1 non-standard) aforementioned property values, the default cursor is displayed. Expected results: When the mouse is hovering over any property value, the appropriate cursor should be displayed. (Note: I'm not sure whether downloadable cursors are going to be supported, but the custom cursor test should at least degrade properly - ie. it should display the "move" cursor.) Build Date & Platform: Originally reported on 1998-12-12 build on Windows 98. Additional Builds & Platforms: - M7 on Windows NT 4.0 SP4 - build 1999070408 (Viewer & Apprunner) on Windows NT 4.0 SP4
Attached file CSS2 cursor property test (deleted) —
The 'wait' cursor is working on linux, but the 4 working '?-resize' cursors show up as crosshair (but crosshair doesn't), even though that's not what my wm's resize cursors look like. Furthermore, cursor:auto produces an I-bar cursor over links. I *think* this is wrong. See: http://www.fas.harvard.edu/~dbaron/css/test/sec1801
*** Bug 12738 has been marked as a duplicate of this bug. ***
*** Bug 13545 has been marked as a duplicate of this bug. ***
Assignee: joki → kmcclusk
Target Milestone: M13
from bug #13545: ------- Additional Comments From trudelle@netscape.com 09/13/99 16:11 ------- The rollovers all work for me in today's Apprunner opt build. Many of the cursors work too, the exact same set that work in Viewer. This is not an XPToolkit feature, it has to work even if the toolkit is not there. We are implementing a layer of support above this, for XPFE apps to change the cursor without a WebShell or CSS, but I think someone in Gecko owns this. reassigning to rickg for triage. ------- Additional Comments From rickg@netscape.com 09/19/99 11:46 ------- One for you. ------- Additional Comments From peterl@netscape.com 09/21/99 17:11 ------- Looks like nsWindow doesn't know how to handle all the cursor types.
Severity: minor → normal
OS: Windows 98 → All
Priority: P4 → P3
Hardware: PC → All
The root of the problem seems to be in nsEventStateManager::UpdateCursor at http://lxr.mozilla.org/seamonkey/source/layout/events/src/nsEventStateManager.cpp#605 where multiple CSS cursor types map to a single nsCursor value at a number of points. So, what's needed are additional enum values for nsCursor, which is defined in http://lxr.mozilla.org/seamonkey/source/widget/public/nsIWidget.h#135 Then, all the different platform's SetCursor functions, see http://lxr.mozilla.org/seamonkey/ident?i=SetCursor must handle these new values. The GTK work is easy (the constants are in /usr/include/gdk/gdkcursors.h on an RH 6.0 system), and the other platforms are probably pretty easy too - the hard part is finding the names of the constants - and they could be mapped to existing types until they're properly fixed so one person doesn't have to do all at once. All the other uses of nsCursor would need to be checked too - see http://lxr.mozilla.org/seamonkey/ident?i=nsCursor , but it doesn't look (at a quick glance) like there are any other case statements involving the types...
*** Bug 16660 has been marked as a duplicate of this bug. ***
Status: NEW → ASSIGNED
Target Milestone: M13 → M14
Moving to M14
*** Bug 22108 has been marked as a duplicate of this bug. ***
Keywords: css2
Bulk moving [testcase] code to new testcase keyword. Sorry for the spam!
Keywords: testcase
*** Bug 24982 has been marked as a duplicate of this bug. ***
Moving to M15
Target Milestone: M14 → M15
Whiteboard: [TESTCASE] CSS2 cursor property values need to be implemented → CSS2 cursor property values need to be implemented
Blocks: 30971
No longer blocks: 30971
Kevin: after you fix this in XP code and Windows, please reassign to me to fix the Mac resources.
Added support for crosshair, move, and help cursors on WIN32.
Moving to M17.
Target Milestone: M15 → M17
Moving to M18
Target Milestone: M17 → M18
Reassigning to rod.
Assignee: kmcclusk → rods
Status: ASSIGNED → NEW
I have checked in support on Windows for {ne-resize, se-resize, sw-resize, nw-resize} from CSS2 and the cursors from CSS3 that make sense for Windows. CSS2 cursor support on Windows should be now complete except for "cursor: auto" and 'cursor: url("yourcursor.cur")'. There are seperate bugs to fix "cursor: auto" (bug #30971), implement the support for CSS2/3 cursors on Mac (bug #38444) and Gtk (bug #38445), and implement 'cursor: url("yourcursor.cur")'. So, I'm changing this to be a meta bug about the cursor property. When CSS2/3 cursor property support is complete on all platforms, this bug can be closed and verified.
Assignee: rods → pierre
Depends on: 30971, 38444, 38445, 38447
Keywords: testcasecss3, meta
Summary: 9 Values for the Cursor Property (CSS2) do not work → META: Complete CSS2/3 cursor property support
Whiteboard: CSS2 cursor property values need to be implemented
Status: NEW → ASSIGNED
This bug has been marked "future" because the original netscape engineer working on this is over-burdened. If you feel this is an error, that you or another known resource will be working on this bug, or if it blocks your work in some way -- please attach your concern to the bug for reconsideration. (leaving the related bug open; the repective owners will take care of them or mark them "future")
Target Milestone: M18 → Future
I'm sorry to hear that you are overworked... I would like to put in my vote for having this worked on however. I just entered an enhancement request #45789 before I found this meta-bug. My main concern is the hand/pointer issue that is really a thorn in my side right now. However, the ability to use a uri (like the CSS spec details) would be incredibly useful as well. Any chance of bringing this in from Future to say M17 or M18? I guess I could try to pick it up but it would be my first excursion into the Mozilla code...
Kahli, as you have seen the bug you opened (45789) was closed as dup of bug 40298 which gives a workaround for the problem with 'cursor:hand'. Thanks for volunteering to fix that bug. Basically, you just need to add the resources on the Mac and on Unix (bug 38444 and bug 38445). We will not support 'cursor:url()' for this version. That would require a lot more changes to receive the cursor from the host and to convert it from a standard format (jpg/gif) to a native cursor resource on all 3 platforms. The problem I see in that conversion (on the Mac at least) is where should we locate the "hit point" on the cursor?
Pierre, Sorry to say that if I have a workaround I'm not going to be able to pick this up. I am working on a project for my company right now to port our IE web application to Netscape 6/Mozilla. I have a very aggressive schedule to work with, so I can really only spend my time working on Mozilla code if there is not a workaround and if it looks like my problem is not going to get fixed any other way. I'm sorry if I led you on with my comment about fixing this. I will try to help Mozilla's efforts by reporting bugs I find and creating quality test cases to help you track down problems. Thanks for taking the time to respond to me, I hope you are not too disappointed. I certainly support your work and find the transparency of this project to be immensely helpful.
Blocks: 45097
As far as I can tell, this is blocking bug 45097, which asks for the ability to provide cursor feedback (e.g. the hourglass on win32), something that users have come to expect from an app. Thus, I, too, would like to register my desire that this be fixed, should you have some time, pierre.
Blake: it works on Windows (see [Michael Lowe 2000-05-07 07:11]), I just fixed the problem on the Mac (bug 38445) and sent a reminder to Pav for Unix (bug 38444). I'm not sure bug 30971 is valid (I'll check it later) and I'm removing the dependency with bug 45097.
No longer blocks: 45097
Netscape's standard compliance QA team reorganised itself once again, so taking remaining non-tables style bugs. Sorry about the spam. I tried to get this done directly at the database level, but apparently that is "not easy because of the shadow db", "plus it screws up the audit trail", so no can do...
QA Contact: chrisd → ian
I'm marking this meta bug WorksForMe. I don't need it anymore to track the problems with the cursor. Bug 30971 (on my list) will be checked in shortly and bug 38444 (on pavlov's list) is mostly fixed.
Status: ASSIGNED → RESOLVED
Closed: 23 years ago
Resolution: --- → WORKSFORME
v
Status: RESOLVED → VERIFIED
Blocks: 280331
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: