public class Page extends Object implements Serializable
Modifier and Type | Class and Description |
---|---|
static class |
Page.BrowserWindowResizeEvent
Event that is fired when a browser window containing a uI is resized.
|
static interface |
Page.BrowserWindowResizeListener
Listener that gets notified when the size of the browser window
containing the uI has changed.
|
static class |
Page.Styles
Contains dynamically injected styles injected in the HTML document at
runtime.
|
static class |
Page.UriFragmentChangedEvent
Event fired when the URI fragment of a
Page changes. |
static interface |
Page.UriFragmentChangedListener
Listener that that gets notified when the URI fragment of the page
changes.
|
Modifier and Type | Field and Description |
---|---|
static BorderStyle |
BORDER_DEFAULT
Deprecated.
As of 7.0, use
BorderStyle.DEFAULT instead. |
static BorderStyle |
BORDER_MINIMAL
Deprecated.
As of 7.0, use
BorderStyle.MINIMAL instead. |
static BorderStyle |
BORDER_NONE
Deprecated.
As of 7.0, use
BorderStyle.NONE instead. |
Modifier and Type | Method and Description |
---|---|
void |
addBrowserWindowResizeListener(Page.BrowserWindowResizeListener resizeListener)
Adds a new
Page.BrowserWindowResizeListener to this UI. |
void |
addListener(Page.BrowserWindowResizeListener resizeListener)
Deprecated.
As of 7.0, replaced by
addBrowserWindowResizeListener(BrowserWindowResizeListener) |
void |
addListener(Page.UriFragmentChangedListener listener)
Deprecated.
As of 7.0, replaced by
addUriFragmentChangedListener(UriFragmentChangedListener) |
void |
addUriFragmentChangedListener(Page.UriFragmentChangedListener listener)
Adds a listener that gets notified every time the URI fragment of this
page is changed.
|
int |
getBrowserWindowHeight()
Gets the last known height of the browser window in which this UI
resides.
|
int |
getBrowserWindowWidth()
Gets the last known width of the browser window in which this uI resides.
|
static Page |
getCurrent()
Gets the Page to which the current uI belongs.
|
JavaScript |
getJavaScript() |
URI |
getLocation()
Returns the location URI of this page, as reported by the browser.
|
protected PageState |
getState(boolean markAsDirty)
Returns the page state.
|
Page.Styles |
getStyles()
Returns that stylesheet associated with this Page.
|
String |
getUriFragment()
Gets the currently set URI fragment.
|
WebBrowser |
getWebBrowser() |
String |
getWindowName()
Gets the window.name value of the browser window of this page.
|
void |
init(VaadinRequest request) |
void |
open(Resource resource,
String windowName,
boolean tryToOpenAsPopup)
Deprecated.
As of 7.0, only retained to maintain compatibility with
LegacyWindow.open methods. See documentation for
LegacyWindow.open(Resource, String, boolean) for
discussion about replacing API. |
void |
open(Resource resource,
String windowName,
int width,
int height,
BorderStyle border)
Deprecated.
As of 7.0, only retained to maintain compatibility with
LegacyWindow.open methods. See documentation for
LegacyWindow.open(Resource, String, int, int, BorderStyle)
for discussion about replacing API. |
void |
open(String url,
String windowName)
Opens the given url in a window with the given name.
|
void |
open(String url,
String windowName,
boolean tryToOpenAsPopup)
Opens the given url in a window with the given name.
|
void |
open(String url,
String windowName,
int width,
int height,
BorderStyle border)
Opens the given URL in a window with the given size, border and name.
|
void |
paintContent(PaintTarget target) |
void |
reload()
Reloads the page in the browser.
|
void |
removeBrowserWindowResizeListener(Page.BrowserWindowResizeListener resizeListener)
Removes a
Page.BrowserWindowResizeListener from this UI. |
void |
removeListener(Page.BrowserWindowResizeListener resizeListener)
Deprecated.
As of 7.0, replaced by
removeBrowserWindowResizeListener(BrowserWindowResizeListener) |
void |
removeListener(Page.UriFragmentChangedListener listener)
Deprecated.
As of 7.0, replaced by
removeUriFragmentChangedListener(UriFragmentChangedListener) |
void |
removeUriFragmentChangedListener(Page.UriFragmentChangedListener listener)
Removes a URI fragment listener that was previously added to this page.
|
void |
setLocation(String uri)
Navigates this page to the given URI.
|
void |
setLocation(URI uri)
Navigates this page to the given URI.
|
void |
setTitle(String title)
Sets the page title.
|
void |
setUriFragment(String newUriFragment)
Sets URI fragment.
|
void |
setUriFragment(String newUriFragment,
boolean fireEvents)
Sets the fragment part in the current location URI.
|
void |
showNotification(Notification notification)
Deprecated.
As of 7.0, use Notification.show(Page) instead.
|
void |
updateBrowserWindowSize(int width,
int height)
Deprecated.
As of 7.2, use
updateBrowserWindowSize(int, int, boolean) instead. |
void |
updateBrowserWindowSize(int width,
int height,
boolean fireEvents)
For internal use only.
|
void |
updateLocation(String location)
Deprecated.
As of 7.2, use
updateLocation(String, boolean)
instead. |
void |
updateLocation(String location,
boolean fireEvents)
For internal use only.
|
@Deprecated public static final BorderStyle BORDER_NONE
BorderStyle.NONE
instead.@Deprecated public static final BorderStyle BORDER_MINIMAL
BorderStyle.MINIMAL
instead.@Deprecated public static final BorderStyle BORDER_DEFAULT
BorderStyle.DEFAULT
instead.public void addUriFragmentChangedListener(Page.UriFragmentChangedListener listener)
UI.init(VaadinRequest)
.listener
- the URI fragment listener to addgetUriFragment()
,
setUriFragment(String)
,
removeUriFragmentChangedListener(UriFragmentChangedListener)
@Deprecated public void addListener(Page.UriFragmentChangedListener listener)
addUriFragmentChangedListener(UriFragmentChangedListener)
public void removeUriFragmentChangedListener(Page.UriFragmentChangedListener listener)
listener
- the URI fragment listener to removeaddUriFragmentChangedListener(UriFragmentChangedListener)
@Deprecated public void removeListener(Page.UriFragmentChangedListener listener)
removeUriFragmentChangedListener(UriFragmentChangedListener)
public void setUriFragment(String newUriFragment, boolean fireEvents)
Page.UriFragmentChangedEvent
.
The fragment is the optional last component of a URI, prefixed with a hash sign ("#").
Passing an empty string as newFragment
sets an empty
fragment (a trailing "#" in the URI.) Passing null
if there
is already a non-null fragment will leave a trailing # in the URI since
removing it would cause the browser to reload the page. This is not fully
consistent with the semantics of URI
.
newUriFragment
- The new fragment.fireEvents
- true to fire eventgetUriFragment()
,
setLocation(URI)
,
Page.UriFragmentChangedEvent
,
Page.UriFragmentChangedListener
public void setUriFragment(String newUriFragment)
Page.UriFragmentChangedEvent
newUriFragment
- id of the new fragmentPage.UriFragmentChangedEvent
,
Page.UriFragmentChangedListener
public String getUriFragment()
Returns null
if there is no fragment and an empty string if
there is an empty fragment.
To listen to changes in fragment, hook a
Page.UriFragmentChangedListener
.
getLocation()
,
setUriFragment(String)
,
addUriFragmentChangedListener(UriFragmentChangedListener)
public void init(VaadinRequest request)
public WebBrowser getWebBrowser()
public String getWindowName()
null
if the name is not known@Deprecated public void updateBrowserWindowSize(int width, int height)
updateBrowserWindowSize(int, int, boolean)
instead.width
- the new browser window widthheight
- the new browse window heightpublic void updateBrowserWindowSize(int width, int height, boolean fireEvents)
width
- the new browser window widthheight
- the new browser window heightfireEvents
- whether to fire Page.BrowserWindowResizeEvent
if the size
changespublic void addBrowserWindowResizeListener(Page.BrowserWindowResizeListener resizeListener)
Page.BrowserWindowResizeListener
to this UI. The listener
will be notified whenever the browser window within which this UI resides
is resized.
In most cases, the UI should be in lazy resize mode when using browser
window resize listeners. Otherwise, a large number of events can be
received while a resize is being performed. Use
UI.setResizeLazy(boolean)
.
resizeListener
- the listener to addBrowserWindowResizeListener#browserWindowResized(BrowserWindowResizeEvent)
,
UI.setResizeLazy(boolean)
@Deprecated public void addListener(Page.BrowserWindowResizeListener resizeListener)
addBrowserWindowResizeListener(BrowserWindowResizeListener)
public void removeBrowserWindowResizeListener(Page.BrowserWindowResizeListener resizeListener)
Page.BrowserWindowResizeListener
from this UI. The listener
will no longer be notified when the browser window is resized.resizeListener
- the listener to remove@Deprecated public void removeListener(Page.BrowserWindowResizeListener resizeListener)
removeBrowserWindowResizeListener(BrowserWindowResizeListener)
public int getBrowserWindowHeight()
public int getBrowserWindowWidth()
public JavaScript getJavaScript()
public Page.Styles getStyles()
public void paintContent(PaintTarget target) throws PaintException
PaintException
public void setLocation(String uri)
This method should not be used to start downloads, as the client side
will assume the browser will navigate away when opening the URI. Use one
of the Page.open
methods or FileDownloader
instead.
uri
- the URI to showopen(String, String)
,
FileDownloader
public void setLocation(URI uri)
This method should not be used to start downloads, as the client side
will assume the browser will navigate away when opening the URI. Use one
of the Page.open
methods or FileDownloader
instead.
uri
- the URI to showopen(String, String)
,
FileDownloader
public URI getLocation()
@Deprecated public void updateLocation(String location)
updateLocation(String, boolean)
instead.location
- the new location URIpublic void updateLocation(String location, boolean fireEvents)
location
- the new location URIfireEvents
- whether to fire Page.UriFragmentChangedEvent
if the URI
fragment changespublic void open(String url, String windowName)
open
(url, windowName, true) .
The supplied windowName
is used as the target name in a
window.open call in the client. This means that special values such as
"_blank", "_self", "_top", "_parent" have special meaning. An empty or
null
window name is also a special case.
"", null and "_self" as windowName
all causes the URL to be
opened in the current window, replacing any old contents. For
downloadable content you should avoid "_self" as "_self" causes the
client to skip rendering of any other changes as it considers them
irrelevant (the page will be replaced by the response from the URL). This
can speed up the opening of a URL, but it might also put the client side
into an inconsistent state if the window content is not completely
replaced e.g., if the URL is downloaded instead of displayed in the
browser.
"_blank" as windowName
causes the URL to always be opened in a
new window or tab (depends on the browser and browser settings).
"_top" and "_parent" as windowName
works as specified by the HTML
standard.
Any other windowName
will open the URL in a window with that
name, either by opening a new window/tab in the browser or by replacing
the contents of an existing window with that name.
Please note that opening a popup window in this way may be blocked by the
browser's popup-blocker because the new browser window is opened when
processing a response from the server. To avoid this, you should instead
use Link
for opening the window because browsers are more
forgiving when the window is opened directly from a client-side click
event.
url
- the URL to open.windowName
- the name of the window.public void open(String url, String windowName, boolean tryToOpenAsPopup)
open
(url, windowName, true) .
The supplied windowName
is used as the target name in a
window.open call in the client. This means that special values such as
"_blank", "_self", "_top", "_parent" have special meaning. An empty or
null
window name is also a special case.
"", null and "_self" as windowName
all causes the URL to be
opened in the current window, replacing any old contents. For
downloadable content you should avoid "_self" as "_self" causes the
client to skip rendering of any other changes as it considers them
irrelevant (the page will be replaced by the response from the URL). This
can speed up the opening of a URL, but it might also put the client side
into an inconsistent state if the window content is not completely
replaced e.g., if the URL is downloaded instead of displayed in the
browser.
"_blank" as windowName
causes the URL to always be opened in a
new window or tab (depends on the browser and browser settings).
"_top" and "_parent" as windowName
works as specified by the HTML
standard.
Any other windowName
will open the URL in a window with that
name, either by opening a new window/tab in the browser or by replacing
the contents of an existing window with that name.
Please note that opening a popup window in this way may be blocked by the
browser's popup-blocker because the new browser window is opened when
processing a response from the server. To avoid this, you should instead
use Link
for opening the window because browsers are more
forgiving when the window is opened directly from a client-side click
event.
url
- the URL to open.windowName
- the name of the window.tryToOpenAsPopup
- Whether to try to force the resource to be opened in a new
windowpublic void open(String url, String windowName, int width, int height, BorderStyle border)
windowName
, see
open(String, String)
.
Please note that opening a popup window in this way may be blocked by the
browser's popup-blocker because the new browser window is opened when
processing a response from the server. To avoid this, you should instead
use Link
for opening the window because browsers are more
forgiving when the window is opened directly from a client-side click
event.
url
- the URL to open.windowName
- the name of the window.width
- the width of the window in pixelsheight
- the height of the window in pixelsborder
- the border style of the window.@Deprecated public void open(Resource resource, String windowName, int width, int height, BorderStyle border)
LegacyWindow.open(Resource, String, int, int, BorderStyle)
for discussion about replacing API.@Deprecated public void open(Resource resource, String windowName, boolean tryToOpenAsPopup)
LegacyWindow.open(Resource, String, boolean)
for
discussion about replacing API.@Deprecated public void showNotification(Notification notification)
notification
- The notification message to showNotification
public static Page getCurrent()
null
UI.getCurrent()
public void setTitle(String title)
If the title is set to null, it will not left as-is. Set to empty string to clear the title.
title
- the page title to setpublic void reload()
protected PageState getState(boolean markAsDirty)
The page state is transmitted to UIConnector together with
UIState
rather than as an individual entity.
The state should be considered an internal detail of Page. Classes outside of Page should not access it directly but only through public APIs provided by Page.
markAsDirty
- true to mark the state as dirtyCopyright © 2019 Vaadin Ltd. All rights reserved.