<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head><meta http-equiv="content-type" content="text/html; charset=utf-8" />
<title>[165462] releases/WebKitGTK/webkit-2.4</title>
</head>
<body>

<style type="text/css"><!--
#msg dl.meta { border: 1px #006 solid; background: #369; padding: 6px; color: #fff; }
#msg dl.meta dt { float: left; width: 6em; font-weight: bold; }
#msg dt:after { content:':';}
#msg dl, #msg dt, #msg ul, #msg li, #header, #footer, #logmsg { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt;  }
#msg dl a { font-weight: bold}
#msg dl a:link    { color:#fc3; }
#msg dl a:active  { color:#ff0; }
#msg dl a:visited { color:#cc6; }
h3 { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt; font-weight: bold; }
#msg pre { overflow: auto; background: #ffc; border: 1px #fa0 solid; padding: 6px; }
#logmsg { background: #ffc; border: 1px #fa0 solid; padding: 1em 1em 0 1em; }
#logmsg p, #logmsg pre, #logmsg blockquote { margin: 0 0 1em 0; }
#logmsg p, #logmsg li, #logmsg dt, #logmsg dd { line-height: 14pt; }
#logmsg h1, #logmsg h2, #logmsg h3, #logmsg h4, #logmsg h5, #logmsg h6 { margin: .5em 0; }
#logmsg h1:first-child, #logmsg h2:first-child, #logmsg h3:first-child, #logmsg h4:first-child, #logmsg h5:first-child, #logmsg h6:first-child { margin-top: 0; }
#logmsg ul, #logmsg ol { padding: 0; list-style-position: inside; margin: 0 0 0 1em; }
#logmsg ul { text-indent: -1em; padding-left: 1em; }#logmsg ol { text-indent: -1.5em; padding-left: 1.5em; }
#logmsg > ul, #logmsg > ol { margin: 0 0 1em 0; }
#logmsg pre { background: #eee; padding: 1em; }
#logmsg blockquote { border: 1px solid #fa0; border-left-width: 10px; padding: 1em 1em 0 1em; background: white;}
#logmsg dl { margin: 0; }
#logmsg dt { font-weight: bold; }
#logmsg dd { margin: 0; padding: 0 0 0.5em 0; }
#logmsg dd:before { content:'\00bb';}
#logmsg table { border-spacing: 0px; border-collapse: collapse; border-top: 4px solid #fa0; border-bottom: 1px solid #fa0; background: #fff; }
#logmsg table th { text-align: left; font-weight: normal; padding: 0.2em 0.5em; border-top: 1px dotted #fa0; }
#logmsg table td { text-align: right; border-top: 1px dotted #fa0; padding: 0.2em 0.5em; }
#logmsg table thead th { text-align: center; border-bottom: 1px solid #fa0; }
#logmsg table th.Corner { text-align: left; }
#logmsg hr { border: none 0; border-top: 2px dashed #fa0; height: 1px; }
#header, #footer { color: #fff; background: #636; border: 1px #300 solid; padding: 6px; }
#patch { width: 100%; }
#patch h4 {font-family: verdana,arial,helvetica,sans-serif;font-size:10pt;padding:8px;background:#369;color:#fff;margin:0;}
#patch .propset h4, #patch .binary h4 {margin:0;}
#patch pre {padding:0;line-height:1.2em;margin:0;}
#patch .diff {width:100%;background:#eee;padding: 0 0 10px 0;overflow:auto;}
#patch .propset .diff, #patch .binary .diff  {padding:10px 0;}
#patch span {display:block;padding:0 10px;}
#patch .modfile, #patch .addfile, #patch .delfile, #patch .propset, #patch .binary, #patch .copfile {border:1px solid #ccc;margin:10px 0;}
#patch ins {background:#dfd;text-decoration:none;display:block;padding:0 10px;}
#patch del {background:#fdd;text-decoration:none;display:block;padding:0 10px;}
#patch .lines, .info {color:#888;background:#fff;}
--></style>
<div id="msg">
<dl class="meta">
<dt>Revision</dt> <dd><a href="http://trac.webkit.org/projects/webkit/changeset/165462">165462</a></dd>
<dt>Author</dt> <dd>carlosgc@webkit.org</dd>
<dt>Date</dt> <dd>2014-03-12 01:14:46 -0700 (Wed, 12 Mar 2014)</dd>
</dl>

<h3>Log Message</h3>
<pre>Merge <a href="http://trac.webkit.org/projects/webkit/changeset/165418">r165418</a> - [GTK] Add support for Geoclue2
https://bugs.webkit.org/show_bug.cgi?id=120185

Reviewed by Carlos Garcia Campos.

.:

Add support for Geoclue2 using autotools.

* Source/autotools/FindDependencies.m4: Add support for handling
both Geoclue 1.0 and 2.0.
* Source/autotools/PrintBuildConfiguration.m4: Print the version
of geoclue that is being used.
* Source/autotools/SetupAutoconfHeader.m4: Define GEOCLUE_API_VERSION_2.
* Source/autotools/SetupAutomake.m4: Likewise, for AM_CONDITIONAL.
* Source/autotools/Versions.m4: Added minimum required version for Geoclue2.

Add support for Geoclue2 using CMake.

* Source/cmake/FindGeoClue2.cmake: Added.
* Source/cmake/OptionsGTK.cmake:  Add support for handling Geoclue 1.0 and 2.0.
* Source/cmakeconfig.h.cmake: Define WTF_USE_GEOCLUE2.

Source/WebCore:

Implement a new geolocation provider based on Geoclue2, which will only
be used if a good enough version of Geoclue2 is found  at configure time.

* GNUmakefile.am: Generate C-API for accessing the D-Bus API
provided by Geoclue2, and place it in DerivedSources.
* GNUmakefile.list.am: Add GeolocationProviderGeoclue2.cpp, and
include the generated proxy files when using Geoclue2.
* PlatformGTK.cmake: Likewise, for CMake based builds.
* platform/geoclue/GeolocationProviderGeoclue.h: Modified to
accomodate the needs both for Geoclue and Geoclue2 providers.
* platform/geoclue/GeolocationProviderGeoclue1.cpp: Renamed from Source/WebCore/platform/geoclue/GeolocationProviderGeoclue.cpp.
(GeolocationProviderGeoclue::getPositionCallback):
(GeolocationProviderGeoclue::positionChangedCallback):
(GeolocationProviderGeoclue::createGeocluePositionCallback):
(GeolocationProviderGeoclue::geoclueClientSetRequirementsCallback):
(GeolocationProviderGeoclue::createGeoclueClientCallback):
(GeolocationProviderGeoclue::GeolocationProviderGeoclue):
(GeolocationProviderGeoclue::~GeolocationProviderGeoclue):
(GeolocationProviderGeoclue::startUpdating):
(GeolocationProviderGeoclue::stopUpdating):
(GeolocationProviderGeoclue::setEnableHighAccuracy):
(GeolocationProviderGeoclue::initializeGeoclueClient):
(GeolocationProviderGeoclue::initializeGeocluePosition):
(GeolocationProviderGeoclue::updateClientRequirements):
(GeolocationProviderGeoclue::positionChanged):
(GeolocationProviderGeoclue::errorOccurred):
* platform/geoclue/GeolocationProviderGeoclue2.cpp: Added.
(GeolocationProviderGeoclue::GeolocationProviderGeoclue):
(GeolocationProviderGeoclue::~GeolocationProviderGeoclue):
(GeolocationProviderGeoclue::startUpdating):
(GeolocationProviderGeoclue::stopUpdating):
(GeolocationProviderGeoclue::setEnableHighAccuracy):
(GeolocationProviderGeoclue::createGeoclueManagerProxyCallback):
(GeolocationProviderGeoclue::getGeoclueClientCallback):
(GeolocationProviderGeoclue::createGeoclueClientProxyCallback):
(GeolocationProviderGeoclue::startClientCallback):
(GeolocationProviderGeoclue::locationUpdatedCallback):
(GeolocationProviderGeoclue::createLocationProxyCallback):
(GeolocationProviderGeoclue::startGeoclueClient):
(GeolocationProviderGeoclue::updateLocation):
(GeolocationProviderGeoclue::errorOccurred):
(GeolocationProviderGeoclue::updateClientRequirements):</pre>

<h3>Modified Paths</h3>
<ul>
<li><a href="#releasesWebKitGTKwebkit24ChangeLog">releases/WebKitGTK/webkit-2.4/ChangeLog</a></li>
<li><a href="#releasesWebKitGTKwebkit24SourceWebCoreChangeLog">releases/WebKitGTK/webkit-2.4/Source/WebCore/ChangeLog</a></li>
<li><a href="#releasesWebKitGTKwebkit24SourceWebCoreGNUmakefileam">releases/WebKitGTK/webkit-2.4/Source/WebCore/GNUmakefile.am</a></li>
<li><a href="#releasesWebKitGTKwebkit24SourceWebCoreGNUmakefilelistam">releases/WebKitGTK/webkit-2.4/Source/WebCore/GNUmakefile.list.am</a></li>
<li><a href="#releasesWebKitGTKwebkit24SourceWebCorePlatformGTKcmake">releases/WebKitGTK/webkit-2.4/Source/WebCore/PlatformGTK.cmake</a></li>
<li><a href="#releasesWebKitGTKwebkit24SourceWebCoreplatformgeoclueGeolocationProviderGeoclueh">releases/WebKitGTK/webkit-2.4/Source/WebCore/platform/geoclue/GeolocationProviderGeoclue.h</a></li>
<li><a href="#releasesWebKitGTKwebkit24SourceautotoolsFindDependenciesm4">releases/WebKitGTK/webkit-2.4/Source/autotools/FindDependencies.m4</a></li>
<li><a href="#releasesWebKitGTKwebkit24SourceautotoolsPrintBuildConfigurationm4">releases/WebKitGTK/webkit-2.4/Source/autotools/PrintBuildConfiguration.m4</a></li>
<li><a href="#releasesWebKitGTKwebkit24SourceautotoolsSetupAutoconfHeaderm4">releases/WebKitGTK/webkit-2.4/Source/autotools/SetupAutoconfHeader.m4</a></li>
<li><a href="#releasesWebKitGTKwebkit24SourceautotoolsSetupAutomakem4">releases/WebKitGTK/webkit-2.4/Source/autotools/SetupAutomake.m4</a></li>
<li><a href="#releasesWebKitGTKwebkit24SourceautotoolsVersionsm4">releases/WebKitGTK/webkit-2.4/Source/autotools/Versions.m4</a></li>
<li><a href="#releasesWebKitGTKwebkit24SourcecmakeOptionsGTKcmake">releases/WebKitGTK/webkit-2.4/Source/cmake/OptionsGTK.cmake</a></li>
<li><a href="#releasesWebKitGTKwebkit24Sourcecmakeconfighcmake">releases/WebKitGTK/webkit-2.4/Source/cmakeconfig.h.cmake</a></li>
</ul>

<h3>Added Paths</h3>
<ul>
<li><a href="#releasesWebKitGTKwebkit24SourceWebCoreplatformgeoclueGeolocationProviderGeoclue1cpp">releases/WebKitGTK/webkit-2.4/Source/WebCore/platform/geoclue/GeolocationProviderGeoclue1.cpp</a></li>
<li><a href="#releasesWebKitGTKwebkit24SourceWebCoreplatformgeoclueGeolocationProviderGeoclue2cpp">releases/WebKitGTK/webkit-2.4/Source/WebCore/platform/geoclue/GeolocationProviderGeoclue2.cpp</a></li>
<li><a href="#releasesWebKitGTKwebkit24SourcecmakeFindGeoClue2cmake">releases/WebKitGTK/webkit-2.4/Source/cmake/FindGeoClue2.cmake</a></li>
</ul>

<h3>Removed Paths</h3>
<ul>
<li><a href="#releasesWebKitGTKwebkit24SourceWebCoreplatformgeoclueGeolocationProviderGeocluecpp">releases/WebKitGTK/webkit-2.4/Source/WebCore/platform/geoclue/GeolocationProviderGeoclue.cpp</a></li>
</ul>

</div>
<div id="patch">
<h3>Diff</h3>
<a id="releasesWebKitGTKwebkit24ChangeLog"></a>
<div class="modfile"><h4>Modified: releases/WebKitGTK/webkit-2.4/ChangeLog (165461 => 165462)</h4>
<pre class="diff"><span>
<span class="info">--- releases/WebKitGTK/webkit-2.4/ChangeLog        2014-03-12 06:46:52 UTC (rev 165461)
+++ releases/WebKitGTK/webkit-2.4/ChangeLog        2014-03-12 08:14:46 UTC (rev 165462)
</span><span class="lines">@@ -1,3 +1,28 @@
</span><ins>+2014-03-10  Mario Sanchez Prada  &lt;mario.prada@samsung.com&gt;
+
+        [GTK] Add support for Geoclue2
+        https://bugs.webkit.org/show_bug.cgi?id=120185
+
+        Reviewed by Carlos Garcia Campos.
+
+        Patch by Anton Obzhirov &lt;a.obzhirov@samsung.com&gt; and Mario Sanchez Prada &lt;mario.prada@samsung.com&gt;
+
+        Add support for Geoclue2 using autotools.
+
+        * Source/autotools/FindDependencies.m4: Add support for handling
+        both Geoclue 1.0 and 2.0.
+        * Source/autotools/PrintBuildConfiguration.m4: Print the version
+        of geoclue that is being used.
+        * Source/autotools/SetupAutoconfHeader.m4: Define GEOCLUE_API_VERSION_2.
+        * Source/autotools/SetupAutomake.m4: Likewise, for AM_CONDITIONAL.
+        * Source/autotools/Versions.m4: Added minimum required version for Geoclue2.
+
+        Add support for Geoclue2 using CMake.
+
+        * Source/cmake/FindGeoClue2.cmake: Added.
+        * Source/cmake/OptionsGTK.cmake:  Add support for handling Geoclue 1.0 and 2.0.
+        * Source/cmakeconfig.h.cmake: Define WTF_USE_GEOCLUE2.
+
</ins><span class="cx"> 2014-01-30  Zan Dobersek  &lt;zdobersek@igalia.com&gt;
</span><span class="cx"> 
</span><span class="cx">         [GTK] Only disable -ftree-dce optimization when compiling with GCC
</span></span></pre></div>
<a id="releasesWebKitGTKwebkit24SourceWebCoreChangeLog"></a>
<div class="modfile"><h4>Modified: releases/WebKitGTK/webkit-2.4/Source/WebCore/ChangeLog (165461 => 165462)</h4>
<pre class="diff"><span>
<span class="info">--- releases/WebKitGTK/webkit-2.4/Source/WebCore/ChangeLog        2014-03-12 06:46:52 UTC (rev 165461)
+++ releases/WebKitGTK/webkit-2.4/Source/WebCore/ChangeLog        2014-03-12 08:14:46 UTC (rev 165462)
</span><span class="lines">@@ -1,3 +1,55 @@
</span><ins>+2014-03-10  Mario Sanchez Prada  &lt;mario.prada@samsung.com&gt;
+
+        [GTK] Add support for Geoclue2
+        https://bugs.webkit.org/show_bug.cgi?id=120185
+
+        Reviewed by Carlos Garcia Campos.
+
+        Patch by Anton Obzhirov &lt;a.obzhirov@samsung.com&gt; and Mario Sanchez Prada &lt;mario.prada@samsung.com&gt;
+
+        Implement a new geolocation provider based on Geoclue2, which will only
+        be used if a good enough version of Geoclue2 is found  at configure time.
+
+        * GNUmakefile.am: Generate C-API for accessing the D-Bus API
+        provided by Geoclue2, and place it in DerivedSources.
+        * GNUmakefile.list.am: Add GeolocationProviderGeoclue2.cpp, and
+        include the generated proxy files when using Geoclue2.
+        * PlatformGTK.cmake: Likewise, for CMake based builds.
+        * platform/geoclue/GeolocationProviderGeoclue.h: Modified to
+        accomodate the needs both for Geoclue and Geoclue2 providers.
+        * platform/geoclue/GeolocationProviderGeoclue1.cpp: Renamed from Source/WebCore/platform/geoclue/GeolocationProviderGeoclue.cpp.
+        (GeolocationProviderGeoclue::getPositionCallback):
+        (GeolocationProviderGeoclue::positionChangedCallback):
+        (GeolocationProviderGeoclue::createGeocluePositionCallback):
+        (GeolocationProviderGeoclue::geoclueClientSetRequirementsCallback):
+        (GeolocationProviderGeoclue::createGeoclueClientCallback):
+        (GeolocationProviderGeoclue::GeolocationProviderGeoclue):
+        (GeolocationProviderGeoclue::~GeolocationProviderGeoclue):
+        (GeolocationProviderGeoclue::startUpdating):
+        (GeolocationProviderGeoclue::stopUpdating):
+        (GeolocationProviderGeoclue::setEnableHighAccuracy):
+        (GeolocationProviderGeoclue::initializeGeoclueClient):
+        (GeolocationProviderGeoclue::initializeGeocluePosition):
+        (GeolocationProviderGeoclue::updateClientRequirements):
+        (GeolocationProviderGeoclue::positionChanged):
+        (GeolocationProviderGeoclue::errorOccurred):
+        * platform/geoclue/GeolocationProviderGeoclue2.cpp: Added.
+        (GeolocationProviderGeoclue::GeolocationProviderGeoclue):
+        (GeolocationProviderGeoclue::~GeolocationProviderGeoclue):
+        (GeolocationProviderGeoclue::startUpdating):
+        (GeolocationProviderGeoclue::stopUpdating):
+        (GeolocationProviderGeoclue::setEnableHighAccuracy):
+        (GeolocationProviderGeoclue::createGeoclueManagerProxyCallback):
+        (GeolocationProviderGeoclue::getGeoclueClientCallback):
+        (GeolocationProviderGeoclue::createGeoclueClientProxyCallback):
+        (GeolocationProviderGeoclue::startClientCallback):
+        (GeolocationProviderGeoclue::locationUpdatedCallback):
+        (GeolocationProviderGeoclue::createLocationProxyCallback):
+        (GeolocationProviderGeoclue::startGeoclueClient):
+        (GeolocationProviderGeoclue::updateLocation):
+        (GeolocationProviderGeoclue::errorOccurred):
+        (GeolocationProviderGeoclue::updateClientRequirements):
+
</ins><span class="cx"> 2014-03-07  Carlos Garcia Campos  &lt;cgarcia@igalia.com&gt;
</span><span class="cx"> 
</span><span class="cx">         [GTK] Timeout sources not correctly removed
</span></span></pre></div>
<a id="releasesWebKitGTKwebkit24SourceWebCoreGNUmakefileam"></a>
<div class="modfile"><h4>Modified: releases/WebKitGTK/webkit-2.4/Source/WebCore/GNUmakefile.am (165461 => 165462)</h4>
<pre class="diff"><span>
<span class="info">--- releases/WebKitGTK/webkit-2.4/Source/WebCore/GNUmakefile.am        2014-03-12 06:46:52 UTC (rev 165461)
+++ releases/WebKitGTK/webkit-2.4/Source/WebCore/GNUmakefile.am        2014-03-12 08:14:46 UTC (rev 165462)
</span><span class="lines">@@ -396,6 +396,12 @@
</span><span class="cx">         $(AM_V_GEN)$(BISON) --no-lines --defines=&quot;DerivedSources/ANGLE/glslang_tab.h&quot; --skeleton=yacc.c --output=&quot;$@&quot; $&lt;
</span><span class="cx"> DerivedSources/ANGLE/glslang_tab.h: DerivedSources/ANGLE/glslang_tab.cpp
</span><span class="cx"> 
</span><ins>+if USE_GEOCLUE2
+DerivedSources/Platform/Geoclue2Interface.c: DerivedSources/Platform/Geoclue2Interface.h
+DerivedSources/Platform/Geoclue2Interface.h:
+        $(AM_V_GEN)gdbus-codegen --interface-prefix org.freedesktop.GeoClue2. --c-namespace Geoclue --generate-c-code DerivedSources/Platform/Geoclue2Interface $(GEOCLUE_DBUS_INTERFACE)
+endif
+
</ins><span class="cx"> IDL_PATH := \
</span><span class="cx">     $(WebCore)/Modules/battery \
</span><span class="cx">     $(WebCore)/Modules/gamepad \
</span></span></pre></div>
<a id="releasesWebKitGTKwebkit24SourceWebCoreGNUmakefilelistam"></a>
<div class="modfile"><h4>Modified: releases/WebKitGTK/webkit-2.4/Source/WebCore/GNUmakefile.list.am (165461 => 165462)</h4>
<pre class="diff"><span>
<span class="info">--- releases/WebKitGTK/webkit-2.4/Source/WebCore/GNUmakefile.list.am        2014-03-12 06:46:52 UTC (rev 165461)
+++ releases/WebKitGTK/webkit-2.4/Source/WebCore/GNUmakefile.list.am        2014-03-12 08:14:46 UTC (rev 165462)
</span><span class="lines">@@ -869,6 +869,12 @@
</span><span class="cx">         DerivedSources/Platform/WebKitFontFamilyNames.cpp \
</span><span class="cx">         DerivedSources/Platform/WebKitFontFamilyNames.h
</span><span class="cx"> 
</span><ins>+if USE_GEOCLUE2
+platform_built_sources += \
+        DerivedSources/Platform/Geoclue2Interface.h \
+        DerivedSources/Platform/Geoclue2Interface.c
+endif
+
</ins><span class="cx"> # These files need to be part of WebCore otherwise they cause undefined
</span><span class="cx"> # symbols havoc
</span><span class="cx"> webcore_built_sources += \
</span><span class="lines">@@ -5583,7 +5589,8 @@
</span><span class="cx">         Source/WebCore/platform/audio/ZeroPole.cpp \
</span><span class="cx">         Source/WebCore/platform/audio/ZeroPole.h \
</span><span class="cx">         Source/WebCore/platform/geoclue/GeolocationProviderGeoclue.h \
</span><del>-        Source/WebCore/platform/geoclue/GeolocationProviderGeoclue.cpp \
</del><ins>+        Source/WebCore/platform/geoclue/GeolocationProviderGeoclue1.cpp \
+        Source/WebCore/platform/geoclue/GeolocationProviderGeoclue2.cpp \
</ins><span class="cx">         Source/WebCore/platform/geoclue/GeolocationProviderGeoclueClient.h \
</span><span class="cx">         Source/WebCore/platform/glib/BatteryProviderUPowerClient.h \
</span><span class="cx">         Source/WebCore/platform/glib/BatteryProviderUPower.cpp \
</span></span></pre></div>
<a id="releasesWebKitGTKwebkit24SourceWebCorePlatformGTKcmake"></a>
<div class="modfile"><h4>Modified: releases/WebKitGTK/webkit-2.4/Source/WebCore/PlatformGTK.cmake (165461 => 165462)</h4>
<pre class="diff"><span>
<span class="info">--- releases/WebKitGTK/webkit-2.4/Source/WebCore/PlatformGTK.cmake        2014-03-12 06:46:52 UTC (rev 165461)
+++ releases/WebKitGTK/webkit-2.4/Source/WebCore/PlatformGTK.cmake        2014-03-12 08:14:46 UTC (rev 165462)
</span><span class="lines">@@ -40,7 +40,8 @@
</span><span class="cx">     platform/audio/gstreamer/FFTFrameGStreamer.cpp
</span><span class="cx">     platform/audio/gstreamer/WebKitWebAudioSourceGStreamer.cpp
</span><span class="cx"> 
</span><del>-    platform/geoclue/GeolocationProviderGeoclue.cpp
</del><ins>+    platform/geoclue/GeolocationProviderGeoclue1.cpp
+    platform/geoclue/GeolocationProviderGeoclue2.cpp
</ins><span class="cx"> 
</span><span class="cx">     platform/graphics/GraphicsContext3DPrivate.cpp
</span><span class="cx">     platform/graphics/OpenGLShims.cpp
</span><span class="lines">@@ -269,6 +270,17 @@
</span><span class="cx">     platform/text/gtk/TextBreakIteratorInternalICUGtk.cpp
</span><span class="cx"> )
</span><span class="cx"> 
</span><ins>+if (WTF_USE_GEOCLUE2)
+    list(APPEND WebCore_SOURCES
+        ${DERIVED_SOURCES_WEBCORE_DIR}/Geoclue2Interface.c
+    )
+    execute_process(COMMAND pkg-config --variable dbus_interface geoclue-2.0 OUTPUT_VARIABLE GEOCLUE_DBUS_INTERFACE)
+    add_custom_command(
+         OUTPUT ${DERIVED_SOURCES_WEBCORE_DIR}/Geoclue2Interface.c ${DERIVED_SOURCES_WEBCORE_DIR}/Geoclue2Interface.h
+         COMMAND gdbus-codegen --interface-prefix org.freedesktop.GeoClue2. --c-namespace Geoclue --generate-c-code ${DERIVED_SOURCES_WEBCORE_DIR}/Geoclue2Interface ${GEOCLUE_DBUS_INTERFACE}
+    )
+endif ()
+
</ins><span class="cx"> if (ENABLE_NETSCAPE_PLUGIN_API)
</span><span class="cx">     list(APPEND WebCore_SOURCES
</span><span class="cx">         plugins/PluginDatabase.cpp
</span></span></pre></div>
<a id="releasesWebKitGTKwebkit24SourceWebCoreplatformgeoclueGeolocationProviderGeocluecpp"></a>
<div class="delfile"><h4>Deleted: releases/WebKitGTK/webkit-2.4/Source/WebCore/platform/geoclue/GeolocationProviderGeoclue.cpp (165461 => 165462)</h4>
<pre class="diff"><span>
<span class="info">--- releases/WebKitGTK/webkit-2.4/Source/WebCore/platform/geoclue/GeolocationProviderGeoclue.cpp        2014-03-12 06:46:52 UTC (rev 165461)
+++ releases/WebKitGTK/webkit-2.4/Source/WebCore/platform/geoclue/GeolocationProviderGeoclue.cpp        2014-03-12 08:14:46 UTC (rev 165462)
</span><span class="lines">@@ -1,179 +0,0 @@
</span><del>-/*
- * Copyright (C) 2012 Igalia S.L.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- *    notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- *    notice, this list of conditions and the following disclaimer in the
- *    documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
- * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
- * THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-#include &quot;config.h&quot;
-#include &quot;GeolocationProviderGeoclue.h&quot;
-
-#if ENABLE(GEOLOCATION)
-
-using namespace WebCore;
-
-static void getPositionCallback(GeocluePosition* position, GeocluePositionFields fields, int timestamp, double latitude, double longitude, double altitude, GeoclueAccuracy* accuracy, GError* error, GeolocationProviderGeoclue* provider)
-{
-    if (error) {
-        provider-&gt;errorOccurred(error-&gt;message);
-        g_error_free(error);
-        return;
-    }
-    provider-&gt;positionChanged(position, fields, timestamp, latitude, longitude, altitude, accuracy);
-}
-
-static void positionChangedCallback(GeocluePosition* position, GeocluePositionFields fields, int timestamp, double latitude, double longitude, double altitude, GeoclueAccuracy* accuracy, GeolocationProviderGeoclue* provider)
-{
-    provider-&gt;positionChanged(position, fields, timestamp, latitude, longitude, altitude, accuracy);
-}
-
-static void createGeocluePositionCallback(GeoclueMasterClient*, GeocluePosition* position, GError *error, GeolocationProviderGeoclue* provider)
-{
-    if (error) {
-        provider-&gt;errorOccurred(error-&gt;message);
-        g_error_free(error);
-        return;
-    }
-    provider-&gt;initializeGeocluePosition(position);
-}
-
-static void geoclueClientSetRequirementsCallback(GeoclueMasterClient* client, GError* error, GeolocationProviderGeoclue* provider)
-{
-    if (error) {
-        provider-&gt;errorOccurred(error-&gt;message);
-        g_error_free(error);
-    }
-}
-
-static void createGeoclueClientCallback(GeoclueMaster*, GeoclueMasterClient* client, char*, GError* error, GeolocationProviderGeoclue* provider)
-{
-    if (error) {
-        provider-&gt;errorOccurred(error-&gt;message);
-        g_error_free(error);
-        return;
-    }
-    provider-&gt;initializeGeoclueClient(client);
-}
-
-GeolocationProviderGeoclue::GeolocationProviderGeoclue(GeolocationProviderGeoclueClient* client)
-    : m_client(client)
-    , m_geoclueClient(0)
-    , m_geocluePosition(0)
-    , m_latitude(0)
-    , m_longitude(0)
-    , m_altitude(0)
-    , m_accuracy(0)
-    , m_altitudeAccuracy(0)
-    , m_timestamp(0)
-    , m_enableHighAccuracy(false)
-    , m_isUpdating(false)
-{
-    ASSERT(m_client);
-}
-
-GeolocationProviderGeoclue::~GeolocationProviderGeoclue()
-{
-}
-
-void GeolocationProviderGeoclue::startUpdating()
-{
-    ASSERT(!m_geoclueClient);
-
-    GRefPtr&lt;GeoclueMaster&gt; master = adoptGRef(geoclue_master_get_default());
-    geoclue_master_create_client_async(master.get(), reinterpret_cast&lt;GeoclueCreateClientCallback&gt;(createGeoclueClientCallback), this);
-    m_isUpdating = true;
-}
-
-void GeolocationProviderGeoclue::stopUpdating()
-{
-    m_geocluePosition.clear();
-    m_geoclueClient.clear();
-    m_isUpdating = false;
-}
-
-void GeolocationProviderGeoclue::setEnableHighAccuracy(bool enable)
-{
-    m_enableHighAccuracy = enable;
-
-    // If we're already updating we should report the new requirements in order
-    // to change to a more suitable provider if needed. If not, return.
-    if (!m_isUpdating)
-        return;
-
-    updateClientRequirements();
-}
-
-void GeolocationProviderGeoclue::initializeGeoclueClient(GeoclueMasterClient* geoclueClient)
-{
-    ASSERT(GEOCLUE_IS_MASTER_CLIENT(geoclueClient));
-
-    // Store the GeoclueMasterClient object as created by GeoClue.
-    m_geoclueClient = adoptGRef(geoclueClient);
-
-    // Set the requirement for the client and ask it to create a position associated to it.
-    updateClientRequirements();
-    geoclue_master_client_create_position_async(m_geoclueClient.get(), reinterpret_cast&lt;CreatePositionCallback&gt;(createGeocluePositionCallback), this);
-}
-
-void GeolocationProviderGeoclue::initializeGeocluePosition(GeocluePosition* geocluePosition)
-{
-    ASSERT(GEOCLUE_IS_POSITION(geocluePosition));
-
-    // Stores the GeocluePosition object associated with the GeoclueMasterClient.
-    m_geocluePosition = adoptGRef(geocluePosition);
-
-    // Get the initial position and keep updated of further changes.
-    geoclue_position_get_position_async(m_geocluePosition.get(), reinterpret_cast&lt;GeocluePositionCallback&gt;(getPositionCallback), this);
-    g_signal_connect(m_geocluePosition.get(), &quot;position-changed&quot;, G_CALLBACK(positionChangedCallback), this);
-}
-
-void GeolocationProviderGeoclue::updateClientRequirements()
-{
-    if (!m_geoclueClient)
-        return;
-
-    GeoclueAccuracyLevel accuracyLevel = m_enableHighAccuracy ? GEOCLUE_ACCURACY_LEVEL_DETAILED : GEOCLUE_ACCURACY_LEVEL_LOCALITY;
-    geoclue_master_client_set_requirements_async(m_geoclueClient.get(), accuracyLevel, 0, false, GEOCLUE_RESOURCE_ALL, reinterpret_cast&lt;GeoclueSetRequirementsCallback&gt;(geoclueClientSetRequirementsCallback), this);
-}
-
-void GeolocationProviderGeoclue::positionChanged(GeocluePosition* position, GeocluePositionFields fields, int timestamp, double latitude, double longitude, double altitude, GeoclueAccuracy* accuracy)
-{
-    if (!(fields &amp; GEOCLUE_POSITION_FIELDS_LATITUDE &amp;&amp; fields &amp; GEOCLUE_POSITION_FIELDS_LONGITUDE)) {
-        errorOccurred(&quot;Position could not be determined.&quot;);
-        return;
-    }
-
-    m_timestamp = timestamp;
-    m_latitude = latitude;
-    m_longitude = longitude;
-    m_altitude = altitude;
-
-    geoclue_accuracy_get_details(accuracy, 0, &amp;m_accuracy, &amp;m_altitudeAccuracy);
-
-    m_client-&gt;notifyPositionChanged(m_timestamp, m_latitude, m_longitude, m_altitude, m_accuracy, m_altitudeAccuracy);
-}
-
-void GeolocationProviderGeoclue::errorOccurred(const char* message)
-{
-    m_client-&gt;notifyErrorOccurred(message);
-}
-
-#endif // ENABLE(GEOLOCATION)
</del></span></pre></div>
<a id="releasesWebKitGTKwebkit24SourceWebCoreplatformgeoclueGeolocationProviderGeoclueh"></a>
<div class="modfile"><h4>Modified: releases/WebKitGTK/webkit-2.4/Source/WebCore/platform/geoclue/GeolocationProviderGeoclue.h (165461 => 165462)</h4>
<pre class="diff"><span>
<span class="info">--- releases/WebKitGTK/webkit-2.4/Source/WebCore/platform/geoclue/GeolocationProviderGeoclue.h        2014-03-12 06:46:52 UTC (rev 165461)
+++ releases/WebKitGTK/webkit-2.4/Source/WebCore/platform/geoclue/GeolocationProviderGeoclue.h        2014-03-12 08:14:46 UTC (rev 165462)
</span><span class="lines">@@ -1,5 +1,6 @@
</span><span class="cx"> /*
</span><span class="cx">  * Copyright (C) 2012 Igalia S.L.
</span><ins>+ * Copyright (C) 2014 Samsung Electronics. All rights reserved.
</ins><span class="cx">  *
</span><span class="cx">  * This library is free software; you can redistribute it and/or
</span><span class="cx">  * modify it under the terms of the GNU Library General Public
</span><span class="lines">@@ -23,9 +24,14 @@
</span><span class="cx"> #if ENABLE(GEOLOCATION)
</span><span class="cx"> 
</span><span class="cx"> #include &quot;GeolocationProviderGeoclueClient.h&quot;
</span><ins>+#include &lt;wtf/gobject/GRefPtr.h&gt;
+
+#if USE(GEOCLUE2)
+#include &quot;Geoclue2Interface.h&quot;
+#else
</ins><span class="cx"> #include &lt;geoclue/geoclue-master.h&gt;
</span><span class="cx"> #include &lt;geoclue/geoclue-position.h&gt;
</span><del>-#include &lt;wtf/gobject/GRefPtr.h&gt;
</del><ins>+#endif
</ins><span class="cx"> 
</span><span class="cx"> namespace WebCore {
</span><span class="cx"> 
</span><span class="lines">@@ -38,18 +44,41 @@
</span><span class="cx">     void stopUpdating();
</span><span class="cx">     void setEnableHighAccuracy(bool);
</span><span class="cx"> 
</span><del>-    // To be used from signal callbacks.
</del><ins>+private:
+#if USE(GEOCLUE2)
+    static void createGeoclueManagerProxyCallback(GObject*, GAsyncResult*, GeolocationProviderGeoclue*);
+    static void getGeoclueClientCallback(GObject*, GAsyncResult*, GeolocationProviderGeoclue*);
+    static void createGeoclueClientProxyCallback(GObject*, GAsyncResult*, GeolocationProviderGeoclue*);
+    static void startClientCallback(GObject*, GAsyncResult*, GeolocationProviderGeoclue*);
+    static void locationUpdatedCallback(GeoclueClient*, const gchar*, const gchar*, GeolocationProviderGeoclue*);
+    static void createLocationProxyCallback(GObject*, GAsyncResult*, GeolocationProviderGeoclue*);
+
+    void startGeoclueClient();
+    void updateLocation(GeoclueLocation*);
+#else
+    static void getPositionCallback(GeocluePosition*, GeocluePositionFields, int, double, double, double, GeoclueAccuracy*, GError*, GeolocationProviderGeoclue*);
+    static void positionChangedCallback(GeocluePosition*, GeocluePositionFields, int, double, double, double, GeoclueAccuracy*, GeolocationProviderGeoclue*);
+    static void createGeocluePositionCallback(GeoclueMasterClient*, GeocluePosition*, GError*, GeolocationProviderGeoclue*);
+    static void geoclueClientSetRequirementsCallback(GeoclueMasterClient*, GError*, GeolocationProviderGeoclue*);
+    static void createGeoclueClientCallback(GeoclueMaster*, GeoclueMasterClient*, char*, GError*, GeolocationProviderGeoclue*);
+
</ins><span class="cx">     void initializeGeoclueClient(GeoclueMasterClient*);
</span><span class="cx">     void initializeGeocluePosition(GeocluePosition*);
</span><del>-    void updateClientRequirements();
</del><span class="cx">     void positionChanged(GeocluePosition*, GeocluePositionFields, int, double, double, double, GeoclueAccuracy*);
</span><ins>+#endif
+
</ins><span class="cx">     void errorOccurred(const char*);
</span><ins>+    void updateClientRequirements();
</ins><span class="cx"> 
</span><del>-private:
</del><span class="cx">     GeolocationProviderGeoclueClient* m_client;
</span><span class="cx"> 
</span><ins>+#if USE(GEOCLUE2)
+    GRefPtr&lt;GeoclueManager&gt; m_managerProxy;
+    GRefPtr&lt;GeoclueClient&gt; m_clientProxy;
+#else
</ins><span class="cx">     GRefPtr&lt;GeoclueMasterClient&gt; m_geoclueClient;
</span><span class="cx">     GRefPtr&lt;GeocluePosition&gt; m_geocluePosition;
</span><ins>+#endif
</ins><span class="cx"> 
</span><span class="cx">     double m_latitude;
</span><span class="cx">     double m_longitude;
</span></span></pre></div>
<a id="releasesWebKitGTKwebkit24SourceWebCoreplatformgeoclueGeolocationProviderGeoclue1cppfromrev165445releasesWebKitGTKwebkit24SourceWebCoreplatformgeoclueGeolocationProviderGeocluecpp"></a>
<div class="copfile"><h4>Copied: releases/WebKitGTK/webkit-2.4/Source/WebCore/platform/geoclue/GeolocationProviderGeoclue1.cpp (from rev 165445, releases/WebKitGTK/webkit-2.4/Source/WebCore/platform/geoclue/GeolocationProviderGeoclue.cpp) (0 => 165462)</h4>
<pre class="diff"><span>
<span class="info">--- releases/WebKitGTK/webkit-2.4/Source/WebCore/platform/geoclue/GeolocationProviderGeoclue1.cpp                                (rev 0)
+++ releases/WebKitGTK/webkit-2.4/Source/WebCore/platform/geoclue/GeolocationProviderGeoclue1.cpp        2014-03-12 08:14:46 UTC (rev 165462)
</span><span class="lines">@@ -0,0 +1,177 @@
</span><ins>+/*
+ * Copyright (C) 2012 Igalia S.L.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
+ * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
+ * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
+ * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+ * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+ * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+ * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+ * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
+ * THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#include &quot;config.h&quot;
+#include &quot;GeolocationProviderGeoclue.h&quot;
+
+#if ENABLE(GEOLOCATION) &amp;&amp; !USE(GEOCLUE2)
+
+using namespace WebCore;
+
+void GeolocationProviderGeoclue::getPositionCallback(GeocluePosition* position, GeocluePositionFields fields, int timestamp, double latitude, double longitude, double altitude, GeoclueAccuracy* accuracy, GError* error, GeolocationProviderGeoclue* provider)
+{
+    if (error) {
+        provider-&gt;errorOccurred(error-&gt;message);
+        g_error_free(error);
+        return;
+    }
+    provider-&gt;positionChanged(position, fields, timestamp, latitude, longitude, altitude, accuracy);
+}
+
+void GeolocationProviderGeoclue::positionChangedCallback(GeocluePosition* position, GeocluePositionFields fields, int timestamp, double latitude, double longitude, double altitude, GeoclueAccuracy* accuracy, GeolocationProviderGeoclue* provider)
+{
+    provider-&gt;positionChanged(position, fields, timestamp, latitude, longitude, altitude, accuracy);
+}
+
+void GeolocationProviderGeoclue::createGeocluePositionCallback(GeoclueMasterClient*, GeocluePosition* position, GError *error, GeolocationProviderGeoclue* provider)
+{
+    if (error) {
+        provider-&gt;errorOccurred(error-&gt;message);
+        g_error_free(error);
+        return;
+    }
+    provider-&gt;initializeGeocluePosition(position);
+}
+
+void GeolocationProviderGeoclue::geoclueClientSetRequirementsCallback(GeoclueMasterClient*, GError* error, GeolocationProviderGeoclue* provider)
+{
+    if (error) {
+        provider-&gt;errorOccurred(error-&gt;message);
+        g_error_free(error);
+    }
+}
+
+void GeolocationProviderGeoclue::createGeoclueClientCallback(GeoclueMaster*, GeoclueMasterClient* client, char*, GError* error, GeolocationProviderGeoclue* provider)
+{
+    if (error) {
+        provider-&gt;errorOccurred(error-&gt;message);
+        g_error_free(error);
+        return;
+    }
+    provider-&gt;initializeGeoclueClient(client);
+}
+
+GeolocationProviderGeoclue::GeolocationProviderGeoclue(GeolocationProviderGeoclueClient* client)
+    : m_client(client)
+    , m_latitude(0)
+    , m_longitude(0)
+    , m_altitude(0)
+    , m_accuracy(0)
+    , m_altitudeAccuracy(0)
+    , m_timestamp(0)
+    , m_enableHighAccuracy(false)
+    , m_isUpdating(false)
+{
+    ASSERT(m_client);
+}
+
+GeolocationProviderGeoclue::~GeolocationProviderGeoclue()
+{
+}
+
+void GeolocationProviderGeoclue::startUpdating()
+{
+    ASSERT(!m_geoclueClient);
+
+    GRefPtr&lt;GeoclueMaster&gt; master = adoptGRef(geoclue_master_get_default());
+    geoclue_master_create_client_async(master.get(), reinterpret_cast&lt;GeoclueCreateClientCallback&gt;(createGeoclueClientCallback), this);
+    m_isUpdating = true;
+}
+
+void GeolocationProviderGeoclue::stopUpdating()
+{
+    m_geocluePosition.clear();
+    m_geoclueClient.clear();
+    m_isUpdating = false;
+}
+
+void GeolocationProviderGeoclue::setEnableHighAccuracy(bool enable)
+{
+    m_enableHighAccuracy = enable;
+
+    // If we're already updating we should report the new requirements in order
+    // to change to a more suitable provider if needed. If not, return.
+    if (!m_isUpdating)
+        return;
+
+    updateClientRequirements();
+}
+
+void GeolocationProviderGeoclue::initializeGeoclueClient(GeoclueMasterClient* geoclueClient)
+{
+    ASSERT(GEOCLUE_IS_MASTER_CLIENT(geoclueClient));
+
+    // Store the GeoclueMasterClient object as created by GeoClue.
+    m_geoclueClient = adoptGRef(geoclueClient);
+
+    // Set the requirement for the client and ask it to create a position associated to it.
+    updateClientRequirements();
+    geoclue_master_client_create_position_async(m_geoclueClient.get(), reinterpret_cast&lt;CreatePositionCallback&gt;(createGeocluePositionCallback), this);
+}
+
+void GeolocationProviderGeoclue::initializeGeocluePosition(GeocluePosition* geocluePosition)
+{
+    ASSERT(GEOCLUE_IS_POSITION(geocluePosition));
+
+    // Stores the GeocluePosition object associated with the GeoclueMasterClient.
+    m_geocluePosition = adoptGRef(geocluePosition);
+
+    // Get the initial position and keep updated of further changes.
+    geoclue_position_get_position_async(m_geocluePosition.get(), reinterpret_cast&lt;GeocluePositionCallback&gt;(getPositionCallback), this);
+    g_signal_connect(m_geocluePosition.get(), &quot;position-changed&quot;, G_CALLBACK(positionChangedCallback), this);
+}
+
+void GeolocationProviderGeoclue::updateClientRequirements()
+{
+    if (!m_geoclueClient)
+        return;
+
+    GeoclueAccuracyLevel accuracyLevel = m_enableHighAccuracy ? GEOCLUE_ACCURACY_LEVEL_DETAILED : GEOCLUE_ACCURACY_LEVEL_LOCALITY;
+    geoclue_master_client_set_requirements_async(m_geoclueClient.get(), accuracyLevel, 0, false, GEOCLUE_RESOURCE_ALL, reinterpret_cast&lt;GeoclueSetRequirementsCallback&gt;(geoclueClientSetRequirementsCallback), this);
+}
+
+void GeolocationProviderGeoclue::positionChanged(GeocluePosition*, GeocluePositionFields fields, int timestamp, double latitude, double longitude, double altitude, GeoclueAccuracy* accuracy)
+{
+    if (!(fields &amp; GEOCLUE_POSITION_FIELDS_LATITUDE &amp;&amp; fields &amp; GEOCLUE_POSITION_FIELDS_LONGITUDE)) {
+        errorOccurred(&quot;Position could not be determined.&quot;);
+        return;
+    }
+
+    m_timestamp = timestamp;
+    m_latitude = latitude;
+    m_longitude = longitude;
+    m_altitude = altitude;
+
+    geoclue_accuracy_get_details(accuracy, 0, &amp;m_accuracy, &amp;m_altitudeAccuracy);
+
+    m_client-&gt;notifyPositionChanged(m_timestamp, m_latitude, m_longitude, m_altitude, m_accuracy, m_altitudeAccuracy);
+}
+
+void GeolocationProviderGeoclue::errorOccurred(const char* message)
+{
+    m_client-&gt;notifyErrorOccurred(message);
+}
+
+#endif // ENABLE(GEOLOCATION) &amp;&amp; !USE(GEOCLUE2)
</ins></span></pre></div>
<a id="releasesWebKitGTKwebkit24SourceWebCoreplatformgeoclueGeolocationProviderGeoclue2cpp"></a>
<div class="addfile"><h4>Added: releases/WebKitGTK/webkit-2.4/Source/WebCore/platform/geoclue/GeolocationProviderGeoclue2.cpp (0 => 165462)</h4>
<pre class="diff"><span>
<span class="info">--- releases/WebKitGTK/webkit-2.4/Source/WebCore/platform/geoclue/GeolocationProviderGeoclue2.cpp                                (rev 0)
+++ releases/WebKitGTK/webkit-2.4/Source/WebCore/platform/geoclue/GeolocationProviderGeoclue2.cpp        2014-03-12 08:14:46 UTC (rev 165462)
</span><span class="lines">@@ -0,0 +1,209 @@
</span><ins>+/*
+ * Copyright (C) 2014 Samsung Electronics. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
+ * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
+ * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
+ * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+ * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+ * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+ * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+ * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
+ * THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#include &quot;config.h&quot;
+#include &quot;GeolocationProviderGeoclue.h&quot;
+
+#if ENABLE(GEOLOCATION) &amp;&amp; USE(GEOCLUE2)
+
+#include &lt;wtf/gobject/GUniquePtr.h&gt;
+#include &lt;wtf/gobject/GlibUtilities.h&gt;
+#include &lt;wtf/text/CString.h&gt;
+
+const char* gGeoclueBusName = &quot;org.freedesktop.GeoClue2&quot;;
+const char* gGeoclueManagerPath = &quot;/org/freedesktop/GeoClue2/Manager&quot;;
+
+using namespace WebCore;
+
+typedef enum {
+    GeoclueAccuracyLevelCountry = 1,
+    GeoclueAccuracyLevelCity = 4,
+    GeoclueAccuracyLevelStreet = 6,
+    GeoclueAccuracyLevelExact = 8,
+} GeoclueAccuracyLevel;
+
+GeolocationProviderGeoclue::GeolocationProviderGeoclue(GeolocationProviderGeoclueClient* client)
+    : m_client(client)
+    , m_latitude(0)
+    , m_longitude(0)
+    , m_altitude(0)
+    , m_accuracy(0)
+    , m_altitudeAccuracy(0)
+    , m_timestamp(0)
+    , m_enableHighAccuracy(false)
+    , m_isUpdating(false)
+{
+    ASSERT(m_client);
+}
+
+GeolocationProviderGeoclue::~GeolocationProviderGeoclue()
+{
+    stopUpdating();
+}
+
+void GeolocationProviderGeoclue::startUpdating()
+{
+    m_isUpdating = true;
+
+    if (!m_managerProxy) {
+        geoclue_manager_proxy_new_for_bus(G_BUS_TYPE_SYSTEM, G_DBUS_PROXY_FLAGS_NONE, gGeoclueBusName, gGeoclueManagerPath, nullptr,
+            reinterpret_cast&lt;GAsyncReadyCallback&gt;(createGeoclueManagerProxyCallback), this);
+        return;
+    }
+
+    if (!m_clientProxy) {
+        geoclue_manager_call_get_client(m_managerProxy.get(), nullptr, reinterpret_cast&lt;GAsyncReadyCallback&gt;(getGeoclueClientCallback), this);
+        return;
+    }
+
+    startGeoclueClient();
+}
+
+void GeolocationProviderGeoclue::stopUpdating()
+{
+    if (m_clientProxy)
+        geoclue_client_call_stop(m_clientProxy.get(), nullptr, nullptr, nullptr);
+    m_isUpdating = false;
+}
+
+void GeolocationProviderGeoclue::setEnableHighAccuracy(bool enable)
+{
+    if (m_enableHighAccuracy == enable)
+        return;
+
+    m_enableHighAccuracy = enable;
+
+    // If we're already updating we should report the new requirements in order
+    // to change to a more suitable provider if needed. If not, return.
+    if (!m_isUpdating)
+        return;
+
+    updateClientRequirements();
+}
+
+void GeolocationProviderGeoclue::createGeoclueManagerProxyCallback(GObject*, GAsyncResult* result, GeolocationProviderGeoclue* provider)
+{
+    GUniqueOutPtr&lt;GError&gt; error;
+    provider-&gt;m_managerProxy = adoptGRef(geoclue_manager_proxy_new_for_bus_finish(result, &amp;error.outPtr()));
+    if (error) {
+        provider-&gt;errorOccurred(error-&gt;message);
+        return;
+    }
+
+    geoclue_manager_call_get_client(provider-&gt;m_managerProxy.get(), nullptr, reinterpret_cast&lt;GAsyncReadyCallback&gt;(getGeoclueClientCallback), provider);
+}
+
+void GeolocationProviderGeoclue::getGeoclueClientCallback(GObject* sourceObject, GAsyncResult* result, GeolocationProviderGeoclue* provider)
+{
+    GUniqueOutPtr&lt;GError&gt; error;
+    GUniqueOutPtr&lt;gchar&gt; path;
+    if (!geoclue_manager_call_get_client_finish(GEOCLUE_MANAGER(sourceObject), &amp;path.outPtr(), result, &amp;error.outPtr())) {
+        provider-&gt;errorOccurred(error-&gt;message);
+        return;
+    }
+
+    geoclue_client_proxy_new_for_bus(G_BUS_TYPE_SYSTEM, G_DBUS_PROXY_FLAGS_NONE, gGeoclueBusName, path.get(), nullptr,
+        reinterpret_cast&lt;GAsyncReadyCallback&gt;(createGeoclueClientProxyCallback), provider);
+}
+
+void GeolocationProviderGeoclue::createGeoclueClientProxyCallback(GObject*, GAsyncResult* result, GeolocationProviderGeoclue* provider)
+{
+    GUniqueOutPtr&lt;GError&gt; error;
+    provider-&gt;m_clientProxy = adoptGRef(geoclue_client_proxy_new_for_bus_finish(result, &amp;error.outPtr()));
+    if (error) {
+        provider-&gt;errorOccurred(error-&gt;message);
+        return;
+    }
+
+    // Geoclue2 requires the client to provide a desktop ID for security
+    // reasons, which should identify the application requesting the location.
+    // FIXME: We provide the program name as the desktop ID for now but, in an ideal world,
+    // we should provide a proper &quot;application ID&quot; (normally the name of a .desktop file).
+    // https://bugs.webkit.org/show_bug.cgi?id=129879
+    geoclue_client_set_desktop_id(provider-&gt;m_clientProxy.get(), g_get_prgname());
+
+    provider-&gt;startGeoclueClient();
+}
+
+void GeolocationProviderGeoclue::startClientCallback(GObject* sourceObject, GAsyncResult* result, GeolocationProviderGeoclue* provider)
+{
+    GUniqueOutPtr&lt;GError&gt; error;
+    if (!geoclue_client_call_start_finish(GEOCLUE_CLIENT(sourceObject), result, &amp;error.outPtr()))
+        static_cast&lt;GeolocationProviderGeoclue*&gt;(provider)-&gt;errorOccurred(error-&gt;message);
+}
+
+void GeolocationProviderGeoclue::locationUpdatedCallback(GeoclueClient*, const gchar*, const gchar* newPath, GeolocationProviderGeoclue* provider)
+{
+    geoclue_location_proxy_new_for_bus(G_BUS_TYPE_SYSTEM, G_DBUS_PROXY_FLAGS_NONE, gGeoclueBusName, newPath, nullptr,
+        reinterpret_cast&lt;GAsyncReadyCallback&gt;(createLocationProxyCallback), provider);
+}
+
+void GeolocationProviderGeoclue::createLocationProxyCallback(GObject*, GAsyncResult* result, GeolocationProviderGeoclue* provider)
+{
+    GUniqueOutPtr&lt;GError&gt; error;
+    GRefPtr&lt;GeoclueLocation&gt; locationProxy = adoptGRef(geoclue_location_proxy_new_for_bus_finish(result, &amp;error.outPtr()));
+    if (error) {
+        provider-&gt;errorOccurred(error-&gt;message);
+        return;
+    }
+    provider-&gt;updateLocation(locationProxy.get());
+}
+
+void GeolocationProviderGeoclue::startGeoclueClient()
+{
+    // Set the requirement for the client.
+    updateClientRequirements();
+
+    g_signal_connect(m_clientProxy.get(), &quot;location-updated&quot;, G_CALLBACK(locationUpdatedCallback), this);
+    geoclue_client_call_start(m_clientProxy.get(), nullptr, reinterpret_cast&lt;GAsyncReadyCallback&gt;(startClientCallback), this);
+}
+
+void GeolocationProviderGeoclue::updateLocation(GeoclueLocation* locationProxy)
+{
+    GTimeVal timeValue;
+    g_get_current_time(&amp;timeValue);
+    m_timestamp = timeValue.tv_sec;
+    m_latitude = geoclue_location_get_latitude(locationProxy);
+    m_longitude = geoclue_location_get_longitude(locationProxy);
+    m_accuracy = geoclue_location_get_accuracy(locationProxy);
+    m_client-&gt;notifyPositionChanged(m_timestamp, m_latitude, m_longitude, m_altitude, m_accuracy, m_altitudeAccuracy);
+}
+
+void GeolocationProviderGeoclue::errorOccurred(const char* message)
+{
+    m_isUpdating = false;
+    m_client-&gt;notifyErrorOccurred(message);
+}
+
+void GeolocationProviderGeoclue::updateClientRequirements()
+{
+    if (!m_clientProxy)
+        return;
+
+    GeoclueAccuracyLevel accuracyLevel = m_enableHighAccuracy ? GeoclueAccuracyLevelExact : GeoclueAccuracyLevelCity;
+    geoclue_client_set_requested_accuracy_level(m_clientProxy.get(), accuracyLevel);
+}
+
+#endif // ENABLE(GEOLOCATION) &amp;&amp; USE(GEOCLUE2)
</ins></span></pre></div>
<a id="releasesWebKitGTKwebkit24SourceautotoolsFindDependenciesm4"></a>
<div class="modfile"><h4>Modified: releases/WebKitGTK/webkit-2.4/Source/autotools/FindDependencies.m4 (165461 => 165462)</h4>
<pre class="diff"><span>
<span class="info">--- releases/WebKitGTK/webkit-2.4/Source/autotools/FindDependencies.m4        2014-03-12 06:46:52 UTC (rev 165461)
+++ releases/WebKitGTK/webkit-2.4/Source/autotools/FindDependencies.m4        2014-03-12 08:14:46 UTC (rev 165462)
</span><span class="lines">@@ -415,9 +415,20 @@
</span><span class="cx"> AC_SUBST([LIBXSLT_CFLAGS])
</span><span class="cx"> AC_SUBST([LIBXSLT_LIBS])
</span><span class="cx"> 
</span><del>-# Check if geoclue is available.
</del><ins>+# Check if geoclue is available, with a preference over Geoclue2 if present.
+geolocation_description=&quot;none&quot;
</ins><span class="cx"> if test &quot;$enable_geolocation&quot; = &quot;yes&quot;; then
</span><del>-    PKG_CHECK_MODULES([GEOCLUE], [geoclue])
</del><ins>+    PKG_CHECK_MODULES([GEOCLUE2], [gio-unix-2.0 geoclue-2.0 &gt;= geoclue2_required_version], [found_geoclue2=yes], [found_geoclue2=no])
+    if test &quot;$found_geoclue2&quot; = &quot;yes&quot;; then
+        GEOCLUE_CFLAGS=&quot;$GEOCLUE2_CFLAGS&quot;
+        GEOCLUE_LIBS=&quot;$GEOCLUE2_LIBS&quot;
+        GEOCLUE_DBUS_INTERFACE=`$PKG_CONFIG --variable dbus_interface geoclue-2.0`
+        AC_SUBST(GEOCLUE_DBUS_INTERFACE)
+        geolocation_description=&quot;Geoclue 2&quot;
+    else
+        PKG_CHECK_MODULES([GEOCLUE], [geoclue])
+        geolocation_description=&quot;Geoclue&quot;
+    fi
</ins><span class="cx">     AC_SUBST([GEOCLUE_CFLAGS])
</span><span class="cx">     AC_SUBST([GEOCLUE_LIBS])
</span><span class="cx"> fi
</span></span></pre></div>
<a id="releasesWebKitGTKwebkit24SourceautotoolsPrintBuildConfigurationm4"></a>
<div class="modfile"><h4>Modified: releases/WebKitGTK/webkit-2.4/Source/autotools/PrintBuildConfiguration.m4 (165461 => 165462)</h4>
<pre class="diff"><span>
<span class="info">--- releases/WebKitGTK/webkit-2.4/Source/autotools/PrintBuildConfiguration.m4        2014-03-12 06:46:52 UTC (rev 165461)
+++ releases/WebKitGTK/webkit-2.4/Source/autotools/PrintBuildConfiguration.m4        2014-03-12 08:14:46 UTC (rev 165462)
</span><span class="lines">@@ -17,6 +17,7 @@
</span><span class="cx">  Code coverage support                                    : $enable_coverage
</span><span class="cx">  Optimized memory allocator                               : $enable_fast_malloc
</span><span class="cx">  Accelerated rendering backend                            : $acceleration_description
</span><ins>+ Geolocation backend                                      : $geolocation_description
</ins><span class="cx"> 
</span><span class="cx"> Features:
</span><span class="cx"> =======
</span></span></pre></div>
<a id="releasesWebKitGTKwebkit24SourceautotoolsSetupAutoconfHeaderm4"></a>
<div class="modfile"><h4>Modified: releases/WebKitGTK/webkit-2.4/Source/autotools/SetupAutoconfHeader.m4 (165461 => 165462)</h4>
<pre class="diff"><span>
<span class="info">--- releases/WebKitGTK/webkit-2.4/Source/autotools/SetupAutoconfHeader.m4        2014-03-12 06:46:52 UTC (rev 165461)
+++ releases/WebKitGTK/webkit-2.4/Source/autotools/SetupAutoconfHeader.m4        2014-03-12 08:14:46 UTC (rev 165462)
</span><span class="lines">@@ -27,6 +27,10 @@
</span><span class="cx">     fi
</span><span class="cx"> fi
</span><span class="cx"> 
</span><ins>+if test &quot;$found_geoclue2&quot; = &quot;yes&quot;; then
+    AC_DEFINE([WTF_USE_GEOCLUE2], [1], [ ])
+fi
+
</ins><span class="cx"> if test &quot;$os_win32&quot; = &quot;yes&quot;; then
</span><span class="cx">     AC_DEFINE([XP_WIN], [1], [ ])
</span><span class="cx">     AC_DEFINE([UNICODE], [1], [ ])
</span></span></pre></div>
<a id="releasesWebKitGTKwebkit24SourceautotoolsSetupAutomakem4"></a>
<div class="modfile"><h4>Modified: releases/WebKitGTK/webkit-2.4/Source/autotools/SetupAutomake.m4 (165461 => 165462)</h4>
<pre class="diff"><span>
<span class="info">--- releases/WebKitGTK/webkit-2.4/Source/autotools/SetupAutomake.m4        2014-03-12 06:46:52 UTC (rev 165461)
+++ releases/WebKitGTK/webkit-2.4/Source/autotools/SetupAutomake.m4        2014-03-12 08:14:46 UTC (rev 165462)
</span><span class="lines">@@ -33,6 +33,9 @@
</span><span class="cx"> AM_CONDITIONAL([TARGET_QUARTZ], [test &quot;$enable_quartz_target&quot; = &quot;yes&quot;])
</span><span class="cx"> AM_CONDITIONAL([TARGET_DIRECTFB], [test &quot;$enable_directfb_target&quot; = &quot;yes&quot;])
</span><span class="cx"> 
</span><ins>+# Geoclue conditionals.
+AM_CONDITIONAL([USE_GEOCLUE2],[test &quot;$found_geoclue2&quot; = &quot;yes&quot;])
+
</ins><span class="cx"> # GStreamer feature conditionals.
</span><span class="cx"> AM_CONDITIONAL([USE_GSTREAMER], [test &quot;$enable_video&quot; = &quot;yes&quot; || test &quot;$enable_web_audio&quot; = &quot;yes&quot;])
</span><span class="cx"> AM_CONDITIONAL([USE_WEBAUDIO_GSTREAMER], [test &quot;$enable_web_audio&quot; = &quot;yes&quot;])
</span></span></pre></div>
<a id="releasesWebKitGTKwebkit24SourceautotoolsVersionsm4"></a>
<div class="modfile"><h4>Modified: releases/WebKitGTK/webkit-2.4/Source/autotools/Versions.m4 (165461 => 165462)</h4>
<pre class="diff"><span>
<span class="info">--- releases/WebKitGTK/webkit-2.4/Source/autotools/Versions.m4        2014-03-12 06:46:52 UTC (rev 165461)
+++ releases/WebKitGTK/webkit-2.4/Source/autotools/Versions.m4        2014-03-12 08:14:46 UTC (rev 165462)
</span><span class="lines">@@ -24,6 +24,7 @@
</span><span class="cx"> m4_define([enchant_required_version], [0.22])
</span><span class="cx"> m4_define([fontconfig_required_version], [2.5])
</span><span class="cx"> m4_define([freetype2_required_version], [9.0])
</span><ins>+m4_define([geoclue2_required_version], [2.1.5])
</ins><span class="cx"> m4_define([glib_required_version], [2.36.0])
</span><span class="cx"> m4_define([gobject_introspection_required_version], [1.32.0])
</span><span class="cx"> m4_define([gstreamer_plugins_base_required_version], [1.0.3])
</span></span></pre></div>
<a id="releasesWebKitGTKwebkit24SourcecmakeFindGeoClue2cmake"></a>
<div class="addfile"><h4>Added: releases/WebKitGTK/webkit-2.4/Source/cmake/FindGeoClue2.cmake (0 => 165462)</h4>
<pre class="diff"><span>
<span class="info">--- releases/WebKitGTK/webkit-2.4/Source/cmake/FindGeoClue2.cmake                                (rev 0)
+++ releases/WebKitGTK/webkit-2.4/Source/cmake/FindGeoClue2.cmake        2014-03-12 08:14:46 UTC (rev 165462)
</span><span class="lines">@@ -0,0 +1,51 @@
</span><ins>+# - Try to find GeoClue 2
+# Once done, this will define
+#
+#  GEOCLUE2_FOUND - system has GeoClue 2.
+#  GEOCLUE2_INCLUDE_DIRS - the GeoClue 2. include directories
+#  GEOCLUE2_LIBRARIES - link these to use GeoClue 2.
+#
+# Copyright (C) 2012 Raphael Kubo da Costa &lt;rakuco@webkit.org&gt;
+# Copyright (C) 2013, 2014 Igalia S.L.
+# Copyright (C) 2014 Samsung Electronics. All rights reserved.
+#
+# Redistribution and use in source and binary forms, with or without
+# modification, are permitted provided that the following conditions
+# are met:
+# 1.  Redistributions of source code must retain the above copyright
+#     notice, this list of conditions and the following disclaimer.
+# 2.  Redistributions in binary form must reproduce the above copyright
+#     notice, this list of conditions and the following disclaimer in the
+#     documentation and/or other materials provided with the distribution.
+#
+# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDER AND ITS CONTRIBUTORS ``AS
+# IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
+# THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+# PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR ITS
+# CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+# EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+find_package(PkgConfig)
+pkg_check_modules(GEOCLUE2 geoclue-2.0)
+
+set(VERSION_OK FALSE)
+if (GEOCLUE2_VERSION)
+    set(VERSION_OK TRUE)
+    if (GeoClue2_FIND_VERSION_EXACT)
+        if (NOT(&quot;${GeoClue2_FIND_VERSION}&quot; VERSION_EQUAL &quot;${GEOCLUE2_VERSION}&quot;))
+            set(VERSION_OK FALSE)
+        endif ()
+    else ()
+        if (&quot;${GEOCLUE2_VERSION}&quot; VERSION_LESS &quot;${GeoClue2_FIND_VERSION}&quot;)
+            set(VERSION_OK FALSE)
+        endif ()
+    endif ()
+endif ()
+
+include(FindPackageHandleStandardArgs)
+FIND_PACKAGE_HANDLE_STANDARD_ARGS(GEOCLUE2 DEFAULT_MSG VERSION_OK)
</ins></span></pre></div>
<a id="releasesWebKitGTKwebkit24SourcecmakeOptionsGTKcmake"></a>
<div class="modfile"><h4>Modified: releases/WebKitGTK/webkit-2.4/Source/cmake/OptionsGTK.cmake (165461 => 165462)</h4>
<pre class="diff"><span>
<span class="info">--- releases/WebKitGTK/webkit-2.4/Source/cmake/OptionsGTK.cmake        2014-03-12 06:46:52 UTC (rev 165461)
+++ releases/WebKitGTK/webkit-2.4/Source/cmake/OptionsGTK.cmake        2014-03-12 08:14:46 UTC (rev 165462)
</span><span class="lines">@@ -185,7 +185,13 @@
</span><span class="cx"> find_package(GLIB 2.33.2 REQUIRED COMPONENTS ${glib_components})
</span><span class="cx"> 
</span><span class="cx"> if (ENABLE_GEOLOCATION)
</span><del>-    find_package(GeoClue)
</del><ins>+    find_package(GeoClue2 2.1.5)
+    if (GEOCLUE2_FOUND)
+      set(WTF_USE_GEOCLUE2 1)
+    else ()
+      find_package(GeoClue)
+      set(WTF_USE_GEOCLUE2 0)
+    endif ()
</ins><span class="cx"> endif ()
</span><span class="cx"> 
</span><span class="cx"> # We don't use find_package for GLX because it is part of -lGL, unlike EGL.
</span></span></pre></div>
<a id="releasesWebKitGTKwebkit24Sourcecmakeconfighcmake"></a>
<div class="modfile"><h4>Modified: releases/WebKitGTK/webkit-2.4/Source/cmakeconfig.h.cmake (165461 => 165462)</h4>
<pre class="diff"><span>
<span class="info">--- releases/WebKitGTK/webkit-2.4/Source/cmakeconfig.h.cmake        2014-03-12 06:46:52 UTC (rev 165461)
+++ releases/WebKitGTK/webkit-2.4/Source/cmakeconfig.h.cmake        2014-03-12 08:14:46 UTC (rev 165462)
</span><span class="lines">@@ -122,6 +122,7 @@
</span><span class="cx"> #cmakedefine01 ENABLE_XHR_TIMEOUT
</span><span class="cx"> #cmakedefine01 ENABLE_XSLT
</span><span class="cx"> #cmakedefine01 USE_SYSTEM_MALLOC
</span><ins>+#cmakedefine01 WTF_USE_GEOCLUE2
</ins><span class="cx"> #cmakedefine01 WTF_USE_TILED_BACKING_STORE
</span><span class="cx"> #cmakedefine01 HAVE_LLVM
</span><span class="cx"> 
</span></span></pre>
</div>
</div>

</body>
</html>