에 대한
덕분에이 질문에 대한 일반적인 대답이 없습니다. 창 관리자의 동작은 기본 창 관리자에 따라 다릅니다. 예 : Windows 7과 OSX는 다르게 작동합니다.
<extension
point="org.eclipse.ui.internalTweaklets">
<tweaklet
definition="org.eclipse.ui.internal.tweaklets.WorkbenchImplementation"
description="Customized Detached View"
id="id1"
implementation="tweaklets.WorkbenchImplementation"
name="Customized Detached View">
</tweaklet>
</extension>
내 WorkbenchImplementation.java
public class WorkbenchImplementation extends Workbench3xImplementation {
private static final Logger logger = LoggerFactory.getLogger(WorkbenchImplementation.class);
@Override
public WorkbenchWindow createWorkbenchWindow(int newWindowNumber) {
// return super.createWorkbenchWindow(newWindowNumber);
return new WorkbenchWindow(newWindowNumber) {
@Override
protected void configureShell(Shell shell) {
super.configureShell(shell);
try {
Field field = WorkbenchWindow.class.getDeclaredField("detachedWindowShells");
field.setAccessible(true);
field.set(this, createShellPool(shell));
} catch (Exception e) {
logger.error("Error tweaking WorkbenchWindow", e);
}
}
};
}
protected ShellPool createShellPool(Shell shell) {
// return new ShellPool(null, SWT.TOOL | SWT.TITLE | SWT.MAX | SWT.RESIZE | Window.getDefaultOrientation());
return new ShellPool(null, SWT.NO_TRIM | Window.getDefaultOrientation());
}
}
내 코드가 강조되지 않는 이유 : –