Created attachment 18737[details]
gtk-doc makefile
This is a very tweaked GNUmakefile for generating docs with gtk-doc. What you have to do is to put the GNUmakefile inside WebKit/gtk/docs then type make from inside the docs directory.
Created attachment 19701[details]
Add gtk-doc build infrastructure.
Here's an alternate implementation for setting up the infrastructure, following more closely how gtk-doc is intended to be used (gtkdocize, Makefile.am including gtk-doc.make)
With --ignore-decorators="WEBKIT_API" and IGNORE_HFILES one can filter out / avoid most issues, I'm sure the same could be done even without autotools integration.
Whether or not you use autotools I'd argue you should maintain the webkit-docs.sgml file yourself in order to set up any kind of reasonable structure.
On related note, to add overview documentation for the whole class you should add a template similar to the following in each relevant .cpp file:
+/**
+ * SECTION:webkitwebview
+ * @short_description: Widget that displays a WebkitWebFrame
+ * @include: webkit/webkit.h
+ *
+ * Not written yet (OOPS!)
+ */
It's unclear for me how exactly the SECTION id is derived, I suppose it's the basename of the file.
Comment on attachment 19701[details]
Add gtk-doc build infrastructure.
The patch is very good, but it is not working for srcdir != builddir. The documentation gets generated in the srcdir.
When you have gtk-doc working, please request that it be added to library.gnome.org (via the website product in bugzilla.gnome.org) and add a link to it from http://live.gnome.org/WebKitGtk
(In reply to comment #4)
> (From update of attachment 19701[details] [review])
> The patch is very good, but it is not working for srcdir != builddir. The
> documentation gets generated in the srcdir.
hehe, month passed and I recognize that srcdir != builddir is not possible with gtk-doc anyway? Why did no one point that out. :)
Created attachment 25390[details]
Integrate gtk-doc in the build process
This looks awfully similar to the original patch. To build the documentation we require srcdir == builddir. This is true for any user of gtk-doc (pango and ...), we also need a recursive target as gtk-doc.make will not play nicely with our GNUmakefile.am.
The good thing is that generating documentation is not enabled by default so we will not break anyones build. To generate the documentation --enable-gtk-doc needs to be passed.
Created attachment 25391[details]
WIP Add section information and examples
Work In Progress. Add SECTION: and programlisting/examples to the documentation.
(In reply to comment #15)
> index f48f98f..c37d3ef 100644
> --- a/configure.ac
> +++ b/configure.ac
> @@ -670,6 +670,8 @@ if test "$enable_video" = "yes"; then
> html_flags=yes
> fi
>
> +GTK_DOC_CHECK([1.10])
> +
gtk-doc help suggest to add AC_CONFIG_MACRO_DIR(m4) too (see http://library.gnome.org/devel/gtk-doc-manual/stable/settingup_autoconf.html)
> diff --git a/WebKit/gtk/docs/GNUmakefile.am b/WebKit/gtk/docs/GNUmakefile.am
> new file mode 100644
I think you could remove general comment about macro usage, keeping only relevant info. Could also be useful add
DISTCHECK_CONFIGURE_FLAGS=--enable-gtk-doc
As suggested http://library.gnome.org/devel/gtk-doc-manual/stable/settingup_automake.html
About documentation itself, could be useful add an Overview section like:
<chapter id="overview">
<title>WebKit/Gtk Overview</title>
<para>
WebKit/Gtk is the <ulink role="online-location" url="http://www.gtk.org">GTK+</ulink>
port for <ulink role="online-location" url="http://www.webkit.org">WebKit</ulink>,
the open source web browser engine. A port of WebKit is a unique
combination of platform technologies that run the WebKit engine.
WebKit/Gtk port uses the graphic tecnologies provided by GTK+ toolkit.
</para>
</chapter>
this overview chapter could be extended with sub-sections related to building (dependencies, configure options..), compiling (against webkit, i.e. what pkg-config stuff you have to use in order to use webkitgtk in your project) and other stuff like the glib and gtk api refs overview (see [1] and [2])
Stupid final note: don't forget to add version control "ignore" property to files generated by gtk-doc, for example gtk-doc.make and all .html files.
[1] http://library.gnome.org/devel/glib/stable/glib.html
[2] http://library.gnome.org/devel/gtk/stable/gtk.html
Created attachment 28169[details]
doc structure updates required after the initial patch is landed, or should we merge?
I'm not providing a changelog here, but I will of course add one when we land. I'm posting the patches here just so that they don't get forgotten in my local computer.
(In reply to comment #22)
> Created an attachment (id=28170) [review]
> section docs for two new objects
I think the adjective "asynchronous(ly)" should be mentioned in the section about the WebPolicyAction since that's the main reason why it exists.
Created attachment 28640[details]
changes I made to support 1.1.2
This is a fair amount of unrelated changes. I intend to split them when we have landed the initial bits, so that they make sense as changesets.
(In reply to comment #21)
> Created an attachment (id=28169) [review]
> doc structure updates required after the initial patch is landed, or should we
> merge?
>
> I'm not providing a changelog here, but I will of course add one when we land.
> I'm posting the patches here just so that they don't get forgotten in my local
> computer.
please merge it, I can review the merged result then.
Comment on attachment 29083[details]
Wrote a section about using the WEBKIT_DEBUG environment variable.
> +<literal>--debug</literal> to the <literal>configure</literal> script.
Isn't this --enable-debug?
Comment on attachment 28640[details]
changes I made to support 1.1.2
> + <xi:include href="xml/webkitsoupauthdialog.xml"/>
Okay, we are not consistent here. Is WebKitSoupAuthDialog public API or not? I was under the assumption it is not.
> - <title>Index of deprectaed symbols</title>
> + <title>Index of deprecated symbols</title>
make that a separate spelling fix commit. :)
Comment on attachment 29106[details]
integrate gtk-doc in the build process
> + <title>WebKit/Gtk+ Reference Manual</title>
> + <releaseinfo>for WebKit/Gtk+ &version;</releaseinfo>
Use the right name and we need to get some help from Jan to integrate it in the make all target.
Comment on attachment 28640[details]
changes I made to support 1.1.2
Okay, I got updated, WebKitSoupAuthDialog is supposed to be public API... Which means it deserves some padding in the class struct. :)
2008-01-28 09:46 PST, Luca Bruno
2008-03-12 10:29 PDT, Tommi Komulainen
2008-11-22 21:41 PST, Holger Freyther
2008-11-22 21:43 PST, Holger Freyther
2008-11-22 21:45 PST, Holger Freyther
2008-11-22 21:46 PST, Holger Freyther
2008-11-22 21:49 PST, Holger Freyther
2008-11-22 21:51 PST, Holger Freyther
2008-11-29 11:48 PST, Holger Freyther
2009-03-02 06:20 PST, Gustavo Noronha (kov)
2009-03-02 06:21 PST, Gustavo Noronha (kov)
2009-03-15 11:23 PDT, Gustavo Noronha (kov)
2009-03-30 13:15 PDT, Gustavo Noronha (kov)
2009-03-30 13:15 PDT, Gustavo Noronha (kov)
2009-03-30 19:26 PDT, Gustavo Noronha (kov)