wineandroid: Add initial stub for the Java activity.

Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
Alexandre Julliard 2017-05-30 12:59:15 +02:00
parent e11f2397ac
commit 93d4ac2a0f
8 changed files with 972 additions and 3 deletions

View File

@ -76,7 +76,7 @@ MAKEDEP = $(TOOLSDIR)/tools/makedep$(TOOLSEXT)
WINEBUILD = $(TOOLSDIR)/tools/winebuild/winebuild$(TOOLSEXT)
WRC = $(TOOLSDIR)/tools/wrc/wrc$(TOOLSEXT)
PACKAGE_VERSION = @PACKAGE_VERSION@
SED_CMD = LC_ALL=C sed -e 's,@bindir\@,$(bindir),g' -e 's,@dlldir\@,$(dlldir),g' -e 's,@PACKAGE_STRING\@,@PACKAGE_STRING@,g' -e 's,@PACKAGE_VERSION\@,@PACKAGE_VERSION@,g'
SED_CMD = LC_ALL=C sed -e 's,@bindir\@,$(bindir),g' -e 's,@dlldir\@,$(dlldir),g' -e 's,@srcdir\@,$(srcdir),g' -e 's,@PACKAGE_STRING\@,@PACKAGE_STRING@,g' -e 's,@PACKAGE_VERSION\@,@PACKAGE_VERSION@,g'
LDRPATH_INSTALL = @LDRPATH_INSTALL@
LDRPATH_LOCAL = @LDRPATH_LOCAL@
INSTALL_PROGRAM = STRIPPROG="$(STRIP)" $(top_srcdir)/tools/install-sh $(INSTALL_PROGRAM_FLAGS)

2
configure vendored
View File

@ -18575,7 +18575,7 @@ wine_fn_config_test dlls/windowscodecs/tests windowscodecs_test
wine_fn_config_dll windowscodecsext enable_windowscodecsext implib
wine_fn_config_test dlls/windowscodecsext/tests windowscodecsext_test
wine_fn_config_dll winealsa.drv enable_winealsa_drv
wine_fn_config_dll wineandroid.drv enable_wineandroid_drv
wine_fn_config_dll wineandroid.drv enable_wineandroid_drv clean
wine_fn_config_dll winebus.sys enable_winebus_sys
wine_fn_config_dll winecoreaudio.drv enable_winecoreaudio_drv
wine_fn_config_lib winecrt0

View File

@ -3519,7 +3519,7 @@ WINE_CONFIG_TEST(dlls/windowscodecs/tests)
WINE_CONFIG_DLL(windowscodecsext,,[implib])
WINE_CONFIG_TEST(dlls/windowscodecsext/tests)
WINE_CONFIG_DLL(winealsa.drv)
WINE_CONFIG_DLL(wineandroid.drv)
WINE_CONFIG_DLL(wineandroid.drv,,[clean])
WINE_CONFIG_DLL(winebus.sys)
WINE_CONFIG_DLL(winecoreaudio.drv)
WINE_CONFIG_LIB(winecrt0)

View File

@ -0,0 +1,16 @@
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="org.winehq.wine">
<application
android:icon="@drawable/wine"
android:label="Wine" >
<activity
android:label="Wine"
android:name=".WineActivity" >
<intent-filter >
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
</manifest>

View File

@ -1 +1,11 @@
MODULE = wineandroid.drv
IN_SRCS = \
build.gradle.in
EXTRA_TARGETS = wine-debug.apk
all: wine-debug.apk
wine-debug.apk: build.gradle $(srcdir)/AndroidManifest.xml $(srcdir)/WineActivity.java $(srcdir)/wine.svg
gradle -q assembleDebug && mv build/outputs/apk/wine-debug.apk .

View File

@ -0,0 +1,33 @@
/*
* WineActivity class
*
* Copyright 2013-2017 Alexandre Julliard
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
*/
package org.winehq.wine;
import android.app.Activity;
import android.os.Bundle;
public class WineActivity extends Activity
{
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate( savedInstanceState );
}
}

View File

@ -0,0 +1,81 @@
/*
* Gradle build script for Wine
*
* Copyright 2017 Alexandre Julliard
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
*/
apply plugin: 'com.android.application'
buildscript
{
repositories
{
jcenter()
}
dependencies
{
classpath "com.android.tools.build:gradle:2.2.1"
}
}
def add_icon_task( dir, scale ) {
return tasks.create( "createIcon-" + dir, Exec ) {
def outdir = new File( "res", "drawable-" + dir )
outputs.dir( outdir )
doFirst { outdir.mkdirs() }
def png = new File( outdir, "wine.png" )
def svg = new File( "@srcdir@", "wine.svg" )
inputs.file( svg )
outputs.file( png )
commandLine "rsvg-convert", "-z", scale, "-o", png, svg
}
}
tasks.whenTaskAdded { t ->
if (t.name.equals( "generateDebugResources" )) {
t.dependsOn add_icon_task( "ldpi", 0.75 )
t.dependsOn add_icon_task( "mdpi", 1 )
t.dependsOn add_icon_task( "hdpi", 1.5 )
t.dependsOn add_icon_task( "xhdpi", 2 )
t.dependsOn add_icon_task( "xxhdpi", 3 )
t.dependsOn add_icon_task( "xxxhdpi", 4 )
}
}
android
{
compileSdkVersion 17
buildToolsVersion "25.0.3"
defaultConfig
{
applicationId "org.winehq.wine"
minSdkVersion 17
versionCode 1
versionName "@PACKAGE_VERSION@"
setProperty( "archivesBaseName", "wine" )
}
sourceSets
{
main.assets.srcDirs = [ "assets" ]
main.java.srcDirs = [ "@srcdir@" ]
main.java.excludes = [ "build" ]
main.res.srcDirs = [ "res" ]
main.manifest.srcFile "@srcdir@/AndroidManifest.xml"
}
}

View File

@ -0,0 +1,829 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
id="svg2"
height="48"
width="48"
version="1.1"
sodipodi:docname="wine.svg"
inkscape:version="0.92.1 r15371">
<sodipodi:namedview
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1"
objecttolerance="10"
gridtolerance="10"
guidetolerance="10"
inkscape:pageopacity="0"
inkscape:pageshadow="2"
inkscape:window-width="1701"
inkscape:window-height="996"
id="namedview162"
showgrid="false"
inkscape:zoom="2"
inkscape:cx="-104.6277"
inkscape:cy="7.5"
inkscape:window-x="0"
inkscape:window-y="0"
inkscape:window-maximized="0"
inkscape:current-layer="svg2" />
<metadata
id="metadata303">
<rdf:RDF>
<cc:Work
rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
</cc:Work>
</rdf:RDF>
</metadata>
<defs
id="defs4">
<linearGradient
id="linearGradient3933">
<stop
id="stop3935"
stop-color="#000"
stop-opacity="0.302"
offset="0" />
<stop
id="stop3941"
stop-color="#000"
stop-opacity="0.2"
offset="0.88501" />
<stop
id="stop3937"
stop-color="#000"
stop-opacity="0"
offset="1" />
</linearGradient>
<filter
id="filter3391"
height="1.336"
width="1.1344"
color-interpolation-filters="sRGB"
y="-0.168"
x="-0.067199998">
<feGaussianBlur
id="feGaussianBlur3393"
stdDeviation="0.14" />
</filter>
<linearGradient
id="linearGradient3198">
<stop
id="stop3200"
stop-color="#FFF"
offset="0" />
<stop
id="stop3202"
stop-color="#FFF"
stop-opacity="0"
offset="1" />
</linearGradient>
<filter
id="filter3391-9"
height="1.336"
width="1.1344"
color-interpolation-filters="sRGB"
y="-0.168"
x="-0.067199998">
<feGaussianBlur
id="feGaussianBlur3393-0"
stdDeviation="0.14" />
</filter>
<linearGradient
id="linearGradient3052"
y2="25.5"
gradientUnits="userSpaceOnUse"
x2="20.5"
gradientTransform="translate(-8.0000004,15.967633)"
y1="27.5"
x1="16">
<stop
id="stop3375"
stop-color="#000"
offset="0" />
<stop
id="stop3377"
stop-color="#373737"
stop-opacity="0"
offset="1" />
</linearGradient>
<linearGradient
id="linearGradient3054"
y2="27"
gradientUnits="userSpaceOnUse"
x2="21.5"
gradientTransform="translate(-8.0000004,15.967633)"
y1="27"
x1="16">
<stop
id="stop3444"
stop-color="#000"
offset="0" />
<stop
id="stop3446"
stop-color="#000"
stop-opacity="0"
offset="1" />
</linearGradient>
<radialGradient
id="radialGradient3319"
gradientUnits="userSpaceOnUse"
cy="14.19"
cx="18"
gradientTransform="matrix(0.5171097,0,0,0.09372595,295.71991,44.846526)"
r="5.5055">
<stop
id="stop3454-5"
stop-color="#FFF"
offset="0" />
<stop
id="stop3456-4"
stop-color="#FFF"
stop-opacity="0"
offset="1" />
</radialGradient>
<linearGradient
id="linearGradient3324"
y2="18.312"
xlink:href="#linearGradient3198"
gradientUnits="userSpaceOnUse"
x2="23"
gradientTransform="matrix(0.5171097,0,0,0.509783,292.0317,35.706174)"
y1="18.312"
x1="17.605" />
<linearGradient
id="linearGradient3327"
y2="19"
xlink:href="#linearGradient3198"
gradientUnits="userSpaceOnUse"
x2="22"
gradientTransform="matrix(0.51465215,0,0,0.51427415,291.66575,36.071594)"
y1="25.27"
x1="30.376" />
<radialGradient
id="radialGradient3330"
gradientUnits="userSpaceOnUse"
cy="13.192"
cx="25.017"
gradientTransform="matrix(0.6409233,0,0,0.23260484,289.25876,43.172933)"
r="9.7513">
<stop
id="stop3173-2"
stop-color="#fd0000"
offset="0" />
<stop
id="stop3175-4"
stop-color="#6a0000"
offset="1" />
</radialGradient>
<linearGradient
id="linearGradient3332"
y2="7.1352"
gradientUnits="userSpaceOnUse"
x2="22.036"
gradientTransform="matrix(0.6409233,0,0,0.4699064,289.25876,40.562616)"
y1="15.984"
x1="27.217">
<stop
id="stop4404-2"
stop-color="#e80000"
offset="0" />
<stop
id="stop4406-1"
stop-color="#490000"
offset="1" />
</linearGradient>
<radialGradient
id="radialGradient3335"
gradientUnits="userSpaceOnUse"
cy="26.577"
cx="26.625"
gradientTransform="matrix(0.4905733,-0.1612076,0.0594676,0.1758752,290.71541,48.376273)"
r="12.5">
<stop
id="stop3191-6"
stop-color="#e40000"
offset="0" />
<stop
id="stop3193-5"
stop-color="#490000"
offset="1" />
</radialGradient>
<linearGradient
id="linearGradient3338"
y2="27"
gradientUnits="userSpaceOnUse"
x2="19"
gradientTransform="matrix(0.5171097,0,0,0.5097831,291.58937,36.045709)"
y1="33"
x1="29">
<stop
id="stop3222-8"
stop-color="#373737"
offset="0" />
<stop
id="stop3224-5"
stop-color="#FFF"
offset="1" />
</linearGradient>
<linearGradient
id="linearGradient3341"
y2="5.0354"
xlink:href="#linearGradient3198"
gradientUnits="userSpaceOnUse"
x2="17.799"
gradientTransform="matrix(0.7042341,0,0,0.4625263,287.80262,49.412231)"
y1="12.038"
x1="25.269" />
<linearGradient
id="linearGradient3344"
y2="9.277"
gradientUnits="userSpaceOnUse"
x2="21.44"
gradientTransform="matrix(0.6372376,0,0,0.5144393,289.34354,48.841188)"
y1="14.243"
x1="27.681">
<stop
id="stop3230-47"
stop-color="#373737"
offset="0" />
<stop
id="stop3232-9"
stop-color="#cfcfcf"
stop-opacity="0.67826086"
offset="1" />
</linearGradient>
<radialGradient
id="radialGradient3347"
gradientUnits="userSpaceOnUse"
cy="22.614"
cx="27.5"
gradientTransform="matrix(0.7955532,-0.039214,0.04965997,0.9791288,282.80915,27.21674)"
r="6.5">
<stop
id="stop3348-2"
stop-color="#737373"
offset="0" />
<stop
id="stop3350-2"
stop-color="#000"
stop-opacity="0"
offset="1" />
</radialGradient>
<radialGradient
id="radialGradient3350"
gradientUnits="userSpaceOnUse"
cy="33.188"
cx="37.375"
gradientTransform="matrix(0.2103491,0,0,0.05208649,295.79979,45.30668)"
r="14.625">
<stop
id="stop4335-63"
stop-color="#000"
offset="0" />
<stop
id="stop4337-0"
stop-color="#000"
stop-opacity="0"
offset="1" />
</radialGradient>
<radialGradient
id="radialGradient3115"
gradientUnits="userSpaceOnUse"
cy="14.19"
cx="18"
gradientTransform="matrix(1.0342194,0,0,0.1874519,175.43981,33.693031)"
r="5.5055">
<stop
id="stop3454-4"
stop-color="#FFF"
offset="0" />
<stop
id="stop3456-9"
stop-color="#FFF"
stop-opacity="0"
offset="1" />
</radialGradient>
<linearGradient
id="linearGradient3120"
y2="18.312"
xlink:href="#linearGradient3198"
gradientUnits="userSpaceOnUse"
x2="23"
gradientTransform="matrix(1.0342194,0,0,1.019566,168.0634,15.412329)"
y1="18.312"
x1="17.605" />
<linearGradient
id="linearGradient3123"
y2="19"
xlink:href="#linearGradient3198"
gradientUnits="userSpaceOnUse"
x2="22"
gradientTransform="matrix(1.0293043,0,0,1.0285483,167.3315,16.143168)"
y1="25.27"
x1="30.376" />
<radialGradient
id="radialGradient3126"
gradientUnits="userSpaceOnUse"
cy="13.192"
cx="25.017"
gradientTransform="matrix(1.2818465,0,0,0.46520969,162.51753,30.345846)"
r="9.7513">
<stop
id="stop3173-5"
stop-color="#fd0000"
offset="0" />
<stop
id="stop3175-8"
stop-color="#6a0000"
offset="1" />
</radialGradient>
<linearGradient
id="linearGradient3128"
y2="7.1352"
gradientUnits="userSpaceOnUse"
x2="22.036"
gradientTransform="matrix(1.2818465,0,0,0.9398128,162.51753,25.125212)"
y1="15.984"
x1="27.217">
<stop
id="stop4404-1"
stop-color="#e80000"
offset="0" />
<stop
id="stop4406-5"
stop-color="#490000"
offset="1" />
</linearGradient>
<radialGradient
id="radialGradient3132"
gradientUnits="userSpaceOnUse"
cy="26.577"
cx="26.625"
gradientTransform="matrix(0.9811466,-0.3224151,0.1189352,0.3517503,165.43081,40.752527)"
r="12.5">
<stop
id="stop3191-9"
stop-color="#e40000"
offset="0" />
<stop
id="stop3193-7"
stop-color="#490000"
offset="1" />
</radialGradient>
<linearGradient
id="linearGradient3135"
y2="27"
gradientUnits="userSpaceOnUse"
x2="19"
gradientTransform="matrix(1.0342194,0,0,1.0195661,167.17874,16.091399)"
y1="33"
x1="29">
<stop
id="stop3222-6"
stop-color="#373737"
offset="0" />
<stop
id="stop3224-3"
stop-color="#FFF"
offset="1" />
</linearGradient>
<linearGradient
id="linearGradient3138"
y2="5.0354"
xlink:href="#linearGradient3198"
gradientUnits="userSpaceOnUse"
x2="17.799"
gradientTransform="matrix(1.2818465,0,0,0.9398128,162.51753,42.162079)"
y1="12.038"
x1="25.269" />
<linearGradient
id="linearGradient3141"
y2="9.277"
gradientUnits="userSpaceOnUse"
x2="21.44"
gradientTransform="matrix(1.2744752,0,0,1.0288787,162.68707,41.182354)"
y1="14.243"
x1="27.681">
<stop
id="stop3230-4"
stop-color="#373737"
offset="0" />
<stop
id="stop3232-6"
stop-color="#cfcfcf"
stop-opacity="0.67826086"
offset="1" />
</linearGradient>
<radialGradient
id="radialGradient3144"
gradientUnits="userSpaceOnUse"
cy="22.614"
cx="27.5"
gradientTransform="matrix(1.5911065,-0.078428,0.09931994,1.9582576,149.61831,-1.566539)"
r="6.5">
<stop
id="stop3348-7"
stop-color="#737373"
offset="0" />
<stop
id="stop3350-0"
stop-color="#000"
stop-opacity="0"
offset="1" />
</radialGradient>
<radialGradient
id="radialGradient3148"
gradientUnits="userSpaceOnUse"
cy="33.188"
cx="37.375"
gradientTransform="matrix(0.4206982,0,0,0.10417298,175.59958,34.613341)"
r="14.625">
<stop
id="stop4335-6"
stop-color="#000"
offset="0" />
<stop
id="stop4337-5"
stop-color="#000"
stop-opacity="0"
offset="1" />
</radialGradient>
<radialGradient
id="radialGradient3926"
gradientUnits="userSpaceOnUse"
cy="14.19"
cx="18"
gradientTransform="matrix(1.551329,0,0,0.2811779,7.1597166,22.539516)"
r="5.5055">
<stop
id="stop3454"
stop-color="#FFF"
offset="0" />
<stop
id="stop3456"
stop-color="#FFF"
stop-opacity="0"
offset="1" />
</radialGradient>
<linearGradient
id="linearGradient3930"
y2="18.312"
xlink:href="#linearGradient3198"
gradientUnits="userSpaceOnUse"
x2="23"
gradientTransform="matrix(1.551329,0,0,1.5293489,-3.904902,-4.881536)"
y1="18.312"
x1="17.605" />
<linearGradient
id="linearGradient3934"
y2="19"
xlink:href="#linearGradient3198"
gradientUnits="userSpaceOnUse"
x2="22"
gradientTransform="matrix(1.5439563,0,0,1.5428223,-5.002754,-3.785278)"
y1="25.27"
x1="30.376" />
<radialGradient
id="radialGradient3937"
gradientUnits="userSpaceOnUse"
cy="13.192"
cx="25.017"
gradientTransform="matrix(1.9227697,0,0,0.69781448,-12.223704,17.518739)"
r="9.7513">
<stop
id="stop3173"
stop-color="#fd0000"
offset="0" />
<stop
id="stop3175"
stop-color="#6a0000"
offset="1" />
</radialGradient>
<linearGradient
id="linearGradient3939"
y2="7.1352"
gradientUnits="userSpaceOnUse"
x2="22.036"
gradientTransform="matrix(1.9227697,0,0,1.4097191,-12.223704,9.6877877)"
y1="15.984"
x1="27.217">
<stop
id="stop4404"
stop-color="#e80000"
offset="0" />
<stop
id="stop4406"
stop-color="#490000"
offset="1" />
</linearGradient>
<radialGradient
id="radialGradient3942"
gradientUnits="userSpaceOnUse"
cy="26.577"
cx="26.625"
gradientTransform="matrix(1.4717199,-0.4836227,0.1784028,0.5276254,-7.853782,33.128759)"
r="12.5">
<stop
id="stop3191"
stop-color="#e40000"
offset="0" />
<stop
id="stop3193"
stop-color="#490000"
offset="1" />
</radialGradient>
<linearGradient
id="linearGradient3945"
y2="27"
gradientUnits="userSpaceOnUse"
x2="19"
gradientTransform="matrix(1.551329,0,0,1.529349,-5.231894,-3.862931)"
y1="33"
x1="29">
<stop
id="stop3222"
stop-color="#373737"
offset="0" />
<stop
id="stop3224"
stop-color="#FFF"
offset="1" />
</linearGradient>
<linearGradient
id="linearGradient3948"
y2="5.0354"
xlink:href="#linearGradient3198"
gradientUnits="userSpaceOnUse"
x2="17.799"
gradientTransform="matrix(1.9227697,0,0,1.4097191,-12.223704,34.901493)"
y1="12.038"
x1="25.269" />
<linearGradient
id="linearGradient3951"
y2="9.277"
gradientUnits="userSpaceOnUse"
x2="21.44"
gradientTransform="matrix(1.9227697,0,0,1.4097191,-12.223704,34.922047)"
y1="19.122"
x1="29.455">
<stop
id="stop3230"
stop-color="#373737"
offset="0" />
<stop
id="stop3232"
stop-color="#373737"
stop-opacity="0"
offset="1" />
</linearGradient>
<radialGradient
id="radialGradient3955"
gradientUnits="userSpaceOnUse"
cy="22.614"
cx="27.5"
gradientTransform="matrix(2.3866597,-0.117642,0.1489799,2.9373862,-31.572536,-30.349836)"
r="6.5">
<stop
id="stop3348"
stop-color="#737373"
offset="0" />
<stop
id="stop3350"
stop-color="#000"
stop-opacity="0"
offset="1" />
</radialGradient>
<radialGradient
id="radialGradient3958"
xlink:href="#linearGradient3933"
gradientUnits="userSpaceOnUse"
cy="55.076"
cx="31.071"
gradientTransform="matrix(1.1299037,0.00293243,-0.00104388,0.40221964,-2.8919247,29.673628)"
r="8.5533" />
<radialGradient
id="radialGradient3961"
gradientUnits="userSpaceOnUse"
cy="33.188"
cx="37.375"
gradientTransform="matrix(0.6310473,0,0,0.15625948,7.3993769,23.919982)"
r="14.625">
<stop
id="stop4335"
stop-color="#000"
offset="0" />
<stop
id="stop4337"
stop-color="#000"
stop-opacity="0"
offset="1" />
</radialGradient>
<radialGradient
id="radialGradient3965"
xlink:href="#linearGradient3933"
gradientUnits="userSpaceOnUse"
cy="55.076"
cx="31.071"
gradientTransform="matrix(0.76667705,0.00198975,-7.0830713e-4,0.27291933,168.20209,38.465153)"
r="8.5533" />
<radialGradient
inkscape:collect="always"
xlink:href="#radialGradient3961"
id="radialGradient3922"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(0.6310473,0,0,0.15625948,7.3993769,23.919982)"
cx="37.375"
cy="33.188"
r="14.625" />
<radialGradient
inkscape:collect="always"
xlink:href="#radialGradient3955"
id="radialGradient3924"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(2.3866597,-0.117642,0.1489799,2.9373862,-31.572536,-30.349836)"
cx="27.5"
cy="22.614"
r="6.5" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient3951"
id="linearGradient3926"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(1.9227697,0,0,1.4097191,-12.223704,34.922047)"
x1="29.455"
y1="19.122"
x2="21.44"
y2="9.277" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient3945"
id="linearGradient3928"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(1.551329,0,0,1.529349,-5.231894,-3.862931)"
x1="29"
y1="33"
x2="19"
y2="27" />
<radialGradient
inkscape:collect="always"
xlink:href="#radialGradient3942"
id="radialGradient3930"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(1.4717199,-0.4836227,0.1784028,0.5276254,-7.853782,33.128759)"
cx="26.625"
cy="26.577"
r="12.5" />
<radialGradient
inkscape:collect="always"
xlink:href="#radialGradient3937"
id="radialGradient3932"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(1.9227697,0,0,0.69781448,-12.223704,17.518739)"
cx="25.017"
cy="13.192"
r="9.7513" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient3939"
id="linearGradient3935"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(1.9227697,0,0,1.4097191,-12.223704,9.6877877)"
x1="27.217"
y1="15.984"
x2="22.036"
y2="7.1352" />
<radialGradient
inkscape:collect="always"
xlink:href="#radialGradient3926"
id="radialGradient3938"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(1.551329,0,0,0.2811779,7.1597166,22.539516)"
cx="18"
cy="14.19"
r="5.5055" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient3052"
id="linearGradient3940"
gradientUnits="userSpaceOnUse"
gradientTransform="translate(-8.0000004,15.967633)"
x1="16"
y1="27.5"
x2="20.5"
y2="25.5" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient3054"
id="linearGradient3942"
gradientUnits="userSpaceOnUse"
gradientTransform="translate(-8.0000004,15.967633)"
x1="16"
y1="27"
x2="21.5"
y2="27" />
</defs>
<g
id="g3985"
transform="translate(-8,-8)">
<path
id="path4331"
d="m 40.214,29.106 a 9.2291,2.2853 0 0 1 -18.458,0 9.2291,2.2853 0 1 1 18.458,0 z"
inkscape:connector-curvature="0"
style="opacity:0.07000002;fill:url(#radialGradient3922)" />
<path
id="path3420"
d="m 42.261,52 a 10.426,3.4403 0 0 1 -20.852,0 10.426,3.4403 0 1 1 20.852,0 z"
inkscape:connector-curvature="0"
style="fill:url(#radialGradient3958)" />
<path
id="path3159"
d="m 39.757,12.195 c -0.77566,-1.5293 -14.738,-1.5293 -15.513,0 0,2.294 -2.327,9.1761 -2.327,15.293 0,6.1174 7.7566,9.9408 10.084,9.9408 2.327,0 10.084,-3.8234 10.084,-9.9408 0,-6.1174 -2.327,-12.999 -2.327,-15.293 z"
inkscape:connector-curvature="0"
style="fill:url(#radialGradient3924);fill-rule:evenodd" />
<path
id="path2385"
style="fill:none;stroke:#919191;stroke-width:1.01098025;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:0;stroke-dasharray:none"
d="m 39.757,12.216 a 7.7566,1.5499 0 0 1 -15.513,0 7.7566,1.5499 0 1 1 15.513,0 z"
stroke-miterlimit="0"
inkscape:connector-curvature="0" />
<path
id="path3157"
style="fill:url(#linearGradient3926);stroke:#888a85;stroke-width:1.01098025;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:0;stroke-dasharray:none"
d="m 40.532,50.429 a 8.5325,3.0793722 0 0 1 -17.065,0 8.5325,3.0793722 0 1 1 17.065,0 z"
stroke-miterlimit="0"
inkscape:connector-curvature="0" />
<path
id="path3236"
style="fill:none;stroke:url(#linearGradient3948);stroke-width:1.01098025;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:0;stroke-dasharray:none"
d="m 39.5,50.408 a 7.5,1.9084 0 0 1 -15,0 7.5,1.9084 0 1 1 15,0 z"
stroke-miterlimit="0"
inkscape:connector-curvature="0" />
<path
id="path3163"
d="m 28.122,35.9 c 1.5513,1.5293 3.1027,3.8234 3.1027,12.235 0,1.5293 0.20982,2.294 0.77566,2.294 0.56585,0 0.77566,-0.76467 0.77566,-2.294 0,-8.4114 1.5513,-10.705 3.1027,-12.235"
inkscape:connector-curvature="0"
style="fill:url(#linearGradient3928);fill-rule:evenodd;stroke:#888a85;stroke-width:1px;stroke-linecap:round;stroke-linejoin:miter" />
<path
id="path3179"
d="m 22,25 c 0,9 7.673,12.429 10,12.429 C 34.327,37.429 42,34 42,25"
inkscape:connector-curvature="0"
style="fill:url(#radialGradient3930);fill-rule:evenodd" />
<path
id="path5788"
style="fill:url(#radialGradient3932);stroke:url(#linearGradient3935);stroke-width:1.01098025;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:0;stroke-dasharray:none"
d="m 41.5,25.195 a 9.5,2.294 0 0 1 -19,0 9.5,2.294 0 1 1 19,0 z"
stroke-miterlimit="0"
inkscape:connector-curvature="0" />
<path
id="path3196"
d="m 23,25.5 c -1.5,6.5 6.5,11 9,11 2.5,0 11,-4.5 9,-12 -0.5,-4 -1,-6 -2,-9.5"
inkscape:connector-curvature="0"
style="fill:none;stroke:url(#linearGradient3934);stroke-width:1px;stroke-linecap:round;stroke-linejoin:miter" />
<path
id="path3266"
d="M 26.346,15 H 31 c 0,0 -2.327,9.1761 -2.327,12.999 0,2.294 1.5513,3.8234 0.77566,4.588 -0.77566,0.76468 -4.654,-2.2183 -4.654,-6.1174 0,-1.5293 0.77566,-6.1174 1.5513,-11.47 z"
inkscape:connector-curvature="0"
style="fill:url(#linearGradient3930);fill-rule:evenodd" />
<path
id="path3358"
d="M 39.5,13.5 C 39,14 36.038,14.55 31.757,14.55 27.475,14.55 25,14 24.5,13.5"
stroke-miterlimit="0"
inkscape:connector-curvature="0"
style="fill:none;stroke:#ffffff;stroke-width:1.01098013;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:0" />
<path
id="path3450"
d="m 41,24.5 c 0,0.85555 -3.5,2 -9.019,2.0499 -5.519,0.05 -8.981,-1.194 -8.981,-2.05"
stroke-miterlimit="0"
inkscape:connector-curvature="0"
style="fill:none;stroke:url(#radialGradient3938);stroke-width:1.01098013;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:0" />
<path
id="path3395"
d="m 30,38 c 0,0 0.5,1 2,0.95884 1.5,-0.041 2,-0.959 2,-0.959"
inkscape:connector-curvature="0"
style="opacity:0.35;fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:round;stroke-linejoin:round" />
<path
id="path3363"
d="m 8,43.468 2.5,-1 2.4688,0.125 -4.9687,0.875 z"
transform="matrix(1.551329,0,0,1.5293489,19.589369,-16.477177)"
inkscape:connector-curvature="0"
style="fill:url(#linearGradient3940);fill-rule:evenodd;stroke:url(#linearGradient3942);stroke-width:0.64922434px;stroke-linecap:round;stroke-linejoin:round;filter:url(#filter3391)" />
<path
id="path3354"
d="m 39.757,12.195 c -0.77566,-2.294 -14.738,-2.294 -15.513,0 0,2.294 -2.327,9.1761 -2.327,15.293 0,6.1174 7.7566,9.9408 10.084,9.9408 2.327,0 10.084,-3.8234 10.084,-9.9408 0,-6.1174 -2.327,-12.999 -2.327,-15.293 z"
inkscape:connector-curvature="0"
style="fill:none;stroke:#919191;stroke-width:1px;stroke-linecap:round;stroke-linejoin:miter" />
</g>
</svg>

After

Width:  |  Height:  |  Size: 25 KiB