Closed Bug 165055 Opened 18 years ago Closed 15 years ago

IME candidate list is hidden by autocomplete window (Should close popup window when IME is used)

Categories

(Core :: Internationalization, defect)

defect
Not set

Tracking

()

RESOLVED FIXED
mozilla1.8beta2

People

(Reporter: kasumi, Assigned: masayuki)

References

Details

(Keywords: inputmethod, intl)

Attachments

(7 files, 15 obsolete files)

145.03 KB, image/jpeg
Details
2.03 KB, patch
smontagu
: review+
Details | Diff | Splinter Review
5.17 KB, patch
jst
: review+
Details | Diff | Splinter Review
1.10 KB, patch
dbaron
: review+
dbaron
: superreview+
Details | Diff | Splinter Review
15.15 KB, image/png
Details
18.17 KB, patch
bryner
: review+
bryner
: superreview+
Details | Diff | Splinter Review
26.46 KB, patch
masayuki
: review+
masayuki
: superreview+
Details | Diff | Splinter Review
tested on 20020-8-23-1.0
Win XP Pro. JA + SP1 Beta1

1. Launch Navigator
2. Set Chinese IME on, chinese input mode
3. Type any e.g. yi
   You will have candidate list but hidden behind location tool bar list
   Please refer attachment
Attached image screen capture
Keywords: intl
Summary: Zh-CN IME: candidate list is hidden → IME candidate list is hidden by autocomplete window
*** Bug 146557 has been marked as a duplicate of this bug. ***
http://bugzilla.mozilla.gr.jp/attachment.cgi?id=2459&action=view

It is reproduced on Mac too.
OS: Windows XP → All
Hardware: PC → All
Adding to CC XUL related people.

This bug is cause by the popup window is top-most window.
Therefore, we need new XUL element that set nsWindowType to
eWindowType_nontopmostpopup.

For URL bar's autocomplete window and Firefox's autocomplete window,
we need to define new XUL element.
e.g., nontopmostpopup element.
Is this bug on the right OS? I thought we only use topmost windows on Windows.
We can reproduce on Windows and MacOS X(On mac, Mozilla/Firefox only, Camino has
no problem).

http://bugzilla.mozilla.gr.jp/attachment.cgi?id=2461&action=view
I have tested on the custom build that is not using TOPMOST.
The custom build has no-problem for this bug.
But context menu and dorp-downlist is displayed under TOPMOST window(e.g., Media
Player).
We should have TOPMOST popup window and normal popup window.
I add to CC Mike Pinkerton.
Mike, we can reproduce this bug on MacOS X, why?
I propose this bug separate to Win and Mac.
And on Win, we remove TOPMOST flag for popup window.
And we should open another bug that is creating new window-type for menu.
Because on windows, menu window should have TOPMOST flag.
Assignee: yokoyama → masayuki
QA Contact: ruixu → amyy
I separated this bug for mac. See bug 278220.
OS: All → Windows XP
Hardware: All → PC
Summary: IME candidate list is hidden by autocomplete window → [Win] IME candidate list is hidden by autocomplete window
I thought of another way of fix.
If IME transaction is started, we close the autocomplete candidate window.

If this way is successed, I can fix all platforms.

But I don't know where is the code of autocomplete of URL bar...
In the Suite, excluding LDAP and stub structures, it's all contained in
xpfe/components/autocomplete/resources/content/autocomplete.xml
Attached patch Patch rv.0.1 (obsolete) — Splinter Review
Thank you neil.
But this patch does not work fine.
Because the querycomposition event is not run.
Please tell me how to implement this event.
I'm sorry, I don't really know how to create events at that level.
I hope that the query composition event is usable on XUL.
But I cannot implemnt the event.

Please tell me how to implement the event.
Keywords: helpwanted
O.K.

I know why the event is not run.
The query composition event is not run.
I will re-implement like FAYT of suite.
Keywords: helpwanted
Attached patch Patch rv1.0 (obsolete) — Splinter Review
Attachment #171276 - Attachment is obsolete: true
*** Bug 278220 has been marked as a duplicate of this bug. ***
OS: Windows XP → All
Hardware: PC → All
Summary: [Win] IME candidate list is hidden by autocomplete window → IME candidate list is hidden by autocomplete window (Should close popup window when IME is used)
Status: NEW → ASSIGNED
I'm changing the reviewer.
Because Neil wishes so.
Attachment #171493 - Attachment is obsolete: true
Attachment #171517 - Flags: review?(smontagu)
Attachment #171493 - Flags: review?(neil.parkwaycc.co.uk)
(In reply to comment #23)
> Created an attachment (id=171494) [edit]
> Patch rv1.0(toolkit)
> 

So this will close the autocomplete popup when the user starts composing a
character, but will autocomplete reappear once the user is done?
> So this will close the autocomplete popup when the user starts composing a
> character, but will autocomplete reappear once the user is done?

Yes. I tested on windows.
I think if user commit the composition string, the event of ::Input() is fired.
Comment on attachment 171494 [details] [diff] [review]
Patch rv1.0(toolkit)

Ok, looks fine.
Attachment #171494 - Flags: superreview?(bryner)
Attachment #171494 - Flags: superreview+
Attachment #171494 - Flags: review?(bryner)
Attachment #171494 - Flags: review+
Attachment #171492 - Flags: superreview?(dbaron)
Attachment #171492 - Flags: superreview+
Attachment #171492 - Flags: review?(dbaron)
Attachment #171492 - Flags: review+
Attachment #171517 - Flags: review?(smontagu) → review+
Attachment #171517 - Flags: superreview?(neil.parkwaycc.co.uk)
Attachment #171517 - Flags: superreview?(neil.parkwaycc.co.uk) → superreview+
Have two patches been landed? Apparently not. (I was testing my trunk build on
windows and it still has the problem) I'll check them in if there's anything
left to do.
These patches are old.
And I found a bug.
Please wait, I'm writing new patch.
Attachment #171490 - Flags: superreview?(peterv)
Attachment #171490 - Flags: review?(peterv)
And, it didn't work :-) when I applied to my tree.
(in my previous comment : s/anything/nothing/ or s/is/isn't/ )
Attached patch Patch rv2.0 (obsolete) — Splinter Review
Sorry. I found some bugs in rv1.0.x.
1. If IME is canceled, popup is not reopened.
2. If IME is "bubun kakutei"ed, popup is opened.

I changed following point for these problems.
1. On end composition, popup is reopened.
2. On input, if it called after end composition immediately, ignore the input
event.
3. On some systems, IME composing state is conflict. E.g., start composition ->
start composition -> end composition. Therefore, we are processing on first
start composition event and first end composition event only.
Attachment #171489 - Attachment is obsolete: true
Attachment #171490 - Attachment is obsolete: true
Attachment #173445 - Flags: superreview?(jst)
Attachment #173445 - Flags: review?(jst)
Attachment #171492 - Attachment is obsolete: true
Attachment #173446 - Flags: superreview?(dbaron)
Attachment #173446 - Flags: review?(dbaron)
Attached patch Patch rv2.0(toolkit) (obsolete) — Splinter Review
Attachment #171494 - Attachment is obsolete: true
Attachment #173447 - Flags: superreview?(bryner)
Attachment #173447 - Flags: review?(bryner)
I request for firefox 1.1 blocker.
Because this bug is important for accessibility to IME candidate window when
user is using autocomplete.
Flags: blocking-aviary1.1?
Target Milestone: --- → mozilla1.8beta
Attachment #173446 - Flags: superreview?(dbaron)
Attachment #173446 - Flags: superreview+
Attachment #173446 - Flags: review?(dbaron)
Attachment #173446 - Flags: review+
Attachment #173448 - Flags: review?(smontagu) → review+
Attachment #173448 - Flags: superreview?(neil.parkwaycc.co.uk)
Comment on attachment 173448 [details] [diff] [review]
Patch rv2.0(xpfe/components/autocomplete/resources/content)

>     <handlers>
>       <handler event="input"
>                action="this.processInput();"/>
> 
>       <handler event="keypress" phase="capturing"
>                 action="return this.processKeyPress(event);"/>
> 
>+      <handler event="compositionstart" phase="capturing"
>+                action="this.processStartComposition();"/>
>+
>+      <handler event="compositionend" phase="capturing"
>+                action="this.processInput();"/>
>+
When you say "end composition", is this really "cancel composition" or does
composition not generate an input event?
Comment on attachment 173448 [details] [diff] [review]
Patch rv2.0(xpfe/components/autocomplete/resources/content)

Oops...

It is not needed in xpfe.
On xpfe, Patch 1.0.1 works fine. Sorry.
Attachment #173448 - Attachment is obsolete: true
Attachment #173448 - Flags: superreview?(neil.parkwaycc.co.uk)
Attached patch Patch rv2.0.1 (obsolete) — Splinter Review
Attachment #173444 - Attachment is obsolete: true
Comment on attachment 173445 [details] [diff] [review]
Patch rv2.0(content/events/src)

r+sr=jst
Attachment #173445 - Flags: superreview?(jst)
Attachment #173445 - Flags: superreview+
Attachment #173445 - Flags: review?(jst)
Attachment #173445 - Flags: review+
Attachment #173447 - Flags: superreview?(bryner)
Attachment #173447 - Flags: review?(bryner)
Attached patch Patch rv2.0.2(toolkit) (obsolete) — Splinter Review
Attachment #173447 - Attachment is obsolete: true
Attachment #173737 - Flags: superreview?(bryner)
Attachment #173737 - Flags: review?(bryner)
Attached patch Patch rv2.0.2 (obsolete) — Splinter Review
Attachment #173616 - Attachment is obsolete: true
Brian:

Please hurry up the review and superreview.
Target Milestone: mozilla1.8beta1 → mozilla1.8beta2
Attachment #173737 - Flags: superreview?(bryner)
Attachment #173737 - Flags: review?(timeless)
Attachment #173737 - Flags: review?(bryner)
Comment on attachment 173737 [details] [diff] [review]
Patch rv2.0.2(toolkit)

i don't touch toolkit

+  // 1. composition start event(HandleStartCompsition)
typo

+  // Note that input event is occured too if IME composing is canceled.

needs help from a native English speaker. (actually, the entire comment block)

+  // (E.g., calling StopSearch(), CleareSearchTimer() and ClosePopup().)

typo

+      return NS_OK;
+    else

else after return.

+  if (!mInput)
+    return NS_OK;
+
+  PRBool disabled;
+  mInput->GetDisableAutoComplete(&disabled);
+  NS_ENSURE_TRUE(!disabled, NS_OK);

why if (...) return / NS_ENSURE_TRUE?
are you trying to say that disableautocomplete really shouldn't be disabled?

+  if (value.Length() > 0) {
!....IsEmpty()
Attachment #173737 - Flags: review?(timeless) → review?(mconnor)
Attached patch Patch rv2.0.3(toolkit) (obsolete) — Splinter Review
Attachment #173737 - Attachment is obsolete: true
Attachment #175139 - Flags: review?(mconnor)
Attached patch Patch rv2.0.3 (obsolete) — Splinter Review
Attachment #173739 - Attachment is obsolete: true
Comment on attachment 175139 [details] [diff] [review]
Patch rv2.0.3(toolkit)

bryner is still a better bet for autocomplete reviews.	This is getting into
code that I rarely touch, so I won't really have time to review this properly
for a little while.  Email should work well for bryner.
Umm...

bryner said he cannot review IME code.
timeless, could you review the code as IME code?
# bryner said he will superreview the code as autocomplete code.
Attachment #175139 - Flags: review?(mconnor) → review?(timeless)
Comment on attachment 175139 [details] [diff] [review]
Patch rv2.0.3(toolkit)

i'm not a toolkit peer
Attachment #175139 - Flags: review?(timeless)
the English still needs help. and if you want me to review this, please have
someone responsible for toolkit contact me directly.
Flags: blocking1.8b2?
Comment on attachment 175139 [details] [diff] [review]
Patch rv2.0.3(toolkit)

>--- toolkit/components/autocomplete/src/nsAutoCompleteController.cpp	18 Feb 2005 12:40:00 -0000	1.27
>+++ toolkit/components/autocomplete/src/nsAutoCompleteController.cpp	22 Feb 2005 11:41:41 -0000
>+  // Note: the events are occured following order when IME is used.

nit: "occur in the following order"

>+  // 1. composition start event(HandleStartComposition)
>+  // 2. composition end event(HandleEndComposition)
>+  // 3. input event(HandleText)
>+  // Note that input event is occured too if IME composing is canceled.

I'd probably word this something like:

"Note that the input event occurs if IME composition is cancelled, as well."

>+  // In HandleEndComposition, we are processing the popup properly.
>+  // Therefore, the input event after composition end event should do nothing.
>+  // (E.g., calling StopSearch(), ClearSearchTimer() and ClosePopup().)
>+  // If it is not, popup is always closed after composition end.
>+  if (mIgnoreHandleText) {
>+    mIgnoreHandleText = PR_FALSE;
>+    if (newValue.Equals(mSearchString))
>+      return NS_OK;
>+    NS_ERROR("Now is after composition end event. But it is not.");

I don't understand this error text, can you make it clearer?

> NS_IMETHODIMP
>+nsAutoCompleteController::HandleStartComposition()
>+{
>+  NS_ENSURE_TRUE(!mIsIMEComposing, NS_OK);
>+
>+  mPopupClosedByCompositionStart = PR_FALSE;
>+  mIsIMEComposing = PR_TRUE;
>+
>+  NS_ENSURE_TRUE(mInput, NS_OK);
>+
>+  PRBool disabled;
>+  mInput->GetDisableAutoComplete(&disabled);
>+  NS_ENSURE_TRUE(!disabled, NS_OK);

Don't use NS_ENSURE_TRUE for an "expected" early return, since it generates a
warning.  It should only be used when an unexpected condition happens.

>+
>+  StopSearch();
>+  ClearSearchTimer();
>+
>+  PRBool isOpen;
>+  mInput->GetPopupOpen(&isOpen);
>+  if (isOpen)
>+    ClosePopup();
>+  mPopupClosedByCompositionStart = isOpen;
>+  return NS_OK;
>+}
>+
>+NS_IMETHODIMP
>+nsAutoCompleteController::HandleEndComposition()
>+{
>+  NS_ENSURE_TRUE(mIsIMEComposing, NS_OK);
>+
>+  mIsIMEComposing = PR_FALSE;
>+  PRBool forceOpenPopup = mPopupClosedByCompositionStart;
>+  mPopupClosedByCompositionStart = PR_FALSE;
>+
>+  nsCOMPtr<nsIAutoCompleteInput> input;
>+  GetInput(getter_AddRefs(input));
>+  NS_ENSURE_TRUE(input, NS_OK);

Just use mInput here.

>@@ -736,17 +823,17 @@ nsAutoCompleteController::PerformActionO
> 
> nsresult
> nsAutoCompleteController::OpenPopup()
> {
>   PRUint32 minResults;
>   mInput->GetMinResultsForPopup(&minResults);
>   if (mRowCount >= minResults)    
>     return mInput->SetPopupOpen(PR_TRUE);
>-  
>+

Try to avoid unneeded whitespace changes.

>--- toolkit/components/satchel/src/nsFormFillController.cpp	18 Feb 2005 12:40:00 -0000	1.44
>+++ toolkit/components/satchel/src/nsFormFillController.cpp	22 Feb 2005 11:41:42 -0000
>@@ -48,16 +48,17 @@
> #include "nsIInterfaceRequestorUtils.h"
> #include "nsIDocShellTreeItem.h"
> #include "nsIChromeEventHandler.h"
> #include "nsPIDOMWindow.h"
> #include "nsIWebNavigation.h"
> #include "nsIContentViewer.h"
> #include "nsIDOMEventTarget.h"
> #include "nsIDOMKeyEvent.h"
>+#include "nsIDOMCompositionListener.h"
> #include "nsIDOMDocument.h"
> #include "nsIDOMElement.h"
> #include "nsIDOMNSHTMLInputElement.h"
> #include "nsIDocument.h"
> #include "nsIScriptGlobalObject.h"
> #include "nsIContent.h"
> #include "nsIPresShell.h"
> #include "nsPresContext.h"
>@@ -74,16 +75,17 @@ NS_INTERFACE_MAP_BEGIN(nsFormFillControl
>   NS_INTERFACE_MAP_ENTRY(nsIFormFillController)
>   NS_INTERFACE_MAP_ENTRY(nsIAutoCompleteInput)
>   NS_INTERFACE_MAP_ENTRY(nsIAutoCompleteSearch)
>   NS_INTERFACE_MAP_ENTRY(nsIDOMFocusListener)
>   NS_INTERFACE_MAP_ENTRY(nsIDOMKeyListener)
>   NS_INTERFACE_MAP_ENTRY(nsIDOMFormListener)
>   NS_INTERFACE_MAP_ENTRY(nsIDOMMouseListener)
>   NS_INTERFACE_MAP_ENTRY(nsIDOMLoadListener)
>+  NS_INTERFACE_MAP_ENTRY(nsIDOMCompositionListener)
>   NS_INTERFACE_MAP_ENTRY_AMBIGUOUS(nsISupports, nsIFormFillController)
>   NS_INTERFACE_MAP_ENTRY_AMBIGUOUS(nsIDOMEventListener, nsIDOMFocusListener)
> NS_INTERFACE_MAP_END
> 
> NS_IMPL_ADDREF(nsFormFillController)
> NS_IMPL_RELEASE(nsFormFillController)
> 
> nsFormFillController::nsFormFillController() :
>@@ -642,16 +644,61 @@ nsFormFillController::KeyPress(nsIDOMEve
>     aEvent->StopPropagation();
>     aEvent->PreventDefault();
>   }
>   
>   return NS_OK;
> }
> 
> ////////////////////////////////////////////////////////////////////////
>+//// nsIDOMCompositionListener
>+
>+NS_IMETHODIMP
>+nsFormFillController::HandleStartComposition(nsIDOMEvent* aCompositionEvent)
>+{
>+  NS_ASSERTION(mController, "should have a controller!");
>+  if (!mController || !mFocusedInput)
>+    return NS_OK;
>+
>+  mController->HandleStartComposition();
>+
>+  return NS_OK;

It's a little more readable without the early return here:

if (mController && mFocusedInput)
  mController->HandleStartComposition();

return NS_OK;

>+NS_IMETHODIMP
>+nsFormFillController::HandleEndComposition(nsIDOMEvent* aCompositionEvent)
>+{
>+  NS_ASSERTION(mController, "should have a controller!");
>+  if (!mController || !mFocusedInput)
>+    return NS_OK;
>+
>+  mController->HandleEndComposition();
>+
>+  return NS_OK;
>+}

Same as above.

r=me with those changes
Attachment #175139 - Flags: review? → review+
Brian:

Thank you for your review!
Please re-review the patch.
Attachment #175139 - Attachment is obsolete: true
Attachment #176136 - Flags: superreview?(bryner)
Attachment #176136 - Flags: review?(bryner)
Attached patch Patch rv2.0.4 (obsolete) — Splinter Review
Attachment #175140 - Attachment is obsolete: true
Comment on attachment 176136 [details] [diff] [review]
Patch rv2.0.4(toolkit)

>--- toolkit/components/autocomplete/public/nsIAutoCompleteController.idl	1 Feb 2005 17:06:59 -0000	1.7
>+++ toolkit/components/autocomplete/public/nsIAutoCompleteController.idl	3 Mar 2005 12:06:14 -0000
> NS_IMETHODIMP
>+nsAutoCompleteController::HandleStartComposition()
>+{
>+  if (mIsIMEComposing)
>+    return NS_OK;
>+
>+  mPopupClosedByCompositionStart = PR_FALSE;
>+  mIsIMEComposing = PR_TRUE;
>+
>+  if (!mInput)
>+    return NS_OK;
>+
>+  PRBool disabled;
>+  mInput->GetDisableAutoComplete(&disabled);
>+  NS_ENSURE_TRUE(!disabled, NS_OK);
>+

I should have clarified, this NS_ENSURE_TRUE(!disabled, ...) is actually the
line I was referring to when I said not to use NS_ENSURE_TRUE for a non-error
early return.  It seems like it actually _would_ be an unexpected condition if
we get HandleStartComposition while mIsIMEComposing is true, since we should
have gotten HandleEndComposition, right?  At any rate, please change this to

if (disabled)
  return NS_OK;

r+sr=me with that change, no need to attach another patch.
Attachment #176136 - Flags: superreview?(bryner)
Attachment #176136 - Flags: superreview+
Attachment #176136 - Flags: review?(bryner)
Attachment #176136 - Flags: review+
Attached patch Patch rv2.0.5Splinter Review
Jungshik:

Could you check-in the patch?
Attachment #176137 - Attachment is obsolete: true
Attachment #176170 - Flags: superreview+
Attachment #176170 - Flags: review+
Does attachment 176170 [details] [diff] [review] include everything that needs to be checked in?
just landed
Status: ASSIGNED → RESOLVED
Closed: 15 years ago
Resolution: --- → FIXED
The following errors occur by build of Camino. 

c++  -fno-rtti -fno-exceptions -Wall -Wconversion -Wpointer-arith -Wcast-align
-Woverloaded-virtual -Wsynth -Wno-ctor-dtor-privacy -Wno-non-virtual-dtor
-Wno-long-long -I/Developer/SDKs/MacOSX10.2.8.sdk/usr/include -Os -mcpu=7400
-fpascal-strings -no-cpp-precomp -fno-common -fshort-wchar
-I/Developer/SDKs/MacOSX10.2.8.sdk/Developer/Headers/FlatCarbon -pipe  -DNDEBUG
-DTRIMMED -Os -mcpu=7400 -fPIC -arch ppc -o libgklayout.dylib  nsLayoutModule.o
nsContentHTTPStartup.o nsContentDLF.o  nsBidiUtils.o nsCSSColorUtils.o
nsCSSFrameConstructor.o nsCSSRendering.o nsCaret.o nsChildIterator.o
nsDocumentViewer.o nsFrameContentIterator.o nsFrameManager.o nsFrameTraversal.o
nsImageLoader.o nsLayoutAtoms.o nsLayoutDebugger.o nsLayoutHistoryState.o
nsLayoutUtils.o nsPresContext.o nsPresShell.o nsPresState.o nsQuoteList.o
nsStyleChangeList.o nsStyleSheetService.o nsBidiPresUtils.o nsBidi.o
nsAbsoluteContainingBlock.o nsAreaFrame.o nsBRFrame.o nsBlockBandData.o
nsBlockFrame.o nsBlockReflowContext.o nsBlockReflowState.o nsBulletFrame.o
nsColumnSetFrame.o nsContainerFrame.o nsFirstLetterFrame.o nsFrame.o
nsFrameFrame.o nsFrameList.o nsFrameSetFrame.o nsFrameUtil.o nsGfxScrollFrame.o
nsHTMLContainerFrame.o nsHTMLFrame.o nsHTMLReflowCommand.o nsHTMLReflowState.o
nsImageFrame.o nsImageMap.o nsInlineFrame.o nsIntervalSet.o nsLeafFrame.o
nsLineBox.o nsLineLayout.o nsObjectFrame.o nsPageContentFrame.o nsPageFrame.o
nsPlaceholderFrame.o nsReflowPath.o nsSelection.o nsSimplePageSequence.o
nsSpaceManager.o nsSpacerFrame.o nsSplittableFrame.o nsTextFrame.o
nsTextTransformer.o nsViewportFrame.o nsBidiFrames.o nsButtonFrameRenderer.o
nsComboboxControlFrame.o nsFieldSetFrame.o nsFileControlFrame.o
nsFormControlFrame.o nsFormControlHelper.o nsGfxButtonControlFrame.o
nsGfxCheckboxControlFrame.o nsGfxRadioControlFrame.o nsTextControlFrame.o
nsHTMLButtonControlFrame.o nsImageControlFrame.o nsLegendFrame.o
nsListControlFrame.o nsIsIndexFrame.o nsSelectsAreaFrame.o nsCSSAnonBoxes.o
nsCSSDataBlock.o nsCSSDeclaration.o nsCSSKeywords.o nsCSSLoader.o
nsCSSOMFactory.o nsCSSParser.o nsCSSProps.o nsCSSPseudoClasses.o
nsCSSPseudoElements.o nsCSSRule.o nsCSSRules.o nsCSSScanner.o nsCSSStruct.o
nsCSSStyleRule.o nsCSSStyleSheet.o nsCSSValue.o nsComputedDOMStyle.o
nsDOMCSSAttrDeclaration.o nsDOMCSSDeclaration.o nsDOMCSSRGBColor.o
nsDOMCSSRect.o nsDOMCSSValueList.o nsHTMLCSSStyleSheet.o nsHTMLStyleSheet.o
nsInspectorCSSUtils.o nsLayoutStylesheetCache.o nsROCSSPrimitiveValue.o
nsRuleNode.o nsStyleContext.o nsStyleCoord.o nsStyleSet.o nsStyleStruct.o
nsStyleUtil.o nsPrintEngine.o nsPrintData.o nsPrintObject.o nsPagePrintTimer.o
nsPrintPreviewListener.o BasicTableLayoutStrategy.o FixedTableLayoutStrategy.o
nsCellMap.o nsTableCellFrame.o nsTableColFrame.o nsTableColGroupFrame.o
nsTableFrame.o nsTableOuterFrame.o nsTableRowFrame.o nsTableRowGroupFrame.o
nsTablePainter.o nsScrollBoxFrame.o nsRootBoxFrame.o nsBox.o nsBoxFrame.o
nsBoxLayoutState.o nsSprocketLayout.o nsStackFrame.o nsStackLayout.o
nsBoxLayout.o nsScrollbarFrame.o nsScrollbarButtonFrame.o nsButtonBoxFrame.o
nsSliderFrame.o nsNativeScrollbarFrame.o nsRepeatService.o
nsXULTooltipListener.o nsScrollBoxObject.o nsBrowserBoxObject.o
nsIFrameBoxObject.o nsEditorBoxObject.o nsMenuBoxObject.o nsPopupBoxObject.o
nsListBoxObject.o nsBoxObject.o nsImageBoxFrame.o nsDocElementBoxFrame.o
nsLeafBoxFrame.o nsTextBoxFrame.o nsGroupBoxFrame.o nsFrameNavigator.o
nsSplitterFrame.o nsGrippyFrame.o nsDeckFrame.o nsProgressMeterFrame.o
nsMenuPopupFrame.o nsMenuFrame.o nsMenuBarFrame.o nsMenuBarListener.o
nsMenuListener.o nsMenuDismissalListener.o nsPopupSetFrame.o nsTitleBarFrame.o
nsResizerFrame.o nsListBoxBodyFrame.o nsListItemFrame.o nsListBoxLayout.o
mozSanitizingSerializer.o nsAtomListUtils.o nsAttrAndChildArray.o nsAttrValue.o
nsCommentNode.o nsContentAreaDragDrop.o nsContentIterator.o nsContentList.o
nsContentPolicy.o nsContentSink.o nsContentUtils.o nsCopySupport.o
nsDOMAttribute.o nsDOMAttributeMap.o nsDOMDocumentType.o nsDOMLists.o
nsDocument.o nsDocumentEncoder.o nsDocumentFragment.o nsFrameLoader.o
nsGenConImageContent.o nsGeneratedIterator.o nsGenericDOMDataNode.o
nsGenericDOMNodeList.o nsGenericElement.o nsHTMLContentSerializer.o
nsImageLoadingContent.o nsMappedAttributes.o nsNameSpaceManager.o nsNodeInfo.o
nsNodeInfoManager.o nsParserUtils.o nsPlainTextSerializer.o nsPropertyTable.o
nsRange.o nsScriptEventManager.o nsScriptLoader.o nsStubDocumentObserver.o
nsStyleLinkElement.o nsSyncLoadService.o nsTextFragment.o nsTextNode.o
nsTreeWalker.o nsXMLContentSerializer.o nsXMLNameSpaceMap.o
nsEventListenerManager.o nsEventStateManager.o nsDOMEvent.o nsDOMUIEvent.o
nsDOMKeyboardEvent.o nsDOMTextEvent.o nsDOMMouseEvent.o nsDOMMutationEvent.o
nsDOMPopupBlockedEvent.o nsPrivateTextRange.o nsDOMEventGroup.o
nsXMLEventsManager.o nsXMLEventsElement.o nsGenericHTMLElement.o
nsGenericDOMHTMLCollection.o nsFormSubmission.o nsHTMLAtoms.o nsImageMapUtils.o
nsHTMLAnchorElement.o nsHTMLAppletElement.o nsHTMLAreaElement.o
nsHTMLBRElement.o nsHTMLBodyElement.o nsHTMLButtonElement.o nsHTMLDelElement.o
nsHTMLDivElement.o nsHTMLFieldSetElement.o nsHTMLFontElement.o
nsHTMLFormElement.o nsHTMLFrameElement.o nsHTMLFrameSetElement.o
nsHTMLHRElement.o nsHTMLHeadElement.o nsHTMLHeadingElement.o nsHTMLHtmlElement.o
nsHTMLIFrameElement.o nsHTMLImageElement.o nsHTMLInputElement.o
nsHTMLLIElement.o nsHTMLLabelElement.o nsHTMLLegendElement.o nsHTMLLinkElement.o
nsHTMLMapElement.o nsHTMLMetaElement.o nsHTMLOListElement.o
nsHTMLObjectElement.o nsHTMLOptionElement.o nsHTMLOptGroupElement.o
nsHTMLParagraphElement.o nsHTMLPreElement.o nsHTMLScriptElement.o
nsHTMLSelectElement.o nsHTMLSharedElement.o nsHTMLSpanElement.o
nsHTMLStyleElement.o nsHTMLTableElement.o nsHTMLTableCaptionElement.o
nsHTMLTableCellElement.o nsHTMLTableColElement.o nsHTMLTableRowElement.o
nsHTMLTableSectionElement.o nsHTMLTextAreaElement.o nsHTMLTitleElement.o
nsHTMLContentSink.o nsHTMLFragmentContentSink.o nsHTMLDocument.o
nsMediaDocument.o nsPluginDocument.o nsImageDocument.o nsWyciwygChannel.o
nsWyciwygProtocolHandler.o nsXMLElement.o nsXMLCDATASection.o
nsXMLProcessingInstruction.o nsXMLStylesheetPI.o nsXMLContentSink.o
nsXMLFragmentContentSink.o nsXMLDocument.o nsXMLPrettyPrinter.o nsXBLAtoms.o
nsXBLBinding.o nsXBLPrototypeBinding.o nsXBLPrototypeResources.o
nsXBLResourceLoader.o nsXBLDocumentInfo.o nsXBLContentSink.o
nsXBLProtoImplMember.o nsXBLProtoImplProperty.o nsXBLProtoImplMethod.o
nsXBLProtoImplField.o nsXBLProtoImpl.o nsXBLEventHandler.o nsXBLWindowHandler.o
nsXBLWindowKeyHandler.o nsXBLWindowDragHandler.o nsXBLPrototypeHandler.o
nsXBLService.o nsBindingManager.o nsXBLInsertionPoint.o nsXULAtoms.o
nsXULElement.o nsXULPopupListener.o nsXULControllers.o nsElementMap.o
nsXULCommandDispatcher.o nsXULContentSink.o nsXULDocument.o
nsXULPrototypeCache.o nsXULPrototypeDocument.o nsView.o nsScrollPortView.o
nsViewManager.o nsBarProps.o nsDOMException.o nsDOMWindowUtils.o
nsJSEnvironment.o nsFocusController.o nsGlobalWindow.o nsGlobalWindowCommands.o
nsLocation.o nsDOMWindowList.o nsJSUtils.o nsScreen.o nsHistory.o
nsMimeTypeArray.o nsPluginArray.o nsWindowRoot.o nsDOMClassInfo.o
nsScriptNameSpaceManager.o nsDOMScriptObjectFactory.o nsJSEventListener.o
nsJSProtocolHandler.o nsTreeBodyFrame.o nsTreeBoxObject.o nsTreeColFrame.o
nsTreeColumns.o nsTreeContentView.o nsTreeImageListener.o nsTreeSelection.o
nsTreeStyleCache.o nsTreeUtils.o nsGridLayout2.o nsGridRowLayout.o
nsGridRowLeafLayout.o nsGridRowLeafFrame.o nsGridRowGroupLayout.o
nsGridRowGroupFrame.o nsGrid.o nsGridRow.o nsGridCell.o nsClusterKey.o
nsClusterKeySet.o nsConflictSet.o nsContentSupportMap.o nsContentTagTestNode.o
nsContentTestNode.o nsInstantiationNode.o nsTreeRowTestNode.o nsTreeRows.o
nsRDFConInstanceTestNode.o nsRDFConMemberTestNode.o nsRDFPropertyTestNode.o
nsResourceSet.o nsRuleNetwork.o nsTemplateMatch.o nsTemplateMatchSet.o
nsTemplateRule.o nsXULContentBuilder.o nsXULContentUtils.o nsXULTreeBuilder.o
nsXULSortService.o nsXULTemplateBuilder.o nsXMLContentBuilder.o
nsXTFElementWrapper.o nsXTFGenericElementWrapper.o nsXTFInterfaceAggregator.o
nsXTFService.o nsXTFVisualWrapper.o nsXTFWeakTearoff.o nsXTFXMLVisualWrapper.o
nsXTFXULVisualWrapper.o nsXTFXULDisplayFrame.o nsXTFXMLDisplayFrame.o
nsXTFFrameUtils.o     -L../../dist/bin -L../../dist/lib -lgkgfx
../../dist/lib/libunicharutil_s.a -L../../dist/bin -lxpcom -lxpcom_core
-L../../dist/bin -L/Users/sek/Documents/mozilla-current/camino/mozilla/dist/lib
-lplds4 -lplc4 -lnspr4 -lpthread  -L../../dist/bin -lmozjs  -framework Carbon 
-Wl,-exported_symbols_list
-Wl,../../build/unix/gnu-ld-scripts/components-export-list -bundle
-L/Developer/SDKs/MacOSX10.2.8.sdk/usr/lib/gcc/darwin/3.3
-L/Developer/SDKs/MacOSX10.2.8.sdk/usr/lib -lm     
ld: warning -prebind has no effect with -bundle
ld: Undefined symbols:
nsLayoutAtoms::oncompositionend
nsLayoutAtoms::oncompositionstart
make[4]: *** [libgklayout.dylib] Error 1
make[4]: Leaving directory
`/Users/sek/Documents/mozilla-current/camino/mozilla/layout/build'


Mac OS X 10.3.8
camino build system is not broken.
http://tinderbox.mozilla.org/Camino/

Please re-build after cleaning your dist directory.
Flags: blocking1.8b2?
Flags: blocking-aviary1.1?
You need to log in before you can comment on or make changes to this bug.