Scott Lanning > Mozilla-DOM-0.23 > Mozilla::DOM::WebNavigation

Download:
Mozilla-DOM-0.23.tar.gz

Dependencies

Annotate this POD

CPAN RT

New  2
Open  5
View/Report Bugs
Source  

NAME ^

Mozilla::DOM::WebNavigation

Mozilla::DOM::WebNavigation is a wrapper around an instance of Mozilla's nsIWebNavigation interface. This class inherits from Supports.

Note: the nsIWebNavigation interface isn't marked FROZEN in Gecko, so it can change.

You can get this object by QueryInterfacing WebBrowser:

  $iid = Mozilla::DOM::WebNavigation->GetIID;
  $navigation = $browser->QueryInterface($iid);

XXX: The following methods are unfortunately not wrapped yet: LoadURI, GetSessionHistory, SetSessionHistory. I'd especially like to have LoadURI, but I don't know how to do nsIInputStream for its last two arguments.

The following constants are available. You can export them all with use Mozilla::DOM::WebNavigation qw(:flags) or export them individually.

LOAD_FLAGS_MASK => 65535
LOAD_FLAGS_NONE => 0
  * Normal load flag.
LOAD_FLAGS_IS_REFRESH => 16
  * Meta-refresh flag.  The cache is bypassed.  This type of load is
  *                     usually the result of a meta-refresh tag, or a HTTP
  *                     'refresh' header.
LOAD_FLAGS_IS_LINK => 32
  * Link-click flag. 
LOAD_FLAGS_BYPASS_HISTORY => 64
  * Bypass history flag.
LOAD_FLAGS_REPLACE_HISTORY => 128
  * Replace history entry flag.
LOAD_FLAGS_BYPASS_CACHE => 256
LOAD_FLAGS_BYPASS_PROXY => 512
LOAD_FLAGS_CHARSET_CHANGE => 1024
STOP_NETWORK => 1
  * Stop all network activity.  This includes both active network loads and
  * pending meta-refreshes.
STOP_CONTENT => 2
  * Stop all content activity.  This includes animated images, plugins and
  * pending Javascript timeouts.
STOP_ALL => 3
  * Stop all activity.

CLASS METHODS ^

$iid = Mozilla::DOM::WebNavigation->GetIID()

Pass this to QueryInterface.

METHODS ^

$bool = $webnavigation->GetCanGoBack()

  * Indicates if the object can go back.  If true this indicates that
  * there is back session history available for navigation.

Note: this method is available in Gtk2::MozEmbed:

  $embed->can_go_back

$bool = $webnavigation->GetCanGoForward()

  * Indicates if the object can go forward.  If true this indicates that
  * there is forward session history available for navigation

Note: this method is available in Gtk2::MozEmbed:

  $embed->can_go_forward

$currenturi = $webnavigation->GetCurrentURI()

  * The currently loaded URI or null.

Note: I think this is the same as

  $embed->get_location

in Gtk2::MozEmbed.

$document = $webnavigation->GetDocument()

  * Retrieves the current DOM document for the frame, or lazily creates a
  * blank document if there is none. This attribute never returns null except
  * for unexpected error situations.

Note: this document is also available by doing

    my $browser = $embed->get_nsIWebBrowser;
    my $window = $browser->GetContentDOMWindow;
    my $doc = $window->GetDocument;

$referringuri = $webnavigation->GetReferringURI()

  * The referring URI.

$webnavigation->GoBack()

  * Tells the object to navigate to the previous session history item.  When
  * a page is loaded from session history, all content is loaded from the
  * cache (if available) and page state (such as form values, scroll position)
  * is restored.
  *
  * @return NS_OK               - Backward navigation was successful.
  *         NS_ERROR_UNEXPECTED - This call was unexpected at this time.  Most
  *                               likely you can't go back right now.

Note: this method is available in Gtk2::MozEmbed:

  $embed->go_back()

$webnavigation->GoForward()

  * Tells the object to navigate to the next Forward session history item.
  * When a page is loaded from session history, all content is loaded from
  * the cache (if available) and page state (such as form values, scroll
  * position) is restored.
  *
  * @return NS_OK               - Forward was successful.
  *         NS_ERROR_UNEXPECTED - This call was unexpected at this time.  Most
  *                               likely you can't go forward right now.

Note: this method is available in Gtk2::MozEmbed:

  $embed->go_forward()

$webnavigation->GotoIndex($index)

  * Tells the object to navigate to the session history item at index.
  *
  * @return NS_OK -               GotoIndex was successful.
  *         NS_ERROR_UNEXPECTED - This call was unexpected at this time.  Most
  *                               likely you can't goto that index

$webnavigation->Reload($reloadflags)

  * Tells the Object to reload the current page.
  *
  * @param reloadFlags - Flags modifying reload behaviour. Generally you will
  *                      pass LOAD_FLAGS_NONE for this parameter.

Note: this method is available in Gtk2::MozEmbed:

  $embed->reload($flags)

(See also the section "flags Gtk2::MozEmbed::Reload" in `perldoc Gtk2::MozEmbed::main`.)

$webnavigation->Stop($stopflags)

  * Stops a load of a URI.
  *
  * @param stopFlags - Flags indicating the stop behavior.

Note: this method is available in Gtk2::MozEmbed:

  $embed->stop_load();

SEE ALSO ^

Mozilla::DOM

COPYRIGHT ^

Copyright (C) 2005-2007, Scott Lanning

This software is licensed under the LGPL. See Mozilla::DOM for a full notice.

syntax highlighting: