And to be even more clear, if you want to set the cursor in app code you can do that already.
If you can't figure out _when_ to do that, that's more or less your problem; neither can the docshell code. App has strictly more information here than docshell does.
If the issue is that you want to set the cursor only in some states and not others, then it sounds like we need a new magic cursor value for that; that would be the "additional core api" I mention in comment 36.
If you want to just back out bug 481359 while you figure out the right way to fix this and then put that patch back in, I can probably buy that. But let's stop thrashing the core code here every time the Firefox UI wants changing.
And just to be very clear, I am strongly opposed to any platform ifdefs in this code if they can be avoided. If we have to have per-platform behavior in the core (which I'm not seeing any need for!) it'll be a pref.
And to be even more clear, if you want to set the cursor in app code you can do that already.
If you can't figure out _when_ to do that, that's more or less your problem; neither can the docshell code. App has strictly more information here than docshell does.
If the issue is that you want to set the cursor only in some states and not others, then it sounds like we need a new magic cursor value for that; that would be the "additional core api" I mention in comment 36.
If you want to just back out bug 481359 while you figure out the right way to fix this and then put that patch back in, I can probably buy that. But let's stop thrashing the core code here every time the Firefox UI wants changing.
And just to be very clear, I am strongly opposed to any platform ifdefs in this code if they can be avoided. If we have to have per-platform behavior in the core (which I'm not seeing any need for!) it'll be a pref.