Community
Participate
Working Groups
From Bug 409274 As part of fixing bug 404016, we disable disableControl(tpl.clientArea, toEnable); and that should disable all typing in the views and editors. Despite the ancestor of the editor StyledText being disabled, we were still able to type into the editor. PW
OK, after a few hours with Car and Silenio we've found the problem. The contributedPartRenderer was overriding the 'setFocus' handling and the implementation was returning 'true' where it shouldn't. I reality that composite shouldn't even have been asked because its parent was already disabled but that's a separate SWT defect. I've pushed the fix(es) to Gerrit: https://git.eclipse.org/r/13370 This fixes the typing issue by explicitly checking whether the composite itself is enabled before trying to put the focus on the widget. I've also fixed the bogus id for the StatusBar so that the disabling of the bottom trim controls now actually takes place. NOTE: There is still a slight issue; if you use the Search bar to execute the 'Quick Hierarchy' command you can still type into the search field. This is evidently a known SWT defect on windows...
In WorkbenchWindow#run(..), when the if (statusLine != null && statusLine.getWidget() instanceof Control) ends up false, then the whole for (Control bottomCtrl : tpl.bottom.getChildren()) loop is skipped. Shouldn't the for-loop be moved out of the if-body?
Markus, I'd thought of that but decided to minimize the changes...
*** Bug 380258 has been marked as a duplicate of this bug. ***
(In reply to comment #1) > OK, after a few hours with Car and Silenio we've found the problem. The > contributedPartRenderer was overriding the 'setFocus' handling and the > implementation was returning 'true' where it shouldn't. > > I reality that composite shouldn't even have been asked because its parent > was already disabled but that's a separate SWT defect. I couldn't find an SWT bug for this.
Committed (to master): http://git.eclipse.org/c/platform/eclipse.platform.ui.git/commit/?id=c8c18df706581cb68bf34de22c81fa6c4b585808 This is a rework of the original Gerrit that also includes Markus' suggestion of eliminating the check around the 'for' loop.
.
Verified in the build: I20130805-2000
New Gerrit change created: https://git.eclipse.org/r/122544