X-Git-Url: http://git.phpeclipse.com diff --git a/net.sourceforge.phpeclipse.ui/src/net/sourceforge/phpeclipse/ui/editor/ShowExternalPreviewAction.java b/net.sourceforge.phpeclipse.ui/src/net/sourceforge/phpeclipse/ui/editor/ShowExternalPreviewAction.java index 8e8c9b8..2679fb4 100644 --- a/net.sourceforge.phpeclipse.ui/src/net/sourceforge/phpeclipse/ui/editor/ShowExternalPreviewAction.java +++ b/net.sourceforge.phpeclipse.ui/src/net/sourceforge/phpeclipse/ui/editor/ShowExternalPreviewAction.java @@ -69,6 +69,9 @@ public class ShowExternalPreviewAction extends TextEditorAction { boolean bringToTopPreview = ProjectPrefUtil.getPreviewBooleanValue( previewFile, IPreferenceConstants.PHP_BRING_TO_TOP_PREVIEW_DEFAULT); + boolean stickyBrowserURL = ProjectPrefUtil.getPreviewBooleanValue( + previewFile, + IPreferenceConstants.PHP_STICKY_BROWSER_URL_DEFAULT); if (autoPreview) { IWorkbenchPage page = WebUI.getActivePage(); @@ -102,8 +105,14 @@ public class ShowExternalPreviewAction extends TextEditorAction { }.schedule(); } // ((BrowserView) part).refresh(); - String localhostURL = getLocalhostURL(null, previewFile); - ((BrowserView) part).refresh(localhostURL); + if (stickyBrowserURL + && ((BrowserView) part).getUrl() != null + && ((BrowserView) part).getUrl().length() > 0) { + ((BrowserView) part).refresh(); + } else { + String localhostURL = getLocalhostURL(null, previewFile); + ((BrowserView) part).refresh(localhostURL); + } } } catch (PartInitException e) { // ad hoc @@ -137,12 +146,14 @@ public class ShowExternalPreviewAction extends TextEditorAction { store = WebUI.getDefault().getPreferenceStore(); } // IPath path = file.getFullPath(); - String localhostURL = file.getLocation().toString(); + String localhostURL = file.getFullPath().toString(); String lowerCaseFileName = localhostURL.toLowerCase(); + //removed by ed_mann for RSE fixes testing // String documentRoot = // store.getString(PHPeclipsePlugin.DOCUMENTROOT_PREF); - IPath documentRootPath = ProjectPrefUtil.getDocumentRoot(file - .getProject()); + //IPath documentRootPath = ProjectPrefUtil.getDocumentRoot(file + // .getProject()); + IPath documentRootPath = file.getProject().getFullPath(); String documentRoot = documentRootPath.toString().toLowerCase(); if (lowerCaseFileName.startsWith(documentRoot)) { localhostURL = localhostURL.substring(documentRoot.length()); @@ -151,9 +162,12 @@ public class ShowExternalPreviewAction extends TextEditorAction { } // return store.getString(PHPeclipsePlugin.LOCALHOST_PREF) + // localhostURL; - return ProjectPrefUtil.getMiscProjectsPreferenceValue(file - .getProject(), IPreferenceConstants.PHP_LOCALHOST_PREF) - + localhostURL; + String projectPath = ProjectPrefUtil.getMiscProjectsPreferenceValue(file + .getProject(), IPreferenceConstants.PHP_LOCALHOST_PREF); + if(projectPath.endsWith("/") && localhostURL.startsWith("/")) { + localhostURL = localhostURL.substring(1); + } + return projectPath + localhostURL; } return "http://localhost"; }