X-Git-Url: http://secure.phpeclipse.com diff --git a/net.sourceforge.phpeclipse/src/net/sourceforge/phpeclipse/phpeditor/ShowExternalPreviewAction.java b/net.sourceforge.phpeclipse/src/net/sourceforge/phpeclipse/phpeditor/ShowExternalPreviewAction.java index 13fc4dd..32256fa 100644 --- a/net.sourceforge.phpeclipse/src/net/sourceforge/phpeclipse/phpeditor/ShowExternalPreviewAction.java +++ b/net.sourceforge.phpeclipse/src/net/sourceforge/phpeclipse/phpeditor/ShowExternalPreviewAction.java @@ -8,10 +8,13 @@ package net.sourceforge.phpeclipse.phpeditor; * Contributors: IBM Corporation - Initial implementation Klaus Hartlage - * www.eclipseproject.de ******************************************************************************/ +import net.sourceforge.phpdt.internal.ui.util.PHPFileUtil; import net.sourceforge.phpeclipse.IPreferenceConstants; import net.sourceforge.phpeclipse.PHPeclipsePlugin; import net.sourceforge.phpeclipse.actions.PHPEclipseShowAction; +import net.sourceforge.phpeclipse.overlaypages.Util; import net.sourceforge.phpeclipse.views.browser.BrowserView; + import org.eclipse.core.resources.IFile; import org.eclipse.ui.IEditorInput; import org.eclipse.ui.IFileEditorInput; @@ -20,7 +23,6 @@ import org.eclipse.ui.IWorkbenchPage; import org.eclipse.ui.PartInitException; import org.eclipse.ui.texteditor.ITextEditor; import org.eclipse.ui.texteditor.TextEditorAction; -import net.sourceforge.phpeclipse.overlaypages.Util; //import org.eclipse.update.internal.ui.UpdatePerspective; //import org.eclipse.update.internal.ui.views.IEmbeddedWebBrowser; /** @@ -43,19 +45,25 @@ public static ShowExternalPreviewAction getInstance() { * Code called when the action is fired. */ public void run() { - IFile fileToParse = getFile(); - if (fileToParse == null) { + IFile previewFile = getFile(); + if (previewFile == null) { // should never happen return; } - boolean autoPreview = Util.getPreviewBooleanValue(fileToParse, + boolean autoPreview = Util.getPreviewBooleanValue(previewFile, IPreferenceConstants.PHP_AUTO_PREVIEW_DEFAULT); - boolean bringToTopPreview = Util.getPreviewBooleanValue(fileToParse, + boolean bringToTopPreview = Util.getPreviewBooleanValue(previewFile, IPreferenceConstants.PHP_BRING_TO_TOP_PREVIEW_DEFAULT); - if (autoPreview) { + boolean showHTMLFilesLocal = Util.getPreviewBooleanValue(previewFile, + IPreferenceConstants.PHP_SHOW_HTML_FILES_LOCAL); + boolean isPHPFileName = PHPFileUtil.isPHPFileName(previewFile.getLocation().toString()); + + if (autoPreview) { String localhostURL; - if ((localhostURL = PHPEclipseShowAction.getLocalhostURL(null, - fileToParse)) == null) { + if (showHTMLFilesLocal && (!isPHPFileName)) { + localhostURL = previewFile.getLocation().toString(); + } else if ((localhostURL = PHPEclipseShowAction.getLocalhostURL(null, + previewFile)) == null) { return; } IWorkbenchPage page = PHPeclipsePlugin.getActivePage(); @@ -70,11 +78,12 @@ public static ShowExternalPreviewAction getInstance() { } ((BrowserView) part).setUrl(localhostURL); - } catch (PartInitException e) { - PHPeclipsePlugin.log(e); + } catch (Exception e) { + //PHPeclipsePlugin.log(e); } } } + public void refresh() { IFile fileToParse = getFile(); if (fileToParse == null) { @@ -98,8 +107,8 @@ public static ShowExternalPreviewAction getInstance() { } ((BrowserView) part).refresh(); - } catch (PartInitException e) { - PHPeclipsePlugin.log(e); + } catch (Exception e) { + // PHPeclipsePlugin.log(e); } } }