Opened 12 years ago

Closed 11 years ago

#2105 closed defect (fixed)

Chromium/Google Chrome cursor displacement in Ajax viewer

Reported by: gabrimonfa Owned by:
Priority: low Milestone: 2.5
Component: General Version: 2.2.0
Severity: trivial Keywords:
Cc: External ID:

Description

Current version of Chromium/Google Chrome shows an annoying cursor displacementin Ajax Viewer.

In editing mode (with the cross cursor), the point received from the map is not in position (0.5,0.5), at the center of the cross, but instead at or near position (0,0), at left upper corner of the bounding box of the cross.

This way drawing in redline layers is a real pain since the points are always not in the intended position.

Attachments (1)

2105_patch (612 bytes ) - added by gabrimonfa 11 years ago.
Patch that use a standard cursor for Google Chrome when precision is required

Download all attachments as: .zip

Change History (6)

comment:1 by gabrimonfa, 12 years ago

Hi, this is a Chromium/Chrome bug

https://code.google.com/p/chromium/issues/detail?id=145919 http://code.google.com/p/chromium/issues/detail?id=12578

Since the bug does not appear for standard cursors, a possible workaround is to use plain crosshair cursor instead of beatiful .cur cursors whenever "tip" precision is required (IMHO in digitizing and in measure point precision is required).

For instance, this is how to have standard crosshair in digitizePoint and measure

function SetMapCursor(strCursor) in file: ajaxmappane.templ

  • else
  • {
  • strCursor = "url('../stdicons/" + strCursor + ".cur'), pointer";
  • }

+ else + { + https://code.google.com/p/chromium/issues/detail?id=145919

+ if (chrome && (strCursor == "digitizePoint"
strCursor == "measure"))

+ strCursor = "crosshair"; + else + strCursor = "url('../stdicons/" + strCursor + ".cur'), pointer"; + }

comment:2 by jng, 11 years ago

Do you have this in an easy to apply patch form?

comment:3 by gabrimonfa, 11 years ago

Formatting the code properly in WikiFormatting syntax

-     else 
-     { 
-         strCursor = "url('../stdicons/" + strCursor + ".cur'), pointer"; 
-     }

+     else 
+     { 
+         // https://code.google.com/p/chromium/issues/detail?id=145919
+         if (chrome && (strCursor == "digitizePoint" strCursor == "measure")) 
+             strCursor = "crosshair"; 
+         else 
+             strCursor = "url('../stdicons/" + strCursor + ".cur'), pointer"; 
+     }

I will also attach a patch w.r.t. current trunk

by gabrimonfa, 11 years ago

Attachment: 2105_patch added

Patch that use a standard cursor for Google Chrome when precision is required

comment:4 by jng, 11 years ago

Milestone: 2.5

comment:5 by jng, 11 years ago

Resolution: fixed
Status: newclosed

Fixed r7331 (2.5) r7332 (trunk)

Note: See TracTickets for help on using tickets.