Community
Participate
Working Groups
Build Identifier: When a view changes its state from inactive to active the title tab isn't shown properly in IE 7. The title tab has a white colour and the title text isn't visible. Reproducible: Always Steps to Reproduce: 1. Create two views in the same stack. 2. Activate the view which is in inactive state 3. The title tab of the activated view isn't shown properly.
Created attachment 154788 [details] fix This patch should solve this problem for now. However, it is not yet the optimal solution. (See patch: the "afterDomInsert"-event should be used in GfxMixin instead of "appear", and the order of the events in "prepareEnhancedBorder" is not 100% in sync with the dom-operations). If the GfxMixin gets a bigger overhaul, this should be done aswell.
Created attachment 154791 [details] fix The event-order is now correct.
Applied patch to CVS HEAD
With this patch applied the Workbench Demo doesn't start anymore in IE8, Safari and Chrome - JavaScript error appears: Could not evaluate javascript response: Invalid argument. var req = org.eclipse.swt.Request.getInstance();req.setRequestCounter( "0" );qx.theme.manager.Meta.getInstance().setTheme( org.eclipse.swt.theme.Default );org.eclipse.swt.Request.getInstance().setTimeoutPage( "The server session timed out.Please click here to restart the session." ); ......... Reverting the patch solves the problem.
In FF some other errors appear, but not in startup: [Exception... "Component returned failure code: 0x80004003 (NS_ERROR_INVALID_POINTER)" nsresult: "0x80004003 (NS_ERROR_INVALID_POINTER)" location: "JS frame :: http://127.0.0.1:8080/business?custom_service_handler=org.eclipse.rwt.internal.service.JSLibraryServiceHandler&hash=H506038246 :: anonymous :: line 5040" data: no] ........... and: 004266 ERROR: qx.ui.basic.Atom[954]: Could not layout child [object qx.ui.basic.Image] through layout handler: TypeError - this._style is undefined
Patch reverted.
Created attachment 155485 [details] 2nd Attempt Okay, the problem with the first fix was that i used "forEachVisibleChild" to create the events needed by GfxMixin to react to changes in the dom. "forEachVisibleChild" does not work as i expected (it should probably be called "forEachDisplayableChild"), causing events to be thrown when they shouldn't. Also, the entire solution was more intrusive that really needed, as these events can cause all kind of stuff happening. The new fix works by actually visiting every single child and calling the appropriate function manually.
The fix is also already included in the patch for Bug 299263.
Fixed with bug 299263.