Closed Bug 78610 Opened 24 years ago Closed 24 years ago

winEmbed: can't type in form fields

Categories

(Core Graveyard :: Embedding: APIs, defect)

defect
Not set
blocker

Tracking

(Not tracked)

VERIFIED FIXED
mozilla0.9.2

People

(Reporter: edburns, Assigned: adamlock)

References

()

Details

Attachments

(1 file)

Users of Webclient, winEmbed, and probably all other embedding apps can no longer type in text fields in a form! Reproducible: Always Steps to reproduce: 1. Build winEmbed, or webclient on Linux (other embedding apps probably will feel the same bug). 2. Visit http://bugzilla.mozilla.org/ 3. Click on the text field. No cursor appears, and you can't type. This is a real bummer.
In my case, in SkipStone, it happens almost all the time but clicking around the page then reclicking in an entry shows the cursor, its annoying nontheless..
ccing blizzard :)
*** This bug has been marked as a duplicate of 76617 ***
Status: NEW → RESOLVED
Closed: 24 years ago
Resolution: --- → DUPLICATE
I'm reopening this since ccarlen closed 76617 and I'm still seeing the problem with today's trunk.
Status: RESOLVED → REOPENED
Resolution: DUPLICATE → ---
I'm still seeing this with winEmbed with yesterday's trunk. This bug is killing me. Can someone please fix it or give me some clues about how to fix it? Thanks, Ed
Severity: critical → blocker
Target Milestone: --- → mozilla0.9.1
See bug 71014 for the code that embedders need to insert to do focus. winEmbed doesn't have it which is why focus doesn't work. mfcEmbed does have it and works as expected. I'm renaming this bug to cover just winEmbed
Summary: Embedding App: can't type in form fields → winEmbed: can't type in form fields
Patch fixes the problem with setting focus when the window is activated. A new comment to bug 64349 suggests there may still be problems cycling between the address field and HTML forms, but this fixes the biggest issue.
Adam, I need an explanation of why I suddenly have to introduce non-xp code into my embedding app when I never needed it before? Until recently, this "just worked". Now, what you're saying I must do is make some platform specific modifications to me embedding app. That really bites. Currently, in my webclient embedding app, there is no code whatsoever that handles any WM_* messages. I have no idea where such code would be inserted, since we don't have a message proc in our app. Please see mozilla/java/webclient/src_moz.
Adam, thanks for your response, but the fact that I have to do this now just to get forms to work for the user is a major regression in my opinion. Can't the embedding APIs do this for me? Can someone please explain the rationale for requiring Embedding apps to do this, especially since it worked before.
Ed, pls try this patch. It enables me to type inside forms on Solaris. If you accept this patch, pls give me ra and I'll check it in. Index: mozilla/java/webclient/src_moz/CBrowserContainer.cpp =================================================================== RCS file: /cvsroot/mozilla/java/webclient/src_moz/CBrowserContainer.cpp,v retrieving revision 1.19 diff -u -r1.19 CBrowserContainer.cpp --- CBrowserContainer.cpp 2001/05/10 20:47:06 1.19 +++ CBrowserContainer.cpp 2001/05/10 22:58:53 @@ -28,6 +28,7 @@ #include "CBrowserContainer.h" #include "nsCWebBrowser.h" #include "nsIWebBrowser.h" +#include "nsIWebBrowserFocus.h" #include "nsIRequest.h" #include "nsIDOMNamedNodeMap.h" #include "nsIDOMWindow.h" @@ -619,6 +620,10 @@ nsresult JNICALL CBrowserContainer::doEndDocumentLoad(nsIWebProgress *aWebProgress) { + + nsCOMPtr<nsIWebBrowserFocus> focus(do_GetInterface(mInitContext->webBrowser)); + focus->Activate(); + nsCOMPtr<nsIDOMWindow> domWin; if (nsnull != aWebProgress) {
I agree that you shouldn't need to put any code into the client to activate the browser when someone clicks on it. However it is the client's responsibility to activate the browser window when the containing frame is activated. The patch I submitted does that latter. We still have to resolve the "clicking on the browser does not give focus" issue, but applying the patch or similar to your own code means at least you can type into form fields even if you have to switch away from the app and back again.
Works on win32 as well. ra=edburns. Great work Ashu.
By the way. I'm typing this using Webclient.
patch checked into Webclient. Adam, if you have checked in the patch for winEmbed, pls close this Bug. thnx.
If someone wants to review my patch, I'll be happy to checkin. winEmbed is only a test app so no sr should be required.
Looks okay, r=jag
Fix for winEmbed is checked in. Larger problem that clicking on form fields in embedding apps doesn't work is still outstanding.
I think saari had some other bug about windows embedding and widgets...
*** Bug 81729 has been marked as a duplicate of this bug. ***
Moving to 0.9.2. This bug will be closed off when I find the other bugs dealing with the outstanding problems.
Status: REOPENED → ASSIGNED
Target Milestone: mozilla0.9.1 → mozilla0.9.2
Remaining focus problems covered by 83201
Status: ASSIGNED → RESOLVED
Closed: 24 years ago24 years ago
Resolution: --- → FIXED
Clean up verification of dated code change bus
Status: RESOLVED → VERIFIED
Product: Core → Core Graveyard
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: