aboutsummaryrefslogtreecommitdiffstats
path: root/embed/mozilla/GlobalHistory.cpp
diff options
context:
space:
mode:
authorChristian Persch <chpe@src.gnome.org>2008-04-04 05:09:48 +0800
committerChristian Persch <chpe@src.gnome.org>2008-04-04 05:09:48 +0800
commit39e984581c9ff4531e527456facf30f74574a64f (patch)
tree230720b87280b53b96058205a39f9d12b448e408 /embed/mozilla/GlobalHistory.cpp
parent18325ac0850ff053477580b448fc6d1b7f21afa8 (diff)
downloadgsoc2013-epiphany-39e984581c9ff4531e527456facf30f74574a64f.tar
gsoc2013-epiphany-39e984581c9ff4531e527456facf30f74574a64f.tar.gz
gsoc2013-epiphany-39e984581c9ff4531e527456facf30f74574a64f.tar.bz2
gsoc2013-epiphany-39e984581c9ff4531e527456facf30f74574a64f.tar.lz
gsoc2013-epiphany-39e984581c9ff4531e527456facf30f74574a64f.tar.xz
gsoc2013-epiphany-39e984581c9ff4531e527456facf30f74574a64f.tar.zst
gsoc2013-epiphany-39e984581c9ff4531e527456facf30f74574a64f.zip
Remove this too
svn path=/trunk/; revision=8184
Diffstat (limited to 'embed/mozilla/GlobalHistory.cpp')
-rw-r--r--embed/mozilla/GlobalHistory.cpp225
1 files changed, 0 insertions, 225 deletions
diff --git a/embed/mozilla/GlobalHistory.cpp b/embed/mozilla/GlobalHistory.cpp
deleted file mode 100644
index efcda79f9..000000000
--- a/embed/mozilla/GlobalHistory.cpp
+++ /dev/null
@@ -1,225 +0,0 @@
-/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */
-/*
- * Copyright © 2001, 2004 Philip Langdale
- * Copyright © 2004 Christian Persch
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2, or (at your option)
- * any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
- *
- * $Id$
- */
-
-#include "mozilla-config.h"
-#include "config.h"
-
-#include <nsStringAPI.h>
-
-#include <nsIURI.h>
-
-#include "ephy-embed-shell.h"
-
-#include "GlobalHistory.h"
-
-
-#define MAX_TITLE_LENGTH 2048
-#define MAX_URL_LENGTH 16384
-
-#ifdef HAVE_NSIGLOBALHISTORY3_H
-NS_IMPL_ISUPPORTS2 (MozGlobalHistory, nsIGlobalHistory2, nsIGlobalHistory3)
-#else
-NS_IMPL_ISUPPORTS1 (MozGlobalHistory, nsIGlobalHistory2)
-#endif /* HAVE_NSIGLOBALHISTORY3_H */
-
-MozGlobalHistory::MozGlobalHistory ()
-{
- mGlobalHistory = EPHY_HISTORY (ephy_embed_shell_get_global_history (embed_shell));
-
- mHistoryListener = new EphyHistoryListener ();
- mHistoryListener->Init (mGlobalHistory);
-}
-
-MozGlobalHistory::~MozGlobalHistory ()
-{
-}
-
-/* void addURI (in nsIURI aURI, in boolean aRedirect, in boolean aToplevel, in nsIURI aReferrer); */
-NS_IMETHODIMP MozGlobalHistory::AddURI(nsIURI *aURI,
- PRBool aRedirect,
- PRBool aToplevel,
- nsIURI *aReferrer)
-{
- nsresult rv;
-
- NS_ENSURE_ARG (aURI);
-
- // filter out unwanted URIs such as chrome: etc
- // The model is really if we don't know differently then add which basically
- // means we are suppose to try all the things we know not to allow in and
- // then if we don't bail go on and allow it in. But here lets compare
- // against the most common case we know to allow in and go on and say yes
- // to it.
-
- PRBool isHTTP = PR_FALSE, isHTTPS = PR_FALSE;
- rv = aURI->SchemeIs("http", &isHTTP);
- rv |= aURI->SchemeIs("https", &isHTTPS);
- NS_ENSURE_SUCCESS (rv, NS_ERROR_FAILURE);
-
- if (!isHTTP && !isHTTPS)
- {
- static const char *schemes[] = { "javascript",
- "data",
- "about",
- "chrome",
- "resource",
- "view-source" };
-
- for (PRUint32 i = 0; i < G_N_ELEMENTS (schemes); ++i)
- {
- PRBool result = PR_FALSE;
- if (NS_SUCCEEDED (aURI->SchemeIs (schemes[i], &result)) && result)
- {
- return NS_OK;
- }
- }
- }
-
- nsCString spec;
- rv = aURI->GetSpec(spec);
- NS_ENSURE_TRUE (NS_SUCCEEDED(rv) && spec.Length(), rv);
-
- if (spec.Length () > MAX_URL_LENGTH) return NS_OK;
-
- ephy_history_add_page (mGlobalHistory, spec.get(), aRedirect, aToplevel);
-
- return NS_OK;
-}
-
-/* boolean isVisited (in nsIURI aURI); */
-NS_IMETHODIMP MozGlobalHistory::IsVisited(nsIURI *aURI,
- PRBool *_retval)
-{
- NS_ENSURE_ARG (aURI);
-
- *_retval = PR_FALSE;
-
- nsCString spec;
- aURI->GetSpec(spec);
-
- if (spec.Length () > MAX_URL_LENGTH) return NS_OK;
-
- *_retval = ephy_history_is_page_visited (mGlobalHistory, spec.get());
-
- return NS_OK;
-}
-
-/* void setPageTitle (in nsIURI aURI, in AString aTitle); */
-NS_IMETHODIMP MozGlobalHistory::SetPageTitle(nsIURI *aURI,
- const nsAString & aTitle)
-{
- NS_ENSURE_ARG (aURI);
-
- nsCString spec;
- aURI->GetSpec(spec);
-
- if (spec.Length () > MAX_URL_LENGTH) return NS_OK;
-
- nsString uTitle (aTitle);
-
- /* This depends on the assumption that
- * typeof(PRUnichar) == typeof (gunichar2) == uint16,
- * which should be pretty safe.
- */
- glong n_read = 0, n_written = 0;
- char *converted = g_utf16_to_utf8 ((gunichar2*) uTitle.get(), MAX_TITLE_LENGTH,
- &n_read, &n_written, NULL);
- /* FIXME loop from the end while !g_unichar_isspace (char)? */
- if (converted == NULL) return NS_OK;
-
- ephy_history_set_page_title (mGlobalHistory, spec.get(), converted);
-
- g_free (converted);
-
- return NS_OK;
-}
-
-#ifdef HAVE_NSIGLOBALHISTORY3_H
-
-#ifdef HAVE_GECKO_1_9
-
-/* unsigned long getURIGeckoFlags(in nsIURI aURI); */
-NS_IMETHODIMP
-MozGlobalHistory::GetURIGeckoFlags(nsIURI *aURI,
- PRUint32* aFlags)
-{
- *aFlags = 0;
-
- nsCString spec;
- aURI->GetSpec(spec);
-
- if (spec.Length () > MAX_URL_LENGTH) return NS_OK;
-
- EphyNode *page = ephy_history_get_page (mGlobalHistory, spec.get());
-
- GValue value = { 0, };
- if (page != NULL &&
- ephy_node_get_property (page, EPHY_NODE_PAGE_PROP_GECKO_FLAGS, &value))
- {
- *aFlags = (PRUint32) (gulong) g_value_get_long (&value);
- g_value_unset (&value);
-
- return NS_OK;
- }
-
- return NS_ERROR_FAILURE;
-}
-
-/* void setURIGeckoFlags(in nsIURI aURI, in unsigned long aFlags); */
-NS_IMETHODIMP
-MozGlobalHistory::SetURIGeckoFlags(nsIURI *aURI,
- PRUint32 aFlags)
-{
- nsCString spec;
- aURI->GetSpec(spec);
-
- if (spec.Length () > MAX_URL_LENGTH) return NS_OK;
-
- EphyNode *page = ephy_history_get_page (mGlobalHistory, spec.get());
- if (page != NULL)
- {
- ephy_node_set_property_long (page,
- EPHY_NODE_PAGE_PROP_GECKO_FLAGS,
- aFlags);
- return NS_OK;
- }
-
- return NS_ERROR_FAILURE;
-}
-
-#endif /* HAVE_GECKO_1_9 */
-
-/* void addDocumentRedirect (in nsIChannel
- aOldChannel,
- in nsIChannel aNewChannel,
- in PRInt32 aFlags,
- in boolean aTopLevel); */
-NS_IMETHODIMP
-MozGlobalHistory::AddDocumentRedirect(nsIChannel *aOldChannel,
- nsIChannel *aNewChannel,
- PRInt32 aFlags,
- PRBool aTopLevel)
-{
- return NS_ERROR_NOT_IMPLEMENTED;
-}
-
-#endif /* HAVE_NSIGLOBALHISTORY3_H */