Comment #4 on issue 183 by kingofcamelot: marking and overwriting URLs in  
the address bar
http://code.google.com/p/chromium/issues/detail?id=183

I looked into this problem, and I've figured out what the problem is, and  
how to fix
it, although the fix will change the current address bar behavior.

The current code uses a custom word break function so that 'http://' is  
handled as
one word. This all works fine, but this custom function is what is breaking  
the
address bar double clicking.

When you have a custom word break function, it appears that RichEdit's  
EM_EXGETSEL
uses WB_MOVEWORDLEFT to find the left bound of the word, and  
WB_MOVEWORDRIGHT to find
the right bound. However, WB_MOVEWORDRIGHT is supposed to return the start  
of the
next word, which it does in the custom word break function.

The problem appears to be that the standard WB_MOVEWORDRIGHT considers  
blocks of
punctuation, and just single punctuations, as words, which the custom word  
break
function does not.

So, the simple solution is to change the custom function to treat  
punctuations as
words, however, this will mean that double clicking the '.' in a web  
address will
select just the dot, same with slashes, etc.

The other solution would be to change the double click code for the address  
bar to
manually run the selection code, instead of using EM_EXGETSEL. We would run
WB_MOVEWORDLEFT and WB_RIGHTBREAK, then send the results to EM_EXSETSEL.

Any thoughts on which would be a better method of fixing the issue?

-- 
You received this message because you are listed in the owner
or CC fields of this issue, or because you starred this issue.
You may adjust your issue notification preferences at:
http://code.google.com/hosting/settings

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Chromium-bugs" group.
To post to this group, send email to chromium-bugs@googlegroups.com
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at 
http://groups.google.com/group/chromium-bugs?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to