aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--ChangeLog16
-rw-r--r--embed/ephy-embed-find.c6
-rw-r--r--embed/ephy-embed-find.h6
-rw-r--r--embed/mozilla/EphyFind.cpp5
-rw-r--r--embed/mozilla/EphyFind.h3
-rw-r--r--embed/mozilla/mozilla-embed-find.cpp5
-rw-r--r--m4/gecko.m44
-rw-r--r--src/ephy-find-toolbar.c22
8 files changed, 49 insertions, 18 deletions
diff --git a/ChangeLog b/ChangeLog
index 3d21aacc2..88f52d011 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,21 @@
2006-12-01 Christian Persch <chpe@cvs.gnome.org>
+ * embed/ephy-embed-find.c: (ephy_embed_find_find_again):
+ * embed/ephy-embed-find.h:
+ * embed/mozilla/EphyFind.cpp:
+ * embed/mozilla/EphyFind.h:
+ * embed/mozilla/mozilla-embed-find.cpp:
+ * src/ephy-find-toolbar.c: (ephy_find_toolbar_find_next),
+ (ephy_find_toolbar_find_previous):
+
+ Another mozilla API change.
+
+ * m4/gecko.m4:
+
+ Add -lxpcomglue_s to EXTRA_LIBS on trunk.
+
+2006-12-01 Christian Persch <chpe@cvs.gnome.org>
+
* data/mime-types-permissions.xml:
Add text/google-video-pointer and variant.
diff --git a/embed/ephy-embed-find.c b/embed/ephy-embed-find.c
index bfbaa643c..b93680853 100644
--- a/embed/ephy-embed-find.c
+++ b/embed/ephy-embed-find.c
@@ -67,15 +67,17 @@ ephy_embed_find_find (EphyEmbedFind *find,
* ephy_embed_find_find_again:
* @embed: an #EphyEmbedFind
* @forward %TRUE to search forwards in the document
+ * @links_only: whether to only search the text in links
*
* Return value: whether a match was found
**/
EphyEmbedFindResult
ephy_embed_find_find_again (EphyEmbedFind *find,
- gboolean forward)
+ gboolean forward,
+ gboolean links_only)
{
EphyEmbedFindIface *iface = EPHY_EMBED_FIND_GET_IFACE (find);
- return iface->find_again (find, forward);
+ return iface->find_again (find, forward, links_only);
}
void
diff --git a/embed/ephy-embed-find.h b/embed/ephy-embed-find.h
index 6944f3f98..ac6b462ab 100644
--- a/embed/ephy-embed-find.h
+++ b/embed/ephy-embed-find.h
@@ -61,7 +61,8 @@ struct _EphyEmbedFindIface
const char *search_string,
gboolean links_only);
EphyEmbedFindResult (* find_again) (EphyEmbedFind *find,
- gboolean forward);
+ gboolean forward,
+ gboolean links_only);
void (* set_selection) (EphyEmbedFind *find,
gboolean attention);
gboolean (* activate_link) (EphyEmbedFind *find,
@@ -82,7 +83,8 @@ EphyEmbedFindResult ephy_embed_find_find (EphyEmbedFind *find,
gboolean links_only);
EphyEmbedFindResult ephy_embed_find_find_again (EphyEmbedFind *find,
- gboolean forward);
+ gboolean forward,
+ gboolean links_only);
void ephy_embed_find_set_selection (EphyEmbedFind *find,
gboolean attention);
diff --git a/embed/mozilla/EphyFind.cpp b/embed/mozilla/EphyFind.cpp
index ff94e7c9a..222647506 100644
--- a/embed/mozilla/EphyFind.cpp
+++ b/embed/mozilla/EphyFind.cpp
@@ -198,7 +198,8 @@ EphyFind::Find (const char *aSearchString,
}
EphyEmbedFindResult
-EphyFind::FindAgain (PRBool aForward)
+EphyFind::FindAgain (PRBool aForward,
+ PRBool aLinksOnly)
{
if (!mFinder) return EPHY_EMBED_FIND_NOTFOUND;
@@ -207,7 +208,7 @@ EphyFind::FindAgain (PRBool aForward)
nsresult rv;
PRUint16 found = nsITypeAheadFind::FIND_NOTFOUND;
#ifdef HAVE_GECKO_1_9
- rv = mFinder->FindAgain (!aForward, mHasFocus, &found);
+ rv = mFinder->FindAgain (!aForward, aLinksOnly, mHasFocus, &found);
#else
if (aForward) {
rv = mFinder->FindNext (&found);
diff --git a/embed/mozilla/EphyFind.h b/embed/mozilla/EphyFind.h
index 189eeb91d..dbbb18483 100644
--- a/embed/mozilla/EphyFind.h
+++ b/embed/mozilla/EphyFind.h
@@ -44,7 +44,8 @@ class EphyFind
void SetSelectionAttention (PRBool aAttention);
EphyEmbedFindResult Find (const char *aSearchString,
PRBool aLinksOnly);
- EphyEmbedFindResult FindAgain (PRBool aForward);
+ EphyEmbedFindResult FindAgain (PRBool aForward,
+ PRBool aLinksOnly);
PRBool ActivateLink (GdkModifierType aMask);
private:
diff --git a/embed/mozilla/mozilla-embed-find.cpp b/embed/mozilla/mozilla-embed-find.cpp
index fb4691a51..2b471db33 100644
--- a/embed/mozilla/mozilla-embed-find.cpp
+++ b/embed/mozilla/mozilla-embed-find.cpp
@@ -73,12 +73,13 @@ impl_find (EphyEmbedFind *efind,
static EphyEmbedFindResult
impl_find_again (EphyEmbedFind *efind,
- gboolean forward)
+ gboolean forward,
+ gboolean links_only)
{
MozillaEmbedFind *find = MOZILLA_EMBED_FIND (efind);
MozillaEmbedFindPrivate *priv = find->priv;
- return priv->find->FindAgain (forward);
+ return priv->find->FindAgain (forward, links_only);
}
static void
diff --git a/m4/gecko.m4 b/m4/gecko.m4
index 46e191415..cefb65215 100644
--- a/m4/gecko.m4
+++ b/m4/gecko.m4
@@ -96,6 +96,7 @@ xulrunner) gecko_cv_gecko_flavour=toolkit ;;
esac
_GECKO_INCLUDE_ROOT="`$PKG_CONFIG --variable=includedir ${gecko_cv_gecko}-xpcom`"
+_GECKO_LIBDIR="`$PKG_CONFIG --variable=libdir ${gecko_cv_gecko}-xpcom`"
_GECKO_HOME="`$PKG_CONFIG --variable=libdir ${gecko_cv_gecko}-xpcom`"
_GECKO_PREFIX="`$PKG_CONFIG --variable=prefix ${gecko_cv_gecko}-xpcom`"
@@ -110,6 +111,7 @@ AM_CONDITIONAL([HAVE_MOZILLA_TOOLKIT],[test "$gecko_cv_gecko_flavour" = "toolkit
$1[]=$gecko_cv_gecko
$1[]_FLAVOUR=$gecko_cv_gecko_flavour
$1[]_INCLUDE_ROOT=$_GECKO_INCLUDE_ROOT
+$1[]_LIBDIR=$_GECKO_LIBDIR
$1[]_HOME=$_GECKO_HOME
$1[]_PREFIX=$_GECKO_PREFIX
@@ -325,7 +327,7 @@ gecko_cv_extra_libs=
gecko_cv_extra_pkg_dependencies=
if test "$gecko_cv_gecko_version_int" -ge "1009000"; then
- gecko_cv_extra_libs="-lxul"
+ gecko_cv_extra_libs="-L$_GECKO_LIBDIR -lxul -lxpcomglue_s"
else
gecko_cv_extra_pkg_dependencies="${gecko_cv_gecko}-gtkmozembed"
fi
diff --git a/src/ephy-find-toolbar.c b/src/ephy-find-toolbar.c
index 6a7d12def..82f778a18 100644
--- a/src/ephy-find-toolbar.c
+++ b/src/ephy-find-toolbar.c
@@ -589,28 +589,34 @@ ephy_find_toolbar_set_embed (EphyFindToolbar *toolbar,
void
ephy_find_toolbar_find_next (EphyFindToolbar *toolbar)
{
+ GtkWidget *widget = GTK_WIDGET (toolbar);
+ EphyFindToolbarPrivate *priv = toolbar->priv;
EphyEmbedFindResult result;
- result = ephy_embed_find_find_again (get_find (toolbar), TRUE);
+ result = ephy_embed_find_find_again (get_find (toolbar), TRUE,
+ priv->links_only);
set_status (toolbar, result);
- if (!GTK_WIDGET_VISIBLE(toolbar)) {
- gtk_widget_show (GTK_WIDGET (toolbar));
- gtk_widget_grab_focus (GTK_WIDGET (toolbar));
+ if (!GTK_WIDGET_VISIBLE (widget)) {
+ gtk_widget_show (widget);
+ gtk_widget_grab_focus (widget);
}
}
void
ephy_find_toolbar_find_previous (EphyFindToolbar *toolbar)
{
+ GtkWidget *widget = GTK_WIDGET (toolbar);
+ EphyFindToolbarPrivate *priv = toolbar->priv;
EphyEmbedFindResult result;
- result = ephy_embed_find_find_again (get_find (toolbar), FALSE);
+ result = ephy_embed_find_find_again (get_find (toolbar), FALSE,
+ priv->links_only);
set_status (toolbar, result);
- if (!GTK_WIDGET_VISIBLE(toolbar)) {
- gtk_widget_show (GTK_WIDGET (toolbar));
- gtk_widget_grab_focus (GTK_WIDGET (toolbar));
+ if (!GTK_WIDGET_VISIBLE (widget)) {
+ gtk_widget_show (widget);
+ gtk_widget_grab_focus (widget);
}
}