Interface CefBrowser


  • public interface CefBrowser
    Interface representing a browser.
    • Method Summary

      All Methods Instance Methods Abstract Methods 
      Modifier and Type Method Description
      boolean canGoBack()
      Tests if the browser can navigate backwards.
      boolean canGoForward()
      Tests if the browser can navigate forwards.
      void close​(boolean force)
      Request that the browser close.
      void createImmediately()
      Call to immediately create the underlying browser object.
      java.util.concurrent.CompletableFuture<java.awt.image.BufferedImage> createScreenshot​(boolean nativeResolution)
      Captures a screenshot-like image of the currently displayed content and returns it.
      boolean doClose()
      Called from CefClient.doClose.
      void executeJavaScript​(java.lang.String code, java.lang.String url, int line)
      Execute a string of JavaScript code in this frame.
      void find​(int identifier, java.lang.String searchText, boolean forward, boolean matchCase, boolean findNext)
      Search for some kind of text on the page.
      CefClient getClient()
      Get the client associated with this browser.
      CefBrowser getDevTools()
      Get an instance of the dev tools to be displayed in its own window or to be embedded within your UI.
      CefBrowser getDevTools​(java.awt.Point inspectAt)
      Get an instance of the dev tools to be displayed in its own window or to be embedded within your UI.
      CefFrame getFocusedFrame()
      Returns the focused frame for the browser window.
      CefFrame getFrame​(long identifier)
      Returns the frame with the specified identifier, or NULL if not found.
      CefFrame getFrame​(java.lang.String name)
      Returns the frame with the specified name, or NULL if not found.
      int getFrameCount()
      Returns the number of frames that currently exist.
      java.util.Vector<java.lang.Long> getFrameIdentifiers()
      Returns the identifiers of all existing frames.
      java.util.Vector<java.lang.String> getFrameNames()
      Returns the names of all existing frames.
      int getIdentifier()
      Returns the unique browser identifier.
      CefFrame getMainFrame()
      Returns the main (top-level) frame for the browser window.
      CefRenderHandler getRenderHandler()
      Get an implementation of CefRenderHandler if any.
      void getSource​(CefStringVisitor visitor)
      Retrieve this frame's HTML source as a string sent to the specified visitor.
      void getText​(CefStringVisitor visitor)
      Retrieve this frame's display text as a string sent to the specified visitor.
      java.awt.Component getUIComponent()
      Get the underlying UI component (e.g.
      java.lang.String getURL()
      Emits the URL currently loaded in this frame.
      CefWindowHandler getWindowHandler()
      Get an implementation of CefWindowHandler if any.
      double getZoomLevel()
      Get the current zoom level.
      void goBack()
      Go back.
      void goForward()
      Go forward.
      boolean hasDocument()
      Tests if a document has been loaded in the browser.
      boolean isLoading()
      Tests if the browser is currently loading.
      boolean isPopup()
      Tests if the window is a popup window.
      void loadRequest​(CefRequest request)
      Load the request represented by the request object.
      void loadURL​(java.lang.String url)
      Load the specified URL in the main frame.
      void onBeforeClose()
      Called from CefClient.onBeforeClose.
      void print()
      Print the current browser contents.
      void printToPDF​(java.lang.String path, CefPdfPrintSettings settings, CefPdfPrintCallback callback)
      Print the current browser contents to a PDF.
      void reload()
      Reload the current page.
      void reloadIgnoreCache()
      Reload the current page ignoring any cached data.
      void replaceMisspelling​(java.lang.String word)
      If a misspelled word is currently selected in an editable node calling this method will replace it with the specified |word|.
      void runFileDialog​(CefDialogHandler.FileDialogMode mode, java.lang.String title, java.lang.String defaultFilePath, java.util.Vector<java.lang.String> acceptFilters, int selectedAcceptFilter, CefRunFileDialogCallback callback)
      Call to run a file chooser dialog.
      void setCloseAllowed()
      Allow the browser to close.
      void setFocus​(boolean enable)
      Set or remove keyboard focus to/from the browser window.
      void setWindowVisibility​(boolean visible)
      Set whether the window containing the browser is visible (minimized/unminimized, app hidden/unhidden, etc).
      void setZoomLevel​(double zoomLevel)
      Change the zoom level to the specified value.
      void startDownload​(java.lang.String url)
      Download the file at url using CefDownloadHandler.
      void stopFinding​(boolean clearSelection)
      Cancel all searches that are currently going on.
      void stopLoad()
      Stop loading the page.
      void viewSource()
      Save this frame's HTML source to a temporary file and open it in the default text viewing application.
    • Method Detail

      • createImmediately

        void createImmediately()
        Call to immediately create the underlying browser object. By default the browser object will be created when the parent container is displayed for the first time.
      • getUIComponent

        java.awt.Component getUIComponent()
        Get the underlying UI component (e.g. java.awt.Canvas).
        Returns:
        The underlying UI component.
      • getClient

        CefClient getClient()
        Get the client associated with this browser.
        Returns:
        The browser client.
      • getRenderHandler

        CefRenderHandler getRenderHandler()
        Get an implementation of CefRenderHandler if any.
        Returns:
        An instance of CefRenderHandler or null.
      • getWindowHandler

        CefWindowHandler getWindowHandler()
        Get an implementation of CefWindowHandler if any.
        Returns:
        An instance of CefWindowHandler or null.
      • canGoBack

        boolean canGoBack()
        Tests if the browser can navigate backwards.
        Returns:
        true if the browser can navigate backwards.
      • goBack

        void goBack()
        Go back.
      • canGoForward

        boolean canGoForward()
        Tests if the browser can navigate forwards.
        Returns:
        true if the browser can navigate forwards.
      • goForward

        void goForward()
        Go forward.
      • isLoading

        boolean isLoading()
        Tests if the browser is currently loading.
        Returns:
        true if the browser is currently loading.
      • reload

        void reload()
        Reload the current page.
      • reloadIgnoreCache

        void reloadIgnoreCache()
        Reload the current page ignoring any cached data.
      • stopLoad

        void stopLoad()
        Stop loading the page.
      • getIdentifier

        int getIdentifier()
        Returns the unique browser identifier.
        Returns:
        The browser identifier
      • getMainFrame

        CefFrame getMainFrame()
        Returns the main (top-level) frame for the browser window.
        Returns:
        The main frame
      • getFocusedFrame

        CefFrame getFocusedFrame()
        Returns the focused frame for the browser window.
        Returns:
        The focused frame
      • getFrame

        CefFrame getFrame​(long identifier)
        Returns the frame with the specified identifier, or NULL if not found.
        Parameters:
        identifier - The unique frame identifier
        Returns:
        The frame or NULL if not found
      • getFrame

        CefFrame getFrame​(java.lang.String name)
        Returns the frame with the specified name, or NULL if not found.
        Parameters:
        name - The specified name
        Returns:
        The frame or NULL if not found
      • getFrameIdentifiers

        java.util.Vector<java.lang.Long> getFrameIdentifiers()
        Returns the identifiers of all existing frames.
        Returns:
        All identifiers of existing frames.
      • getFrameNames

        java.util.Vector<java.lang.String> getFrameNames()
        Returns the names of all existing frames.
        Returns:
        The names of all existing frames.
      • getFrameCount

        int getFrameCount()
        Returns the number of frames that currently exist.
        Returns:
        The number of frames
      • isPopup

        boolean isPopup()
        Tests if the window is a popup window.
        Returns:
        true if the window is a popup window.
      • hasDocument

        boolean hasDocument()
        Tests if a document has been loaded in the browser.
        Returns:
        true if a document has been loaded in the browser.
      • viewSource

        void viewSource()
        Save this frame's HTML source to a temporary file and open it in the default text viewing application. This method can only be called from the browser process.
      • getSource

        void getSource​(CefStringVisitor visitor)
        Retrieve this frame's HTML source as a string sent to the specified visitor.
        Parameters:
        visitor -
      • getText

        void getText​(CefStringVisitor visitor)
        Retrieve this frame's display text as a string sent to the specified visitor.
        Parameters:
        visitor -
      • loadRequest

        void loadRequest​(CefRequest request)
        Load the request represented by the request object.
        Parameters:
        request - The request object.
      • loadURL

        void loadURL​(java.lang.String url)
        Load the specified URL in the main frame.
        Parameters:
        url - The URL to load.
      • executeJavaScript

        void executeJavaScript​(java.lang.String code,
                               java.lang.String url,
                               int line)
        Execute a string of JavaScript code in this frame. The url parameter is the URL where the script in question can be found, if any. The renderer may request this URL to show the developer the source of the error. The line parameter is the base line number to use for error reporting.
        Parameters:
        code - The code to be executed.
        url - The URL where the script in question can be found.
        line - The base line number to use for error reporting.
      • getURL

        java.lang.String getURL()
        Emits the URL currently loaded in this frame.
        Returns:
        the URL currently loaded in this frame.
      • close

        void close​(boolean force)
        Request that the browser close.
        Parameters:
        force - force the close.
      • setCloseAllowed

        void setCloseAllowed()
        Allow the browser to close.
      • doClose

        boolean doClose()
        Called from CefClient.doClose.
      • onBeforeClose

        void onBeforeClose()
        Called from CefClient.onBeforeClose.
      • setFocus

        void setFocus​(boolean enable)
        Set or remove keyboard focus to/from the browser window.
        Parameters:
        enable - set to true to give the focus to the browser
      • setWindowVisibility

        void setWindowVisibility​(boolean visible)
        Set whether the window containing the browser is visible (minimized/unminimized, app hidden/unhidden, etc). Only used on Mac OS X.
        Parameters:
        visible -
      • getZoomLevel

        double getZoomLevel()
        Get the current zoom level. The default zoom level is 0.0.
        Returns:
        The current zoom level.
      • setZoomLevel

        void setZoomLevel​(double zoomLevel)
        Change the zoom level to the specified value. Specify 0.0 to reset the zoom level.
        Parameters:
        zoomLevel - The zoom level to be set.
      • runFileDialog

        void runFileDialog​(CefDialogHandler.FileDialogMode mode,
                           java.lang.String title,
                           java.lang.String defaultFilePath,
                           java.util.Vector<java.lang.String> acceptFilters,
                           int selectedAcceptFilter,
                           CefRunFileDialogCallback callback)
        Call to run a file chooser dialog. Only a single file chooser dialog may be pending at any given time.The dialog will be initiated asynchronously on the UI thread.
        Parameters:
        mode - represents the type of dialog to display.
        title - to be used for the dialog and may be empty to show the default title ("Open" or "Save" depending on the mode).
        defaultFilePath - is the path with optional directory and/or file name component that should be initially selected in the dialog.
        acceptFilters - are used to restrict the selectable file types and may any combination of (a) valid lower-cased MIME types (e.g. "text/*" or "image/*"), (b) individual file extensions (e.g. ".txt" or ".png"), or (c) combined description and file extension delimited using "|" and ";" (e.g. "Image Types|.png;.gif;.jpg").
        selectedAcceptFilter - is the 0-based index of the filter that should be selected by default.
        callback - will be executed after the dialog is dismissed or immediately if another dialog is already pending.
      • startDownload

        void startDownload​(java.lang.String url)
        Download the file at url using CefDownloadHandler.
        Parameters:
        url - URL to download that file.
      • print

        void print()
        Print the current browser contents.
      • printToPDF

        void printToPDF​(java.lang.String path,
                        CefPdfPrintSettings settings,
                        CefPdfPrintCallback callback)
        Print the current browser contents to a PDF.
        Parameters:
        path - The path of the file to write to (will be overwritten if it already exists). Cannot be null.
        settings - The pdf print settings to use. If null then defaults will be used.
        callback - Called when the pdf print job has completed.
      • find

        void find​(int identifier,
                  java.lang.String searchText,
                  boolean forward,
                  boolean matchCase,
                  boolean findNext)
        Search for some kind of text on the page.
        Parameters:
        identifier - can be used to have multiple searches running simultaniously.
        searchText - to be searched for.
        forward - indicates whether to search forward or backward within the page.
        matchCase - indicates whether the search should be case-sensitive.
        findNext - indicates whether this is the first request or a follow-up.
      • stopFinding

        void stopFinding​(boolean clearSelection)
        Cancel all searches that are currently going on.
        Parameters:
        clearSelection - Set to true to reset selection.
      • getDevTools

        CefBrowser getDevTools()
        Get an instance of the dev tools to be displayed in its own window or to be embedded within your UI. Only one instance per browser is available.
      • getDevTools

        CefBrowser getDevTools​(java.awt.Point inspectAt)
        Get an instance of the dev tools to be displayed in its own window or to be embedded within your UI. Only one instance per browser is available.
        Parameters:
        inspectAt - a position in the UI which should be inspected.
      • replaceMisspelling

        void replaceMisspelling​(java.lang.String word)
        If a misspelled word is currently selected in an editable node calling this method will replace it with the specified |word|.
        Parameters:
        word - replace selected word with this word.
      • createScreenshot

        java.util.concurrent.CompletableFuture<java.awt.image.BufferedImage> createScreenshot​(boolean nativeResolution)
        Captures a screenshot-like image of the currently displayed content and returns it.

        If executed on the AWT Event Thread, this returns an immediately resolved CompletableFuture. If executed from another thread, the CompletableFuture returned is resolved as soon as the screenshot has been taken (which must happen on the event thread).

        The generated screenshot can either be returned as-is, containing all natively-rendered pixels, or it can be scaled to match the logical width and height of the window. This distinction is only relevant in case of differing logical and physical resolutions (for example with HiDPI/Retina displays, which have a scaling factor of for example 2 between the logical width of a window (ex. 400px) and the actual number of pixels in each row (ex. 800px with a scaling factor of 2)).

        Parameters:
        nativeResolution - whether to return an image at full native resolution (true) or a scaled-down version whose width and height are equal to the logical size of the screenshotted browser window
        Returns:
        the screenshot image
        Throws:
        java.lang.UnsupportedOperationException - if not supported