diff options
author | Felipe Heidrich <fheidric> | 2009-05-08 16:22:28 +0000 |
---|---|---|
committer | Felipe Heidrich <fheidric> | 2009-05-08 16:22:28 +0000 |
commit | 143dc1b823d83ff433b9760774ddca2f998f417f (patch) | |
tree | ea99d2b487adcb590a69e6467d824add2e83f4eb /bundles/org.eclipse.swt/Eclipse SWT OLE Win32/win32/org | |
parent | 8f9328b8f3cde9213f046c3051f5d31cfa12ccfa (diff) | |
download | eclipse.platform.swt-143dc1b823d83ff433b9760774ddca2f998f417f.tar.gz eclipse.platform.swt-143dc1b823d83ff433b9760774ddca2f998f417f.tar.xz eclipse.platform.swt-143dc1b823d83ff433b9760774ddca2f998f417f.zip |
Bug 180176: [OLE] [EditorMgmt] Strange behavior while opening default gif editor
Diffstat (limited to 'bundles/org.eclipse.swt/Eclipse SWT OLE Win32/win32/org')
-rwxr-xr-x | bundles/org.eclipse.swt/Eclipse SWT OLE Win32/win32/org/eclipse/swt/ole/win32/OleClientSite.java | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/bundles/org.eclipse.swt/Eclipse SWT OLE Win32/win32/org/eclipse/swt/ole/win32/OleClientSite.java b/bundles/org.eclipse.swt/Eclipse SWT OLE Win32/win32/org/eclipse/swt/ole/win32/OleClientSite.java index cc8b6e45d3..bd62f8f892 100755 --- a/bundles/org.eclipse.swt/Eclipse SWT OLE Win32/win32/org/eclipse/swt/ole/win32/OleClientSite.java +++ b/bundles/org.eclipse.swt/Eclipse SWT OLE Win32/win32/org/eclipse/swt/ole/win32/OleClientSite.java @@ -890,7 +890,14 @@ private void onDispose(Event e) { } void onFocusIn(Event e) { if (inDispose) return; - if (state != STATE_UIACTIVE) doVerb(OLE.OLEIVERB_SHOW); + if (state != STATE_UIACTIVE) { + int /*long*/[] ppvObject = new int /*long*/[1]; + if (objIUnknown.QueryInterface(COM.IIDIOleInPlaceObject, ppvObject) == COM.S_OK) { + IOleInPlaceObject objIOleInPlaceObject = new IOleInPlaceObject(ppvObject[0]); + objIOleInPlaceObject.Release(); + doVerb(OLE.OLEIVERB_SHOW); + } + } if (objIOleInPlaceObject == null) return; if (isFocusControl()) return; int /*long*/[] phwnd = new int /*long*/[1]; |