<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugs.webkit.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.4.1"
          urlbase="https://bugs.webkit.org/"
          
          maintainer="admin@webkit.org"
>

    <bug>
          <bug_id>14806</bug_id>
          
          <creation_ts>2007-07-29 14:10:11 -0700</creation_ts>
          <short_desc>[gtk] [patch] Implement can_go_backward and can_go_forward in webkitgtkpage.cpp</short_desc>
          <delta_ts>2007-07-29 21:50:50 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebKit API</component>
          <version>523.x (Safari 3)</version>
          <rep_platform>PC</rep_platform>
          <op_sys>Linux</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>Gtk</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>0</everconfirmed>
          <reporter name="Diego Escalante Urrelo">diegoe</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>diegoe</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>3495</commentid>
    <comment_count>0</comment_count>
    <who name="Diego Escalante Urrelo">diegoe</who>
    <bug_when>2007-07-29 14:10:11 -0700</bug_when>
    <thetext>Hacking on Epiphany&apos;s webkit backend I discovered that webkitgtkpage.h announces the webkit_gtk_page_can_go_backward and webkit_gtk_page_can_go_forward functions but they are not implemented. I just dived into the code and added the corresponding wrappers. Patch attached.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>3496</commentid>
    <comment_count>1</comment_count>
      <attachid>15726</attachid>
    <who name="Diego Escalante Urrelo">diegoe</who>
    <bug_when>2007-07-29 14:11:22 -0700</bug_when>
    <thetext>Created attachment 15726
Implements the wrappers for can_go_forward|backward

Pretty simple.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>3500</commentid>
    <comment_count>2</comment_count>
      <attachid>15726</attachid>
    <who name="Adam Roben (:aroben)">aroben</who>
    <bug_when>2007-07-29 14:31:02 -0700</bug_when>
    <thetext>Comment on attachment 15726
Implements the wrappers for can_go_forward|backward

The implementation looks good. Just a few comments to bring this patch in line with &lt;http://webkit.org/coding/coding-style.html&gt;

 }
+gboolean webkit_gtk_page_can_go_backward (WebKitGtkPage* page)
+{

There should be an empty line before/after all functions. Please remove the space before the open parenthesis.

+    WebKitGtkPagePrivate* page_data = WEBKIT_GTK_PAGE_GET_PRIVATE(page);
+    WebKitGtkFramePrivate* frame_data = WEBKIT_GTK_FRAME_GET_PRIVATE(page_data-&gt;main_frame);

After talking with Holger, I think we&apos;re going to move towards maintaining the WebKit camelCase style for variable names within the WebKit/gtk implementation files. So these variables should be called pageData and frameData. I know it&apos;s inconsistent with the rest of the file, but that will be cleaned up later.

You also need a ChangeLog entry to go along with your patch. See &lt;http://webkit.org/coding/contributing.html&gt; for instructions on how to generate one.

Once these are addressed, I think we can get this landed!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>3474</commentid>
    <comment_count>3</comment_count>
      <attachid>15735</attachid>
    <who name="Diego Escalante Urrelo">diegoe</who>
    <bug_when>2007-07-29 18:45:34 -0700</bug_when>
    <thetext>Created attachment 15735
Updated patch, corrects style

This should be enough!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>3475</commentid>
    <comment_count>4</comment_count>
      <attachid>15735</attachid>
    <who name="Adam Roben (:aroben)">aroben</who>
    <bug_when>2007-07-29 18:50:16 -0700</bug_when>
    <thetext>Comment on attachment 15735
Updated patch, corrects style

r=me

Thanks for the cleanup!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>3471</commentid>
    <comment_count>5</comment_count>
      <attachid>15735</attachid>
    <who name="Diego Escalante Urrelo">diegoe</who>
    <bug_when>2007-07-29 19:05:12 -0700</bug_when>
    <thetext>Comment on attachment 15735
Updated patch, corrects style

&gt;Index: gtk/Api/webkitgtkpage.cpp
&gt;===================================================================
&gt;--- gtk/Api/webkitgtkpage.cpp	(revision 24766)
&gt;+++ gtk/Api/webkitgtkpage.cpp	(working copy)
&gt;@@ -328,6 +328,20 @@ void webkit_gtk_page_go_forward(WebKitGt
&gt;     frame_data-&gt;frame-&gt;loader()-&gt;goBackOrForward(1);
&gt; }
&gt; 
&gt;+gboolean webkit_gtk_page_can_go_backward(WebKitGtkPage* page)
&gt;+{
&gt;+    WebKitGtkPagePrivate* pageData = WEBKIT_GTK_PAGE_GET_PRIVATE(page);
&gt;+    WebKitGtkFramePrivate* frameData = WEBKIT_GTK_FRAME_GET_PRIVATE(page_data-&gt;main_frame);
Oops, should be pageData.

&gt;+    return frame_data-&gt;frame-&gt;loader()-&gt;canGoBackOrForward(-1);
Oops, should be frameData

Same in the other function.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>15726</attachid>
            <date>2007-07-29 14:11:22 -0700</date>
            <delta_ts>2007-07-29 18:45:34 -0700</delta_ts>
            <desc>Implements the wrappers for can_go_forward|backward</desc>
            <filename>webkit-can-go-wherever.diff</filename>
            <type>text/plain</type>
            <size>1102</size>
            <attacher name="Diego Escalante Urrelo">diegoe</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYktpdC9ndGsvQXBpL3dlYmtpdGd0a3BhZ2UuY3BwCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdl
YktpdC9ndGsvQXBpL3dlYmtpdGd0a3BhZ2UuY3BwCShyZXZpc2lvbiAyNDY1NikKKysrIFdlYktp
dC9ndGsvQXBpL3dlYmtpdGd0a3BhZ2UuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0zMjcsNiArMzI3
LDE4IEBAIHZvaWQgd2Via2l0X2d0a19wYWdlX2dvX2ZvcndhcmQoV2ViS2l0R3QKICAgICBXZWJL
aXRHdGtGcmFtZVByaXZhdGUqIGZyYW1lX2RhdGEgPSBXRUJLSVRfR1RLX0ZSQU1FX0dFVF9QUklW
QVRFKHBhZ2VfZGF0YS0+bWFpbl9mcmFtZSk7CiAgICAgZnJhbWVfZGF0YS0+ZnJhbWUtPmxvYWRl
cigpLT5nb0JhY2tPckZvcndhcmQoMSk7CiB9CitnYm9vbGVhbiB3ZWJraXRfZ3RrX3BhZ2VfY2Fu
X2dvX2JhY2t3YXJkIChXZWJLaXRHdGtQYWdlKiBwYWdlKQoreworICAgIFdlYktpdEd0a1BhZ2VQ
cml2YXRlKiBwYWdlX2RhdGEgPSBXRUJLSVRfR1RLX1BBR0VfR0VUX1BSSVZBVEUocGFnZSk7Cisg
ICAgV2ViS2l0R3RrRnJhbWVQcml2YXRlKiBmcmFtZV9kYXRhID0gV0VCS0lUX0dUS19GUkFNRV9H
RVRfUFJJVkFURShwYWdlX2RhdGEtPm1haW5fZnJhbWUpOworICAgIHJldHVybiBmcmFtZV9kYXRh
LT5mcmFtZS0+bG9hZGVyKCktPmNhbkdvQmFja09yRm9yd2FyZCgtMSk7Cit9CitnYm9vbGVhbiB3
ZWJraXRfZ3RrX3BhZ2VfY2FuX2dvX2ZvcndhcmQgKFdlYktpdEd0a1BhZ2UqIHBhZ2UpCit7Cisg
ICAgV2ViS2l0R3RrUGFnZVByaXZhdGUqIHBhZ2VfZGF0YSA9IFdFQktJVF9HVEtfUEFHRV9HRVRf
UFJJVkFURShwYWdlKTsKKyAgICBXZWJLaXRHdGtGcmFtZVByaXZhdGUqIGZyYW1lX2RhdGEgPSBX
RUJLSVRfR1RLX0ZSQU1FX0dFVF9QUklWQVRFKHBhZ2VfZGF0YS0+bWFpbl9mcmFtZSk7CisgICAg
cmV0dXJuIGZyYW1lX2RhdGEtPmZyYW1lLT5sb2FkZXIoKS0+Y2FuR29CYWNrT3JGb3J3YXJkKDEp
OworfQogCiB2b2lkIHdlYmtpdF9ndGtfcGFnZV9vcGVuKFdlYktpdEd0a1BhZ2UqIHBhZ2UsIGNv
bnN0IGdjaGFyKiB1cmwpCiB7Cg==
</data>
<flag name="review"
          id="6558"
          type_id="1"
          status="-"
          setter="aroben"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>15735</attachid>
            <date>2007-07-29 18:45:34 -0700</date>
            <delta_ts>2007-07-29 18:50:16 -0700</delta_ts>
            <desc>Updated patch, corrects style</desc>
            <filename>bwo_14806_can-go-back-ford.diff</filename>
            <type>text/plain</type>
            <size>1532</size>
            <attacher name="Diego Escalante Urrelo">diegoe</attacher>
            
              <data encoding="base64">SW5kZXg6IGd0ay9BcGkvd2Via2l0Z3RrcGFnZS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gZ3RrL0FwaS93
ZWJraXRndGtwYWdlLmNwcAkocmV2aXNpb24gMjQ3NjYpCisrKyBndGsvQXBpL3dlYmtpdGd0a3Bh
Z2UuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0zMjgsNiArMzI4LDIwIEBAIHZvaWQgd2Via2l0X2d0
a19wYWdlX2dvX2ZvcndhcmQoV2ViS2l0R3QKICAgICBmcmFtZV9kYXRhLT5mcmFtZS0+bG9hZGVy
KCktPmdvQmFja09yRm9yd2FyZCgxKTsKIH0KIAorZ2Jvb2xlYW4gd2Via2l0X2d0a19wYWdlX2Nh
bl9nb19iYWNrd2FyZChXZWJLaXRHdGtQYWdlKiBwYWdlKQoreworICAgIFdlYktpdEd0a1BhZ2VQ
cml2YXRlKiBwYWdlRGF0YSA9IFdFQktJVF9HVEtfUEFHRV9HRVRfUFJJVkFURShwYWdlKTsKKyAg
ICBXZWJLaXRHdGtGcmFtZVByaXZhdGUqIGZyYW1lRGF0YSA9IFdFQktJVF9HVEtfRlJBTUVfR0VU
X1BSSVZBVEUocGFnZV9kYXRhLT5tYWluX2ZyYW1lKTsKKyAgICByZXR1cm4gZnJhbWVfZGF0YS0+
ZnJhbWUtPmxvYWRlcigpLT5jYW5Hb0JhY2tPckZvcndhcmQoLTEpOworfQorCitnYm9vbGVhbiB3
ZWJraXRfZ3RrX3BhZ2VfY2FuX2dvX2ZvcndhcmQoV2ViS2l0R3RrUGFnZSogcGFnZSkKK3sKKyAg
ICBXZWJLaXRHdGtQYWdlUHJpdmF0ZSogcGFnZURhdGEgPSBXRUJLSVRfR1RLX1BBR0VfR0VUX1BS
SVZBVEUocGFnZSk7CisgICAgV2ViS2l0R3RrRnJhbWVQcml2YXRlKiBmcmFtZURhdGEgPSBXRUJL
SVRfR1RLX0ZSQU1FX0dFVF9QUklWQVRFKHBhZ2VfZGF0YS0+bWFpbl9mcmFtZSk7CisgICAgcmV0
dXJuIGZyYW1lX2RhdGEtPmZyYW1lLT5sb2FkZXIoKS0+Y2FuR29CYWNrT3JGb3J3YXJkKDEpOwor
fQorCiB2b2lkIHdlYmtpdF9ndGtfcGFnZV9vcGVuKFdlYktpdEd0a1BhZ2UqIHBhZ2UsIGNvbnN0
IGdjaGFyKiB1cmwpCiB7CiAgICAgV2ViS2l0R3RrUGFnZVByaXZhdGUqIHBhZ2VfZGF0YSA9IFdF
QktJVF9HVEtfUEFHRV9HRVRfUFJJVkFURShwYWdlKTsKSW5kZXg6IENoYW5nZUxvZwo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBDaGFuZ2VMb2cJKHJldmlzaW9uIDI0NzY2KQorKysgQ2hhbmdlTG9nCSh3b3JraW5n
IGNvcHkpCkBAIC0xLDMgKzEsMTIgQEAKKzIwMDctMDctMjkgIERpZWdvIEVzY2FsYW50ZSBVcnJl
bG8gIDxkaWVnb2VAZ25vbWUub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgICogZ3RrL0FwaS93ZWJraXRndGtwYWdlLmNwcDoKKworCUltcGxlbWVu
dCB3ZWJraXRfZ3RrX3BhZ2VfY2FuX2dvX2JhY2t3YXJkKCkgYW5kCisJd2Via2l0X2d0a19wYWdl
X2Nhbl9nb19mb3J3YXJkKCkgZnVuY3Rpb25zLgorCiAyMDA3LTA3LTI5ICBBZGVsZSBQZXRlcnNv
biAgPGFkZWxlQGFwcGxlLmNvbT4KIAogICAgICAgICBSZXZpZXdlZCBieSBKb2huLgo=
</data>
<flag name="review"
          id="6560"
          type_id="1"
          status="+"
          setter="aroben"
    />
          </attachment>
      

    </bug>

</bugzilla>