Skip to content


Subversion checkout URL

You can clone with
Download ZIP
Commits on May 18, 2012
  1. @ariya
  2. @brikou @ariya
Commits on May 7, 2012
  1. @ariya

    Mac: Embed Info.plist in the executable.

    ariya committed
    Info.plist is needed to surpress the dock icon. Up to now, we need to have
    the file available at run-time. With this change, the contents of
    Info.plist are embedded in the executable at the linking stage, thus
    there is no need to deploy the Info.plist file anymore.
    Credit to Smokey Ardisson for the tip.
Commits on May 3, 2012
  1. @milianw

    Fix application font loading in basic font db

    milianw committed
    ISSUE: 460 (
    this is a backport from qtbase:
    commit 89cfe9eb01ad75c14121dbd6038b7c791226acf1
    Author: Jiang Jiang <>
    Date:   Thu Nov 10 18:01:56 2011 +0100
        We need to reregister fonts in initializeDb because basic font db
        doesn't have an internal record like fontconfig does, so just
        repopulating the font database won't work. db->reregisterAppFonts
        is now used properly as intended (reregister application fonts
        after the system font database has been cleared).
        Also, static variable 'initialized' in initializeDb() is removed
        since we check privateDb()->count to see if it needs to be populated
        Task-number: QTBUG-22063
        Change-Id: Ifc66392b56b72acbe08b99256c61421c204be5d7
        Reviewed-by: Eskil Abrahamsen Blomfeldt <>
Commits on May 2, 2012
  1. @milianw

    Properly handle fourth CLI parameter in rasterize.js example.

    milianw committed
    After the change to system.args which has the app as first element,
    the rasterize example was not properly adapted. Due to that, one
    could not pass a size parameter to it anymore, resulting in PDFs
    without page breaks.
    ISSUE: 523 (
Commits on Apr 30, 2012
  1. @milianw @ariya

    Extend printheaderfooter.js example documentation

    milianw committed with ariya
    The comment now explains how to delegate the header/footer setup
    to the loaded HTML page by giving an explicit HTML example that
    defines the required PhantomJSPrinting object
    ISSUE: 512 (
Commits on Apr 25, 2012
  1. @milianw

    Improve to create a quasi-static phantomjs.

    milianw committed
    The script now copies all required shared libraries found via ldd
    to the deployment folder.
    Furthermore, a run-script is created that runs the phantomjs binary
    through the copied build-host's to ensure all symbols
    are properly resolved.
    Last but not least, we now include a very slightly modified brandelf.c
    from FreeBSD. This version can be compiled on Linux machines and is
    used to change the ELF ABI of the binary and libs in the deployment
    folder, such that they all use the old SYSV OS ABI for compatibility.
    $ scp phantomjs-$version.tar.bz2 yourhost
    $ ssh yourhost
    $ tar -xf phantomjs-$version.tar.bz2
    $ ./phantomjs-$version/
    CC ISSUE: 413 (
    (proper static build would still be desirable eventually if possible)
Commits on Apr 20, 2012
  1. @milianw

    Properly pass --qt-config value from to src/qt/

    milianw committed
    This way one can properly cross-compile PhantomJS for different
    platforms e.g. by passing --qt-config '-platform ...' to
    ISSUE: 507 (
Commits on Apr 18, 2012
  1. @milianw

    Reuse number of jobs configured in MAKEFLAGS env var if available

    milianw committed
    Especially on machines that are connected to a compile farm, the
    MAKEFLAGS env var is usually set to configure the default number
    of jobs that should be used. This way, one can just call the
    PhantomJS build script without passing the number of jobs every
    ISSUE: 503 (
Commits on Apr 17, 2012
  1. @ariya

    Fixed minor typo in

    ariya committed
    Thanks to Alessandro for spotting it.
Commits on Apr 16, 2012
  1. @ariya

    Build system: do not assume 4 parallel jobs on Linux.

    ariya committed
    Try to grab the number of CPU cores from /proc/cpuinfo and use it as
    the number of parallel make jobs (limit to 8 as a safety measure).
Commits on Apr 15, 2012
  1. @ariya
  2. @milianw @ariya

    Make it possible to print pages with user-defined headers/footers.

    milianw committed with ariya
    page.paperSize = {
      margin: "1cm",
      header: {
        height: "1cm",
        contents: phantom.callback(function(pageNum, numPages) {
          return "<h1>" + pageNum + " / " + numPages + "</h1>";
      footer: {
        height: "0.5cm",
        contents: phantom.callback(function(pageNum, numPages) {
          return "<h2>" + pageNum + " / " + numPages + "</h1>";
    Note: The contents can return arbitrary HTML but since we cannot
    re-layout the whole website for every page, the header/footers
    must have the static height defined in the height property.
    Note: The new example printheaderfooter.js shows the usage. It
    also shows how one could delegate the above to a JavaScript
    function on the loaded website, which allows one to print pages
    and let the actually printed page decide how the header/footer
    should look like.
    Note: The page-counter can be reset by adding the class "phantomjs_reset_pagination"
    to HTML block-elements that should reset the counter.
    ISSUE: 410 (
Commits on Apr 12, 2012
  1. @milianw @ariya
Commits on Apr 11, 2012
  1. @ariya
  2. @ariya
  3. @ariya

    Squashed commit of the following:

    ariya committed
    commit c373ac4
    Author: Danny Wang <>
    Date:   Tue Apr 10 12:38:13 2012 +0800
        moved i and l delarations to the top of page.evaluate()
    commit bf24d4d
    Author: Danny Wang <>
    Date:   Tue Apr 10 08:54:55 2012 +0800
        fixed defects in evaluate() pointed out by detro
    commit 0bb8cff
    Author: Danny Wang <>
    Date:   Fri Apr 6 19:21:47 2012 +0800
        added passing variables to function for page.evaluate
Commits on Apr 2, 2012
  1. @ariya
Commits on Apr 1, 2012
  1. @ariya
  2. @ariya
  3. @ariya

    Improve PhantomJS description.

    ariya committed
    First cut at a more modernized version of the README.
Commits on Mar 28, 2012
  1. @davidrapin @ariya
Commits on Mar 23, 2012
  1. @ariya
  2. @detro
  3. @detro

    Fixing defect in the "Filesystem Spec 03".

    detro committed
    Too strong assumption regarding the Current Working Directory.
  4. @detro
  5. @detro

    Updating "webserver" test spec.

    detro committed
    I also made a minor fix in the logic of "system" test spec:
    too strong assumption on the CurrentWorkingDirectory
    when launching the test.
  6. @ariya
  7. @ariya
  8. @detro @ariya

    Second attempt to solve Issue 439.

    detro committed with ariya
    [Issue 439](
    This works for all kind of "Content Body" but with raw bytes: the issue is that QtWebKit doesn't know how to convert a "QByteArray" to a "QVariant" (to inject it in the JavaScript space), resulting in a malformed conversion (somehow it decides to create a map where byte position is the 'key' and the byte at that position is the 'value').
    This fix covers most scenarios (hopefully) but we are blocked on solving it completely.
  9. @detro @ariya
Commits on Mar 21, 2012
  1. @ariya

    Bracing for Ghost Flower.

    ariya committed
  2. @ariya

    More changes for 1.5.

    ariya committed
  3. @detro @ariya

    Fix for Issue [439](…

    detro committed with ariya
    Even without "Content-Type" set to "application/x-www-form-urlencoded", content in the body of a POST or PUT should be available.
Commits on Mar 20, 2012
  1. @detro @ariya

    Fixing the "request.url" field, excluding symbols '/', '&' and '#' fr…

    detro committed with ariya
    …om "percent encoding".
    Well, it's not really necessary for '#' but I'm just being safe (non-browser clients).
Something went wrong with that request. Please try again.