1
0
mirror of https://github.com/tomahawk-player/tomahawk.git synced 2025-09-18 18:02:56 +02:00

Compare commits

..

105 Commits
qmlng ... 0.6.1

Author SHA1 Message Date
Uwe L. Korn
ccb976a8e6 Include --verbose in --help 2013-03-24 10:41:13 +01:00
Uwe L. Korn
70c4dacc62 Add ampersand escaping for Albums and Artists 2013-03-24 10:41:01 +01:00
Uwe L. Korn
06bfa16335 Escape ampersands in menu entry strings
* Fixes TWK-1172
2013-03-24 10:41:01 +01:00
Teo Mrnjavac
81485c4c03 Fix GridView layout bug on some GTK styles. 2013-03-23 15:54:07 +01:00
Christian Muehlhaeuser
4601d9b213 * Remove code which seems to cause painting issues with some styles. 2013-03-23 10:12:29 +01:00
Hugo Lindström
edccc2291a Update headers in QtScriptResolver 2013-03-23 09:52:37 +01:00
Hugo Lindström
b155b301dd SpotifyParse fix 2013-03-23 09:50:35 +01:00
Christian Muehlhaeuser
63c4692181 * Bump version to 0.6.1. 2013-03-23 09:41:06 +01:00
Christian Muehlhaeuser
958cec8319 * Update mingw toolchain. 2013-03-23 09:40:14 +01:00
Christian Muehlhaeuser
39189df919 * Updated ChangeLog. 2013-03-23 09:09:20 +01:00
Christian Muehlhaeuser
cbf9751222 * Don't let RecentPlaylistsModel try to load stuff before we're ready. 2013-03-23 09:01:05 +01:00
Christian Muehlhaeuser
023c4dc015 * Make sure our private markAsReady method is connected (and hence called) first. Log a message when db is ready. 2013-03-23 09:00:51 +01:00
Christian Muehlhaeuser
f2da9565f6 * Print out a warning and abort when trying to enqueue a DatabaseCommand before Database is ready. 2013-03-23 09:00:36 +01:00
Christian Muehlhaeuser
001d0ca6aa * Properly detect the correct UPnP InternetGateway device. 2013-03-23 09:00:14 +01:00
Christian Muehlhaeuser
d0ceb5c350 * Fixed missing copyright header. 2013-03-23 09:00:00 +01:00
Jason Herskowitz
fedd722640 Cleanup Dock icons 2013-03-23 08:59:30 +01:00
Teo Mrnjavac
42057e47b8 Fix typo. 2013-03-06 19:39:15 +01:00
Teo Mrnjavac
0f8c3a82be Fix scrolling in grid view. 2013-02-01 20:09:11 +01:00
Leo Franchi
bc2e61f270 Sync server data and do upgrade checks on either completion 2013-01-29 11:16:05 -05:00
Christian Muehlhaeuser
50dda2a9eb * Fixed track hover rect in sidebar. 2013-01-21 13:40:31 +01:00
Tomahawk CI
09078ab6a5 Automatic merge of Transifex translations 2013-01-21 13:40:23 +01:00
Christian Muehlhaeuser
89c5b7b5d5 * Fixed now playing icon being squeezed in Charts delegate. 2013-01-20 06:44:05 +01:00
Christian Muehlhaeuser
8c3290fcbe * Always set a black foreground color for QueryLabels in AudioControls. 2013-01-20 06:29:03 +01:00
Christian Muehlhaeuser
c5dc51514a * QueryLabel doesn't support setTextPen any longer. 2013-01-20 06:28:55 +01:00
Christian Muehlhaeuser
165e1cf8b5 * Always set the correct foreground / background colors for QueryLabel. 2013-01-20 06:28:45 +01:00
Tomahawk CI
a6ffa5afee Automatic merge of Transifex translations 2013-01-20 06:28:36 +01:00
Tomahawk CI
947e436f06 Automatic merge of Transifex translations 2013-01-20 06:28:25 +01:00
Christian Muehlhaeuser
2b8cc4f295 * Bumped to 0.6.0. 2013-01-18 14:52:17 +01:00
Christian Muehlhaeuser
1b59320007 * Don't let NSSearchField grab Cmd + A. 2013-01-18 14:51:20 +01:00
Christian Muehlhaeuser
a53cf8b398 * Merged from master. 2013-01-18 11:51:14 +01:00
Christian Muehlhaeuser
1cb5904a66 * Fixed compiling on OSX. 2013-01-18 09:06:10 +01:00
Patrick von Reth
ff5f158897 fixed crash on love, when thumb buttons where not initialized 2013-01-18 08:54:29 +01:00
Christian Muehlhaeuser
3bb9495133 * Try to fix search field behaviour on OSX. 2013-01-18 08:47:15 +01:00
Christian Muehlhaeuser
85190316ba * Fixed merge. 2013-01-18 08:13:02 +01:00
Christian Muehlhaeuser
8ec75f7bbc * Fixed merge. 2013-01-18 08:09:28 +01:00
Teo Mrnjavac
1f5e12f264 Hide the share action from AudioControls if there's no InfoPlugin that
can be used to share a track.
2013-01-18 08:07:57 +01:00
Jeff Mitchell
dda6bf2bdc * Merged InfoSystem changes. 2013-01-18 08:07:23 +01:00
Christian Muehlhaeuser
2c85053b75 Don't change scroll steps on OSX. 2013-01-18 08:03:43 +01:00
Teo Mrnjavac
6433f74108 Not just on X11 2013-01-18 08:03:42 +01:00
Teo Mrnjavac
1e7840a5c2 Fix jumpy scrolling in Account Settings. 2013-01-18 08:01:39 +01:00
Tomahawk CI
7dfa8a7550 Automatic merge of Transifex translations 2013-01-18 07:58:39 +01:00
Jeff Mitchell
1059afe72a * Merged ScanManager. 2013-01-18 07:58:21 +01:00
Jeff Mitchell
bc23940194 * Merged MusicScanner changes. 2013-01-18 07:55:11 +01:00
Jeff Mitchell
1f38b11bf6 Remove extraneous debugging 2013-01-18 07:48:19 +01:00
Jeff Mitchell
46236a149c Add debug 2013-01-18 07:48:19 +01:00
Jeff Mitchell
7405537121 Attempt to fix a potential scanner deadlock 2013-01-18 07:48:04 +01:00
Leo Franchi
771465043a Use JobStatusView error message for script errors 2013-01-17 10:00:14 +01:00
Christian Muehlhaeuser
e19f7f7a93 * Only check iodev when available. 2013-01-17 09:59:45 +01:00
Christian Muehlhaeuser
f3e9025802 * Don't crash in StreamConnection without m_iodev. 2013-01-17 09:59:45 +01:00
Tomahawk CI
5aef34b3a8 Automatic merge of Transifex translations 2013-01-17 09:59:27 +01:00
Tomahawk CI
0c6f51dc9c Automatic merge of Transifex translations 2013-01-17 09:59:27 +01:00
Tomahawk CI
dc28b1443a Automatic merge of Transifex translations 2013-01-17 09:59:27 +01:00
Tomahawk CI
05a2b84b88 Automatic merge of Transifex translations 2013-01-17 09:59:27 +01:00
Leo Franchi
30638e41bd * Merged Logger.cpp. 2013-01-17 09:57:39 +01:00
Leo Franchi
216594d4ab Add CMakeDefine, thanks domme :) 2013-01-17 09:56:48 +01:00
Leo Franchi
6d7a654cf3 Slight clean up by adding a MOUNTAIN_LION define 2013-01-17 09:56:48 +01:00
Christian Muehlhaeuser
8b41f00e6f * Fixed using tLog before Logger is initialized. 2013-01-17 09:56:48 +01:00
Christian Muehlhaeuser
5ae5988af7 * Don't use tDebug in installTranslator. 2013-01-17 09:56:48 +01:00
Christian Muehlhaeuser
a9732caa97 * Restore last fullscreen state on OSX. 2013-01-17 09:56:48 +01:00
Christian Muehlhaeuser
f4fa73e583 * Added fullscreen action to ActionCollection. 2013-01-17 09:56:48 +01:00
Christian Muehlhaeuser
1d62eb5bcc * TomahawkSettings can now store fullscreen mode. 2013-01-17 09:56:48 +01:00
Christian Muehlhaeuser
85b528dc19 * Added Tomahawk::toggleFullscreen on OSX. 2013-01-17 09:56:48 +01:00
Jeff Mitchell
194def3d43 Fix an issue where the slider could get stuck 2013-01-17 09:54:30 +01:00
Leo Franchi
afa49927bd Don't crash if Query::get returns an invalid query 2013-01-15 17:42:38 -05:00
Leo Franchi
433d5af0bc THR-40: Set last.fm resolver icon so last.fm results have icon 2013-01-14 11:17:20 -05:00
Christian Muehlhaeuser
3e71c22bbc * Fixed README.md. 2013-01-13 08:53:14 +01:00
Christian Muehlhaeuser
29b1544032 * Fixed not emitting start with GStreamer Phonon backend. 2013-01-13 08:52:50 +01:00
Christian Muehlhaeuser
41492d06c9 * Reset timer labels in onPlaybackLoading. 2013-01-13 08:52:49 +01:00
Tomahawk CI
9a9a12421b Automatic merge of Transifex translations 2013-01-13 08:52:40 +01:00
Tomahawk CI
332e2c533c Automatic merge of Transifex translations 2013-01-13 08:52:40 +01:00
Christian Muehlhaeuser
c179647eb4 Use https:// for github urls. 2013-01-13 08:52:21 +01:00
Christian Muehlhaeuser
9fa6c365ec * Merged README.md. 2013-01-13 08:52:10 +01:00
Tomahawk CI
7eb65c0e75 Automatic merge of Transifex translations 2013-01-13 08:50:55 +01:00
Teo Mrnjavac
7234c9e1a1 Remove obsolete Windows hacks. 2013-01-12 21:29:55 +01:00
Teo Mrnjavac
a86f7d9064 Draw SocialWidget, STPD and AccountsWidget the same way. 2013-01-12 19:01:59 +01:00
Jason Herskowitz
3d184f18be Fix some of the double-arrow svgs that were blank for some reason 2013-01-10 14:23:29 -05:00
Jeff Mitchell
287519b8ff Fix spaces -> tabs 2013-01-10 12:01:51 -05:00
Jeff Mitchell
383ab99fed Allow high res mode on Retina Display macs, fixes font rendering (but
not icons)
2013-01-10 12:01:47 -05:00
Leo Franchi
3a54f724e3 For extra safety check if resolver is null 2013-01-10 09:49:40 -05:00
Tomahawk CI
4579a65901 Automatic merge of Transifex translations 2013-01-10 03:49:12 +01:00
Teo Mrnjavac
8861260aca Fix spinner graphic being cut off on certain DPI values. 2013-01-10 03:44:10 +01:00
Christian Muehlhaeuser
692940e402 * Speed up item detection & size-hint calculation for huge collections. 2013-01-09 09:07:32 +01:00
Tomahawk CI
38e59aa0dd Automatic merge of Transifex translations 2013-01-09 08:04:25 +01:00
Christian Muehlhaeuser
ada42696d3 * Try to fix source translation again. 2013-01-09 08:04:25 +01:00
Christian Muehlhaeuser
6f5ae7d91a * Mark AccountFactoryWrapper.ui's as non-translatable. 2013-01-09 08:04:25 +01:00
Tomahawk CI
3e02f4039a Automatic merge of Transifex translations 2013-01-09 07:29:11 +01:00
Christian Muehlhaeuser
91003c88b6 * Updated authors in about dialog. 2013-01-09 07:27:09 +01:00
Christian Muehlhaeuser
65b6f42ef4 * Fixed pt_BR translation. 2013-01-09 07:27:09 +01:00
Christian Muehlhaeuser
fc5087dfce * Fixed english source translation. 2013-01-09 07:27:09 +01:00
Christian Muehlhaeuser
976b996c08 * Merged ChangeLog. 2013-01-09 07:26:47 +01:00
Christian Muehlhaeuser
3520eb37ad * Updated AUTHORS file. 2013-01-09 07:25:06 +01:00
Christian Muehlhaeuser
a56b2e3f45 * Always enfore the vertical scrollbar on Artist & Album pages to get rid of flickery resizing. 2013-01-09 06:18:35 +01:00
Christian Muehlhaeuser
ba68f749c6 * Fixed Artist & Album page layout when the items don't fill up the entire view. 2013-01-09 06:15:06 +01:00
Christian Muehlhaeuser
f0d5afd412 * Support external links in artist biographies. 2013-01-09 05:58:16 +01:00
Christian Muehlhaeuser
41ae0e2104 * Use the same color for drawing charts-position & album-position. 2013-01-09 05:08:17 +01:00
Christian Muehlhaeuser
0d83d693fa * Use an AlbumItemDelegate for Artist page. 2013-01-09 04:37:27 +01:00
Christian Muehlhaeuser
eea2c72490 * Manual signal connect is obsolete. 2013-01-09 04:37:27 +01:00
Christian Muehlhaeuser
ff095087a6 * Temporary fixes until PlaylistChartItemDelegate becomes a proper PlaylistItemDelegate. 2013-01-09 04:37:27 +01:00
Tomahawk CI
d0d27758c5 Automatic merge of Transifex translations 2013-01-09 03:26:14 +01:00
Tomahawk CI
1727a46ad7 Automatic merge of Transifex translations 2013-01-09 03:26:13 +01:00
Tomahawk CI
9b9c507116 Automatic merge of Transifex translations 2013-01-09 03:26:13 +01:00
Tomahawk CI
7c31f81934 Automatic merge of Transifex translations 2013-01-09 03:26:13 +01:00
Christian Muehlhaeuser
1453650d81 * Fixed AudioEngine not correctly emitting stopped(). 2013-01-08 21:46:34 +01:00
Christian Muehlhaeuser
e790467917 * Auto resize tophits view and limit it to 20 tracks. 2013-01-08 21:46:25 +01:00
Dominik Schmidt
4eb8ccb868 Bump copyright year in about dialog 2013-01-08 13:32:29 +01:00
909 changed files with 39596 additions and 79765 deletions

2
.gitignore vendored
View File

@@ -1,4 +1,3 @@
src/accounts/tomahawk
*-build/*
build/*
.directory
@@ -21,4 +20,3 @@ win/
gcc/
tags
.DS_Store
*.autosave

View File

@@ -13,7 +13,6 @@ Contributors include:
* Teo Mrnjavac <teo@kde.org>
* Michael Zanetti <dreadhead@follefuder.org>
* Christopher Reichert <christopher@tomahawk-player.org>
* Uwe L. Korn <uwelk@xhochy.com>
Thanks to:

View File

@@ -11,19 +11,9 @@ SET( TOMAHAWK_ORGANIZATION_DOMAIN "tomahawk-player.org" )
SET( TOMAHAWK_APPLICATION_NAME "Tomahawk" )
SET( TOMAHAWK_DESCRIPTION_SUMMARY "The social media player" )
IF( WIN32 )
SET( TOMAHAWK_SYSTEM "Windows" )
ELSEIF( APPLE )
SET( TOMAHAWK_SYSTEM "OS X" )
ELSEIF( UNIX )
SET( TOMAHAWK_SYSTEM "Linux")
ELSE()
SET( TOMAHAWK_SYSTEM "Uknown Platform, please let the Tomahawk team know, this actually happened" )
ENDIF()
SET( TOMAHAWK_VERSION_MAJOR 0 )
SET( TOMAHAWK_VERSION_MINOR 7 )
SET( TOMAHAWK_VERSION_PATCH 100 )
SET( TOMAHAWK_VERSION_MINOR 6 )
SET( TOMAHAWK_VERSION_PATCH 1 )
#SET( TOMAHAWK_VERSION_RC 0 )
SET( TOMAHAWK_TRANSLATION_LANGUAGES ar bg bn_IN ca cs de en el es fi fr hi_IN hu gl it ja lt pl pt_BR ru sv tr zh_CN zh_TW )
@@ -36,15 +26,10 @@ add_definitions( "-DQT_STRICT_ITERATORS" )
# build options
option(BUILD_GUI "Build Tomahawk with GUI" ON)
option(BUILD_RELEASE "Generate TOMAHAWK_VERSION without GIT info" OFF)
option(BUILD_TESTS "Build Tomahawk with unit tests" ON)
option(BUILD_HATCHET "Build the Hatchet plugin" OFF)
option(WITH_BREAKPAD "Build with breakpad integration" ON)
option(WITH_CRASHREPORTER "Build with CrashReporter" ON)
option(WITH_BINARY_ATTICA "Enable support for downloading binary resolvers automatically" ON)
option(LEGACY_KDE_INTEGRATION "Install tomahawk.protocol file, deprecated since 4.6.0" OFF)
option(WITH_UPOWER "Build with support for UPower events" OFF)
option(WITH_GNOMESHORTCUTHANDLER "Build with shortcut handler for GNOME" OFF)
IF( CMAKE_SYSTEM_PROCESSOR MATCHES "arm" )
message(STATUS "Build of breakpad library disabled on this platform.")
@@ -65,17 +50,15 @@ ENDIF()
# base string used in release and unstable builds
SET( TOMAHAWK_VERSION ${TOMAHAWK_VERSION_MAJOR}.${TOMAHAWK_VERSION_MINOR}.${TOMAHAWK_VERSION_PATCH} )
SET( TOMAHAWK_VERSION_SHORT "${TOMAHAWK_VERSION}" )
IF( TOMAHAWK_VERSION_RC )
SET( TOMAHAWK_VERSION ${TOMAHAWK_VERSION}rc${TOMAHAWK_VERSION_RC} )
ENDIF()
# additional info for non-release builds
IF( NOT BUILD_RELEASE AND EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/.git/" )
INCLUDE( CMakeDateStamp )
SET( TOMAHAWK_VERSION_DATE "${CMAKE_DATESTAMP_YEAR}${CMAKE_DATESTAMP_MONTH}${CMAKE_DATESTAMP_DAY}" )
IF( TOMAHAWK_VERSION_DATE GREATER 0 )
IF( TOMAHAWK_VERSION_DATE GREATER 0)
SET( TOMAHAWK_VERSION ${TOMAHAWK_VERSION}.${TOMAHAWK_VERSION_DATE} )
ENDIF()
@@ -98,111 +81,35 @@ INCLUDE( GNUInstallDirs )
# installer creation
INCLUDE( TomahawkCPack.cmake )
# deps
#deps
INCLUDE( MacroOptionalFindPackage )
INCLUDE( MacroLogFeature )
# headless mode
if( NOT BUILD_GUI )
add_definitions( -DENABLE_HEADLESS )
message( STATUS "Building Tomahawk ${TOMAHAWK_VERSION} in HEADLESS mode ***" )
else()
message( STATUS "Building Tomahawk ${TOMAHAWK_VERSION} full GUI version ***" )
endif()
# Check if we need qtgui:
SET(NEEDED_QT4_COMPONENTS QtCore QtXml QtNetwork )
IF( NOT BUILD_GUI )
ADD_DEFINITIONS( -DENABLE_HEADLESS )
MESSAGE( STATUS "Building Tomahawk ${TOMAHAWK_VERSION} in HEADLESS mode ***" )
ELSE()
MESSAGE( STATUS "Building Tomahawk ${TOMAHAWK_VERSION} full GUI version ***" )
LIST(APPEND NEEDED_QT4_COMPONENTS "QtGui" "QtWebkit" "QtUiTools" )
ENDIF()
IF( BUILD_GUI AND UNIX AND NOT APPLE )
FIND_PACKAGE( X11 )
ENDIF()
if( NOT BUILD_WITH_QT4 )
find_package(Qt5Core QUIET)
if( Qt5Core_DIR )
find_package(Qt5Widgets QUIET)
message(STATUS "Found Qt5! Be aware that Qt5-support is still experimental and not officially supported!")
macro(qt_wrap_ui)
qt5_wrap_ui(${ARGN})
endmacro()
macro(qt_add_resources)
qt5_add_resources(${ARGN})
endmacro()
find_package(Qt5LinguistTools REQUIRED)
macro(qt_add_translation)
qt5_add_translation(${ARGN})
endmacro()
macro(setup_qt)
endmacro()
set(QT_RCC_EXECUTABLE "${Qt5Core_RCC_EXECUTABLE}")
#FIXME: CrashReporter depends on deprecated QHttp
set(WITH_CRASHREPORTER OFF)
set(WITH_BREAKPAD OFF)
endif()
endif()
if( NOT Qt5Core_DIR )
message(STATUS "Could not find Qt5, searching for Qt4 instead...")
set(NEEDED_QT4_COMPONENTS "QtCore" "QtXml" "QtNetwork")
if( BUILD_GUI )
list(APPEND NEEDED_QT4_COMPONENTS "QtGui" "QtWebkit" "QtUiTools" "QtSvg")
endif()
if( BUILD_TESTS )
list(APPEND NEEDED_QT4_COMPONENTS "QtTest")
endif()
macro_optional_find_package(Qt4 4.7.0 COMPONENTS ${NEEDED_QT4_COMPONENTS} )
macro_log_feature(QT4_FOUND "Qt" "A cross-platform application and UI framework" "http://qt.nokia.com" TRUE "" "If you see this, although libqt4-devel is installed, check whether the \n qtwebkit-devel package and whatever contains QtUiTools is installed too")
macro(qt5_use_modules)
endmacro()
macro(qt_wrap_ui)
qt4_wrap_ui(${ARGN})
endmacro()
macro(qt_add_resources)
qt4_add_resources(${ARGN})
endmacro()
macro(qt_add_translation)
qt4_add_translation(${ARGN})
endmacro()
macro(setup_qt)
if( NOT BUILD_GUI )
set(QT_DONT_USE_QTGUI TRUE)
endif()
if( UNIX AND NOT APPLE )
set(QT_USE_QTDBUS TRUE)
endif()
set(QT_USE_QTSQL TRUE)
set(QT_USE_QTNETWORK TRUE)
set(QT_USE_QTXML TRUE)
set(QT_USE_QTWEBKIT TRUE)
set(QT_USE_QTDECLARATIVE TRUE)
include( ${QT_USE_FILE} )
endmacro()
endif()
if( BUILD_GUI AND UNIX AND NOT APPLE )
find_package( X11 )
endif()
IF( UNIX AND NOT APPLE AND QT_QTDBUS_FOUND )
SET( WITH_UPOWER ON )
SET( WITH_GNOMESHORTCUTHANDLER ON )
ENDIF( UNIX AND NOT APPLE AND QT_QTDBUS_FOUND )
macro_optional_find_package(Qt4 4.7.0 COMPONENTS ${NEEDED_QT4_COMPONENTS} )
macro_log_feature(QT4_FOUND "Qt" "A cross-platform application and UI framework" "http://qt.nokia.com" TRUE "" "If you see this, although libqt4-devel is installed, check whether the \n qtwebkit-devel package and whatever contains QtUiTools is installed too")
macro_optional_find_package(Phonon 4.5.0)
macro_log_feature(PHONON_FOUND "Phonon" "The Phonon multimedia library" "http://phonon.kde.org" TRUE "" "")
if( PHONON_FOUND )
if(PHONON_FOUND)
message(STATUS "Phonon found; ensure that phonon-vlc is at least 0.4")
endif()
macro_optional_find_package(Echonest 2.1.0)
macro_log_feature(ECHONEST_FOUND "Echonest" "Qt library for communicating with The Echo Nest" "http://projects.kde.org/libechonest" TRUE "" "libechonest 2.1.0 is needed for dynamic playlists and the infosystem")
macro_optional_find_package(Echonest 2.0.0)
macro_log_feature(ECHONEST_FOUND "Echonest" "Qt library for communicating with The Echo Nest" "http://projects.kde.org/libechonest" TRUE "" "libechonest 2.0.0 is needed for dynamic playlists and the infosystem")
macro_optional_find_package(CLucene 0.9.23)
macro_log_feature(CLucene_FOUND "CLucene" "The open-source, C++ search engine" "http://clucene.sf.net" TRUE "" "CLucene is used for indexing the collection")
@@ -215,11 +122,11 @@ macro_log_feature(TAGLIB_FOUND "TagLib" "Audio Meta-Data Library" "http://develo
include( CheckTagLibFileName )
check_taglib_filename( COMPLEX_TAGLIB_FILENAME )
find_package(Boost REQUIRED)
macro_log_feature(Boost_FOUND "Boost" "Provides free peer-reviewed portable C++ source libraries" "http://www.boost.org" TRUE "" "") #FIXME: give useful explanation
macro_optional_find_package(Boost)
macro_log_feature(Boost_FOUND "Boost" "Provides free peer-reviewed portable C++ source libraries" "http://www.boost.org" TRUE "" "") #FIXME: give useful explaination
macro_optional_find_package(QCA2)
macro_log_feature(QCA2_FOUND "QCA2" "Provides encryption and signing functions necessary for some resolvers and accounts" "http://delta.affinix.com/qca/" TRUE "" "")
macro_log_feature(QCA2_FOUND "QCA2" "Provides encryption and signing functions required for Grooveshark resolver" "http://delta.affinix.com/qca/" TRUE "" "")
macro_optional_find_package(LibAttica 0.4.0)
macro_log_feature(LIBATTICA_FOUND "libattica" "Provides support for installation of resolvers from the Tomahawk website" "https://projects.kde.org/projects/kdesupport/attica" TRUE "" "")
@@ -229,7 +136,7 @@ macro_log_feature(QuaZip_FOUND "QuaZip" "Provides support for extracting downloa
macro_optional_find_package(Jreen 1.0.5)
macro_log_feature(JREEN_FOUND "Jreen" "Qt XMPP Library" "http://qutim.org/jreen / https://github.com/euroelessar/jreen" FALSE "" "Jreen is needed for the Jabber SIP plugin.\n")
if( PC_JREEN_VERSION STREQUAL "1.1.0" )
if(PC_JREEN_VERSION STREQUAL "1.1.0")
message(FATAL_ERROR "Jreen 1.1.0 has a very annoying bug that breaks accepting auth requests in Tomahawk. Please upgrade to 1.1.1 or downgrade to 1.0.5.")
endif()
@@ -237,31 +144,12 @@ macro_optional_find_package(QTweetLib)
macro_log_feature(QTWEETLIB_FOUND "QTweetLib" "Qt Twitter Library" "https://github.com/minimoog/QTweetLib" FALSE "" "QTweetLib is needed for the Twitter SIP plugin.\n")
macro_optional_find_package(LibLastFm 1.0.0)
macro_log_feature(LIBLASTFM_FOUND "liblastfm" "Qt library for the Last.fm webservices" "https://github.com/lastfm/liblastfm" TRUE "" "liblastfm is needed for scrobbling tracks to Last.fm and fetching cover artwork")
macro_log_feature(LIBLASTFM_FOUND "liblastfm" "Qt library for the Last.fm webservices" "https://github.com/eartle/liblastfm" TRUE "" "liblastfm is needed for scrobbling tracks to Last.fm and fetching cover artwork")
macro_optional_find_package(QtKeychain 0.1.0)
macro_log_feature(QTKEYCHAIN_FOUND "QtKeychain" "Provides support for secure credentials storage" "https://github.com/frankosterfeld/qtkeychain" TRUE "" "")
# we need pthreads too
macro_optional_find_package(Threads)
macro_log_feature(THREADS_FOUND "Threads" "Threading Library" "" TRUE "" "Platform specific library for threading")
### QtSparkle
if( WIN32 )
IF( WIN32 )
macro_optional_find_package(QtSparkle)
macro_log_feature(QTSPARKLE_FOUND "qtsparkle" "Library for creating auto updaters written in Qt" "https://github.com/davidsansome/qtsparkle" FALSE "" "")
endif( WIN32 )
#TODO: support external qxt
set(QXTWEB_FOUND TRUE)
set(QXTWEB_LIBRARIES qxtweb-standalone)
set(QXTWEB_INCLUDE_DIRS ${THIRDPARTY_DIR}/qxt/qxtweb-standalone/web ${THIRDPARTY_DIR}/qxt/qxtweb-standalone/network ${THIRDPARTY_DIR}/qxt/qxtweb-standalone/core ${CMAKE_CURRENT_BINARY_DIR})
### libportfwd
set(LIBPORTFWD_INCLUDE_DIR ${THIRDPARTY_DIR}/libportfwd/include)
set(LIBPORTFWD_LIBRARY tomahawk_portfwd)
set(LIBPORTFWD_LIBRARIES ${LIBPORTFWD_LIBRARY})
add_subdirectory(${THIRDPARTY_DIR}/libportfwd)
ENDIF( WIN32 )
#### submodules start
# automatically init submodules here, don't delete this code we may add submodules again
@@ -277,6 +165,16 @@ add_subdirectory(${THIRDPARTY_DIR}/libportfwd)
#### submodules end
### libportfwd
SET( LIBPORTFWD_INCLUDE_DIR ${THIRDPARTY_DIR}/libportfwd/include )
SET( LIBPORTFWD_LIBRARY tomahawk_portfwd )
SET( LIBPORTFWD_LIBRARIES ${LIBPORTFWD_LIBRARY} )
ADD_SUBDIRECTORY( ${THIRDPARTY_DIR}/libportfwd )
# we need pthreads too
macro_optional_find_package(Threads)
macro_log_feature(THREADS_FOUND "Threads" "Threading Library" "" TRUE "" "Platform specific library for threading")
macro_optional_find_package(KDE4)
macro_optional_find_package(KDE4Installed)
@@ -284,7 +182,7 @@ macro_optional_find_package(KDE4Installed)
# for future kde integration
# macro_optional_find_package(KDE4)
IF( KDE4_FOUND )
IF(KDE4_FOUND)
IF( CMAKE_C_FLAGS )
# KDE4 adds and removes some compiler flags that we don't like
# (only for gcc not for clang e.g.)
@@ -320,51 +218,5 @@ SET( TOMAHAWK_LIBRARIES tomahawklib )
ADD_SUBDIRECTORY( thirdparty )
ADD_SUBDIRECTORY( src )
ADD_SUBDIRECTORY( src/libtomahawk )
ADD_SUBDIRECTORY( admin )
if( BUILD_TESTS )
enable_testing()
add_subdirectory( tests )
endif()
# Add all targets to the build-tree export set
set(CMAKE_INSTALL_CMAKEDIR "${CMAKE_INSTALL_LIBDIR}/cmake/Tomahawk" CACHE PATH "Installation directory for CMake files")
set(CMAKE_INSTALL_FULL_CMAKEDIR "${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_CMAKEDIR}")
export(TARGETS tomahawklib
FILE "${PROJECT_BINARY_DIR}/TomahawkLibraryDepends.cmake")
# Export the package for use from the build-tree
# (this registers the build-tree with a global CMake-registry)
export(PACKAGE Tomahawk)
# Create a TomahawkBuildTreeSettings.cmake file for the use from the build tree
configure_file(TomahawkBuildTreeSettings.cmake.in "${PROJECT_BINARY_DIR}/TomahawkBuildTreeSettings.cmake" @ONLY)
# Create the TomahawkConfig.cmake and TomahawkConfigVersion files
file(RELATIVE_PATH CONF_REL_INCLUDE_DIR "${CMAKE_INSTALL_FULL_CMAKEDIR}" "${CMAKE_INSTALL_FULL_INCLUDEDIR}")
configure_file(TomahawkConfig.cmake.in "${PROJECT_BINARY_DIR}/TomahawkConfig.cmake" @ONLY)
configure_file(TomahawkConfigVersion.cmake.in "${PROJECT_BINARY_DIR}/TomahawkConfigVersion.cmake" @ONLY)
file(COPY TomahawkUse.cmake DESTINATION "${PROJECT_BINARY_DIR}")
file(COPY TomahawkAddPlugin.cmake DESTINATION "${PROJECT_BINARY_DIR}")
# Install the cmake files
install(
FILES
"${PROJECT_BINARY_DIR}/TomahawkConfig.cmake"
"${PROJECT_BINARY_DIR}/TomahawkConfigVersion.cmake"
"${PROJECT_BINARY_DIR}/TomahawkUse.cmake"
"${PROJECT_BINARY_DIR}/TomahawkAddPlugin.cmake"
DESTINATION
"${CMAKE_INSTALL_CMAKEDIR}"
)
# Install the export set for use with the install-tree
install(
EXPORT
TomahawkLibraryDepends
DESTINATION
"${CMAKE_INSTALL_CMAKEDIR}"
)

View File

@@ -38,10 +38,10 @@ MACRO(CDR var junk)
ENDMACRO(CDR)
macro(tomahawk_add_plugin)
macro(add_tomahawk_plugin)
parse_arguments(PLUGIN
"SOURCES;UI;LINK_LIBRARIES;TYPE;EXPORT_MACRO;COMPILE_DEFINITIONS"
"NO_INSTALL;SHARED_LIB"
"NO_INSTALL"
${ARGN}
)
car(PLUGIN_NAME ${PLUGIN_DEFAULT_ARGS})
@@ -59,25 +59,18 @@ macro(tomahawk_add_plugin)
# qt stuff
include_directories(${CMAKE_CURRENT_BINARY_DIR})
if(PLUGIN_UI)
qt_wrap_ui(PLUGIN_UI_SOURCES ${PLUGIN_UI})
qt4_wrap_ui(PLUGIN_UI_SOURCES ${PLUGIN_UI})
list(APPEND PLUGIN_SOURCES ${PLUGIN_UI_SOURCES})
endif()
if(EXISTS "${CMAKE_CURRENT_LIST_DIR}/resources.qrc")
qt_add_resources(PLUGIN_RC_SOURCES "resources.qrc")
qt4_add_resources(PLUGIN_RC_SOURCES "resources.qrc")
list(APPEND PLUGIN_SOURCES ${PLUGIN_RC_SOURCES})
unset(PLUGIN_RC_SOURCES)
endif()
# add target
if(NOT ${PLUGIN_SHARED_LIB})
add_library(${target} MODULE ${PLUGIN_SOURCES})
else()
add_library(${target} SHARED ${PLUGIN_SOURCES})
endif()
# add qt modules
qt5_use_modules(${target} Core Network Widgets Sql Xml DBus)
add_library(${target} MODULE ${PLUGIN_SOURCES})
# definitions - can this be moved into set_target_properties below?
add_definitions(${QT_DEFINITIONS})
@@ -93,7 +86,7 @@ macro(tomahawk_add_plugin)
endif()
# add link targets
target_link_libraries(${target} ${TOMAHAWK_LIBRARIES})
target_link_libraries(${target} tomahawklib)
if(PLUGIN_LINK_LIBRARIES)
target_link_libraries(${target} ${PLUGIN_LINK_LIBRARIES})
endif()

View File

@@ -7,6 +7,11 @@
# (c) Dominik Schmidt <dev@dominik-schmidt.de>
#
# Dependencies
if(NOT QT4_FOUND)
find_package(Qt4 REQUIRED)
endif()
# Include dir
find_path(LIBLASTFM_INCLUDE_DIR
# Track.h doesn't exist in liblastfm-0.3.1, was called Track back then

View File

@@ -6,24 +6,45 @@
# QJSON_INCLUDE_DIR - the include path of the qjson library
#
find_library (QJSON_LIBRARIES
if (QJSON_INCLUDE_DIR AND QJSON_LIBRARIES)
# Already in cache
set (QJSON_FOUND TRUE)
else (QJSON_INCLUDE_DIR AND QJSON_LIBRARIES)
if (NOT WIN32)
# use pkg-config to get the values of QJSON_INCLUDE_DIRS
# and QJSON_LIBRARY_DIRS to add as hints to the find commands.
include (FindPkgConfig)
pkg_check_modules (QJSON REQUIRED QJson>=0.5)
endif (NOT WIN32)
find_library (QJSON_LIBRARIES
NAMES
qjson
PATHS
${QJSON_LIBRARY_DIRS}
${LIB_INSTALL_DIR}
${KDE4_LIB_DIR}
)
)
find_path (QJSON_INCLUDE_DIR
find_path (QJSON_INCLUDE_DIR
NAMES
qjson/parser.h
parser.h
PATH_SUFFIXES
qjson
PATHS
${QJSON_INCLUDE_DIRS}
${INCLUDE_INSTALL_DIR}
${KDE4_INCLUDE_DIR}
)
)
include(FindPackageHandleStandardArgs)
find_package_handle_standard_args(QJSON DEFAULT_MSG QJSON_LIBRARIES QJSON_INCLUDE_DIR)
include(FindPackageHandleStandardArgs)
find_package_handle_standard_args(QJSON DEFAULT_MSG QJSON_LIBRARIES QJSON_INCLUDE_DIR)
if ( UNIX AND NOT APPLE )
set ( QJSON_LIBRARIES "${QJSON_LIBRARIES} ${QJSON_LDFLAGS}" CACHE INTERNAL "")
endif ()
endif (QJSON_INCLUDE_DIR AND QJSON_LIBRARIES)

View File

@@ -7,6 +7,9 @@
# (c) Dominik Schmidt <dev@dominik-schmidt.de>
#
# Dependencies
find_package(Qt4 REQUIRED)
# Include dir
find_path(QTWEETLIB_INCLUDE_DIR
NAMES QTweetLib/qtweetlib_global.h

View File

@@ -1,10 +1,11 @@
find_path(QuaZip_INCLUDE_DIR quazip/quazip.h ${CMAKE_INSTALL_PREFIX}/include/quazip ${CMAKE_INSTALL_PREFIX}/include /usr/include/quazip /usr/local/include/quazip ${QT_INCLUDE_DIR}/quazip ${QT_INCLUDE_DIR} ${QUAZIP_DIR}/include/quazip ${QUAZIP_DIR}/quazip ${QUAZIP_DIR}/include)
find_package(Qt4)
find_path(QuaZip_INCLUDE_DIR quazip.h ${CMAKE_INSTALL_PREFIX}/include/quazip ${CMAKE_INSTALL_PREFIX}/include /usr/include/quazip /usr/local/include/quazip ${QT_INCLUDE_DIR}/quazip ${QT_INCLUDE_DIR} ${QUAZIP_DIR}/include/quazip ${QUAZIP_DIR}/quazip ${QUAZIP_DIR}/include)
find_library(QuaZip_LIBRARY NAMES quazip PATHS ${CMAKE_INSTALL_PREFIX}/lib64 ${CMAKE_INSTALL_PREFIX}/lib ${CMAKE_INSTALL_PREFIX}/Library/Frameworks ${QUAZIP_DIR}/lib64 ${QUAZIP_DIR}/lib ${QUAZIP_DIR}/quazip ${QUAZIP_DIR})
include(FindPackageHandleStandardArgs)
find_package_handle_standard_args(quazip DEFAULT_MSG QuaZip_LIBRARY QuaZip_INCLUDE_DIR)
set(QuaZip_LIBRARIES ${QuaZip_LIBRARY})
mark_as_advanced(QuaZip_LIBRARY QuaZip_INCLUDE_DIR)
if(QuaZip_LIBRARY AND QuaZip_INCLUDE_DIR)
set(QuaZip_FOUND TRUE)
if(QuaZip_LIBRARY AND QuaZip_INCLUDE_DIR)
set(QuaZip_FOUND TRUE)
endif()

View File

@@ -274,8 +274,11 @@ Section "Tomahawk Player" SEC_TOMAHAWK_PLAYER
File "${INSTALL_PATH}\bin\tomahawk.exe"
File "${INSTALL_PATH}\bin\tomahawk_crash_reporter.exe"
File "${INSTALL_PATH}\bin\libtomahawk_breakpad.dll"
File "${INSTALL_PATH}\bin\libtomahawk.dll"
File "${INSTALL_PATH}\bin\libqxtweb-standalone.dll"
File "${INSTALL_PATH}\bin\libtomahawk_portfwd.dll"
File "${INSTALL_PATH}\bin\libtomahawklib.dll"
; plugins
File "${INSTALL_PATH}\lib\libtomahawk_*_*.dll"
!endif
@@ -284,8 +287,11 @@ Section "Tomahawk Player" SEC_TOMAHAWK_PLAYER
File "${BUILD_PATH}\tomahawk.exe"
File "${BUILD_PATH}\tomahawk_crash_reporter.exe"
File "${BUILD_PATH}\libtomahawk_breakpad.dll"
File "${BUILD_PATH}\libtomahawk.dll"
File "${BUILD_PATH}\libtomahawklib.dll"
File "${BUILD_PATH}\libqxtweb-standalone.dll"
File "${BUILD_PATH}\libtomahawk_portfwd.dll"
; plugins
File "${BUILD_PATH}\libtomahawk_*_*.dll"
!endif
@@ -348,7 +354,6 @@ Section "Tomahawk Player" SEC_TOMAHAWK_PLAYER
File "${MING_BIN}\liblastfm.dll"
File "${MING_BIN}\libQTweetLib.dll"
File "${MING_BIN}\libquazip.dll"
File "${MING_BIN}\libqtkeychain.dll"
; Jabber
File "${MING_BIN}\libjreen.dll"
@@ -359,8 +364,8 @@ Section "Tomahawk Player" SEC_TOMAHAWK_PLAYER
File "${MING_BIN}\libssl-8.dll"
File "${MING_BIN}\libcrypto-8.dll"
File "${MING_BIN}\libclucene-core.dll"
File "${MING_BIN}\libclucene-shared.dll"
File "${MING_LIB}\libclucene-core.dll"
File "${MING_LIB}\libclucene-shared.dll"
File "${MING_BIN}\libqtsparkle.dll"
File "${MING_BIN}\libattica.dll"

View File

@@ -1,36 +1,3 @@
Version 0.8.0:
* Playback Queue now saves its state across sessions.
* Added "Inbox" feature, showing incoming song recommendations. Dropping
a track on a user in the sidebar sends a recommendation to them.
* You will now be asked whether you want to trust invalid SSL certificates.
* Improved connecting between Tomahawk peers and support having multiple IPs
(including IPv6)
* Added Network Activity showing you the most played tracks of your friends.
Version 0.7.1:
* Heavily reduced memory footprint during and after indexing the database.
Version 0.7.0:
* JavaScript Resolvers can now expose collections.
* Introduced bundle system for JavaScript Resolvers, called "axes".
* Fixed playback-loop caused by duplicate tracks in a playlist.
* Improved peer handling and removed connection support through Twitter.
* Taking an account offline now also disconnects associated peers.
* Improved spotify protocol handling.
* Added "Append to Playlist" context menu item.
* User-friendlier collection handling: added info-buttons for artists and
albums. Double-clicking an item expands it now.
* Charts only load on-demand now.
* Fixed Diagnostics information not correctly updating.
* Fixed issue with hidden sidebar and panels.
* Fixed issues with some color schemes.
* Fixed playing files with special characters in the filename.
* Improved stability.
* Added translations for Catalan, Czech, Galician, Greek, Italian and
Chinese.
* (Windows) Smoother and more responsive audio playback.
* (Linux) Fixed grid issues with GTK-styles.
Version 0.6.1:
* Improved stability.
* Improved UPnP detection and port-forwarding.
@@ -67,7 +34,6 @@ Version 0.6.0:
* Added iTunes as available source for New Releases.
* Updates and additions to translations including: Japanese, Bulgarian,
Finnish, Russian, Arabic, Chinese, Swedish, Czech and more.
* (Windows) Added thumb buttons to Windows 7's taskbar.
* (Linux) Allow disabling of playback notifications.
Version 0.5.5:

View File

@@ -44,11 +44,10 @@ Required dependencies:
* TagLib 1.6.2 - http://developer.kde.org/~wheeler/taglib.html
* Boost 1.3 - http://www.boost.org/
* CLucene 0.9.23 (0.9.21 will fail) - http://clucene.sourceforge.net/download.shtml
* libechonest 2.0.3 - http://projects.kde.org/projects/playground/libs/libechonest/
* libechonest 2.0.0 - http://projects.kde.org/projects/playground/libs/libechonest/
* Attica 0.4.0 - ftp://ftp.kde.org/pub/kde/stable/attica/
* QuaZip 0.4.3 - http://quazip.sourceforge.net/
* liblastfm 1.0.1 - https://github.com/lastfm/liblastfm/
* QtKeychain 0.1 - https://github.com/frankosterfeld/qtkeychain/
The following dependencies are optional, but recommended:

View File

@@ -1,4 +0,0 @@
set(TOMAHAWK_INCLUDE_DIRS
"@PROJECT_SOURCE_DIR@/src/libtomahawk"
"@PROJECT_BINARY_DIR@/src/libtomahawk"
)

View File

@@ -1,21 +0,0 @@
# - Config file for the Tomahawk package
# It defines the following variables
# TOMAHAWK_INCLUDE_DIRS - include directories for Tomahawk
# TOMAHAWK_LIBRARIES - libraries to link against
# TOMAHAWK_EXECUTABLE - the bar executable
# Compute paths
get_filename_component(TOMAHAWK_CMAKE_DIR "${CMAKE_CURRENT_LIST_FILE}" PATH)
if(EXISTS "${TOMAHAWK_CMAKE_DIR}/CMakeCache.txt")
# In build tree
include("${TOMAHAWK_CMAKE_DIR}/TomahawkBuildTreeSettings.cmake")
else()
set(TOMAHAWK_INCLUDE_DIRS "${TOMAHAWK_CMAKE_DIR}/@CONF_REL_INCLUDE_DIR@/libtomahawk")
endif()
# Our library dependencies (contains definitions for IMPORTED targets)
include("${TOMAHAWK_CMAKE_DIR}/TomahawkLibraryDepends.cmake")
# These are IMPORTED targets created by TomahawkLibraryDepends.cmake
set(TOMAHAWK_LIBRARIES tomahawklib)
set(TOMAHAWK_USE_FILE "${TOMAHAWK_CMAKE_DIR}/TomahawkUse.cmake")

View File

@@ -1,12 +0,0 @@
set(PACKAGE_VERSION "@TOMAHAWK_VERSION@")
# Check whether the requested PACKAGE_FIND_VERSION is compatible
if("${PACKAGE_VERSION}" VERSION_LESS "${PACKAGE_FIND_VERSION}")
set(PACKAGE_VERSION_COMPATIBLE FALSE)
else()
set(PACKAGE_VERSION_COMPATIBLE TRUE)
if ("${PACKAGE_VERSION}" VERSION_EQUAL "${PACKAGE_FIND_VERSION}")
set(PACKAGE_VERSION_EXACT TRUE)
endif()
endif()

View File

@@ -1,34 +0,0 @@
#FIXME: this only handles qt4 and duplicates top level cmakelists: how can we reduce code duplication?
find_package(Qt4 COMPONENTS QtNetwork QtCore QtGui QtSql QtDeclarative REQUIRED)
include( ${QT_USE_FILE} )
set(NEEDED_QT4_COMPONENTS "QtCore" "QtXml" "QtNetwork")
if(BUILD_GUI OR NOT DEFINED BUILD_GUI)
list(APPEND NEEDED_QT4_COMPONENTS "QtGui" "QtWebkit" "QtUiTools" "QtSvg" "QtDeclarative")
endif()
find_package(Qt4 4.7.0 COMPONENTS ${NEEDED_QT4_COMPONENTS})
include( ${QT_USE_FILE} )
macro(qt5_use_modules)
endmacro()
macro(qt_wrap_ui)
qt4_wrap_ui(${ARGN})
endmacro()
macro(qt_add_resources)
qt4_add_resources(${ARGN})
endmacro()
macro(qt_add_translation)
qt4_add_translation(${ARGN})
endmacro()
if(NOT TOMAHAWK_CMAKE_DIR)
set(TOMAHAWK_CMAKE_DIR ${CMAKE_CURRENT_LIST_DIR})
endif()
include( "${TOMAHAWK_CMAKE_DIR}/TomahawkAddPlugin.cmake" )

View File

@@ -5,15 +5,11 @@ Name=Tomahawk
GenericName=Music Player
GenericName[de]=Musik Player
GenericName[fi]=Musiikkisoitin
GenericName[pl]=Odtwarzacz Muzyki
GenericName[se]=Musikspelare
TryExec=tomahawk
Exec=tomahawk %u
Comment=Tomahawk Social Music Player
Comment=Tomahawk - Social Music Player
Comment[fi]=Tomahawk sosiaalinen musiikkisoitin
Comment[pl]=Tomahawk Społecznościowy Odtwarzacz Muzyki
Comment[se]=Tomahawk — Den Sociala Musikspelaren
Icon=tomahawk
Terminal=false
Categories=Qt;AudioVideo;Audio;Player;
MimeType=x-scheme-handler/tomahawk;x-scheme-handler/spotify;
MimeType=x-scheme-handler/tomahawk;

View File

@@ -75,9 +75,7 @@ rm -rvf \
stream_filter/ \
**/libtheora_plugin* \
**/liblibbluray_plugin* \
**/libdtv_plugin* \
**/*.dll.a \
**/*.la
**/libdtv_plugin*
echo "Downloaded and stripped VLC"

Binary file not shown.

View File

@@ -1,92 +0,0 @@
Copyright (c) 2009-2011 by Accademia di Belle Arti di Urbino and students of MA course of Visual design. Some rights reserved.
This Font Software is licensed under the SIL Open Font License, Version 1.1.
This license is copied below, and is also available with a FAQ at:
http://scripts.sil.org/OFL
-----------------------------------------------------------
SIL OPEN FONT LICENSE Version 1.1 - 26 February 2007
-----------------------------------------------------------
PREAMBLE
The goals of the Open Font License (OFL) are to stimulate worldwide
development of collaborative font projects, to support the font creation
efforts of academic and linguistic communities, and to provide a free and
open framework in which fonts may be shared and improved in partnership
with others.
The OFL allows the licensed fonts to be used, studied, modified and
redistributed freely as long as they are not sold by themselves. The
fonts, including any derivative works, can be bundled, embedded,
redistributed and/or sold with any software provided that any reserved
names are not used by derivative works. The fonts and derivatives,
however, cannot be released under any other type of license. The
requirement for fonts to remain under this license does not apply
to any document created using the fonts or their derivatives.
DEFINITIONS
"Font Software" refers to the set of files released by the Copyright
Holder(s) under this license and clearly marked as such. This may
include source files, build scripts and documentation.
"Reserved Font Name" refers to any names specified as such after the
copyright statement(s).
"Original Version" refers to the collection of Font Software components as
distributed by the Copyright Holder(s).
"Modified Version" refers to any derivative made by adding to, deleting,
or substituting -- in part or in whole -- any of the components of the
Original Version, by changing formats or by porting the Font Software to a
new environment.
"Author" refers to any designer, engineer, programmer, technical
writer or other person who contributed to the Font Software.
PERMISSION & CONDITIONS
Permission is hereby granted, free of charge, to any person obtaining
a copy of the Font Software, to use, study, copy, merge, embed, modify,
redistribute, and sell modified and unmodified copies of the Font
Software, subject to the following conditions:
1) Neither the Font Software nor any of its individual components,
in Original or Modified Versions, may be sold by itself.
2) Original or Modified Versions of the Font Software may be bundled,
redistributed and/or sold with any software, provided that each copy
contains the above copyright notice and this license. These can be
included either as stand-alone text files, human-readable headers or
in the appropriate machine-readable metadata fields within text or
binary files as long as those fields can be easily viewed by the user.
3) No Modified Version of the Font Software may use the Reserved Font
Name(s) unless explicit written permission is granted by the corresponding
Copyright Holder. This restriction only applies to the primary font name as
presented to the users.
4) The name(s) of the Copyright Holder(s) or the Author(s) of the Font
Software shall not be used to promote, endorse or advertise any
Modified Version, except to acknowledge the contribution(s) of the
Copyright Holder(s) and the Author(s) or with their explicit written
permission.
5) The Font Software, modified or unmodified, in part or in whole,
must be distributed entirely under this license, and must not be
distributed under any other license. The requirement for fonts to
remain under this license does not apply to any document created
using the Font Software.
TERMINATION
This license becomes null and void if any of the above conditions are
not met.
DISCLAIMER
THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT
OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL THE
COPYRIGHT HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL
DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM
OTHER DEALINGS IN THE FONT SOFTWARE.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Before

Width:  |  Height:  |  Size: 21 KiB

After

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.0 KiB

After

Width:  |  Height:  |  Size: 822 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 44 KiB

After

Width:  |  Height:  |  Size: 28 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.7 KiB

After

Width:  |  Height:  |  Size: 1.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 93 KiB

After

Width:  |  Height:  |  Size: 77 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 10 KiB

After

Width:  |  Height:  |  Size: 4.3 KiB

View File

@@ -1,23 +1,101 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg width="3100px" height="3100px" viewBox="0 0 3100 3100" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:sketch="http://www.bohemiancoding.com/sketch/ns">
<title>tomahawk-icon</title>
<description>Created with Sketch (http://www.bohemiancoding.com/sketch)</description>
<defs>
<filter x="-20%" y="-20%" width="140%" height="140%" filterUnits="objectBoundingBox" id="filter-1">
<feOffset dx="0" dy="2" in="SourceAlpha" result="shadowOffsetOuter1"></feOffset>
<feGaussianBlur stdDeviation="2" in="shadowOffsetOuter1" result="shadowBlurOuter1"></feGaussianBlur>
<feColorMatrix values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.7 0" in="shadowBlurOuter1" type="matrix" result="shadowMatrixOuter1"></feColorMatrix>
<feMerge>
<feMergeNode in="shadowMatrixOuter1"></feMergeNode>
<feMergeNode in="SourceGraphic"></feMergeNode>
</feMerge>
</filter>
</defs>
<g id="Page 1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd" sketch:type="MSPage">
<circle d="M1546,3051 C2374.42717,3051 3046,2379.42717 3046,1551 C3046,722.572834 2374.42717,51 1546,51 C717.572834,51 46,722.572834 46,1551 C46,2379.42717 717.572834,3051 1546,3051 Z M1546,3051" id="Oval 1" stroke="#979797" fill="#FFFFFF" sketch:type="MSShapeGroup" cx="1546" cy="1551" r="1500"></circle>
<g id="Group" sketch:type="MSLayerGroup" transform="translate(46.000000, 48.000000)">
<path d="M1500.00026,326.562245 C852.333832,326.562245 325.623384,853.409757 325.623384,1501.14467 C325.623384,2148.84339 852.297589,2675.87184 1500.00026,2675.87184 C1592.85982,2675.87184 1682.97119,2664.36909 1769.71967,2643.75096 L1769.71967,1630.53256 L961.97175,2202.26973 C954.812018,2207.15297 945.916593,2209.9744 937.346612,2209.9744 C930.693123,2209.9744 923.894994,2208.56369 917.783909,2205.05499 C903.464446,2197.74821 894.56902,2183.06231 894.56902,2167.32742 L894.56902,827.040286 C894.56902,811.305396 903.464445,796.474809 917.783909,788.951001 C932.103373,781.969774 949.026377,783.199628 961.97175,792.27884 L1769.71967,1364.0522 L1769.71967,784.284802 L1804.10807,784.284802 L2127.56161,784.284802 L2127.56161,2492.84071 C2455.75216,2284.34437 2674.34095,1918.13743 2674.34095,1501.10857 C2674.34087,853.446289 2147.48558,326.562245 1500.00026,326.562245 L1500.00026,326.562245 L1500.00026,326.562245" id="Shape" sketch:type="MSShapeGroup"></path>
<path d="M1500.00026,0.904613118 C672.870406,0.904613118 0.0726019231,673.923876 0.0726019231,1501.14494 C0.0726019231,2328.4023 672.870475,3001.38527 1500.00026,3001.38527 C2326.94928,3001.38527 2999.78337,2328.40223 2999.78337,1501.14494 C2999.74681,673.923394 2326.94887,0.904613118 1500.00026,0.904613118 L1500.00026,0.904613118 L1500.00026,0.904613118 M2127.56146,2492.87708 L2127.56146,784.321176 L1804.10793,784.321176 L1769.71952,784.321176 L1769.71952,1364.08857 L961.971604,792.315213 C949.06239,783.236001 932.103228,782.006148 917.783763,788.987375 C903.464299,796.511184 894.568874,811.341769 894.568874,827.076659 L894.568874,2167.3638 C894.568874,2183.09869 903.464299,2197.78459 917.783763,2205.09136 C923.894847,2208.60006 930.692976,2210.01078 937.346465,2210.01078 C945.880287,2210.01078 954.775711,2207.18935 961.971604,2202.30611 L1769.71952,1630.56893 L1769.71952,2643.78733 C1682.97105,2664.36929 1592.85968,2675.90821 1500.00012,2675.90821 C852.333686,2675.90821 325.623237,2148.87983 325.623237,1501.18104 C325.623237,853.482317 852.297442,326.598618 1500.00012,326.598618 C2147.48578,326.598618 2674.377,853.44613 2674.377,1501.18104 C2674.34087,1918.17376 2455.75215,2284.38047 2127.56146,2492.87708 L2072.56159,399.051282" id="Shape" fill="#E63E30" filter="url(#filter-1)" sketch:type="MSShapeGroup"></path>
</g>
</g>
</svg>
<?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 16.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
width="606.248px" height="595.5px" viewBox="0 0 606.248 595.5" enable-background="new 0 0 606.248 595.5" xml:space="preserve">
<g id="Layer_3">
<rect x="-20.376" y="-15.75" stroke="#E63E30" stroke-miterlimit="10" width="688" height="700"/>
</g>
<g id="Layer_2">
<path id="path9_1_" inkscape:connector-curvature="0" fill="none" stroke="#E63E30" stroke-miterlimit="10" d="M429.977,493.576
V154.483h-65.371h-6.949v115.065L194.409,156.07c-2.608-1.802-6.036-2.046-8.93-0.661c-2.895,1.493-4.692,4.437-4.692,7.56v266.003
c0,3.123,1.798,6.037,4.692,7.488c1.234,0.695,2.608,0.977,3.953,0.977c1.725,0,3.522-0.561,4.977-1.529l163.248-113.472v201.091
c-17.532,4.084-35.744,6.375-54.511,6.375c-130.896,0-237.345-104.598-237.345-233.146c0-128.547,106.442-233.117,237.345-233.117
c130.858,0,237.344,104.562,237.344,233.116C540.482,379.515,496.305,452.197,429.977,493.576L429.977,493.576z"/>
<ellipse fill="#FFFFFF" stroke="#E63E30" stroke-miterlimit="10" cx="318.624" cy="295.75" rx="286" ry="270.5"/>
</g>
<g id="Layer_1" sodipodi:docname="tomahawk-icon.svg" inkscape:version="0.48.2 r9819" 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:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape">
<sodipodi:namedview fit-margin-bottom="0" fit-margin-right="0" inkscape:snap-page="false" inkscape:current-layer="Layer_1" inkscape:window-maximized="0" inkscape:window-y="0" inkscape:window-x="0" inkscape:window-height="794" inkscape:window-width="1440" inkscape:pageshadow="2" inkscape:pageopacity="0" fit-margin-left="0" fit-margin-top="0" inkscape:cy="336.94553" inkscape:cx="431.12548" inkscape:zoom="1" showgrid="false" guidetolerance="10" gridtolerance="10" objecttolerance="10" bordercolor="#666666" pagecolor="#ffffff" borderopacity="1" id="namedview11">
<sodipodi:guide orientation="0,841.89001" position="-3.5728101e-05,-1.501866e-05" id="guide2994"></sodipodi:guide>
<sodipodi:guide orientation="-595.28003,0" position="841.88997,-1.501866e-05" id="guide2996"></sodipodi:guide>
<sodipodi:guide orientation="0,-841.89001" position="841.88997,595.28001" id="guide2998"></sodipodi:guide>
<sodipodi:guide orientation="595.28003,0" position="-3.5728101e-05,595.28001" id="guide3000"></sodipodi:guide>
</sodipodi:namedview>
<g id="g3_1_" transform="matrix(7.3080643,0,0,7.1790074,-2773.1692,-1839.0104)">
<g>
<g enable-background="new ">
<g>
<polygon fill="#4C1410" points="430.355,293.516 429.444,293.909 429.416,279.061 430.323,277.603 "/>
</g>
<g>
<polygon fill="#4C1410" points="430.428,328.913 429.507,326.921 429.457,300.757 430.371,300.856 "/>
</g>
<g enable-background="new ">
<defs>
<path id="SVGID_1_" enable-background="new " d="M440.229,324.595l-1.574-1.692c2.083-1.367,3.987-2.983,5.669-4.803
c1.678-1.816,3.136-3.836,4.332-6.018c1.194-2.177,2.127-4.516,2.758-6.973c0.63-2.454,0.959-5.028,0.945-7.679
c-0.022-4.114-0.867-8.035-2.377-11.605c-1.51-3.571-3.686-6.797-6.372-9.519c-2.69-2.726-5.895-4.949-9.458-6.505
c-3.573-1.561-7.51-2.454-11.652-2.511c-4.16-0.058-8.14,0.731-11.777,2.212c-3.65,1.486-6.953,3.668-9.739,6.386
c-2.795,2.728-5.069,5.995-6.649,9.637c-1.584,3.651-2.47,7.677-2.486,11.907c-0.016,4.236,0.842,8.276,2.405,11.95
c1.563,3.673,3.829,6.974,6.627,9.736c2.794,2.757,6.114,4.973,9.791,6.483c3.666,1.506,7.683,2.31,11.88,2.251
c0.601-0.008,1.197-0.036,1.787-0.08c0.59-0.045,1.176-0.107,1.756-0.186c0.58-0.079,1.154-0.174,1.723-0.286
c0.569-0.111,1.132-0.238,1.689-0.379l0.921,1.992c-0.597,0.152-1.201,0.288-1.81,0.408c-0.61,0.12-1.226,0.223-1.847,0.308
c-0.622,0.085-1.249,0.153-1.883,0.201c-0.634,0.049-1.272,0.078-1.917,0.088c-4.502,0.068-8.811-0.79-12.745-2.404
c-3.946-1.618-7.511-3.994-10.51-6.951c-3.004-2.963-5.437-6.506-7.115-10.448c-1.678-3.944-2.599-8.28-2.58-12.827
c0.018-4.54,0.971-8.86,2.673-12.777c1.698-3.907,4.139-7.409,7.141-10.333c2.99-2.913,6.534-5.249,10.45-6.838
c3.9-1.583,8.167-2.424,12.626-2.357c4.439,0.066,8.656,1.027,12.483,2.703c3.815,1.671,7.247,4.055,10.127,6.976
c2.875,2.916,5.205,6.373,6.822,10.198c1.616,3.824,2.522,8.023,2.548,12.43c0.016,2.84-0.335,5.597-1.008,8.226
c-0.674,2.633-1.672,5.139-2.949,7.472c-1.279,2.338-2.839,4.504-4.636,6.452C444.498,321.393,442.46,323.127,440.229,324.595
z"/>
</defs>
<clipPath id="SVGID_2_">
<use xlink:href="#SVGID_1_" overflow="visible"/>
</clipPath>
<g clip-path="url(#SVGID_2_)" enable-background="new ">
<path fill="#4D1510" d="M440.229,324.595l-1.574-1.692c2.083-1.367,3.987-2.983,5.669-4.803
c1.678-1.816,3.136-3.836,4.332-6.018c1.194-2.177,2.127-4.516,2.758-6.973c0.63-2.454,0.959-5.028,0.945-7.679
c-0.022-4.114-0.867-8.035-2.377-11.605c-1.51-3.571-3.686-6.797-6.372-9.519c-2.69-2.726-5.895-4.949-9.458-6.505
c-3.573-1.561-7.51-2.454-11.652-2.511c-4.16-0.058-8.14,0.731-11.777,2.212c-3.65,1.486-6.953,3.668-9.739,6.386
c-2.795,2.728-5.069,5.995-6.649,9.637c-1.584,3.651-2.47,7.677-2.486,11.907c-0.016,4.236,0.842,8.276,2.405,11.95
c1.563,3.673,3.829,6.974,6.627,9.736c2.794,2.757,6.114,4.973,9.791,6.483c3.666,1.506,7.683,2.31,11.88,2.251
c0.601-0.008,1.197-0.036,1.787-0.08c0.59-0.045,1.176-0.107,1.756-0.186c0.58-0.079,1.154-0.174,1.723-0.286
c0.569-0.111,1.132-0.238,1.689-0.379l0.921,1.992c-0.597,0.152-1.201,0.288-1.81,0.408c-0.61,0.12-1.226,0.223-1.847,0.308
c-0.622,0.085-1.249,0.153-1.883,0.201c-0.634,0.049-1.272,0.078-1.917,0.088c-4.502,0.068-8.811-0.79-12.745-2.404
c-3.946-1.618-7.511-3.994-10.51-6.951c-3.004-2.963-5.437-6.506-7.115-10.448c-1.678-3.944-2.599-8.28-2.58-12.827
c0.018-4.54,0.971-8.86,2.673-12.777c1.698-3.907,4.139-7.409,7.141-10.333c2.99-2.913,6.534-5.249,10.45-6.838
c3.9-1.583,8.167-2.424,12.626-2.357c4.439,0.066,8.656,1.027,12.483,2.703c3.815,1.671,7.247,4.055,10.127,6.976
c2.875,2.916,5.205,6.373,6.822,10.198c1.616,3.824,2.522,8.023,2.548,12.43c0.016,2.84-0.335,5.597-1.008,8.226
c-0.674,2.633-1.672,5.139-2.949,7.472c-1.279,2.338-2.839,4.504-4.636,6.452C444.498,321.393,442.46,323.127,440.229,324.595
"/>
</g>
</g>
<g>
<path fill="#E53E30" d="M422.903,256.08c5.658,0.108,11.029,1.353,15.897,3.504c4.85,2.143,9.21,5.189,12.868,8.915
c3.65,3.717,6.608,8.117,8.662,12.983c2.053,4.864,3.208,10.204,3.247,15.808c0.04,5.613-1.043,10.98-3.039,15.883
c-2.002,4.92-4.927,9.381-8.565,13.159c-3.654,3.795-8.032,6.904-12.92,9.095c-4.913,2.202-10.344,3.478-16.073,3.588
c-5.761,0.111-11.281-0.966-16.325-3.014c-5.064-2.056-9.641-5.088-13.494-8.871c-3.862-3.792-6.988-8.332-9.143-13.388
c-2.155-5.058-3.333-10.622-3.302-16.455c0.032-5.822,1.266-11.358,3.463-16.374c2.19-4.998,5.333-9.474,9.191-13.203
c3.84-3.711,8.385-6.68,13.4-8.69C411.761,257.022,417.213,255.972,422.903,256.08z M440.229,324.595
c2.231-1.468,4.269-3.201,6.069-5.154c1.796-1.948,3.356-4.114,4.636-6.452c1.277-2.334,2.274-4.84,2.949-7.472
c0.673-2.629,1.024-5.386,1.008-8.226c-0.025-4.407-0.931-8.606-2.548-12.43c-1.617-3.826-3.947-7.282-6.822-10.198
c-2.88-2.922-6.312-5.305-10.127-6.976c-3.827-1.676-8.044-2.637-12.483-2.703c-4.458-0.067-8.726,0.775-12.626,2.357
c-3.916,1.589-7.46,3.925-10.45,6.838c-3.001,2.924-5.443,6.426-7.141,10.333c-1.702,3.917-2.655,8.237-2.673,12.777
c-0.018,4.547,0.902,8.884,2.58,12.827c1.678,3.942,4.111,7.485,7.115,10.448c2.999,2.957,6.563,5.333,10.51,6.951
c3.934,1.613,8.243,2.471,12.745,2.404c0.644-0.01,1.283-0.039,1.917-0.088c0.633-0.049,1.261-0.116,1.883-0.201
c0.622-0.085,1.237-0.188,1.847-0.308c0.609-0.12,1.213-0.256,1.81-0.408l-0.057-28.056l-22.413,16.004
c-0.051,0.034-0.104,0.065-0.16,0.092c-0.056,0.027-0.113,0.05-0.172,0.069c-0.059,0.019-0.119,0.033-0.179,0.043
c-0.06,0.01-0.121,0.016-0.18,0.016c-0.047,0.001-0.094-0.001-0.141-0.006c-0.047-0.005-0.094-0.012-0.14-0.023
c-0.046-0.011-0.092-0.024-0.137-0.041c-0.045-0.017-0.089-0.037-0.132-0.061c-0.1-0.05-0.191-0.114-0.271-0.187
c-0.08-0.074-0.149-0.157-0.205-0.249c-0.056-0.091-0.1-0.19-0.13-0.294s-0.045-0.212-0.045-0.322l0.06-37.332
c0-0.109,0.016-0.216,0.046-0.319c0.03-0.103,0.074-0.201,0.13-0.292c0.056-0.091,0.125-0.175,0.205-0.249
c0.08-0.074,0.17-0.138,0.27-0.189c0.043-0.02,0.087-0.038,0.131-0.053s0.09-0.028,0.135-0.037
c0.046-0.01,0.091-0.017,0.137-0.022c0.046-0.005,0.092-0.007,0.138-0.006c0.061,0.001,0.122,0.006,0.183,0.015
c0.06,0.01,0.12,0.024,0.178,0.042c0.058,0.018,0.116,0.042,0.171,0.069c0.055,0.027,0.109,0.059,0.161,0.095l22.346,15.897
l-0.033-15.913l0.94,0.009l8.801,0.081L440.229,324.595"/>
</g>
</g>
</g>
</g>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 3.9 KiB

After

Width:  |  Height:  |  Size: 9.1 KiB

View File

@@ -1,26 +1,21 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg width="355px" height="355px" viewBox="0 0 355 355" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:sketch="http://www.bohemiancoding.com/sketch/ns">
<svg width="400px" height="400px" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:sketch="http://www.bohemiancoding.com/sketch/ns">
<title>album-placeholder-grid</title>
<description>Created with Sketch (http://www.bohemiancoding.com/sketch)</description>
<defs>
<path d="M177.5,219 C200.419818,219 219,200.419818 219,177.5 C219,154.580182 200.419818,136 177.5,136 C154.580182,136 136,154.580182 136,177.5 C136,200.419818 154.580182,219 177.5,219 Z M177.5,355 C79.4694521,355 0,275.530548 0,177.5 C0,79.4694521 79.4694521,0 177.5,0 C275.530548,0 355,79.4694521 355,177.5 C355,275.530548 275.530548,355 177.5,355 Z M177.5,355" id="path-1"></path>
<filter x="-20%" y="-20%" width="140%" height="140%" filterUnits="objectBoundingBox" id="filter-2">
<feOffset dx="0" dy="1" in="SourceAlpha" result="shadowOffsetInner1"></feOffset>
<feGaussianBlur stdDeviation="1.5" in="shadowOffsetInner1" result="shadowBlurInner1"></feGaussianBlur>
<feComposite in="shadowBlurInner1" in2="SourceAlpha" operator="arithmetic" k2="-1" k3="1" result="shadowInnerInner1"></feComposite>
<feColorMatrix values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.7 0" in="shadowInnerInner1" type="matrix" result="shadowMatrixInner1"></feColorMatrix>
<feMerge>
<feMergeNode in="SourceGraphic"></feMergeNode>
<feMergeNode in="shadowMatrixInner1"></feMergeNode>
</feMerge>
</filter>
<radialGradient cx="50%" cy="50%" fx="50%" fy="50%" r="70.6690133%" id="radialGradient-1">
<stop stop-color="rgb(187,190,185)" offset="0%"></stop>
<stop stop-color="rgb(213,211,209)" offset="0.923389476%"></stop>
<stop stop-color="rgb(241,240,240)" offset="100%"></stop>
</radialGradient>
<path d="M201,260 C234.137087,260 261,233.137087 261,200 C261,166.862913 234.137087,140 201,140 C167.862913,140 141,166.862913 141,200 C141,233.137087 167.862913,260 201,260 Z M200.5,377 C102.469452,377 23,297.530548 23,199.5 C23,101.469452 102.469452,22 200.5,22 C298.530548,22 378,101.469452 378,199.5 C378,297.530548 298.530548,377 200.5,377 Z M200.5,377" id="path-2"></path>
</defs>
<g id="Page 1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd" sketch:type="MSPage">
<rect d="M-23,-22 L-23,378 L377,378 L377,-22 L-23,-22 Z M-23,-22" id="Rectangle 1" sketch:type="MSShapeGroup" x="-23" y="-22" width="400" height="400"></rect>
<g id="Oval 1">
<use fill="#0B0A0A" fill-rule="evenodd" sketch:type="MSShapeGroup" xlink:href="#path-1"></use>
<use fill="none" xlink:href="#path-1"></use>
<g id="Page 1" fill="rgb(215,215,215)" fill-rule="evenodd">
<path d="M0,0 L0,400 L400,400 L400,0 L0,0 Z M0,0" id="Rectangle 1" fill="rgb(0,0,0)"></path>
<g id="Group">
<use id="Oval 1" fill="url(#radialGradient-1)" xlink:href="#path-2"></use>
<use id="Oval 1-1" stroke="none" fill="none" xlink:href="#path-2"></use>
<path d="M201,260 C167.862913,260 141,233.137087 141,200 C141,166.862913 167.862913,140 201,140 C234.137087,140 261,166.862913 261,200 C261,233.137087 234.137087,260 201,260 Z M201.5,226 C216.135547,226 228,214.359404 228,200 C228,185.640596 216.135547,174 201.5,174 C186.864453,174 175,185.640596 175,200 C175,214.359404 186.864453,226 201.5,226 Z M201.5,226" id="Oval 2" stroke="rgb(150,150,150)" stroke-width="1" fill="rgb(137,137,137)"></path>
</g>
<circle d="M177.5,191 C184.40356,191 190,185.40356 190,178.5 C190,171.59644 184.40356,166 177.5,166 C170.59644,166 165,171.59644 165,178.5 C165,185.40356 170.59644,191 177.5,191 Z M177.5,191" id="Oval 2" stroke="#979797" fill-opacity="0.496897978" fill="#898989" filter="url(#filter-2)" sketch:type="MSShapeGroup" cx="177.5" cy="178.5" r="12.5"></circle>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 2.4 KiB

After

Width:  |  Height:  |  Size: 1.9 KiB

View File

@@ -1,17 +1,13 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg width="200px" height="200px" viewBox="0 0 200 200" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:sketch="http://www.bohemiancoding.com/sketch/ns">
<title>Slice 1</title>
<title>artist-placeholder-grid</title>
<description>Created with Sketch (http://www.bohemiancoding.com/sketch)</description>
<defs></defs>
<g id="Page 1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd" sketch:type="MSPage">
<g id="artist-placeholder-grid" sketch:type="MSLayerGroup" transform="translate(-1.000000, 0.000000)">
<g id="Page 1" sketch:type="MSShapeGroup">
<g id="artist-placeholder">
<g id="Page 1">
<path d="M0,200 L200,200 L200,0 L0,0 L0,200 L0,200 Z M0,200" id="Rectangle 4"></path>
<path d="M187,78 C187,76 185,74 182,74 L125,73 L107,16 C106,14 104,13 102,13 C99,13 98,14 97,16 L78,73 L21,74 C19,74 17,76 16,78 C16,80 16,83 18,84 L63,120 L47,178 C46,180 47,182 49,184 C51,185 53,185 55,184 L102,149 L149,184 C149,184 150,185 152,185 C153,185 154,184 155,184 C156,182 157,180 156,178 L140,120 L185,84 C187,83 188,80 187,78 C187,78 188,80 187,78 L187,78 M131,114 C129,115 128,117 129,120 L142,166 L105,138 C103,137 101,137 99,138 L61,166 L74,120 C75,117 74,115 73,114 L36,85 L82,84 C84,84 86,82 87,80 L102,34 L117,80 C117,82 119,84 122,84 L167,85 L131,114" id="Shape" fill="#9B9B9B"></path>
</g>
</g>
<g id="Page 1" fill="rgb(215,215,215)" fill-rule="evenodd">
<g id="artist-placeholder" fill="rgb(0,0,0)">
<g id="Page 1" fill="rgb(214,215,214)">
<path d="M0,200 L200,200 L200,0 L0,0 L0,200 Z M0,200" id="Rectangle 4" fill="rgb(0,0,0)"></path>
<path d="M187,78 C187,76 185,74 182,74 L125,73 L107,16 C106,14 104,13 102,13 C99,13 98,14 97,16 L78,73 L21,74 C19,74 17,76 16,78 C16,80 16,83 18,84 L63,120 L47,178 C46,180 47,182 49,184 C51,185 53,185 55,184 L102,149 L149,184 C149,184 150,185 152,185 C153,185 154,184 155,184 C156,182 157,180 156,178 L140,120 L185,84 C187,83 188,80 187,78 C187,78 188,80 187,78 L187,78 M131,114 C129,115 128,117 129,120 L142,166 L105,138 C103,137 101,137 99,138 L61,166 L74,120 C75,117 74,115 73,114 L36,85 L82,84 C84,84 86,82 87,80 L102,34 L117,80 C117,82 119,84 122,84 L167,85 L131,114" id="Shape" fill="rgb(254,254,254)"></path>
</g>
</g>
</g>

Before

Width:  |  Height:  |  Size: 1.5 KiB

After

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 14 KiB

View File

@@ -1,14 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg width="100px" height="100px" viewBox="0 0 100 100" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:sketch="http://www.bohemiancoding.com/sketch/ns">
<title>inbox</title>
<description>Created with Sketch (http://www.bohemiancoding.com/sketch)</description>
<defs></defs>
<g id="Page 1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
<path d="M4,50 L4,91 L97,91 L97,50 L4,50 Z M25.7265625,19 L4,50 L97,50 L75.3945312,19 L25.7265625,19 Z M25.7265625,19" id="Rectangle 8" fill="#FFFFFF"></path>
<g id="Group" transform="translate(1.000000, 3.000000)">
<path id="Shape" fill="#9B9B9B" d="M97.3548503,45.9181572 L75.6276213,17.2579381 C75.0275732,16.4663384 74.0902433,16 73.0940852,16 L57.5359773,16 L57.5359773,22.3523915 L71.5135665,22.3523915 L91.6426285,48.9023312 L91.6426285,87.6436897 L6.3554106,87.6436897 L6.3554106,48.9023312 L26.4844725,22.3523915 L41.0072035,22.3523915 L41.0072035,16 L24.901993,16 C23.9058348,16 22.9704658,16.464379 22.3684569,17.2579381 L0.643188731,45.9181572 C0.225508244,46.4667906 0,47.1427854 0,47.8344554 L0,90.8198855 C0,92.5755125 1.42364335,94 3.17868577,94 L94.8213142,94 C96.5783176,94 98,92.5735531 98,90.8198855 L98,47.8344554 C98,47.1427854 97.7744918,46.46875 97.3548503,45.9181572 L97.3548503,45.9181572 Z M97.3548503,45.9181572"></path>
<path id="Shape" fill="#9B9B9B" d="M62.1778225,50.999412 L62.1778225,61.1512722 L35.8199786,61.1512722 L35.8199786,50.999412 C35.8199786,49.9353752 34.9614682,49.0770259 33.9060517,49.0770259 L17.7243125,49.0770259 L30.466103,31.8467501 L30.9150488,31.8467501 C30.5862157,30.5750481 30.6964831,29.2262134 31.2616035,28 L29.5052015,28 C28.8967618,28 28.3277033,28.2867757 27.9673653,28.7752833 L12.3783132,49.8542869 C11.9451199,50.4397049 11.8801409,51.216966 12.2030668,51.8656724 C12.5279618,52.5163566 13.1915352,52.9257537 13.9161495,52.9257537 L31.9901559,52.9257537 L31.9901559,63.0776139 C31.9901559,64.1396729 32.8486663,65 33.9080208,65 L64.0917493,65 C65.1530729,65 66.0076452,64.1396729 66.0076452,63.0776139 L66.0076452,52.9257537 L84.0836207,52.9257537 C84.810204,52.9257537 85.4718083,52.5163566 85.7967033,51.8656724 C86.1215983,51.2189438 86.0526812,50.4397049 85.6214569,49.8542869 L70.0304358,28.7752833 C69.6700977,28.2867757 69.0990702,28 68.4925996,28 L67.2895036,28 C67.8703764,29.2598354 67.9688295,30.6541586 67.6084914,31.9495938 L80.2774267,49.0770259 L64.0937184,49.0770259 C63.0323948,49.0790036 62.1778225,49.9353752 62.1778225,50.999412 L62.1778225,50.999412 Z M62.1778225,50.999412"></path>
<path id="Shape" fill="#67ABFE" d="M34.2040126,28.7107082 C33.8839325,29.3487239 33.9440687,30.1159085 34.3592029,30.6952111 L34.5784093,31.0044334 L46.9722983,48.2152015 C47.3292361,48.7103487 47.893741,49 48.4989833,49 C49.1042257,49 49.6706704,48.7103487 50.0256683,48.2152015 L62.4195574,31.0044334 L62.6387637,30.6952111 C63.0577777,30.1159085 63.115974,29.3487239 62.7939541,28.7107082 C62.473874,28.0746495 61.8240144,27.6734433 61.1120787,27.6734433 L52.9025094,27.6734433 L52.9025094,27.1978672 L52.9025094,22.0839557 L52.9025094,15.7390262 L52.9025094,4.44262492 C52.9025094,1.99233135 50.931592,0 48.4989833,0 C46.0663746,0 44.0954572,1.99233135 44.0954572,4.44262492 L44.0954572,15.7390262 L44.0954572,22.0839557 L44.0954572,27.1978672 L44.0954572,27.6734433 L35.8839481,27.6734433 C35.1758921,27.6734433 34.5279724,28.0746495 34.2040126,28.7107082 L34.2040126,28.7107082 Z M34.2040126,28.7107082"></path>
</g>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 3.6 KiB

View File

@@ -1,13 +1,9 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg width="50px" height="50px" viewBox="0 0 50 50" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:sketch="http://www.bohemiancoding.com/sketch/ns">
<svg width="71px" height="71px" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:sketch="http://www.bohemiancoding.com/sketch/ns">
<title>info</title>
<description>Created with Sketch (http://www.bohemiancoding.com/sketch)</description>
<defs></defs>
<g id="Page 1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd" sketch:type="MSPage">
<g id="info" sketch:type="MSLayerGroup" fill="#A1B8CC">
<g id="Page 1" sketch:type="MSShapeGroup">
<path d="M24.5340004,0 C11.0050001,0 0,11.0059996 0,24.5349998 C0,38.0640001 11.0050001,49.0720005 24.5340004,49.0720005 C38.0630007,49.0720005 49.0699997,38.0640001 49.0699997,24.5349998 C49.0699997,11.0059996 38.0630531,0 24.5340004,0 L24.5340004,0 M25.2140541,7.2849731 C28.2040541,7.2849731 30.636054,9.7189732 30.636054,12.7089729 C30.636054,15.6989727 28.2040541,18.1319728 25.2140541,18.1319728 C22.2240541,18.1319728 19.7900543,15.6989727 19.7900543,12.7089729 C19.7900543,9.7189732 22.2240028,7.2849731 25.2140541,7.2849731 C25.2140541,7.2849731 22.2240028,7.2849731 25.2140541,7.2849731 L25.2140541,7.2849731 M32.6360512,39.75 C32.2080512,40.206 31.7490512,40.303 31.4390512,40.303 L18.9860511,40.303 C18.6750511,40.303 18.2150511,40.206 17.7890511,39.75 C17.4580511,39.395 17.290051,38.932 17.290051,38.374 C17.290051,37.807 17.453051,37.3319999 17.7750511,36.9649999 C18.2050511,36.4789999 18.6710511,36.3769999 18.986051,36.3769999 L20.4000511,36.3769999 L20.4000511,25.9980002 L18.986051,25.9980002 C18.675051,25.9980002 18.215051,25.9020002 17.789051,25.4450002 C17.458051,25.0900002 17.290051,24.6270002 17.290051,24.0680003 C17.290051,23.5020003 17.453051,23.0290002 17.775051,22.6620002 C18.205051,22.1740002 18.671051,22.0720003 18.986051,22.0720003 L29.4180511,22.0720003 C29.7550511,22.0720003 30.0270512,22.3440003 30.0270512,22.6790003 L30.0270512,36.3759998 L31.4390511,36.3759998 C31.7540511,36.3759998 32.2210511,36.4779998 32.6480511,36.9639998 C32.9720511,37.3309998 33.1360511,37.8059998 33.1360511,38.3729998 C33.1360512,38.9329834 32.9680214,39.3950195 32.6360512,39.75 C32.6360512,39.75 32.9680214,39.3950195 32.6360512,39.75 L32.6360512,39.75" id="Shape"></path>
</g>
</g>
<g id="Page 1" fill="rgb(215,215,215)" fill-rule="evenodd">
<path d="M35.5340004,11 C22.0050001,11 11,22.0059996 11,35.5349998 C11,49.0640001 22.0050001,60.0720005 35.5340004,60.0720005 C49.0630007,60.0720005 60.0699997,49.0640001 60.0699997,35.5349998 C60.0699997,22.0059996 49.0630531,11 35.5340004,11 L35.5340004,11 L35.5340004,11 M36.2140541,18.2849731 C39.2040541,18.2849731 41.636054,20.7189732 41.636054,23.7089729 C41.636054,26.6989727 39.2040541,29.1319728 36.2140541,29.1319728 C33.2240541,29.1319728 30.7900543,26.6989727 30.7900543,23.7089729 C30.7900543,20.7189732 33.2240028,18.2849731 36.2140541,18.2849731 C36.2140541,18.2849731 33.2240028,18.2849731 36.2140541,18.2849731 L36.2140541,18.2849731 M43.6360512,50.75 C43.2080512,51.206 42.7490512,51.303 42.4390512,51.303 L29.9860511,51.303 C29.6750511,51.303 29.2150511,51.206 28.7890511,50.75 C28.4580511,50.395 28.290051,49.932 28.290051,49.374 C28.290051,48.807 28.453051,48.3319999 28.7750511,47.9649999 C29.2050511,47.4789999 29.6710511,47.3769999 29.986051,47.3769999 L31.4000511,47.3769999 L31.4000511,36.9980002 L29.986051,36.9980002 C29.675051,36.9980002 29.215051,36.9020002 28.789051,36.4450002 C28.458051,36.0900002 28.290051,35.6270002 28.290051,35.0680003 C28.290051,34.5020003 28.453051,34.0290002 28.775051,33.6620002 C29.205051,33.1740002 29.671051,33.0720003 29.986051,33.0720003 L40.4180511,33.0720003 C40.7550511,33.0720003 41.0270512,33.3440003 41.0270512,33.6790003 L41.0270512,47.3759998 L42.4390511,47.3759998 C42.7540511,47.3759998 43.2210511,47.4779998 43.6480511,47.9639998 C43.9720511,48.3309998 44.1360511,48.8059998 44.1360511,49.3729998 C44.1360512,49.9329834 43.9680214,50.3950195 43.6360512,50.75 C43.6360512,50.75 43.9680214,50.3950195 43.6360512,50.75 L43.6360512,50.75" id="Shape" fill="rgb(80,81,80)"></path>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 2.3 KiB

After

Width:  |  Height:  |  Size: 2.2 KiB

View File

@@ -1,145 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<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:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
height="32"
version="1.1"
viewBox="0 0 32 32"
width="32"
x="0px"
y="0px"
id="svg2"
inkscape:version="0.48.3.1 r9886"
sodipodi:docname="inputfield-border.svg">
<metadata
id="metadata18">
<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="defs16">
<inkscape:perspective
sodipodi:type="inkscape:persp3d"
inkscape:vp_x="0 : 22 : 1"
inkscape:vp_y="0 : 1000 : 0"
inkscape:vp_z="44 : 22 : 1"
inkscape:persp3d-origin="22 : 14.666667 : 1"
id="perspective2836" />
</defs>
<sodipodi:namedview
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1"
objecttolerance="10"
gridtolerance="10"
guidetolerance="10"
inkscape:pageopacity="0"
inkscape:pageshadow="2"
inkscape:window-width="2880"
inkscape:window-height="1720"
id="namedview14"
showgrid="true"
inkscape:zoom="22.627417"
inkscape:cx="27.047196"
inkscape:cy="19.278199"
inkscape:window-x="-12"
inkscape:window-y="45"
inkscape:window-maximized="1"
inkscape:current-layer="svg2">
<inkscape:grid
type="xygrid"
id="grid2990"
empspacing="5"
visible="true"
enabled="true"
snapvisiblegridlinesonly="true" />
</sodipodi:namedview>
<g
id="g4599">
<path
style="opacity:0.06466699;fill:none;stroke:#000000;stroke-width:4;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:8;stroke-opacity:1"
d="M 4.65625,2.53125 C 0.01699841,4.4354339 3.6476695,11.37715 2.5,15.15625 c 0.9104726,4.415191 -1.74364624,10.215434 1.125,13.9375 7.922985,0.877493 16.321668,0.399451 24.3125,0.1875 C 31.683761,26.34472 28.403491,19.966164 29.5,15.84375 28.337107,11.830292 31.896487,5.0854716 27.625,2.59375 19.995242,2.3871025 12.300962,2.5260218 4.65625,2.53125 z"
id="path4601"
inkscape:connector-curvature="0" />
<path
style="opacity:0.06466699;fill:none;stroke:#000000;stroke-width:4;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:8;stroke-opacity:1"
d="M 4.78125,2.15625 C -0.50384498,3.6307191 3.3089847,11.154694 2.15625,15 c 0.9229661,4.546013 -1.76090684,10.511754 1.125,14.3125 7.901377,1.296184 16.629903,0.28974 24.6875,0.375 C 32.275546,27.028776 28.653465,20.168522 29.84375,16 28.645472,11.822061 32.315037,4.9433197 27.90625,2.3125 20.331149,1.9143664 12.389796,2.2847244 4.78125,2.15625 z"
id="path4605"
inkscape:connector-curvature="0" />
<path
style="opacity:0.06466699;fill:none;stroke:#000000;stroke-width:4;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:8;stroke-opacity:1"
d="m 4.71875,1.8125 c -5.60622152,1.4178135 -1.8407007,9.335986 -2.9375,13.3125 1.0422893,4.584739 -2.09676889,11.02483 1.5625,14.625 8.081978,0.980787 16.725347,0.518622 24.875,0.1875 4.402595,-2.83693 0.856871,-9.769091 2,-14.0625 -1.179633,-4.234007 2.610959,-11.6624143 -2.4375,-14 C 20.11261,1.665057 12.395997,1.8099213 4.71875,1.8125 z"
id="path4609"
inkscape:connector-curvature="0" />
<path
style="opacity:0.06466699;fill:none;stroke:#000000;stroke-width:4;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:8;stroke-opacity:1"
d="M 4.34375,1.46875 C -1.4013281,3.6570978 2.6368879,11.554337 1.4375,16.09375 2.5716902,20.523565 -1.4013805,28.864524 4.59375,30.53125 12.624379,30.017378 21.200972,31.58868 28.96875,30 32.860269,25.890157 29.400879,19.01996 30.5625,13.90625 29.907854,10.034046 32.893088,1.9946986 26.90625,1.4375 19.397406,1.4612481 11.795029,1.3918794 4.34375,1.46875 z"
id="path4613"
inkscape:connector-curvature="0" />
<path
style="opacity:0.06466699;fill:none;stroke:#000000;stroke-width:4;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:8;stroke-opacity:1"
d="m 4.625,1.09375 c -6.2068547,1.3257477 -2.6318919,9.686262 -3.5625,13.96875 1.1448342,4.811525 -2.4458629,11.943183 2.09375,15.40625 8.111337,1.130173 16.686474,0.284334 24.90625,0.3125 5.588519,-2.412228 1.736328,-10.285499 2.875,-14.84375 C 29.823429,11.396143 33.723745,3.1822192 27.75,1.125 20.050017,0.99409221 12.327794,1.0658584 4.625,1.09375 z"
id="path4617"
inkscape:connector-curvature="0" />
<path
style="opacity:0.06466699;fill:none;stroke:#000000;stroke-width:4;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:8;stroke-opacity:1"
d="M 4.59375,0.75 C -0.61385497,1.3040672 0.78718888,7.8712117 0.71875,11.459821 1.1629644,17.279444 -0.11932148,23.455713 1.25,29.09375 c 2.821567,4.196632 8.916358,1.349939 13.066963,2.1875 C 19.332991,30.61559 25.044407,32.586609 29.6875,30.375 33.051694,26.90515 30.469139,21.267325 31.28125,16.968751 30.597411,12.179526 32.636881,6.6229625 30.3125,2.25 26.821643,-1.0138505 21.248342,1.5206042 16.968751,0.71875 12.844428,0.74314509 8.7159665,0.67222023 4.59375,0.75 z"
id="path4621"
inkscape:connector-curvature="0" />
<path
style="opacity:0.06466699;fill:none;stroke:#000000;stroke-width:4;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:8;stroke-opacity:1"
d="M 4.53125,0.375 C 1.3894018,0.60024126 -0.18415805,3.9813327 0.34375,6.8169646 0.40966407,13.865499 0.21403433,20.929441 0.4375,27.96875 c 0.5865041,3.066072 3.9812099,4.147942 6.7366076,3.6875 6.9294814,-0.06599 13.8743884,0.129817 20.7946424,-0.09375 3.066072,-0.586504 4.147942,-3.98121 3.6875,-6.736608 C 31.590265,17.896411 31.786067,10.951504 31.5625,4.03125 30.975996,0.96517848 27.58129,-0.11669206 24.825892,0.34375 18.061449,0.36541598 11.293922,0.30095384 4.53125,0.375 z"
id="path4625"
inkscape:connector-curvature="0" />
<path
id="path4629"
d="m 5,0 22,0 c 2.77,0 5,2.23 5,5 l 0,22 c 0,2.77 -2.23,5 -5,5 L 5,32 C 2.23,32 0,29.77 0,27 L 0,5 C 0,2.23 2.23,0 5,0 z"
style="opacity:0.064667;fill:none;stroke:#000000;stroke-width:4;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:8;stroke-opacity:1" />
<path
style="opacity:0.06466699;fill:none;stroke:#000000;stroke-width:4;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:8;stroke-opacity:1"
d="M 4.46875,-0.3125 C 0.98344595,-0.12851319 -0.95137919,3.548349 -0.34375,6.7857146 -0.21552288,13.997692 -0.59536534,21.254525 -0.16338012,28.44023 0.58057677,31.627772 4.1300096,32.842509 7.1428576,32.34375 14.235767,32.215407 21.373601,32.595537 28.44023,32.16338 31.627772,31.419423 32.842509,27.86999 32.34375,24.857142 32.215407,17.764233 32.595537,10.626399 32.16338,3.5597705 31.419423,0.37222754 27.86999,-0.84250881 24.857142,-0.34375 18.061422,-0.32218456 11.26281,-0.38641136 4.46875,-0.3125 z"
id="path4631"
inkscape:connector-curvature="0" />
<path
style="opacity:0.06466699;fill:none;stroke:#000000;stroke-width:4;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:8;stroke-opacity:1"
d="m 4.46875,-0.6875 c -4.88903887,0.31100674 -5.938444,6.0477797 -5.1875,9.9732151 0.41575444,6.5986889 -0.7714644,13.4654919 0.46875,19.9330349 2.5002101,5.615111 9.8337653,2.870216 14.535716,3.5 5.227227,-0.673134 11.102211,1.356807 15.964284,-1 4.618144,-3.665229 1.605796,-10.45511 2.46875,-15.433038 C 31.834965,11.207777 34.77447,4.6031 30.625,0.5625 26.002847,-2.3037853 19.99663,0.03815215 14.857141,-0.71875 11.394973,-0.69362162 7.9291701,-0.76635345 4.46875,-0.6875 z"
id="path4635"
inkscape:connector-curvature="0" />
<path
style="opacity:0.06466699;fill:none;stroke:#000000;stroke-width:4;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:8;stroke-opacity:1"
d="M 4.4375,-1.03125 C -2.4288841,-0.40966905 -1.3119005,8.2085409 -1.0625,13 0.16788472,19.074593 -3.8317535,27.473817 1.59375,32.0625 8.5628736,34.728281 16.662641,32.170927 24,33.0625 29.022589,34.430248 34.293748,30.315663 33.0625,25 32.365371,17.457535 34.334575,9.3983493 32.34375,2.09375 28.430894,-3.9134302 19.817453,0.11168301 14,-1.0625 c -3.186531,0.031844 -6.3778449,-0.056838 -9.5625,0.03125 z"
id="path4639"
inkscape:connector-curvature="0" />
<path
style="opacity:0.06466699;fill:none;stroke:#000000;stroke-width:4;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:8;stroke-opacity:1"
d="M 4.40625,-1.40625 C -2.6356932,-0.73578486 -1.8066321,7.9924057 -1.4375,13 -0.23753983,19.199171 -4.2465159,27.811194 1.46875,32.40625 8.5086357,35.093269 16.607199,32.562499 24,33.4375 29.206688,34.80078 34.643458,30.487912 33.4375,25 32.720722,17.386853 34.764131,9.2829251 32.65625,1.90625 28.669603,-4.2590766 19.946075,-0.32351915 14,-1.4375 c -3.196957,0.031744 -6.3986661,-0.056723 -9.59375,0.03125 z"
id="path4643"
inkscape:connector-curvature="0" />
<path
style="opacity:0.06466699;fill:none;stroke:#000000;stroke-width:4;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:8;stroke-opacity:1"
d="M 4.375,-1.75 C -2.3899272,-1.2431511 -2.4446337,7.0084439 -1.78125,12 -0.57839019,18.49983 -4.4259935,26.910214 0.625,32.21875 6.6149095,35.870482 14.375511,32.750815 21,33.78125 26.00645,34.811355 33.908351,33.579761 33.78125,27 33.025646,18.677041 35.173733,9.8203103 32.96875,1.75 28.969659,-4.6437363 20.059663,-0.68188005 14,-1.78125 10.792617,-1.7496477 7.5805122,-1.8377839 4.375,-1.75 z"
id="path4647"
inkscape:connector-curvature="0" />
<path
style="opacity:0.06466699;fill:none;stroke:#000000;stroke-width:4;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:8;stroke-opacity:1"
d="M 4.875,-2.125 C -1.8309464,-2.1825575 -3.2026722,5.8349656 -2.15625,11 -1.080826,17.712074 -4.3881621,25.748049 -0.375,31.6875 4.9763374,36.782756 13.437274,32.97527 20,34.15625 25.186853,34.907535 33.649994,34.582135 34.09375,27.625 33.532181,19.108316 35.431584,10.074869 33.375,1.78125 29.243722,-5.2757831 19.506448,-0.97339883 13,-2.15625 10.294719,-2.1339361 7.5677947,-2.1998142 4.875,-2.125 z"
id="path4651"
inkscape:connector-curvature="0" />
<path
style="opacity:0.06466699;fill:none;stroke:#000000;stroke-width:4;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:8;stroke-opacity:1"
d="M 4.34375,-2.46875 C -2.8099687,-2.0064215 -3.3295148,6.5980666 -2.5,12 -1.2963625,18.720406 -5.2816016,27.573393 0.3125,32.875 6.7337709,36.640288 14.932728,33.450664 22,34.5 27.257415,35.699243 34.692301,33.44159 34.5,27 33.751825,18.586732 35.895885,9.6625663 33.65625,1.5 29.388001,-5.6000779 19.620414,-1.344641 13,-2.5 c -2.884405,0.032599 -5.7737456,-0.058009 -8.65625,0.03125 z"
id="path4655"
inkscape:connector-curvature="0" />
</g>
</svg>

Before

Width:  |  Height:  |  Size: 11 KiB

View File

@@ -1,49 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg width="82px" height="82px" viewBox="0 0 82 82" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:sketch="http://www.bohemiancoding.com/sketch/ns">
<title>Network Activity</title>
<description>Created with Sketch (http://www.bohemiancoding.com/sketch)</description>
<defs>
<radialGradient cx="50%" cy="0%" fx="50%" fy="0%" r="100%" id="radialGradient-1">
<stop stop-color="#FF374A" offset="0%"></stop>
<stop stop-color="#B60000" offset="100%"></stop>
</radialGradient>
<filter x="-20%" y="-20%" width="140%" height="140%" filterUnits="objectBoundingBox" id="filter-2">
<feOffset dx="0" dy="1" in="SourceAlpha" result="shadowOffsetInner1"></feOffset>
<feGaussianBlur stdDeviation="1.5" in="shadowOffsetInner1" result="shadowBlurInner1"></feGaussianBlur>
<feComposite in="shadowBlurInner1" in2="SourceAlpha" operator="arithmetic" k2="-1" k3="1" result="shadowInnerInner1"></feComposite>
<feColorMatrix values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.7 0" in="shadowInnerInner1" type="matrix" result="shadowMatrixInner1"></feColorMatrix>
<feMerge>
<feMergeNode in="SourceGraphic"></feMergeNode>
<feMergeNode in="shadowMatrixInner1"></feMergeNode>
</feMerge>
</filter>
<filter x="-20%" y="-20%" width="140%" height="140%" filterUnits="objectBoundingBox" id="filter-3">
<feOffset dx="0" dy="1" in="SourceAlpha" result="shadowOffsetInner1"></feOffset>
<feGaussianBlur stdDeviation="1.5" in="shadowOffsetInner1" result="shadowBlurInner1"></feGaussianBlur>
<feComposite in="shadowBlurInner1" in2="SourceAlpha" operator="arithmetic" k2="-1" k3="1" result="shadowInnerInner1"></feComposite>
<feColorMatrix values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.7 0" in="shadowInnerInner1" type="matrix" result="shadowMatrixInner1"></feColorMatrix>
<feMerge>
<feMergeNode in="SourceGraphic"></feMergeNode>
<feMergeNode in="shadowMatrixInner1"></feMergeNode>
</feMerge>
</filter>
<radialGradient cx="-93.3681184%" cy="64.1660344%" fx="-93.3681184%" fy="64.1660344%" r="100%" id="radialGradient-4">
<stop stop-color="#FF374A" offset="0%"></stop>
<stop stop-color="#B60000" offset="100%"></stop>
</radialGradient>
</defs>
<g id="Page 1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd" sketch:type="MSPage">
<g id="Group" sketch:type="MSLayerGroup" transform="translate(29.000000, 10.000000)" fill="url(#radialGradient-1)">
<path d="M6,4 C6,3.61624999 6.31125,3.30749997 6.69499999,3.30749997 C6.69624999,3.30749997 6.70124999,3.30749997 6.70499999,3.30874998 C6.84999999,1.48499999 8.37249998,0.048749925 10.2349998,0.048749925 C12.0937498,0.048749925 13.6187499,1.48499999 13.76125,3.30874998 C13.76625,3.30749997 13.76875,3.30749997 13.77375,3.30749997 C14.155,3.30749997 14.46375,3.61624997 14.46375,4 C14.46375,4.28124999 14.2975,4.52375 14.055,4.63124999 C14.195,5.04125001 14.27375,5.47874996 14.27375,5.93499997 C14.27375,8.16624993 12.46375,9.97374991 10.235,9.97374991 C8.00375006,9.97374976 6.1925,8.16624993 6.1925,5.93499997 C6.1925,5.47874996 6.27249999,5.04125001 6.41125,4.63124999 C6.17000001,4.52375 6,4.28124999 6,4" id="path932" filter="url(#filter-2)" sketch:type="MSShapeGroup"></path>
<path d="M13.75,62 L12.45,62 L10.2162501,56.5512497 L7.97999978,62 L6.67750001,62 C3.06125015,62 0.534999967,58.6249999 0.534999967,53.8062502 C0.527499967,53.4325002 0.369999968,44.6300001 1.11374997,40.8412505 C1.65999997,38.0587505 2.65749998,37.2500007 3.39125,37.0575006 L4.36875001,12.8487499 C4.38250001,12.5437499 4.63125,12.3024999 4.93750002,12.3024999 L8.26124992,12.3024999 C8.56374992,12.3024999 8.81249994,12.5412499 8.82749993,12.8437499 L9.82749995,33.3787492 L10.2162499,33.8237492 L10.6024999,33.3787492 L11.6012499,12.8437499 C11.6174999,12.5412499 11.8649999,12.3024999 12.1675,12.3024999 L15.49375,12.3024999 C15.79625,12.3024999 16.05,12.5437499 16.0625,12.8487499 L17.03625,37.0537503 C17.75125,37.2300003 18.85125,37.9875003 19.3187499,40.8587502 C19.94,44.6562503 19.8974999,53.4275005 19.8949999,53.7950001 C19.8949999,58.6249999 17.3699999,62 13.75,62" id="path944" filter="url(#filter-3)" sketch:type="MSShapeGroup" transform="translate(10.206284, 37.151250) rotate(-180.000000) translate(-10.206284, -37.151250) "></path>
</g>
<g id="Group" sketch:type="MSLayerGroup" transform="translate(53.000000, 18.000000)" fill="url(#radialGradient-1)">
<path d="M6.25,2.5 L6.25875,2.5 C6.3675,1.13374993 7.50875,0.0575000048 8.90250001,0.0575000048 C10.2975001,0.0575000048 11.4387501,1.13375001 11.5450001,2.5 L11.5537501,2.5 C11.8412501,2.5 12.0725001,2.73250001 12.0725001,3.01750001 C12.0725001,3.22875001 11.9450001,3.41000002 11.7662501,3.48999999 C11.8700001,3.7975 11.9262501,4.12500001 11.9262501,4.4675 C11.9262501,6.14000008 10.5737501,7.49375001 8.90250022,7.49375001 C7.2312502,7.49375001 5.87625021,6.14000008 5.87625021,4.4675 C5.87625021,4.12500001 5.93375021,3.79749998 6.04000021,3.48999999 C5.85875001,3.40999998 5.73375002,3.22875001 5.73375002,3.01750001 C5.73375002,2.73250001 5.96375,2.5 6.25,2.5" id="path940" sketch:type="MSShapeGroup"></path>
<path d="M10.9140107,46.8300004 L9.93776063,46.8300004 L8.26401065,42.7487503 L6.59026067,46.8300004 L5.61651069,46.8300004 C2.90651071,46.8300004 1.01276058,44.3037506 1.01276058,40.6912507 C1.00901058,40.4125007 0.889010577,33.8187505 1.44651058,30.9812506 C1.85651059,28.8962506 2.60401058,28.2912506 3.15526056,28.1462507 L3.88526055,10.0112502 C3.89526055,9.78375024 4.08401054,9.60375023 4.31026055,9.60375023 L6.80151059,9.60375023 C7.02776058,9.60375023 7.21276059,9.78125023 7.22526058,10.0087502 L7.9752606,25.3912499 L8.26401061,25.7249999 L8.55651061,25.3912499 L9.30526058,10.0087502 C9.31401058,9.78125023 9.50276059,9.60375023 9.72776058,9.60375023 L12.2190106,9.60375023 C12.4477606,9.60375023 12.6352606,9.78375022 12.6452606,10.0112502 L13.3752606,28.1437497 C13.9102606,28.2762497 14.7315106,28.8424997 15.0852606,30.9949996 C15.5515106,33.8400008 15.5165106,40.4087507 15.5165106,40.6837507 C15.5165106,44.3037506 13.6240105,46.8300004 10.9140107,46.8300004 Z M10.9140107,46.8300004" id="path952" sketch:type="MSShapeGroup" transform="translate(8.258255, 28.216875) rotate(-180.000000) translate(-8.258255, -28.216875) "></path>
</g>
<g id="Group" sketch:type="MSLayerGroup" transform="translate(12.000000, 18.000000)" fill="url(#radialGradient-4)">
<path d="M13.4598564,24.1621039 L11.2636064,33.4007741 C11.3666619,33.8297424 11.4755508,34.2372622 11.6223564,34.77254 C11.9062453,35.8207145 12.3369397,37.4032345 13.1108286,40.6932344 C13.510412,43.199901 12.7793008,44.6369448 12.0948564,45.4006946 C11.4522175,46.1196827 10.5781898,46.5318653 9.70124543,46.5318653 L9.2715232,46.5318653 L6.82346776,40.8032739 L4.37443993,46.5309328 L4.04291216,46.5309328 C3.12805106,46.5309328 2.22971771,46.1206153 1.58416212,45.408155 C0.907495469,44.6602582 0.176384383,43.2362701 0.554578768,40.6661907 C1.36443988,37.1216073 1.83110651,35.4905953 2.14027325,34.4125797 C2.24235658,34.0516869 2.32693992,33.7579368 2.39985658,33.4735123 L0.167634351,24.0819051 C0.135551018,23.9532146 0.168606573,23.8198614 0.252217682,23.7182146 C0.337773237,23.6165678 0.467078794,23.5568852 0.602217696,23.5568852 L2.52138434,23.5568852 L3.11930102,9.37575449 C3.12805102,9.1454172 3.3244399,8.96357195 3.56360656,8.96357195 L5.29027325,8.96357195 C5.5284677,8.96357195 5.72388437,9.14355211 5.73749548,9.37202433 L6.45596772,23.5568859 L7.20360661,23.5568859 L7.92207885,9.37202433 C7.93471774,9.1435521 8.13110663,8.96357195 8.36930108,8.96357195 L10.0940233,8.96357195 C10.3341622,8.96357195 10.5324956,9.14541718 10.5422178,9.37575449 L11.1362456,23.5568852 L13.0437456,23.5568852 L13.0524956,23.5568852 C13.29944,23.5568852 13.4987456,23.7489884 13.4987456,23.9858535 C13.4987453,24.048334 13.4851342,24.1089491 13.4598564,24.1621039" id="path1076" sketch:type="MSShapeGroup" transform="translate(6.827150, 27.747719) rotate(-180.000000) translate(-6.827150, -27.747719) "></path>
<path d="M2.93902801,0.78146832 L2.94097246,0.78146832 C3.4105558,0.78146832 4.0561113,0.878452449 4.44305575,1.33632946 C4.53152797,1.44170644 4.60638908,1.53775803 4.67347242,1.63007946 C5.13527797,0.745099296 6.04333357,0.136150886 6.72000022,0.136150886 C7.4550002,0.136150886 8.33000023,0.742301658 8.77041685,1.62168665 C8.836528,1.53123024 8.9104171,1.43797625 8.99791678,1.33632946 C9.38291669,0.877519908 10.0275001,0.78146832 10.5000002,0.78146832 C10.9413891,0.78146832 11.76875,0.901765933 11.76875,1.13210323 C11.76875,1.15541673 11.7609728,1.23281752 11.6511118,1.26172624 C11.5898611,1.27664691 11.529584,1.27944449 11.309861,1.26359135 C11.0463889,1.26359135 10.7897223,1.61236115 10.5563892,2.14111113 C10.5884725,2.1383136 10.6186115,2.12619057 10.6536113,2.12619057 C10.9686112,2.12619057 11.2408331,2.26793656 11.3750003,2.35279763 C11.4595835,2.40408738 11.7279169,2.58686514 11.7279169,2.75938503 C11.7279169,2.87128969 11.6190285,2.97013885 11.3390283,2.89087316 C11.326389,2.88621036 11.3118062,2.88527788 11.2952783,2.88527788 C10.8500003,2.88527788 10.1869446,4.5797024 9.84083355,5.83863089 C9.83500017,5.86474233 9.82625034,5.88992085 9.81847267,5.91603185 C9.8165279,5.92162713 9.8145836,5.92815488 9.81263929,5.93375016 L9.81069453,5.9356151 C9.48305574,7.28500004 8.22694481,8.29214283 6.72000018,8.29214283 C5.21402793,8.29214283 3.95597246,7.28500004 3.62736135,5.9356151 L3.62541687,5.93375016 C3.62347246,5.92815488 3.62152804,5.92162713 3.61958356,5.91603185 C3.61375024,5.88992085 3.60402803,5.86474233 3.59819466,5.83863089 C3.25402802,4.5797024 2.59000024,2.88527788 2.14375022,2.88527788 C2.12819466,2.88527788 2.11361133,2.88621042 2.10000022,2.89087312 C1.82291689,2.970139 1.71111132,2.87128979 1.71111132,2.75938502 C1.71111132,2.53837312 2.26527798,2.12619056 2.78638905,2.12619056 C2.81944461,2.12619056 2.84472238,2.13738104 2.87583349,2.14017866 C2.63763912,1.61236115 2.37513914,1.26545641 2.10291689,1.26545641 C2.03291689,1.27105165 1.97361133,1.27384927 1.92597245,1.27384927 C1.86472245,1.27384927 1.67027799,1.27384927 1.67027799,1.13210324 C1.67027807,0.901765933 2.49763913,0.78146832 2.93902801,0.78146832" id="path1080" sketch:type="MSShapeGroup" transform="translate(6.719514, 4.214147) rotate(-180.000000) translate(-6.719514, -4.214147) "></path>
</g>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 10 KiB

View File

@@ -1,23 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg width="100px" height="100px" viewBox="0 0 100 100" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:sketch="http://www.bohemiancoding.com/sketch/ns">
<title>new-inbox</title>
<description>Created with Sketch (http://www.bohemiancoding.com/sketch)</description>
<defs>
<linearGradient x1="50%" y1="0%" x2="50%" y2="100%" id="linearGradient-1">
<stop stop-color="#039EFF" offset="0%"></stop>
<stop stop-color="#67ABFE" offset="100%"></stop>
</linearGradient>
<filter x="-20%" y="-20%" width="140%" height="140%" filterUnits="objectBoundingBox" id="filter-2">
<feOffset dx="0" dy="2" in="SourceAlpha" result="shadowOffsetOuter1"></feOffset>
<feGaussianBlur stdDeviation="2" in="shadowOffsetOuter1" result="shadowBlurOuter1"></feGaussianBlur>
<feColorMatrix values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.7 0" in="shadowBlurOuter1" type="matrix" result="shadowMatrixOuter1"></feColorMatrix>
<feMerge>
<feMergeNode in="shadowMatrixOuter1"></feMergeNode>
<feMergeNode in="SourceGraphic"></feMergeNode>
</feMerge>
</filter>
</defs>
<g id="Page 1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd" sketch:type="MSPage">
<circle d="M49,73 C62.8071194,73 74,61.8071194 74,48 C74,34.1928806 62.8071194,23 49,23 C35.1928806,23 24,34.1928806 24,48 C24,61.8071194 35.1928806,73 49,73 Z M49,73" id="Oval 2" fill="url(#linearGradient-1)" filter="url(#filter-2)" sketch:type="MSShapeGroup" cx="49" cy="48" r="25"></circle>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 1.7 KiB

View File

@@ -1,18 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg width="100px" height="100px" viewBox="0 0 100 100" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:sketch="http://www.bohemiancoding.com/sketch/ns">
<title>outbox</title>
<description>Created with Sketch (http://www.bohemiancoding.com/sketch)</description>
<defs></defs>
<g id="Page 1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd" sketch:type="MSPage">
<g id="inbox" sketch:type="MSLayerGroup" transform="translate(1.000000, 2.000000)">
<g id="Page 1" sketch:type="MSShapeGroup">
<path d="M3,50 L3,91 L96,91 L96,50 L3,50 L3,50 Z M24.7265625,19 L3,50 L96,50 L74.3945312,19 L24.7265625,19 L24.7265625,19 Z M24.7265625,19" id="Rectangle 8" fill="#FFFFFF"></path>
<g id="Group">
<path d="M75.6276213,20.2579381 C75.0275732,19.4663384 74.0902433,19 73.0940852,19 L70.2802734,20.2579381 L71.5135665,25.3523915 L91.6426285,51.9023312 L91.6426285,90.6436897 L6.3554106,90.6436897 L6.3554106,51.9023312 L26.4844725,25.3523915 L26.4844723,20.2579381 L24.901993,19 C23.9058348,19 22.9704658,19.464379 22.3684569,20.2579381 L0.643188731,48.9181572 C0.225508244,49.4667906 0,50.1427854 0,50.8344554 L0,93.8198855 C0,95.5755125 1.42364335,97 3.17868577,97 L94.8213142,97 C96.5783176,97 98,95.5735531 98,93.8198855 L98,50.8344554 C98,50.1427854 97.7744918,49.46875 97.3548503,48.9181572 L75.6276213,20.2579381 Z M75.6276213,20.2579381" id="Shape" fill="#9B9B9B"></path>
<path d="M62.1778225,53.999412 L62.1778225,64.1512722 L35.8199786,64.1512722 L35.8199786,53.999412 C35.8199786,52.9353752 34.9614682,52.0770259 33.9060517,52.0770259 L17.7243125,52.0770259 L30.466103,34.8467501 L30.9150488,34.8467501 C30.5862157,33.5750481 30.6964831,32.2262134 31.2616035,31 L29.5052015,31 C28.8967618,31 28.3277033,31.2867757 27.9673653,31.7752833 L12.3783132,52.8542869 C11.9451199,53.4397049 11.8801409,54.216966 12.2030668,54.8656724 C12.5279618,55.5163566 13.1915352,55.9257537 13.9161495,55.9257537 L31.9901559,55.9257537 L31.9901559,66.0776139 C31.9901559,67.1396729 32.8486663,68 33.9080208,68 L64.0917493,68 C65.1530729,68 66.0076452,67.1396729 66.0076452,66.0776139 L66.0076452,55.9257537 L84.0836207,55.9257537 C84.810204,55.9257537 85.4718083,55.5163566 85.7967033,54.8656724 C86.1215983,54.2189438 86.0526812,53.4397049 85.6214569,52.8542869 L70.0304358,31.7752833 C69.6700977,31.2867757 69.0990702,31 68.4925996,31 L67.2895036,31 C67.8703764,32.2598354 67.9688295,33.6541586 67.6084914,34.9495938 L80.2774267,52.0770259 L64.0937184,52.0770259 C63.0323948,52.0790036 62.1778225,52.9353752 62.1778225,53.999412 L62.1778225,53.999412 L62.1778225,53.999412 Z M62.1778225,53.999412" id="Shape" fill="#9B9B9B"></path>
<path d="M34.7040126,29.2107082 C34.3839325,29.8487239 34.4440687,30.6159085 34.8592029,31.1952111 L35.0784093,31.5044334 L47.4722983,48.7152015 C47.8292361,49.2103487 48.393741,49.5 48.9989833,49.5 C49.6042257,49.5 50.1706704,49.2103487 50.5256683,48.7152015 L62.9195574,31.5044334 L63.1387637,31.1952111 C63.5577777,30.6159085 63.615974,29.8487239 63.2939541,29.2107082 C62.973874,28.5746495 62.3240144,28.1734433 61.6120787,28.1734433 L53.4025094,28.1734433 L53.4025094,27.6978672 L53.4025094,22.5839557 L53.4025094,16.2390262 L53.4025094,4.94262492 C53.4025094,2.49233135 51.431592,0.5 48.9989833,0.5 C46.5663746,0.5 44.5954572,2.49233135 44.5954572,4.94262492 L44.5954572,16.2390262 L44.5954572,22.5839557 L44.5954572,27.6978672 L44.5954572,28.1734433 L36.3839481,28.1734433 C35.6758921,28.1734433 35.0279724,28.5746495 34.7040126,29.2107082 L34.7040126,29.2107082 L34.7040126,29.2107082 Z M34.7040126,29.2107082" id="Shape" fill="#99CC00" transform="translate(49.000000, 25.000000) rotate(-180.000000) translate(-49.000000, -25.000000) "></path>
</g>
</g>
</g>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 3.9 KiB

View File

@@ -1,13 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg width="44px" height="44px" viewBox="0 0 44 44" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:sketch="http://www.bohemiancoding.com/sketch/ns">
<title>refresh</title>
<description>Created with Sketch (http://www.bohemiancoding.com/sketch)</description>
<defs></defs>
<g id="Page 1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
<g id="refresh" transform="translate(0.000000, 1.000000)" fill="#FFFFFF">
<g id="Page 1">
<path d="M43.8927655,25.3359998 L37.0097656,15.8609994 C36.8167656,15.5939995 36.5067655,15.4359994 36.1767656,15.4359994 C35.8477656,15.4359994 35.5367656,15.5939994 35.3437656,15.8609994 L28.4607657,25.3349994 C28.2317657,25.6489994 28.2007657,26.0639994 28.3767657,26.4079994 C28.5517657,26.7539994 28.9057656,26.9699994 29.2937657,26.9699994 L33.1067656,26.9699994 C32.2747656,28.3759994 31.2177656,29.6569994 29.9327656,30.7409993 C26.9367655,33.2659994 23.1357657,34.4739993 19.2317654,34.1419993 C15.3277653,33.8089993 11.7867652,31.9769993 9.26076567,28.9809995 C6.73476612,25.9849997 5.52876555,22.1849995 5.86076557,18.2809997 C6.19276556,14.3759997 8.0247656,10.8349996 11.0207654,8.30899958 C14.0167652,5.78299955 17.8147656,4.57699946 21.7207652,4.90899948 C25.5477651,5.23499949 29.0417653,7.01299957 31.5577651,9.91299967 C32.4277651,10.9149996 33.9457651,11.0219996 34.9487652,10.1539997 C35.9507651,9.28399966 36.0577651,7.76599965 35.1887651,6.76399956 C31.8467651,2.91299949 27.2097651,0.552999593 22.1277653,0.118999578 C16.9457651,-0.319000416 11.900765,1.28299961 7.92276535,4.63499937 C3.94576536,7.98899946 1.51276551,12.6899997 1.07176552,17.8729993 C0.630765507,23.0569993 2.23276553,28.0999995 5.58676539,32.0769998 C8.94076524,36.054 13.6417657,38.4869996 18.8247653,38.929 C19.3877653,38.977 19.9497653,39 20.5087653,39 C25.0917655,39 29.4847652,37.402 33.0287658,34.414 C35.4547659,32.369 37.3017655,29.8200002 38.4777657,26.9689999 L43.0587655,26.9689999 C43.4467655,26.9689999 43.7997655,26.7519999 43.9757655,26.4069999 C44.15276,26.0630506 44.1197705,25.6489881 43.8927655,25.3359998 C43.8927655,25.3359998 44.1197705,25.6489881 43.8927655,25.3359998 L43.8927655,25.3359998" id="Shape"></path>
</g>
</g>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 2.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 373 KiB

After

Width:  |  Height:  |  Size: 53 KiB

View File

@@ -1,29 +1,43 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg width="1000px" height="1000px" viewBox="0 0 1000 1000" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:sketch="http://www.bohemiancoding.com/sketch/ns">
<title>Slice 1</title>
<svg width="47px" height="47px" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:sketch="http://www.bohemiancoding.com/sketch/ns">
<title>spotify-logo</title>
<description>Created with Sketch (http://www.bohemiancoding.com/sketch)</description>
<defs>
<radialGradient cx="50.8262172%" cy="19.7598471%" fx="50.8262172%" fy="19.7598471%" r="50%" id="radialGradient-1">
<stop stop-color="#A9D03F" offset="0%"></stop>
<stop stop-color="#A9D03F" offset="7.105015%"></stop>
<stop stop-color="#A1CC3E" offset="24.677444%"></stop>
<stop stop-color="#94C93D" offset="45.569649%"></stop>
<stop stop-color="#8DC540" offset="59.65941%"></stop>
<stop stop-color="#84BC41" offset="79.657596%"></stop>
<stop stop-color="#79B641" offset="100%"></stop>
<linearGradient x1="62.2222222%" y1="-109.879447%" x2="62.2222222%" y2="100.079007%" id="linearGradient-1">
<stop stop-color="rgb(211,224,107)" offset="0%"></stop>
<stop stop-color="rgb(133,163,46)" offset="100%"></stop>
</linearGradient>
<linearGradient x1="132.472281%" y1="113.795168%" x2="-9.02630224%" y2="19.3853017%" id="linearGradient-2">
<stop stop-color="rgb(107,126,50)" offset="0%"></stop>
<stop stop-color="rgb(60,73,24)" offset="100%"></stop>
</linearGradient>
<linearGradient x1="114.177516%" y1="87.9933558%" x2="2.46797803%" y2="25.4018941%" id="linearGradient-3">
<stop stop-color="rgb(107,126,50)" offset="0%"></stop>
<stop stop-color="rgb(60,73,24)" offset="100%"></stop>
</linearGradient>
<linearGradient x1="149.680203%" y1="114.783395%" x2="-1.23068876%" y2="20.5175511%" id="linearGradient-4">
<stop stop-color="rgb(107,126,50)" offset="0%"></stop>
<stop stop-color="rgb(60,73,24)" offset="100%"></stop>
</linearGradient>
<linearGradient x1="65.1692878%" y1="-1.15412394%" x2="65.1692878%" y2="100.967712%" id="linearGradient-5">
<stop stop-color="rgb(254,255,254)" offset="0%"></stop>
<stop stop-color="rgb(254,255,254)" stop-opacity="0" offset="100%"></stop>
</linearGradient>
<radialGradient cx="47.4050141%" cy="100.000123%" fx="47.4050141%" fy="100.000123%" r="50%" id="radialGradient-6">
<stop stop-color="rgb(107,126,50)" offset="0%"></stop>
<stop stop-color="rgb(60,73,24)" offset="100%"></stop>
</radialGradient>
</defs>
<g id="Page 1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd" sketch:type="MSPage">
<g id="svg2" sketch:type="MSLayerGroup" transform="translate(-3578.000000, -1.000000)">
<g id="layer1" transform="translate(0.205880, 0.260670)" sketch:type="MSShapeGroup">
<g id="g3128" transform="translate(3577.939315, 0.777349)">
<g id="g3099" transform="translate(0.354801, 0.209030)">
<path d="M193.437643,632.659533 L195.123066,649.176693 L207.876102,655.075649 C208.61026,635.537611 220.760227,623.670557 236.809201,620.805363 C287.667189,609.746278 350.224972,599.175766 423.104651,599.175766 C537.69697,599.175766 636.546844,627.589457 716.536846,676.368177 C728.346469,683.54526 732.213989,692.48324 733.896707,704.34618 L778.335699,675.581658 L767.09954,631.311187 L435.408243,542.320795 L125.290361,581.872088 L193.437643,632.659533 Z M193.437643,632.659533" id="path3103" stroke="#008080" stroke-width="0.60321335" fill="#7A9F3F"></path>
<path d="M172.482213,509.286544 L187.538661,503.607354 C188.063083,484.734552 198.241386,469.043304 220.011149,463.105899 C276.33546,446.55852 342.484544,436.195362 414.733719,436.195362 C553.337209,436.195362 680.365755,472.505672 773.168293,528.463296 C788.018896,537.582595 793.722856,544.317514 796.523759,568.200359 L864.776004,530.687943 L578.11458,396.57358 L98.8624405,424.540587 L172.482213,509.286544 Z M172.482213,509.286544" id="path3105" stroke="#000080" stroke-width="0.60321335" fill="#82A73E"></path>
<path d="M153.605473,350.070232 C152.076157,321.873002 166.872726,301.582443 188.549915,295.350126 C259.810578,274.652277 336.233219,264.506862 426.53168,264.506862 C576.724736,264.506862 727.614818,295.943186 838.000808,359.708052 C859.696193,371.514802 865.964969,387.375427 867.14592,411.606877 L935.646849,366.381993 L730.026064,192.541832 L100.769276,259.916791 L153.605473,350.070232 Z M153.605473,350.070232" id="path3107" stroke="#000000" stroke-width="0.60321335" fill="#81A83E"></path>
<path d="M499.499987,0.252954078 C223.636558,0.252954078 0,223.868339 0,499.731895 C0,775.595316 223.636558,999.231882 499.499987,999.231882 C775.363415,999.231882 998.999974,775.595316 998.999974,499.731895 C998.999974,223.868339 775.363415,0.252954078 499.499987,0.252954078 L499.499987,0.252954078 Z M426.206543,260.943245 C572.876178,260.943245 727.193376,291.113719 839.912938,357.318749 C855.106318,365.924044 865.651016,378.898295 865.651016,402.681847 C865.651016,429.910701 843.765436,449.478352 818.538319,449.478352 C808.368472,449.478352 802.334438,447.003989 792.800241,441.784298 C702.388396,387.571922 562.085689,357.719226 426.396258,357.719226 C358.663817,357.719226 289.87104,364.607334 226.857649,381.707704 C219.600156,383.534168 210.428242,387.16733 201.246049,387.16733 C174.600109,387.16733 154.154431,366.087014 154.154431,339.443328 C154.154431,312.298387 170.977823,297.060501 189.125333,291.698212 C260.328459,270.721438 339.807595,260.943245 426.206543,260.943245 L426.206543,260.943245 Z M416.025141,432.57252 C546.769259,432.57252 673.250636,465.135467 772.690392,524.647805 C789.361104,534.207108 795.498418,546.34634 795.498418,564.129754 C795.498418,585.758205 778.279496,603.232205 756.564569,603.232205 C745.726425,603.232205 738.908806,598.852727 731.543195,594.568562 C650.290675,546.350185 537.6778,514.318914 414.35986,514.318914 C351.11133,514.318914 296.518727,523.175342 251.330956,535.208671 C241.595233,537.888096 236.137204,540.773661 227.026285,540.773661 C205.543773,540.773661 188.008119,523.267822 188.008119,501.607938 C188.008119,480.36762 198.309807,465.742557 219.079311,459.89156 C275.228953,444.470603 332.567773,432.57252 416.025141,432.57252 L416.025141,432.57252 Z M422.875981,595.685809 C532.179064,595.685809 629.593366,620.760574 713.414819,671.002852 C725.890454,678.286513 733.208476,685.729501 733.208476,704.203109 C733.208476,722.209932 718.564432,735.44287 702.137283,735.44287 C694.05938,735.44287 688.548347,732.640611 680.994538,728.043997 C608.602224,684.246044 518.339022,661.221961 422.538709,661.221961 C369.09223,661.221961 315.300392,668.07641 264.990477,678.549316 C256.809701,680.322827 246.514832,683.48192 240.369613,683.48192 C221.400881,683.48192 208.750353,668.414491 208.750353,652.094569 C208.750353,631.105451 220.860397,620.6544 235.921837,617.777132 C297.616561,603.71727 359.058918,595.685809 422.875981,595.685809 L422.875981,595.685809 Z M422.875981,595.685809" id="path3101" fill="url(#radialGradient-1)"></path>
</g>
</g>
<g id="Page 1" fill="rgb(215,215,215)" fill-rule="evenodd">
<g id="svg2" fill="rgb(0,0,0)">
<g id="layer1">
<path d="M46,23.4999996 C46,35.9264065 35.9264069,45.9999996 23.5,45.9999996 C11.0735931,45.9999996 1,35.9264065 1,23.4999996 C1,11.0735927 11.0735931,0.999999617 23.5,0.999999617 C35.9264069,0.999999617 46,11.0735927 46,23.4999996 C46,23.4999996 46,11.0735927 46,23.4999996 L46,23.4999996" id="path5513" fill="url(#linearGradient-1)"></path>
<path d="M10.3002453,11.6195555 C8.24102688,12.012805 7.94257736,15.3554049 10.7654648,15.3130732 C21.9770622,13.2014904 31.0487232,15.4988899 39.6700478,19.8260403 C40.8082466,20.3789711 42.6476097,18.0287037 41.0204697,16.7585106 C31.3168354,11.6140623 19.9609756,9.87804699 10.3002453,11.6195555 C10.3002453,11.6195555 19.9609756,9.87804699 10.3002453,11.6195555 L10.3002453,11.6195555" id="path7661" fill="url(#linearGradient-2)"></path>
<path d="M12.3035316,19.1448269 C10.172718,19.3810368 9.82939053,22.9693108 12.5619602,22.6482792 C21.9036541,21.5098209 27.8536301,22.6287899 35.6833229,25.8085918 C37.6471901,26.8732643 38.7249985,23.4825859 36.9293365,22.6049614 C28.1335659,18.8897991 21.4121304,18.7261505 12.3035316,19.1448269 C12.3035316,19.1448269 21.4121304,18.7261505 12.3035316,19.1448269 L12.3035316,19.1448269" id="path7666" opacity="0.8" fill="url(#linearGradient-3)"></path>
<path d="M14.4476528,25.7030106 C12.7541599,26.3083305 13.0538054,29.1486492 14.8631124,29.0521393 C17.8708324,28.7223721 20.1539478,28.7061386 23.6155319,29.0975533 C27.1264324,29.494545 29.2332573,30.4359741 32.1573563,31.4530487 C33.3504066,31.9618759 34.4471741,29.7644825 33.1875381,28.5280266 C29.9664268,27.2747231 27.415802,26.1748791 23.3885059,25.7194977 C20.0840149,25.3480473 17.7555847,25.3715115 14.4476528,25.7030106 C14.4476528,25.7030106 17.7555847,25.3715115 14.4476528,25.7030106 L14.4476528,25.7030106" id="path7668" opacity="0.6" fill="url(#linearGradient-4)"></path>
<path d="M23.4999995,44.9999992 C11.6258773,44.9999992 1.9999994,35.3741214 1.9999994,23.4999993 C1.9999994,11.6258773 11.6258773,1.99999946 23.4999995,1.99999946 C35.3741217,1.99999946 44.9999996,11.6258773 44.9999996,23.4999993 C44.9999996,35.3741214 35.3741217,44.9999992 23.4999995,44.9999992 Z M23.4999995,44.9999992" id="path3894" stroke="rgb(0,0,0)" stroke-width="0.955555555" opacity="0.2"></path>
<path d="M7.34768963,38.6745071 C7.87801963,38.6745071 11.00822,31.347157 22.94065,32.7613673 C34.8730803,34.1755773 36.25068,42.033257 36.25068,42.033257 C34.2001801,43.433877 32.01899,44.6602271 29.2680001,45.126857 C29.2680001,45.126857 26.2690802,39.5798371 20.8773904,39.933387 C15.4857006,40.286937 13.6232605,43.4474771 13.6232605,43.4474771 C10.8516705,42.4523971 8.70550013,40.8477371 7.34769011,38.6745069 C7.34769011,38.6745069 8.70550013,40.8477371 7.34769011,38.6745069 L7.34768963,38.6745071" id="path5529" fill="url(#radialGradient-6)"></path>
<path d="M23.4999995,45.9999993 C11.0735926,46.0000012 0.9999995,35.9264062 0.9999995,23.4999993 C0.99999895,11.0735925 11.0735926,0.999999335 23.4999995,0.999999335 C35.9264064,0.999999335 45.9999995,11.0735925 45.9999995,23.4999993 C45.9999995,35.9264062 35.9264064,45.9999993 23.4999995,45.9999993 Z M23.4999995,45.9999993" id="path3892" stroke="rgb(117,143,56)" stroke-width="1"></path>
</g>
</g>
</g>

Before

Width:  |  Height:  |  Size: 5.6 KiB

After

Width:  |  Height:  |  Size: 5.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 373 KiB

After

Width:  |  Height:  |  Size: 3.4 KiB

View File

@@ -1,30 +1,92 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg width="1000px" height="1000px" viewBox="0 0 1000 1000" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:sketch="http://www.bohemiancoding.com/sketch/ns">
<title>Slice 1</title>
<description>Created with Sketch (http://www.bohemiancoding.com/sketch)</description>
<defs>
<radialGradient cx="50.8262172%" cy="19.7598471%" fx="50.8262172%" fy="19.7598471%" r="50%" id="radialGradient-1">
<stop stop-color="#A9D03F" offset="0%"></stop>
<stop stop-color="#A9D03F" offset="7.105015%"></stop>
<stop stop-color="#A1CC3E" offset="24.677444%"></stop>
<stop stop-color="#94C93D" offset="45.569649%"></stop>
<stop stop-color="#8DC540" offset="59.65941%"></stop>
<stop stop-color="#84BC41" offset="79.657596%"></stop>
<stop stop-color="#79B641" offset="100%"></stop>
</radialGradient>
</defs>
<g id="Page 1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd" sketch:type="MSPage">
<g id="svg2" sketch:type="MSLayerGroup" transform="translate(-3578.000000, -1.000000)">
<g id="layer1" transform="translate(0.205880, 0.260670)" sketch:type="MSShapeGroup">
<g id="g3128" transform="translate(3577.939315, 0.777349)">
<g id="g3099" transform="translate(0.354801, 0.209030)">
<path d="M193.437643,632.659533 L195.123066,649.176693 L207.876102,655.075649 C208.61026,635.537611 220.760227,623.670557 236.809201,620.805363 C287.667189,609.746278 350.224972,599.175766 423.104651,599.175766 C537.69697,599.175766 636.546844,627.589457 716.536846,676.368177 C728.346469,683.54526 732.213989,692.48324 733.896707,704.34618 L778.335699,675.581658 L767.09954,631.311187 L435.408243,542.320795 L125.290361,581.872088 L193.437643,632.659533 Z M193.437643,632.659533" id="path3103" stroke="#008080" stroke-width="0.60321335" fill="#7A9F3F"></path>
<path d="M172.482213,509.286544 L187.538661,503.607354 C188.063083,484.734552 198.241386,469.043304 220.011149,463.105899 C276.33546,446.55852 342.484544,436.195362 414.733719,436.195362 C553.337209,436.195362 680.365755,472.505672 773.168293,528.463296 C788.018896,537.582595 793.722856,544.317514 796.523759,568.200359 L864.776004,530.687943 L578.11458,396.57358 L98.8624405,424.540587 L172.482213,509.286544 Z M172.482213,509.286544" id="path3105" stroke="#000080" stroke-width="0.60321335" fill="#82A73E"></path>
<path d="M153.605473,350.070232 C152.076157,321.873002 166.872726,301.582443 188.549915,295.350126 C259.810578,274.652277 336.233219,264.506862 426.53168,264.506862 C576.724736,264.506862 727.614818,295.943186 838.000808,359.708052 C859.696193,371.514802 865.964969,387.375427 867.14592,411.606877 L935.646849,366.381993 L730.026064,192.541832 L100.769276,259.916791 L153.605473,350.070232 Z M153.605473,350.070232" id="path3107" stroke="#000000" stroke-width="0.60321335" fill="#81A83E"></path>
<path d="M499.499987,0.252954078 C223.636558,0.252954078 0,223.868339 0,499.731895 C0,775.595316 223.636558,999.231882 499.499987,999.231882 C775.363415,999.231882 998.999974,775.595316 998.999974,499.731895 C998.999974,223.868339 775.363415,0.252954078 499.499987,0.252954078 L499.499987,0.252954078 Z M426.206543,260.943245 C572.876178,260.943245 727.193376,291.113719 839.912938,357.318749 C855.106318,365.924044 865.651016,378.898295 865.651016,402.681847 C865.651016,429.910701 843.765436,449.478352 818.538319,449.478352 C808.368472,449.478352 802.334438,447.003989 792.800241,441.784298 C702.388396,387.571922 562.085689,357.719226 426.396258,357.719226 C358.663817,357.719226 289.87104,364.607334 226.857649,381.707704 C219.600156,383.534168 210.428242,387.16733 201.246049,387.16733 C174.600109,387.16733 154.154431,366.087014 154.154431,339.443328 C154.154431,312.298387 170.977823,297.060501 189.125333,291.698212 C260.328459,270.721438 339.807595,260.943245 426.206543,260.943245 L426.206543,260.943245 Z M416.025141,432.57252 C546.769259,432.57252 673.250636,465.135467 772.690392,524.647805 C789.361104,534.207108 795.498418,546.34634 795.498418,564.129754 C795.498418,585.758205 778.279496,603.232205 756.564569,603.232205 C745.726425,603.232205 738.908806,598.852727 731.543195,594.568562 C650.290675,546.350185 537.6778,514.318914 414.35986,514.318914 C351.11133,514.318914 296.518727,523.175342 251.330956,535.208671 C241.595233,537.888096 236.137204,540.773661 227.026285,540.773661 C205.543773,540.773661 188.008119,523.267822 188.008119,501.607938 C188.008119,480.36762 198.309807,465.742557 219.079311,459.89156 C275.228953,444.470603 332.567773,432.57252 416.025141,432.57252 L416.025141,432.57252 Z M422.875981,595.685809 C532.179064,595.685809 629.593366,620.760574 713.414819,671.002852 C725.890454,678.286513 733.208476,685.729501 733.208476,704.203109 C733.208476,722.209932 718.564432,735.44287 702.137283,735.44287 C694.05938,735.44287 688.548347,732.640611 680.994538,728.043997 C608.602224,684.246044 518.339022,661.221961 422.538709,661.221961 C369.09223,661.221961 315.300392,668.07641 264.990477,678.549316 C256.809701,680.322827 246.514832,683.48192 240.369613,683.48192 C221.400881,683.48192 208.750353,668.414491 208.750353,652.094569 C208.750353,631.105451 220.860397,620.6544 235.921837,617.777132 C297.616561,603.71727 359.058918,595.685809 422.875981,595.685809 L422.875981,595.685809 Z M422.875981,595.685809" id="path3101" fill="url(#radialGradient-1)"></path>
</g>
</g>
</g>
</g>
</g>
</svg>
<!-- 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"
version="1.1"
width="194.88251"
height="194.88251"
id="svg3252"
xml:space="preserve"><metadata
id="metadata3258"><rdf:RDF><cc:Work
rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" /><dc:title></dc:title></cc:Work></rdf:RDF></metadata><defs
id="defs3256"><clipPath
id="clipPath3266"><path
d="m 0,155.906 155.906,0 L 155.906,0 0,0 0,155.906 z"
id="path3268" /></clipPath></defs><g
transform="matrix(1.25,0,0,-1.25,0,194.8825)"
id="g3260"><g
id="g3262"><g
clip-path="url(#clipPath3266)"
id="g3264"><g
transform="translate(0,3.7119)"
id="g3270"><path
d="m 0,0 c 0,-2.051 1.661,-3.712 3.711,-3.712 l 148.482,0 c 2.051,0 3.712,1.661 3.712,3.712 l 0,148.481 c 0,2.051 -1.661,3.712 -3.712,3.712 l -148.482,0 C 1.661,152.193 0,150.532 0,148.481 L 0,0 z"
id="path3272"
style="fill:#84b82d;fill-opacity:1;fill-rule:nonzero;stroke:none" /></g><path
d="m 104.527,43.722 -1.413,0 0,-8.581 1.413,0 0,8.581 z m -9.569,0 -3.632,0 0,-8.581 3.632,0 0,8.581 z m 26.71,0.309 c 0.384,-1.071 0.562,-1.567 1.121,-3.13 0.482,1.522 0.636,2.005 0.966,3.05 -0.546,0.282 -0.938,0.774 -1.104,1.377 -0.151,-0.556 -0.502,-1.007 -0.983,-1.297 M 73.945,40.634 c 0.77,0.721 1.244,2.129 1.3,3.861 0.062,1.88 -0.288,3.327 -0.986,4.07 -0.251,0.27 -0.697,0.627 -1.662,0.661 -2.568,0.083 -2.885,-3.516 -2.919,-4.622 -0.057,-1.69 0.327,-3.098 1.048,-3.87 0.411,-0.438 0.924,-0.661 1.572,-0.681 0.669,-0.023 1.206,0.168 1.647,0.581 M 54.063,34.827 c 1.646,0 2.482,1.549 2.482,4.605 0,1.377 -0.229,4.573 -2.343,4.573 -0.725,0 -1.34,-0.323 -1.824,-0.963 -0.607,-0.804 -0.94,-2.011 -0.94,-3.397 0,-2.33 0.688,-4.818 2.625,-4.818 m -10.977,8.859 -2.489,0 c 1.007,-0.572 1.829,-1.273 2.489,-2.048 0.004,2.343 0,0.773 0,2.048 m -8.9,-10.275 c 1.034,0 2.768,0.238 2.768,1.846 0,0.947 -0.584,1.431 -4.082,1.786 -1.598,0.158 -3.003,0.313 -4.398,0.768 0.233,-0.174 0.466,-0.35 0.616,-0.608 l 0.071,-0.117 c 1.19,-2.011 2.387,-3.675 5.025,-3.675 m 2.494,11.677 c -0.425,0.926 -0.593,1.133 -0.901,1.462 -0.889,0.912 -2.008,1.416 -3.149,1.416 -1.627,0 -2.626,-0.747 -2.626,-1.282 0,-0.214 0.231,-0.364 0.444,-0.458 0.62,-0.288 1.275,-0.464 3.311,-0.694 1.22,-0.137 2.106,-0.269 2.921,-0.444 m 104.654,3.791 0,-2.929 c 0,-1.227 -0.995,-2.264 -2.222,-2.264 l -7.338,0 c -0.859,-2.594 -6.047,-18.247 -6.047,-18.247 -1.262,-3.657 -4.042,-4.15 -6.594,-4.15 l -2.69,0 c -1.226,0 -2.22,0.995 -2.22,2.222 l 0,3.115 c 0,0.59 0.299,1.153 0.717,1.569 0.418,0.417 1.051,0.649 1.641,0.647 l 1.227,-0.002 0.547,0.007 c 0.161,0 0.249,0.006 0.334,0.011 0.048,0.116 0.112,0.286 0.194,0.541 0.005,0.015 0.024,0.087 0.036,0.13 -0.43,1.136 -4.494,11.878 -5.355,14.157 l -0.877,0 0,-8.541 0.147,0 c 1.228,0 2.222,-0.998 2.222,-2.222 l 0,-3.008 c 0,-1.227 -0.994,-2.222 -2.222,-2.222 l -22.032,0 c -4.758,0 -7.598,2.611 -7.598,7.103 l 0,6.342 0,0.002 c -0.581,-2.292 -1.709,-4.281 -3.298,-5.77 -2.108,-1.975 -4.848,-2.967 -7.924,-2.867 -2.969,0.094 -5.497,1.222 -7.35,3.101 l 0.002,0 c -1.195,-4.994 -4.801,-8.334 -9.44,-8.334 -0.561,0 -1.083,0.04 -1.57,0.115 0.048,-0.18 0.111,-0.353 0.111,-0.547 l 0,-3.008 c 0,-1.226 -0.995,-2.222 -2.222,-2.222 l -8.243,0 c -1.228,0 -2.221,0.996 -2.221,2.222 l 0,3.386 C 39.366,26.059 37.309,25.394 35,25.394 c -2.422,0 -4.249,0.657 -5.719,1.58 -0.135,-0.484 -0.385,-1.031 -0.845,-1.521 -0.489,-0.519 -1.373,-1.138 -2.81,-1.138 -1.434,0 -2.318,0.617 -2.806,1.134 -1.045,1.108 -1.023,2.516 -1.007,2.786 -0.002,-0.043 -0.003,-0.084 -0.003,-0.127 l 0,7.961 c 0,1.228 0.996,2.221 2.222,2.221 l 3.149,0 c 0.004,0 0.007,-0.002 0.01,-0.002 -0.905,0.396 -1.96,0.973 -2.757,1.847 -1.623,1.719 -2.517,3.958 -2.517,6.303 0,2.615 1.08,5.01 3.044,6.747 1.889,1.668 4.462,2.586 7.244,2.586 2.012,0 3.609,-0.526 4.891,-1.217 0.406,0.437 0.973,0.719 1.619,0.719 l 3.148,0 c 1.227,0 2.221,-0.993 2.221,-2.22 l 0,-1.918 5.164,0 c 0.606,0 1.151,-0.245 1.553,-0.638 1.166,0.631 2.596,1.065 4.428,1.065 2.639,0 4.914,-1.048 6.609,-2.87 l 0,-10e-4 c 1.469,5.004 5.679,8.259 10.967,8.087 4.246,-0.136 7.58,-2.242 9.38,-5.643 l 1.019,0 0,3.334 c 0,1.226 0.994,2.221 2.222,2.221 l 3.678,0 c 1.228,0 2.222,-0.995 2.222,-2.221 l 0,-3.334 3.632,0 0,3.334 c 0,1.226 0.994,2.221 2.222,2.221 l 3.713,0 c 1.228,0 2.221,-0.995 2.221,-2.221 l 0,-3.334 1.413,0 0,1.885 c 0,2.469 1.136,3.81 2.089,4.498 1.191,0.859 2.785,1.259 5.015,1.259 l 2.723,0 c 1.228,0 2.223,-0.994 2.223,-2.22 l 0,-2.937 c 0,-1.227 -0.995,-2.222 -2.223,-2.222 l -1.667,0 0,-0.263 7.86,0 c 1.021,0 1.846,-0.703 2.104,-1.642 0.261,0.939 1.084,1.642 2.105,1.642 l 14.356,0 c 1.227,0 2.222,-1.029 2.222,-2.256"
id="path3274"
style="fill:#5e9536;fill-opacity:1;fill-rule:nonzero;stroke:none" /><g
transform="translate(27.1812,36.0693)"
id="g3276"><path
d="m 0,0 c 1.027,-1.732 2.794,-4.881 7.005,-4.881 3.042,0 4.99,1.59 4.99,4.068 0,3.398 -3.645,3.751 -6.087,3.998 -1.803,0.177 -3.114,0.317 -4.387,0.814 -0.743,0.282 -1.912,0.777 -2.654,1.592 -1.203,1.273 -1.91,2.972 -1.91,4.777 0,4.069 3.433,7.111 8.067,7.111 3.29,0 5.201,-1.769 6.51,-2.972 l 0,2.476 3.148,0 0,-7.147 -3.113,0 c -0.532,1.167 -0.815,1.593 -1.38,2.196 -1.309,1.342 -3.006,2.086 -4.74,2.086 -2.761,0 -4.847,-1.522 -4.847,-3.504 0,-1.061 0.635,-1.979 1.732,-2.474 0.921,-0.426 1.805,-0.638 3.999,-0.887 2.229,-0.248 3.184,-0.459 4.564,-0.92 3.997,-1.38 5.023,-4.812 5.023,-6.934 0,-4.528 -3.431,-7.853 -8.101,-7.853 -3.963,0 -5.874,2.121 -7.785,4.175 l 0,-3.682 c 0,0 0.094,-1.572 -1.589,-1.572 -1.682,0 -1.594,1.572 -1.594,1.572 L -3.149,0 0,0 z"
id="path3278"
style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none" /></g><g
transform="translate(54.0635,32.6055)"
id="g3280"><path
d="m 0,0 c 3.006,0 4.702,2.441 4.702,6.826 0,4.246 -1.696,6.794 -4.564,6.794 -2.935,0 -4.988,-2.723 -4.988,-6.581 C -4.85,2.722 -2.938,0 0,0 m -4.815,13.584 c 1.487,1.946 3.113,3.149 5.981,3.149 4.493,0 7.607,-4.104 7.607,-10.013 0,-5.696 -3.221,-9.834 -7.642,-9.834 -3.397,0 -4.883,1.839 -5.946,3.148 l 0,-5.802 2.265,0 0,-3.007 -8.244,0 0,3.007 2.264,0 0,19.068 -2.264,0 0,3.008 5.979,0 0,-2.724 z"
id="path3282"
style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none" /></g><g
transform="translate(77.4663,44.4209)"
id="g3284"><path
d="M 0,0 C 0.14,4.351 -1.58,6.922 -4.799,7.025 -7.875,7.124 -9.872,4.5 -10.01,0.256 -10.142,-3.775 -8.282,-6.49 -5.241,-6.59 -2.165,-6.688 -0.133,-4.137 0,0 m -13.962,0.667 c 0.186,5.693 4.031,9.64 9.229,9.472 5.375,-0.175 8.888,-4.254 8.696,-10.125 -0.192,-5.943 -4,-9.887 -9.375,-9.712 -5.269,0.171 -8.744,4.388 -8.55,10.365"
id="path3286"
style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none" /></g><g
transform="translate(85.4258,54.4688)"
id="g3288"><path
d="m 0,0 3.679,0 0,-5.556 4.246,0 0,-3.007 -4.246,0 0,-10.93 c 0,-2.411 1.92,-2.053 4.246,-2.053 l 0,-3.078 -2.549,0 c -3.21,0 -5.376,1.359 -5.376,4.951 l 0,11.11 -2.433,0 c 0,0 -0.054,0.777 -0.157,1.47 -0.101,0.695 -0.333,1.537 -0.333,1.537 L 0,-5.556 0,0 z"
id="path3290"
style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none" /></g><g
transform="translate(94.9492,48.9131)"
id="g3292"><path
d="m 0,0 5.943,0 0,-15.99 2.124,0 0,-3.008 -8.101,0 0,3.008 2.264,0 0,13.018 -2.23,0 L 0,0 z"
id="path3294"
style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none" /></g><path
d="m 97.18,54.469 3.713,0 0,-3.325 -3.713,0 0,3.325 z"
id="path3296"
style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none" /><g
transform="translate(110.4639,45.9053)"
id="g3298"><path
d="m 0,0 0,-12.982 2.37,0 0,-3.008 -8.278,0 0,3.008 2.192,0 0,12.982 -2.972,0 0,3.008 2.972,0 0,4.106 c 0,2.476 1.487,3.537 4.883,3.537 l 2.724,0 0,-2.936 -2.157,0 C 0.426,7.715 0,7.29 0,6.087 l 0,-3.079 10.083,0 L 10.083,0 8.172,0 12.455,-11.956 16.24,0 l -1.948,0 0,3.008 7.184,0 0,-3.008 -1.769,0 -6.546,-19.74 c -0.706,-2.053 -1.875,-2.655 -4.492,-2.655 l -2.69,0 0,3.116 c 0.566,-0.036 1.451,0 1.913,0 1.662,0 2.086,0.352 2.652,2.122 l 0.247,0.884 L 4.635,0 0,0 z"
id="path3300"
style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none" /></g><g
transform="translate(133.2666,48.8789)"
id="g3302"><path
d="m 0,0 2.194,0 0,-1.11 -0.37,0 0,0.726 -0.493,0 0,-2.162 0.331,0 0,-0.383 -1.135,0 0,0.383 0.338,0 0,2.162 -0.495,0 0,-0.713 -0.37,0 L 0,0 z"
id="path3304"
style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none" /></g><g
transform="translate(135.7598,48.8789)"
id="g3306"><path
d="M 0,0 1.014,0 1.678,-2.214 2.352,0 l 1.001,0 0,-0.384 -0.295,0 0,-2.162 0.295,0 0,-0.383 -0.724,0 0,2.624 -0.788,-2.624 -0.312,0 -0.797,2.617 0,-2.617 -0.732,0 0,0.383 0.303,0 0,2.162 L 0,-0.384 0,0 z"
id="path3308"
style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none" /></g><g
transform="translate(79.1582,58.2109)"
id="g3310"><path
d="m 0,0 c -2.762,1.688 -6.185,2.082 -10.174,1.169 -0.352,-0.08 -0.571,-0.43 -0.491,-0.781 0.079,-0.352 0.431,-0.571 0.782,-0.492 3.646,0.833 6.742,0.494 9.202,-1.009 0.306,-0.188 0.71,-0.091 0.899,0.217 C 0.404,-0.587 0.309,-0.186 0,0"
id="path3312"
style="fill:#5e9536;fill-opacity:1;fill-rule:nonzero;stroke:none" /></g><g
transform="translate(80.3877,61.29)"
id="g3314"><path
d="m 0,0 c -3.233,1.986 -7.963,2.547 -11.768,1.392 -0.431,-0.13 -0.675,-0.586 -0.544,-1.018 0.132,-0.432 0.588,-0.676 1.02,-0.544 3.329,1.01 7.623,0.51 10.438,-1.223 0.383,-0.234 0.886,-0.114 1.124,0.27 C 0.504,-0.739 0.384,-0.237 0,0"
id="path3316"
style="fill:#538434;fill-opacity:1;fill-rule:nonzero;stroke:none" /></g><g
transform="translate(81.7666,64.8672)"
id="g3318"><path
d="m 0,0 c -3.885,2.307 -10.037,2.524 -13.738,1.399 -0.518,-0.157 -0.81,-0.704 -0.652,-1.221 0.156,-0.518 0.702,-0.811 1.222,-0.654 3.221,0.98 8.792,0.794 12.169,-1.211 0.464,-0.276 1.065,-0.124 1.341,0.342 C 0.618,-0.878 0.466,-0.278 0,0"
id="path3320"
style="fill:#467232;fill-opacity:1;fill-rule:nonzero;stroke:none" /></g></g></g></g></svg>

Before

Width:  |  Height:  |  Size: 5.6 KiB

After

Width:  |  Height:  |  Size: 11 KiB

View File

@@ -1,14 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg width="500px" height="500px" viewBox="0 0 500 500" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:sketch="http://www.bohemiancoding.com/sketch/ns">
<title>station-artist</title>
<description>Created with Sketch (http://www.bohemiancoding.com/sketch)</description>
<defs>
<linearGradient x1="50%" y1="50%" x2="50%" y2="170.589844%" id="linearGradient-1">
<stop stop-color="rgb(254,255,254)" offset="0%"></stop>
<stop stop-color="rgb(0,0,0)" offset="100%"></stop>
</linearGradient>
</defs>
<g id="Page 1" fill="rgb(215,215,215)" fill-rule="evenodd">
<path d="M245.48466,91 C161.807243,91 94,158.187218 94,241.021267 C94,323.885705 161.807243,391 245.48466,391 C329.137526,391 397,323.885699 397,241.021267 C397.006157,158.188001 329.137415,91 245.48466,91 L245.48466,91 L245.48466,91 M328.597284,221.910531 L283.447689,255.452489 L299.857913,308.566669 C300.496157,310.61443 299.741311,312.856636 297.986141,314.126613 C297.090145,314.776792 296.034589,315.10492 294.966758,315.10492 C293.960297,315.10492 292.947699,314.807174 292.076251,314.211683 L245.496742,282.462275 L198.929509,314.211683 C197.155929,315.433048 194.774789,315.390513 193.019619,314.126613 C191.264449,312.856637 190.515741,310.620506 191.147847,308.566669 L207.551935,255.452489 L162.408476,221.910531 C160.671717,220.616248 159.947556,218.374041 160.610347,216.320204 C161.279276,214.254214 163.187869,212.850556 165.378763,212.801944 L222.071977,211.671726 L240.673094,159.213801 C241.397255,157.190346 243.32426,155.8353 245.490606,155.8353 C247.656952,155.8353 249.602368,157.190346 250.320392,159.213801 L268.92151,211.671726 L325.614723,212.801944 C327.793343,212.850556 329.708074,214.254214 330.377002,216.320204 C331.052217,218.375335 330.334166,220.616913 328.597284,221.910531 C328.597284,221.910531 330.334166,220.616913 328.597284,221.910531 L328.597284,221.910531" id="Shape" stroke="rgb(150,150,150)" stroke-width="1" fill="url(#linearGradient-1)"></path>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 2.1 KiB

View File

@@ -1,18 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg width="500px" height="500px" viewBox="0 0 500 500" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:sketch="http://www.bohemiancoding.com/sketch/ns">
<title>station-genre</title>
<description>Created with Sketch (http://www.bohemiancoding.com/sketch)</description>
<defs>
<linearGradient x1="50%" y1="50%" x2="50%" y2="170.589844%" id="linearGradient-1">
<stop stop-color="rgb(254,255,254)" offset="0%"></stop>
<stop stop-color="rgb(0,0,0)" offset="100%"></stop>
</linearGradient>
</defs>
<g id="Page 1" fill="rgb(215,215,215)" fill-rule="evenodd">
<g id="Group" fill="rgb(0,0,0)">
<path d="M389.045442,230.429716 C383.570272,224.959128 241.528204,83.1885389 241.528204,83.1885389 L179.981162,84.9885389 L160.691354,104.235598 C166.349226,110.976775 171.677056,117.782657 175.749546,123.859127 C179.185524,122.035598 183.098886,121.000304 187.259779,121.000304 C200.856353,121.000304 211.871525,132.006186 211.871525,145.576774 C211.871525,159.14148 200.850461,170.141481 187.259779,170.141481 C173.669099,170.141481 162.648034,159.141481 162.648034,145.576774 C162.648034,142.612068 163.19614,139.788539 164.1568,137.159127 C158.104056,132.623833 151.208523,126.559127 144.560523,120.34148 L129.631991,135.24148 L129.631991,198.565012 L276.789714,345.447361 C276.789714,345.447361 281.192246,351.47089 287.22731,345.447361 C293.262374,339.423831 389.045432,243.817946 389.045432,243.817946 C389.045432,243.817946 394.514592,235.894158 389.045442,230.429716 C389.045442,230.429716 394.514592,235.894158 389.045442,230.429716 L389.045442,230.429716" id="Shape" stroke="rgb(150,150,150)" stroke-width="1" fill="url(#linearGradient-1)"></path>
<path d="M178.83767,140.964384 C179.008585,140.964384 179.309159,140.952619 179.427032,140.82909 C182.916053,137.346737 161.374883,108.893797 132.325244,78.5584992 C131.523712,78.4114404 129.867605,78.1349698 127.975755,78.1349698 C125.512223,78.1349698 122.20001,78.5996757 120.437818,80.8290875 C118.940839,82.7173229 118.622584,85.7232053 119.506627,89.7761465 C138.165813,109.723719 170.456964,140.964384 178.83767,140.964384 C178.83767,140.964384 170.456964,140.964384 178.83767,140.964384 L178.83767,140.964384" id="Shape" stroke="rgb(150,150,150)" stroke-width="1" fill="url(#linearGradient-1)"></path>
<path d="M141.000749,228.394014 L196.30056,367.023423 C196.30056,367.023423 197.726815,373.270482 204.551624,370.576364 C207.793113,369.288128 233.895943,358.911658 260.440793,348.358717 L260.423112,348.364599 L141.000749,228.394014 L141.000749,228.394014 L141.000749,228.394014" id="Shape" stroke="rgb(150,150,150)" stroke-width="1" fill="url(#linearGradient-1)"></path>
</g>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 2.8 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 11 KiB

View File

@@ -1,15 +1,9 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg width="150px" height="150px" viewBox="0 0 150 150" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:sketch="http://www.bohemiancoding.com/sketch/ns">
<svg width="80px" height="80px" viewBox="0 0 80 80" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:sketch="http://www.bohemiancoding.com/sketch/ns">
<title>track-placeholder-grid</title>
<description>Created with Sketch (http://www.bohemiancoding.com/sketch)</description>
<defs>
<path d="M368.5,17 C391.419818,17 410,-1.58018175 410,-24.5 C410,-47.4198183 391.419818,-66 368.5,-66 C345.580182,-66 327,-47.4198183 327,-24.5 C327,-1.58018175 345.580182,17 368.5,17 Z M368.5,153 C270.469452,153 191,73.5305479 191,-24.5 C191,-122.530548 270.469452,-202 368.5,-202 C466.530548,-202 546,-122.530548 546,-24.5 C546,73.5305479 466.530548,153 368.5,153 Z M368.5,153" id="path-1"></path>
</defs>
<g id="Page 1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd" sketch:type="MSPage">
<g id="Oval 1">
<use fill="#0B0A0A" fill-rule="evenodd" sketch:type="MSShapeGroup" xlink:href="#path-1"></use>
<use fill="none" xlink:href="#path-1"></use>
</g>
<path d="M38.4021158,37.7907545 C40.0517338,35.3447574 42.8643728,34 46.3186782,34 C49.4628449,34 52.8315951,35.1337089 55.8180184,37.1954897 C56.2484698,37.4904163 56.6227753,37.8313407 57.023817,38.1533248 C57.202949,38.2994353 57.395449,38.44284 57.5745809,38.5943619 C57.7617337,38.7567069 57.9435392,38.9217576 58.1226712,39.089514 C58.2723934,39.2275072 58.4247892,39.3546774 58.5718378,39.5007879 C62.6972197,43.5648229 64.3227754,48.8220933 62.7212824,52.6182596 L62.7212824,86.7052854 L93.1336088,96.2078764 L93.1336088,67.5918735 C92.9036789,67.5783457 92.6737472,67.5377611 92.4438154,67.5052919 C92.1310065,67.5323474 91.812843,67.5539945 91.483991,67.5539945 C88.3425,67.5539945 84.9657279,66.4202865 81.9926736,64.3612097 C79.0543725,62.3346047 76.8005198,59.6126198 75.6428447,56.7012345 C74.3461442,53.4462181 74.5520114,50.1749685 76.1989563,47.7289712 C77.851248,45.2829739 80.6665592,43.9382166 84.1208668,43.9382166 C87.2570126,43.9382166 90.6337838,45.0719255 93.6121861,47.1337063 C96.5451375,49.1603124 98.7989918,51.8795901 99.9593391,54.790976 C100.317603,55.6919905 100.552881,56.5902992 100.683888,57.4777848 C101.242672,59.5855633 101.215936,61.6473441 100.47802,63.3952581 L100.47802,106.497842 C100.47802,106.597955 100.47802,106.692656 100.461978,106.787357 L100.461978,108.169995 C100.461978,109.068303 100.039547,109.915203 99.3283669,110.448235 C98.6145127,110.983974 97.6974641,111.138201 96.8392349,110.873038 L57.2778101,98.5077654 C56.1040948,98.1424893 55.3046851,97.0439551 55.3046851,95.8020163 C55.3046851,88.7995375 55.3180532,81.7862365 55.3340949,74.7567003 C55.3501372,69.012392 55.3608309,63.2545598 55.3688524,57.4886084 C54.8234358,57.5643691 54.2699976,57.618484 53.6844771,57.618484 C50.5403101,57.618484 47.1688867,56.4820692 44.1904837,54.4229937 C41.2521852,52.3936819 39.0063519,49.6771106 37.8460047,46.765724 C36.5493032,43.5080021 36.7498242,40.2367517 38.4021158,37.7907545" id="path1534" fill="#9B9B9B" sketch:type="MSShapeGroup" transform="translate(69.035570, 72.500000) scale(1, -1) translate(-69.035570, -72.500000) "></path>
<defs></defs>
<g id="Page 1" fill="rgb(215,215,215)" fill-rule="evenodd">
<path d="M0,0 L80,0 L80,80 L0,80 Z M16.875,15.9537457 C15.7162501,17.6713457 15.575625,19.9684456 16.485,22.2560456 C17.29875,24.300446 18.87375,26.2080454 20.9343749,27.6330454 C23.0231251,29.0789457 25.3874999,29.8769459 27.5925002,29.8769459 C28.0031249,29.8769459 28.3912504,29.8389459 28.7737504,29.7857461 C28.7681249,33.8346462 28.7606254,37.8778449 28.7493749,41.911547 C28.7381249,46.8477471 28.7287499,51.7725466 28.7287499,56.6897468 C28.7287499,57.5618467 29.2893749,58.3332468 30.1124999,58.5897468 L57.8568758,67.2727463 C58.4587507,67.4589463 59.1018758,67.3506463 59.6025008,66.9744463 C60.1012507,66.6001462 60.3975008,66.0054463 60.3975008,65.3746463 L60.3975008,64.4037463 C60.4087508,64.3372463 60.4087508,64.2707463 60.4087508,64.2004463 L60.4087508,33.9334457 C60.9262508,32.7060457 60.9450008,31.2582456 60.5531258,29.7781457 C60.4612508,29.1549458 60.2962508,28.5241457 60.0450008,27.8914457 C59.2312507,25.8470458 57.6506256,23.9375459 55.5937506,22.5144459 C53.5050009,21.0666459 51.1368757,20.2705459 48.9375007,20.2705459 C46.5149993,20.2705459 44.5406252,21.2148458 43.3818752,22.9324459 C42.2268748,24.650046 42.0825005,26.9471453 42.9918748,29.2328454 C43.8037509,31.2772449 45.3843749,33.1886459 47.4450016,34.6117452 C49.5300007,36.0576464 51.8981266,36.8537457 54.1012502,36.8537457 C54.3318737,36.8537457 54.5550013,36.838545 54.7743738,36.8195464 C54.9356246,36.8423466 55.0968754,36.8708454 55.258125,36.8803447 L55.258125,56.9747451 L33.93,50.301945 L33.93,26.3657458 C35.0531249,23.7000456 33.9131249,20.0083456 31.0199999,17.1545457 C30.9168749,17.0519457 30.8099999,16.9626457 30.7049999,16.8657457 C30.5793749,16.7479457 30.4518749,16.6320457 30.3206249,16.5180457 C30.1949999,16.4116457 30.0599999,16.3109457 29.9343749,16.2083457 C29.6531249,15.9822457 29.3906249,15.7428457 29.0887499,15.5357457 C26.9943751,14.0879457 24.6318749,13.2918457 22.4268749,13.2918457 C20.0043751,13.2918457 18.031875,14.2361458 16.875,15.9537457 Z M16.875,15.9537457" id="Rectangle 1" fill="rgb(0,0,0)" transform="translate(40.000000, 40.000000) scale(1, -1) translate(-40.000000, -40.000000)"></path>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 3.2 KiB

After

Width:  |  Height:  |  Size: 2.6 KiB

View File

@@ -1,18 +1,14 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg width="40px" height="40px" viewBox="0 0 40 40" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:sketch="http://www.bohemiancoding.com/sketch/ns">
<title>Slice 1</title>
<svg width="38px" height="38px" viewBox="0 0 38 38" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:sketch="http://www.bohemiancoding.com/sketch/ns">
<title>view-toggle-inactive-centre</title>
<description>Created with Sketch (http://www.bohemiancoding.com/sketch)</description>
<defs>
<linearGradient x1="50%" y1="0%" x2="50%" y2="321.977796%" id="linearGradient-1">
<stop stop-color="#FEFFFE" offset="0%"></stop>
<stop stop-color="#000000" offset="100%"></stop>
<linearGradient x1="50%" y1="0%" x2="50%" y2="173.920641%" id="linearGradient-1">
<stop stop-color="rgb(254,255,254)" offset="0%"></stop>
<stop stop-color="rgb(0,0,0)" offset="100%"></stop>
</linearGradient>
</defs>
<g id="Page 1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd" sketch:type="MSPage">
<g id="view-toggle-inactive-centre" sketch:type="MSLayerGroup" transform="translate(1.000000, 1.000000)" stroke="#969696" fill="url(#linearGradient-1)">
<g id="Page 1" sketch:type="MSShapeGroup">
<path d="M0,0 L0,38 L38,38 L38,0 L0,0 L0,0 Z M0,0" id="Rectangle 1" transform="translate(19.000000, 19.000000) scale(-1, 1) translate(-19.000000, -19.000000) "></path>
</g>
</g>
<g id="Page 1" fill="rgb(215,215,215)" fill-rule="evenodd">
<path d="M0,0 L0,38 L38,38 L38,0 L0,0 Z M0,0" id="Rectangle 1" stroke="rgb(150,150,150)" stroke-width="1" fill="url(#linearGradient-1)" transform="translate(19.000000, 19.000000) scale(-1, 1) translate(-19.000000, -19.000000)"></path>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 1.2 KiB

After

Width:  |  Height:  |  Size: 985 B

View File

@@ -1,18 +1,14 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg width="40px" height="40px" viewBox="0 0 40 40" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:sketch="http://www.bohemiancoding.com/sketch/ns">
<title>Slice 1</title>
<svg width="38px" height="38px" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:sketch="http://www.bohemiancoding.com/sketch/ns">
<title>view-toggle-inactive-right</title>
<description>Created with Sketch (http://www.bohemiancoding.com/sketch)</description>
<defs>
<linearGradient x1="50%" y1="0%" x2="50%" y2="321.977796%" id="linearGradient-1">
<stop stop-color="#FEFFFE" offset="0%"></stop>
<stop stop-color="#000000" offset="100%"></stop>
<linearGradient x1="50%" y1="0%" x2="50%" y2="173.920641%" id="linearGradient-1">
<stop stop-color="rgb(254,255,254)" offset="0%"></stop>
<stop stop-color="rgb(0,0,0)" offset="100%"></stop>
</linearGradient>
</defs>
<g id="Page 1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd" sketch:type="MSPage">
<g id="view-toggle-inactive-right" sketch:type="MSLayerGroup" transform="translate(1.000000, 1.000000)" stroke="#969696" fill="url(#linearGradient-1)">
<g id="Page 1" sketch:type="MSShapeGroup">
<path d="M0,0 L0,38 L26.0026482,38 C32.6286026,38 38,32.636124 38,26.0026482 L38,11.9973518 C38,5.37139735 32.636124,0 26.0026482,0 L0,0 L0,0 Z M0,0" id="Rectangle 2"></path>
</g>
</g>
<g id="Page 1" fill="rgb(215,215,215)" fill-rule="evenodd">
<path d="M0,0 L0,38 L26.0026482,38 C32.6286026,38 38,32.636124 38,26.0026482 L38,11.9973518 C38,5.37139735 32.636124,0 26.0026482,0 L0,0 Z M0,0" id="Rectangle 2" stroke="rgb(150,150,150)" stroke-width="1" fill="url(#linearGradient-1)"></path>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 1.2 KiB

After

Width:  |  Height:  |  Size: 972 B

View File

@@ -1,18 +1,16 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg width="40px" height="40px" viewBox="0 0 40 40" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:sketch="http://www.bohemiancoding.com/sketch/ns">
<title>Slice 1</title>
<svg width="38px" height="38px" viewBox="0 0 38 38" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:sketch="http://www.bohemiancoding.com/sketch/ns">
<title>view-toggle-pressed-left</title>
<description>Created with Sketch (http://www.bohemiancoding.com/sketch)</description>
<defs>
<linearGradient x1="50%" y1="0%" x2="50%" y2="321.977796%" id="linearGradient-1">
<stop stop-color="#FEFFFE" offset="0%"></stop>
<stop stop-color="#000000" offset="100%"></stop>
<linearGradient x1="50%" y1="50%" x2="50%" y2="0%" id="linearGradient-1">
<stop stop-color="rgb(37,41,44)" offset="0%"></stop>
<stop stop-color="rgb(0,0,0)" stop-opacity="0.5" offset="100%"></stop>
</linearGradient>
<path d="M11.9973518,0 C5.37139735,0 0,5.36387601 0,11.9973518 L0,26.0026482 C0,32.6286026 5.36387601,38 11.9973518,38 L38,38 L38,0 L11.9973518,0 Z M11.9973518,0" id="path-2"></path>
</defs>
<g id="Page 1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd" sketch:type="MSPage">
<g id="view-toggle-inactive-left" sketch:type="MSLayerGroup" transform="translate(1.000000, 1.000000)" stroke="#969696" fill="url(#linearGradient-1)">
<g id="Page 1" sketch:type="MSShapeGroup">
<path d="M11.9973518,0 C5.37139735,0 0,5.36387601 0,11.9973518 L0,26.0026482 C0,32.6286026 5.36387601,38 11.9973518,38 L38,38 L38,0 L11.9973518,0 L11.9973518,0 Z M11.9973518,0" id="Rectangle 2"></path>
</g>
</g>
<g id="Page 1" fill="rgb(215,215,215)" fill-rule="evenodd">
<use id="Rectangle 2" stroke="rgb(150,150,150)" stroke-width="1" fill="url(#linearGradient-1)" xlink:href="#path-2"></use>
<use id="Rectangle 2-1" stroke="none" fill="none" xlink:href="#path-2"></use>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 1.2 KiB

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

View File

@@ -1,22 +1,3 @@
/* === This file is part of Tomahawk Player - <http://tomahawk-player.org> ===
*
* Copyright 2011, Dominik Schmidt <domme@tomahawk-player.org>
* Copyright 2011-2012, Leo Franchi <lfranchi@kde.org>
* Copyright 2013, Teo Mrnjavac <teo@kde.org>
*
* Tomahawk is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* Tomahawk 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 General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with Tomahawk. If not, see <http://www.gnu.org/licenses/>.
*/
// if run in phantomjs add fake Tomahawk environment
if(window.Tomahawk === undefined)
@@ -79,14 +60,6 @@ Tomahawk.extend = function(object, members) {
};
var TomahawkResolverCapability = {
NullCapability: 0,
Browsable: 1,
PlaylistSync: 2,
AccountFactory: 4
};
// Resolver BaseObject, inherit it to implement your own resolver
var TomahawkResolver = {
init: function()
@@ -133,28 +106,6 @@ var TomahawkResolver = {
search: function( qid, searchString )
{
return this.resolve( qid, "", "", searchString );
},
artists: function( qid )
{
return {
qid: qid
};
},
albums: function( qid, artist )
{
return {
qid: qid
};
},
tracks: function( qid, artist, album )
{
return {
qid: qid
};
},
collection: function()
{
return {};
}
};

View File

@@ -1,21 +0,0 @@
import QtQuick 1.1
import tomahawk 1.0
import "tomahawkimports"
// Only to be used together with DeclarativeHeader C++ class
// If you want to use the header in QML, use FlexibleHeader
Item {
anchors.fill: parent
FlexibleHeader {
anchors.fill: parent
icon: iconSource
title: caption
subtitle: description
buttonModel: buttonList
onSearchTextChanged: mainView.setFilterText(searchText)
onCurrentButtonIndexChanged: mainView.viewModeSelected(currentButtonIndex)
}
}

View File

@@ -1,65 +0,0 @@
import QtQuick 1.1
//import tomahawk 1.0
import "tomahawkimports"
Rectangle {
anchors.fill: parent
color: "black"
Text {
id: fontMetrics
text: "Here's some sample text"
opacity: 0
}
GridView {
id: gridView
anchors.fill: parent
//anchors.rightMargin: scrollBar.width
cellHeight: cellWidth
cellWidth: calculateCoverSize(gridView.width - 3)
cacheBuffer: cellHeight * 5
function calculateCoverSize(rectWidth) {
var itemWidth = fontMetrics.width;
var itemsPerRow = Math.max( 1, Math.floor( rectWidth / itemWidth ) );
var remSpace = rectWidth - ( itemsPerRow * itemWidth );
var extraSpace = remSpace / itemsPerRow;
return itemWidth + extraSpace;
}
model: mainModel
delegate: CoverImage {
height: gridView.cellHeight// * 0.95
width: gridView.cellWidth// * 0.95
showLabels: true
showMirror: false
artistName: model.artistName
trackName: model.trackName
artworkId: model.coverID
showPlayButton: true
currentlyPlaying: isPlaying
smooth: !gridView.moving
onClicked: {
rootView.onItemClicked(index)
}
onPlayClicked: {
rootView.onItemPlayClicked(index)
}
}
}
ScrollBar {
id: scrollBar
listView: gridView
orientation: Qt.Vertical
margin: -width
}
}

View File

@@ -1,35 +0,0 @@
import QtQuick 1.1
import "tomahawkimports"
Rectangle {
width: 1400
height: 900
color: "black"
BusyIndicator {
anchors.centerIn: parent
anchors.horizontalCenterOffset: 200
height: 200
width: 200
count: 11
}
Image {
id: svgSpinner
source: "../images/loading-animation.svg"
smooth: true
height: 200
width: 200
anchors.centerIn: parent
anchors.horizontalCenterOffset: -200
Timer {
running: true
repeat: true
interval: 200
onTriggered: svgSpinner.rotation += 360 / 12
}
}
}

View File

@@ -1,165 +0,0 @@
import QtQuick 1.1
import tomahawk 1.0
import "tomahawkimports"
import "stations"
Rectangle {
id: scene
color: "black"
anchors.fill: parent
state: "list"
FlexibleHeader {
id: header
anchors {
left: parent.left
top: parent.top
right: parent.right
}
height: defaultFontHeight * 4
width: parent.width
icon: "../images/station.svg"
title: mainView.title
subtitle: generator.summary
showSearchField: false
showBackButton: stationListView.currentIndex > 0
showNextButton: mainView.configured && stationListView.currentIndex == 2
nextButtonText: "Save"
backButtonText: "Back"
z: 1 //cover albumcovers that may leave their area
onBackPressed: {
inputBubble.opacity = 0
stationListView.decrementCurrentIndex()
switch (stationListView.currentIndex) {
case 0:
subtitle = ""
break;
case 1:
subtitle = modeModel.get(stationCreator.modeIndex).headerSubtitle + "..."
break;
}
}
// In our case the next button is the save button
onNextPressed: {
inputBubble.opacity = 1
inputBubble.forceActiveFocus();
}
}
ListModel {
id: modeModel
ListElement { label: "By Artist"; image: "../../images/station-artist.svg"; creatorContent: "stations/CreateByArtist.qml"; headerSubtitle: "Songs from" }
ListElement { label: "By Genre"; image: "../../images/station-genre.svg"; creatorContent: "stations/CreateByGenre.qml"; headerSubtitle: "Songs of genre" }
ListElement { label: "By Year"; image: "../../images/station-year.svg"; creatorContent: "stations/CreateByYear.qml"; headerSubtitle: "Songs from" }
}
VisualItemModel {
id: stationVisualModel
StationCreatorPage1 {
height: scene.height - header.height
width: scene.width
model: modeModel
onItemClicked: {
stationCreator.modeIndex = index
// FIXME: This is a workaround for the ListView scrolling too slow on the first time
// Lets reinitialize the current index to something invalid and back to 0 (what it already is) before scrolling over to page 1
stationListView.currentIndex = -1
stationListView.currentIndex = 0
stationListView.incrementCurrentIndex()
header.subtitle = modeModel.get(index).headerSubtitle + "..."
}
}
StationCreatorPage2 {
id: stationCreator
height: stationListView.height
width: stationListView.width
property int modeIndex
content: modeModel.get(modeIndex).creatorContent
onNext: {
stationListView.incrementCurrentIndex()
header.subtitle = modeModel.get(modeIndex).headerSubtitle + " " + text
}
}
StationItem {
id: stationItem
height: stationListView.height
width: stationListView.width
}
}
VisualItemModel {
id: configuredStationVisualModel
StationItem {
id: cfgstationItem
height: stationListView.height
width: stationListView.width
}
}
ListView {
id: stationListView
anchors {
left: parent.left
top: header.bottom
right: parent.right
bottom: parent.bottom
}
contentHeight: height
contentWidth: width
orientation: ListView.Horizontal
//model: mainView.configured ? configuredStationVisualModel : stationVisualModel
interactive: false
highlightMoveDuration: 300
onHeightChanged: {
contentHeight = scene.height
}
onWidthChanged: {
contentWidth = scene.width
}
Component.onCompleted: {
model = mainView.configured ? configuredStationVisualModel : stationVisualModel
}
onModelChanged: print("ccccccccccccc", mainView.configured)
}
InputBubble {
id: inputBubble
text: "Station name:"
width: defaultFontHeight * 18
anchors.top: header.bottom
anchors.right: parent.right
anchors.rightMargin: defaultFontHeight / 2
anchors.topMargin: -defaultFontHeight / 2
z: 2
opacity: 0
arrowPosition: 0.95
onAccepted: {
mainView.title = inputBubble.inputText
inputBubble.opacity = 0
header.showNextButton = false
header.showBackButton = false
inputBubble.opacity = 0
}
onRejected: inputBubble.opacity = 0
}
}

View File

@@ -1,74 +0,0 @@
import QtQuick 1.1
import tomahawk 1.0
import "../tomahawkimports"
Item {
id: root
anchors.fill: parent
signal done(string text)
function createStation(artist) {
mainView.startStationFromArtist(artist)
root.done(artist)
}
Column {
id: upperColumn
anchors.fill: parent
anchors.margins: defaultFontHeight
spacing: defaultFontHeight
HeaderLabel {
id: headerText
text: "Pick one of your top artists,"
}
Item {
height: parent.height - headerText.height*2 - artistInputField.height - parent.spacing * 3
width: parent.width
ArtistView {
id: artistView
height: parent.height
width: parent.width
model: artistChartsModel
clip: true
cellWidth: defaultFontHeight * 12
cellHeight: defaultFontHeight * 12
spacing: defaultFontHeight / 2
onItemClicked: {
createStation(artistChartsModel.itemFromIndex(index).artistName);
}
}
ScrollBar {
listView: artistView
}
}
HeaderLabel {
text: "Or enter an artist name"
}
Row {
height: artistInputField.height
width: Math.min(defaultFontHeight * 30, parent.width)
spacing: defaultFontHeight * 0.5
anchors.horizontalCenter: parent.horizontalCenter
InputField {
id: artistInputField
width: parent.width - createFromInputButton.width - parent.spacing
onAccepted: createStation(text)
}
PushButton {
id: createFromInputButton
text: "Create station"
enabled: artistInputField.text.length > 2
onClicked: createStation(artistInputField.text)
}
}
}
}

View File

@@ -1,94 +0,0 @@
import QtQuick 1.1
import tomahawk 1.0
import "../tomahawkimports"
Item {
id: root
anchors.fill: parent
signal done(string text)
function createStation(genre) {
mainView.startStationFromGenre(genre)
root.done(genre)
}
ListModel {
id: styleModel
ListElement { modelData: "acoustic" }
ListElement { modelData: "alternative" }
ListElement { modelData: "alternative rock" }
ListElement { modelData: "classic" }
ListElement { modelData: "folk" }
ListElement { modelData: "indie" }
ListElement { modelData: "pop" }
ListElement { modelData: "rock" }
ListElement { modelData: "hip-hop" }
ListElement { modelData: "punk" }
ListElement { modelData: "grunge" }
ListElement { modelData: "indie" }
ListElement { modelData: "electronic" }
ListElement { modelData: "country" }
ListElement { modelData: "jazz" }
ListElement { modelData: "psychodelic" }
ListElement { modelData: "soundtrack" }
ListElement { modelData: "reggae" }
ListElement { modelData: "house" }
ListElement { modelData: "drum and base" }
}
Column {
id: upperColumn
anchors.fill: parent
anchors.bottomMargin: defaultFontHeight
spacing: defaultFontHeight
HeaderLabel {
id: headerText
text: "Enter a genre,"
}
Row {
width: Math.min(defaultFontHeight * 30, parent.width)
height: parent.height * 0.2
spacing: defaultFontHeight * 0.5
anchors.horizontalCenter: parent.horizontalCenter
z: 2
InputField {
id: genreInputField
width: parent.width - createFromInputButton.width - parent.spacing
completionModel: allGenres
onAccepted: createStation(text);
}
PushButton {
id: createFromInputButton
text: "Create station"
height: genreInputField.height
enabled: genreInputField.text.length > 2
onClicked: createStation(genreInputField.text)
}
}
HeaderLabel {
text: "Or, pick one of your most listened genres"
}
Item {
height: parent.height - y
width: parent.width
clip: true
TagCloud {
anchors.fill: parent
anchors.margins: parent.width / 6
model: styleModel
onTagClicked: {
root.createStation(tag);
}
}
}
}
}

View File

@@ -1,89 +0,0 @@
import QtQuick 1.1
import tomahawk 1.0
import "../tomahawkimports"
Item {
id: root
anchors.fill: parent
signal done(string text)
function createStationFromYear(year) {
mainView.startStationFromYear(year)
root.done(year)
}
function createStationFromTo(yearFrom, yearTo) {
mainView.startStationFromTo(yearFrom, yearTo)
root.done(yearFrom + " to " + yearTo)
}
Column {
id: upperColumn
anchors.horizontalCenter: parent.horizontalCenter
height: parent.height
width: defaultFontHeight * 30
anchors.bottomMargin: defaultFontHeight
spacing: defaultFontHeight
HeaderLabel {
id: headerText
text: "Enter a year or pick a range"
}
Row {
height: yearInputField.height
width: parent.width
spacing: defaultFontHeight * 0.5
Text {
text: "Year:"
color: "white"
anchors.verticalCenter: parent.verticalCenter
}
InputField {
id: yearInputField
width: parent.width - createFromInputButton.width - parent.spacing
onAccepted: createStation(text)
}
}
DoubleSlider {
id: yearSlider
width: parent.width
height: defaultFontHeight * 4
min: 1960
max: new Date().getFullYear()
lowerSliderPos: 1990
upperSliderPos: 2010
minMaxLabelsVisible: false
opacity: yearInputField.text.length > 0 ? 0.3 : 1
Behavior on opacity {
NumberAnimation { duration: 200 }
}
}
PushButton {
id: createFromInputButton
text: "Go!"
enabled: yearInputField.text.length == 0 || (yearInputField.text >= yearSlider.min && yearInputField.text <= yearSlider.max)
anchors.horizontalCenter: parent.horizontalCenter
onClicked: {
if (yearInputField.text.length > 0) {
createStationFromYear(yearInputField.text)
} else {
createStationFromTo(yearSlider.lowerSliderPos, yearSlider.upperSliderPos)
}
}
// TODO: move some disabled look/animation to the button itself
opacity: enabled ? 1 : 0.3
Behavior on opacity {
NumberAnimation { duration: 200 }
}
}
}
}

View File

@@ -1,79 +0,0 @@
import QtQuick 1.1
import tomahawk 1.0
import "tomahawkimports"
Item {
id: fineTuneView
property color textColor: "white"
signal done();
Grid {
anchors.top: parent.top
anchors.bottom: parent.bottom
anchors.margins: 50
anchors.horizontalCenter: parent.horizontalCenter
width: scene.width / 2
spacing: 50
columns: 2
Text {
color: fineTuneView.textColor
text: "Name:"
}
InputField {
text: echonestStation.name
onAccepted: {
print("text changed!!!")
echonestStation.name = text;
}
}
Text {
id: tempoText
text: "Tempo:"
color: "white"
}
DoubleSlider {
width: 500
height: tempoText.height
min: 0
max: 500
lowerSliderPos: echonestStation.minTempo
upperSliderPos: echonestStation.maxTempo
onValueChanged: echonestStation.setTempo( lowerSliderPos, upperSliderPos )
}
Text {
id: hotnessText
text: "Hotness:"
color: "white"
}
DoubleSlider {
width: 500
height: hotnessText.height
min: 0
max: 100
minLabel: "Less"
maxLabel: "More"
showFloatingLabel: false
lowerSliderPos: echonestStation.minHotttness * 100
upperSliderPos: echonestStation.maxHotttness * 100
onValueChanged: echonestStation.setHotttness( 1.0 * lowerSliderPos / 100, 1.0 * upperSliderPos / 100 )
}
}
Button {
id: configureButton
onClicked: fineTuneView.done();
text: "configure"
anchors.bottom: parent.bottom
anchors.bottomMargin: 20
anchors.horizontalCenter: parent.horizontalCenter
}
}

View File

@@ -1,65 +0,0 @@
import QtQuick 1.1
import tomahawk 1.0
import "../tomahawkimports"
Item {
id: root
property alias model: gridView.model
property int spacing: 10
signal itemClicked(int index)
GridView {
id: gridView
anchors.centerIn: parent
width: root.width * 9 / 10
height: cellHeight
interactive: false
cellWidth: (width - 1) / 3
cellHeight: cellWidth //* 10 / 16
delegate: Image {
width: gridView.cellWidth - root.spacing
height: gridView.cellHeight - root.spacing
source: image
smooth: true
Rectangle {
id: textBackground
anchors {
left: parent.left
bottom: parent.bottom
right: parent.right
}
height: parent.height / 5
color: "black"
opacity: .5
}
Text {
anchors.centerIn: textBackground
text: label
color: "white"
font.bold: true
}
Rectangle {
id: hoverShade
anchors.fill: parent
color: "white"
opacity: mouseArea.containsMouse ? .2 : 0
Behavior on opacity {
NumberAnimation { easing.type: Easing.Linear; duration: 300 }
}
}
MouseArea {
id: mouseArea
anchors.fill: parent
hoverEnabled: true
onClicked: root.itemClicked(index)
}
}
}
}

View File

@@ -1,25 +0,0 @@
import QtQuick 1.1
import tomahawk 1.0
import "../tomahawkimports"
Item {
id: root
property int margins: defaultFontHeight * 2
property alias content: contentLoader.source
signal next(string text)
Loader {
id: contentLoader
anchors.fill: parent
anchors.margins: root.margins
}
Connections {
target: contentLoader.item
onDone: root.next(text)
}
}

View File

@@ -1,37 +0,0 @@
import QtQuick 1.1
import tomahawk 1.0
import "../tomahawkimports"
Item {
id: stationItem
CoverFlow {
id: coverView
interactive: false
anchors.fill: parent
backgroundColor: scene.color
model: dynamicModel
currentIndex: currentlyPlayedIndex
onItemPlayPauseClicked: {
mainView.playItem(index)
}
onItemClicked: {
mainView.playItem(index)
}
}
BusyIndicator {
id: busyIndicator
anchors.centerIn: parent
height: defaultFontHeight * 4
width: height
// count: 12
opacity: mainView.loading ? 1 : 0
running: mainView.loading
}
}

View File

@@ -1,58 +0,0 @@
import QtQuick 1.1
import tomahawk 1.0
GridView {
id: root
signal itemClicked(int index)
property int spacing
delegate: Item {
width: root.cellWidth - root.spacing / 2
height: root.cellHeight - root.spacing / 2
Rectangle {
id: background
anchors.fill: parent
radius: defaultFontHeight / 2
opacity: 0.5
gradient: Gradient {
GradientStop { position: 0.0; color: "#00FFFFFF" }
GradientStop { position: 1.0; color: "#AAFFFFFF" }
}
states: [
State {
name: "hovered"; when: mouseArea.containsMouse
PropertyChanges { target: background; opacity: 1 }
}
]
transitions: [
Transition {
from: "*"; to: "hovered"
NumberAnimation { properties: "opacity"; duration: 100 }
},
Transition {
from: "hovered"; to: "*"
NumberAnimation { properties: "opacity"; duration: 600 }
}
]
}
CoverImage {
id: coverImage
height: parent.height
width: height
showLabels: true
artworkId: model.coverID
artistName: model.artistName
}
MouseArea {
id: mouseArea
anchors.fill: parent
onClicked: root.itemClicked(index)
hoverEnabled: true
}
}
}

View File

@@ -1,52 +0,0 @@
import QtQuick 1.1
Item {
id: busyIndicator
width: 100
height: width
property int barWidth: width / 10
property int barHeight: height / 4
property int count: 12
property color color: "white"
property int currentHighlight: 0
property bool running: true
property int interval: 200
Behavior on opacity {
NumberAnimation { duration: 500 }
}
Repeater {
model: busyIndicator.count
Item {
height: parent.height
width: busyIndicator.barWidth
anchors.centerIn: parent
Rectangle {
anchors {
top: parent.top
left: parent.left
right: parent.right
}
height: busyIndicator.barHeight
radius: width / 2
color: busyIndicator.color
}
rotation: 360 / busyIndicator.count * index
opacity: 1 - ((index > busyIndicator.currentHighlight ? busyIndicator.currentHighlight + busyIndicator.count : busyIndicator.currentHighlight) - index) / busyIndicator.count
Behavior on opacity {
NumberAnimation { duration: busyIndicator.interval }
}
}
}
Timer {
interval: busyIndicator.interval
running: busyIndicator.running
repeat: true
onTriggered: parent.currentHighlight = (parent.currentHighlight + 1) % busyIndicator.count
}
}

View File

@@ -1,44 +0,0 @@
import QtQuick 1.1
Rectangle {
id: root
height: contentRow.height + defaultFontHeight / 2
width: contentRow.width + defaultFontHeight / 2
property alias text: buttonText.text
property alias imageSource: image.source
property bool enabled: true
color: "transparent"
border.width: defaultFontHeight / 16
border.color: buttonMouseArea.containsMouse ? "lightblue" : "transparent"
radius: defaultFontHeight / 4
signal clicked()
Row {
id: contentRow
spacing: defaultFontHeight / 4
width: childrenRect.width
height: childrenRect.height
anchors.centerIn: parent
Image {
id: image
height: defaultFontHeight
width: source.length == 0 ? 0 : height
}
Text {
id: buttonText
color: root.enabled ? "black" : "grey"
}
}
MouseArea {
id: buttonMouseArea
anchors.fill: parent
hoverEnabled: root.enabled
enabled: root.enabled
onClicked: root.clicked();
}
}

View File

@@ -1,135 +0,0 @@
import QtQuick 1.1
import tomahawk 1.0
PathView {
id: coverView
// The start coordinates for the covers
// Default is left, centered in height
property int pathStartX: 0
property int pathStartY: height
// The size of the covers in the path
property int coverSize: height
property color backgroundColor: "black"
// emitted when a cover is clicked
signal itemClicked(int index)
// emitted when a cover is clicked
signal itemPlayPauseClicked(int index)
preferredHighlightBegin: 0.2 // scene.width / 11000
preferredHighlightEnd: preferredHighlightBegin
pathItemCount: 5
//highlightMoveDuration: 500
property bool itemHovered: false
delegate: Item {
id: delegateItem
height: coverView.coverSize
width: coverView.coverSize
scale: PathView.itemScale
// itemBrightness: PathView.itemBrightness - ((coverView.itemHovered && !coverDelegate.containsMouse) ? .4 : 0)
property double itemBrightness: PathView.itemBrightness
property double itemOpacity: PathView.itemOpacity
property int _origZ
z: coverView.width - x
CoverImage {
id: coverDelegate
height: coverView.coverSize
width: coverView.coverSize
anchors {
top: parent.top
right: parent.right
}
showLabels: true
showMirror: true
artistName: model.artistName
trackName: model.trackName
artworkId: model.coverID
showPlayButton: true
currentlyPlaying: isPlaying
smooth: true
// itemBrightness: PathView.itemBrightness - ((coverView.itemHovered && !coverDelegate.containsMouse) ? .4 : 0)
itemBrightness: coverDelegate.containsMouse ? 1 : parent.itemBrightness * (coverView.itemHovered ? .5 : 1)
opacity: parent.itemOpacity
z: coverView.width - x
onPlayClicked: {
console.log("***************")
coverView.itemPlayPauseClicked(index)
}
onClicked: {
coverView.itemClicked(index)
}
onContainsMouseChanged: {
if (containsMouse) {
delegateItem._origZ = delegateItem.z;
coverView.itemHovered = true
} else {
coverView.itemHovered = false
}
}
}
states: [
State {
name: "hovered"; when: coverDelegate.containsMouse && !coverView.moving && index !== currentIndex
PropertyChanges {
target: delegateItem
width: coverView.coverSize * 2
z: delegateItem._origZ
}
}
]
transitions: [
Transition {
NumberAnimation {
properties: "width"
duration: 300
easing.type: Easing.InOutSine
}
}
]
}
path: Path {
startX: coverView.pathStartX
startY: coverView.pathStartY
PathAttribute { name: "itemOpacity"; value: 0 }
PathAttribute { name: "itemBrightness"; value: 0 }
PathAttribute { name: "itemScale"; value: 1.3 }
PathLine { x: coverView.width / 4; y: coverView.height / 4 * 3}
PathPercent { value: 0.1 }
PathAttribute { name: "itemOpacity"; value: 0 }
PathAttribute { name: "itemBrightness"; value: 1 }
PathAttribute { name: "itemScale"; value: 1.0 }
PathLine { x: coverView.width / 2; y: coverView.height / 2}
PathPercent { value: 0.2 }
PathAttribute { name: "itemOpacity"; value: 1 }
PathAttribute { name: "itemBrightness"; value: 1 }
PathAttribute { name: "itemScale"; value: 0.5 }
PathLine { x: coverView.width; y: 0 }
PathPercent { value: 1 }
PathAttribute { name: "itemOpacity"; value: 1 }
PathAttribute { name: "itemBrightness"; value: 0 }
PathAttribute { name: "itemScale"; value: 0.1 }
}
}

View File

@@ -1,84 +0,0 @@
import QtQuick 1.1
import tomahawk 1.0
ListView {
id: coverView
property color backgroundColor: "black"
property int coverSize: height / 2
// emitted when a cover is clicked
signal itemClicked(int index)
// emitted when a cover is clicked
signal itemPlayPauseClicked(int index)
preferredHighlightBegin: (width / 2) - (coverSize / 4)
preferredHighlightEnd: preferredHighlightBegin + coverSize / 2
snapMode: ListView.SnapToItem
highlightRangeMode: ListView.StrictlyEnforceRange
highlightMoveDuration: 200
property bool itemHovered: false
orientation: ListView.Horizontal
delegate: Item {
id: delegateItem
height: parent.height
width: coverView.coverSize / 2
anchors.verticalCenter: ListView.view.verticalCenter
property real distanceFromLeftEdge: -coverView.contentX + index*width
property real distanceFromRightEdge: coverView.contentX + coverView.width - (index+1)*width
property real distanceFromEdge: Math.max(distanceFromLeftEdge, distanceFromRightEdge)
scale: 2 - (distanceFromEdge / (coverView.width))
property double itemBrightness: (1.3 - (distanceFromEdge / (coverView.width))) - ((coverView.itemHovered && !coverDelegate.containsMouse) ? .4 : 0)
property double itemOpacity: coverView.itemHovered && !coverDelegate.containsMouse ? 0.4 : 1
property int _origZ
z: -Math.abs(currentIndex - index)
CoverImage {
id: coverDelegate
height: coverView.coverSize / 2
width: parent.width
anchors {
verticalCenter: parent.verticalCenter
right: parent.right
}
showLabels: true
showMirror: false
artistName: model.artistName
trackName: model.trackName
artworkId: model.coverID
showPlayButton: true
currentlyPlaying: isPlaying
smooth: true
itemBrightness: coverDelegate.containsMouse ? 1 : parent.itemBrightness * (coverView.itemHovered ? .5 : 1)
opacity: parent.itemOpacity
z: coverView.width - x
onPlayClicked: {
console.log("***************")
coverView.itemPlayPauseClicked(index)
}
onClicked: {
coverView.itemClicked(index)
}
onContainsMouseChanged: {
if (containsMouse) {
delegateItem._origZ = delegateItem.z;
coverView.itemHovered = true
} else {
coverView.itemHovered = false
}
}
}
}
}

View File

@@ -1,194 +0,0 @@
import QtQuick 1.1
Item {
id: root
// Should the artist + track labels be painted
property bool showLabels: true
// Should the play button be painted on mouse hover?
property bool showPlayButton: false
// if this is true, the play button will be swapped by a pause button
property bool currentlyPlaying: false
// Should the mirror be painted?
property bool showMirror: false
// Labels & Cover
property string artistName
property string trackName
property string artworkId
// The border color for the cover image
property color borderColor: "black"
// The border width for the cover image
property int borderWidth: 2
// sets the brightness for the item and its mirror (1: brightest, 0: darkest)
property double itemBrightness: 1
property double mirrorBrightness: .5
// set this to true if you want to smoothly scale the cover (be aware of performance impacts)
property bool smooth: false
// will be emitted when the on hower play button is clicked
signal playClicked()
// will be emitted when the cover is clicked
signal clicked()
// will be emitted when the cover is hovered by the mouse
property alias containsMouse: mouseArea.containsMouse
MouseArea {
id: mouseArea
anchors.fill: parent
hoverEnabled: true
onClicked: {
print("Cover clicked");
root.clicked();
}
}
Rectangle {
id: itemShadow
color: "black"
anchors.fill: parent
//opacity: 1 - itemBrightness
Behavior on opacity {
NumberAnimation { easing.type: Easing.Linear; duration: 300 }
}
}
Component {
id: coverImage
Item {
property bool isMirror: false
Image {
anchors.fill: parent
source: "image://albumart/" + artworkId + (isMirror ? "-mirror" : "") + (showLabels ? "-labels" : "")
smooth: root.smooth
opacity: itemBrightness
Behavior on opacity {
NumberAnimation { duration: 300 }
}
}
Rectangle {
id: itemGlow
anchors.fill: parent
anchors.topMargin: isMirror ? parent.height / 2 : 0
opacity: (mouseArea.containsMouse ? .2 : 0)
Gradient {
id: glowGradient
GradientStop { position: 0.0; color: "white" }
GradientStop { position: 0.7; color: "white" }
GradientStop { position: 0.8; color: "#00000000" }
GradientStop { position: 1.0; color: "#00000000" }
}
Gradient {
id: mirrorGlowGradient
GradientStop { position: 0.0; color: "#00000000" }
GradientStop { position: 0.5; color: "#00000000" }
GradientStop { position: 1.0; color: "#44FFFFFF" }
}
states: [
State {
name: "mirrored"; when: isMirror
PropertyChanges {
target: itemGlow
gradient: mirrorGlowGradient
}
},
State {
name: "normal"; when: !isMirror
PropertyChanges {
target: itemGlow
gradient: glowGradient
}
}
]
Behavior on opacity {
NumberAnimation { easing.type: Easing.Linear; duration: 300 }
}
}
Text {
id: trackText
color: "white"
font.bold: true
text: trackName
anchors { left: parent.left; right: parent.right; bottom: artistText.top }
anchors.margins: 2
horizontalAlignment: Text.AlignHCenter
elide: Text.ElideRight
opacity: showLabels ? itemBrightness * (isMirror ? 0.5 : 1): 0
font.pixelSize: root.height / 15
Behavior on opacity {
NumberAnimation { duration: 300 }
}
}
Text {
id: artistText
color: "white"
font.bold: trackText.text.length == 0
text: artistName
anchors { left: parent.left; right: parent.right; bottom: parent.bottom }
anchors.margins: root.height / 20
horizontalAlignment: Text.AlignHCenter
elide: Text.ElideRight
opacity: showLabels ? itemBrightness * (isMirror ? 0.5 : 1) : 0
font.pixelSize: trackText.text.length == 0 ? root.height / 10 : root.height / 15
Behavior on opacity {
NumberAnimation { duration: 300 }
}
}
}
}
Loader {
sourceComponent: coverImage
anchors.fill: parent
}
Loader {
id: mirroredCover
sourceComponent: parent.showMirror ? coverImage : undefined
anchors.fill: parent
onLoaded: {
item.isMirror = true
}
transform : [
Rotation {
angle: 180; origin.y: root.height
axis.x: 1; axis.y: 0; axis.z: 0
}
]
}
Image {
id: playButton
visible: showPlayButton ? (mouseArea.containsMouse || currentlyPlaying) : false
source: currentlyPlaying ? "../../images/pause-rest.svg" : "../../images/play-rest.svg"
anchors.centerIn: parent
height: mirroredCover.height / 5
width: height
smooth: root.smooth
MouseArea {
anchors.fill: parent
onClicked: {
print("Play button clicked");
root.playClicked();
}
}
}
}

View File

@@ -1,225 +0,0 @@
import QtQuick 1.1
Item {
id: root
property int min: 0
property int max: 100
/** The labels next to the slider
* if empty, min and max values are used
*/
property string minLabel: ""
property string maxLabel: ""
/** Should the floating label indicating the current position be shown? */
property bool showFloatingLabel: true
property bool minMaxLabelsVisible: true
property int lowerSliderPos: 25
property int upperSliderPos: 75
onUpperSliderPosChanged: print("fooooooooo", upperSliderPos)
signal valueChanged()
QtObject {
id: priv
property int steps: root.max - root.min + 1
property int sliderHeight: root.height / 3
property int sliderWidth: sliderHeight / 2
}
Row {
anchors.fill: parent
anchors.topMargin: defaultFontHeight * 1.2
anchors.bottomMargin: defaultFontHeight * 1.2
spacing: 10
Text {
id: minText
text: root.minLabel.length > 0 ? root.minLabel : min
color: "white"
visible: root.minMaxLabelsVisible
}
Item {
id: sliderRect
height: root.height / 4
property int maxWidth: parent.width - (minText.visible ? minText.width : 0) - (maxText.visible ? maxText.width : 0) - parent.spacing * 2
width: maxWidth - (maxWidth % priv.steps)
anchors.horizontalCenter: parent.horizontalCenter
function sliderPosToValue( sliderPos ) {
var percent = sliderPos * 100 / (sliderRect.width - priv.sliderWidth/2);
return Math.floor(percent * (priv.steps-1) / 100) + root.min
}
function valueToSloderPos( value ) {
var percent = (value - root.min) * 100 / (priv.steps-1)
return percent * (sliderRect.width - priv.sliderWidth/2) / 100
}
Rectangle {
id: sliderBase
height: parent.height
width: parent.width + defaultFontHeight * 1.5
color: "white"
radius: height / 2
anchors.centerIn: parent
gradient: Gradient {
GradientStop { position: 0.0; color: "#ffffffff" }
GradientStop { position: 1.0; color: "#aaffffff" }
}
Rectangle {
anchors.fill: sliderBase
anchors.leftMargin: lowerSlider.x + priv.sliderWidth
anchors.rightMargin: sliderBase.width - upperSlider.x - priv.sliderWidth
gradient: Gradient {
GradientStop { position: 0.0; color: "#aa962c26" }
GradientStop { position: 1.0; color: "#962c26" }
}
}
Row {
id: stepRow
anchors.fill: parent
anchors.leftMargin: defaultFontHeight - lineWidth/2
anchors.rightMargin: defaultFontHeight - lineWidth/2
property int stepCount: root.max - root.min + 1
property int lineHeight: height
property int lineWidth: lineHeight / 15
spacing: (width - (stepCount * lineWidth)) / stepCount
Repeater {
model: stepRow.stepCount
Rectangle {
id: marker
height: stepRow.lineHeight * (isHighlight ? 1.2 : 1)
width: stepRow.lineWidth
color: "black"
property bool isHighlight: index % 10 === 0
gradient: Gradient {
GradientStop { position: 0.0; color: marker.isHighlight ? "white" : "black" }
GradientStop { position: 1.0; color: marker.isHighlight ? "#aaffffff" : "black" }
}
Text {
text: root.min + index
visible: marker.isHighlight
anchors.horizontalCenter: marker.horizontalCenter
anchors.top: marker.bottom
anchors.topMargin: defaultFontHeight / 2
color: "white"
}
}
}
}
}
Rectangle {
id: lowerSlider
height: priv.sliderHeight
width: priv.sliderWidth
anchors.verticalCenter: sliderBase.verticalCenter
radius: height/4
border.color: "black"
border.width: 2
x: sliderRect.valueToSloderPos(root.lowerSliderPos) - priv.sliderWidth/2
Rectangle {
id: lowerFloatingRect
color: "white"
anchors.bottom: lowerSlider.top
anchors.bottomMargin: 10
// visible: root.showFloatingLabel && lowerSliderMouseArea.pressed
width: lowerFloatingText.width * 1.2
height: lowerFloatingText.height + height * 1.2
x: -(width - priv.sliderWidth) / 2
radius: height / 8
Text {
id: lowerFloatingText
anchors.centerIn: parent
text: sliderRect.sliderPosToValue(lowerSlider.x + priv.sliderWidth/2)
}
}
}
MouseArea {
id: lowerSliderMouseArea
anchors.fill: lowerSlider
drag.target: lowerSlider
drag.axis: "XAxis"
drag.minimumX: -priv.sliderWidth / 2
drag.maximumX: upperSlider.x - priv.sliderWidth
onReleased: {
root.lowerSliderPos = sliderRect.sliderPosToValue( lowerSlider.x + priv.sliderWidth/2 );
root.valueChanged();
}
}
Rectangle {
id: upperSlider
height: priv.sliderHeight
width: priv.sliderWidth
anchors.verticalCenter: sliderBase.verticalCenter
radius: height / 4
border.color: "black"
border.width: 2
x: sliderRect.valueToSloderPos(root.upperSliderPos)
Rectangle {
id: upperFloatingRect
color: "white"
anchors.bottom: upperSlider.top
anchors.bottomMargin: 10
// visible: root.showFloatingLabel && upperSliderMouseArea.pressed
width: upperFloatingText.width * 1.2
height: upperFloatingText.height + height * 1.2
radius: height / 4
x: -(width - priv.sliderWidth) / 2
Text {
id: upperFloatingText
anchors.centerIn: parent
text: sliderRect.sliderPosToValue(upperSlider.x + priv.sliderWidth/2)
}
}
}
MouseArea {
id: upperSliderMouseArea
anchors.fill: upperSlider
onClicked: print("button pressed")
drag.target: upperSlider
drag.axis: "XAxis"
drag.minimumX: lowerSlider.x + priv.sliderWidth
drag.maximumX: parent.width - priv.sliderWidth
onReleased: {
root.upperSliderPos = sliderRect.sliderPosToValue( upperSlider.x + priv.sliderWidth/2 );
root.valueChanged();
}
}
}
Text {
id: maxText
text: root.maxLabel.length > 0 ? root.maxLabel : max
color: "white"
visible: root.minMaxLabelsVisible
}
}
}

View File

@@ -1,223 +0,0 @@
import QtQuick 1.1
import tomahawk 1.0
Rectangle {
id: root
// The icon
property alias icon: iconImage.source
// The title
property alias title: titleItem.titleText
// The subtitle/description
property alias subtitle: subtitleText.text
// The model for the ToggleViewButtons.
// "modelData" role name holds the iconSource
// => You can use a QStringList or StandardListModel here
property alias buttonModel: toggleViewButtons.model
// The index of the currently selected item
property alias currentButtonIndex: toggleViewButtons.currentIndex
// Should we show the searchfield?
property bool showSearchField: true
// The SearchFields text
property alias searchText: searchField.text
property bool showBackButton: false
property bool showNextButton: false
property string backButtonText: "Back"
property string nextButtonText: "Next"
// Layout spacing
property int spacing: defaultFontHeight * 0.5
signal backPressed()
signal nextPressed()
signal savePressed()
gradient: Gradient {
GradientStop { position: 0.0; color: "#615858" }
GradientStop { position: 1.0; color: "#231F1F" }
}
Row {
id: leftRow
anchors {
left: parent.left
top: parent.top
bottom: parent.bottom
right: rightRow.left
}
anchors.margins: root.spacing
spacing: root.spacing
Image {
id: iconImage
height: parent.height * 0.8
width: height
anchors.verticalCenter: parent.verticalCenter
smooth: true
}
Column {
height: childrenRect.height
width: parent.width - iconImage.width - parent.spacing
anchors.verticalCenter: parent.verticalCenter
Item {
id: titleItem
height: captionText1.height
width: parent.width
clip: true
property string titleText
onTitleTextChanged: {
if(captionText1.text.length > 0) {
captionText2.text = titleText;
renewTitleAnimation.start();
} else {
captionText1.text = titleText;
}
}
ParallelAnimation {
id: renewTitleAnimation
property int duration: 500
property variant easingType: Easing.OutBounce;
NumberAnimation { target: captionText2; property: "anchors.topMargin"; to: 0; duration: renewTitleAnimation.duration; easing.type: renewTitleAnimation.easingType }
NumberAnimation { target: captionText1; property: "anchors.topMargin"; to: captionText1.height * 2; duration: renewTitleAnimation.duration; easing.type: renewTitleAnimation.easingType }
onCompleted: {
captionText1.text = titleItem.titleText
captionText2.anchors.topMargin = -captionText2.height * 2
captionText1.anchors.topMargin = 0
}
}
Text {
id: captionText1
color: "white"
anchors.left: parent.left
anchors.top: parent.top
font.pointSize: defaultFontSize * 1.5
font.bold: true
width: parent.width
elide: Text.ElideRight
}
Text {
id: captionText2
color: "white"
anchors.left: parent.left
anchors.top: parent.top
anchors.topMargin: -height * 2
font.pointSize: defaultFontSize * 1.5
font.bold: true
width: parent.width
elide: Text.ElideRight
}
}
Text {
id: subtitleText
color: "white"
font.pointSize: defaultFontSize * 1.2
width: parent.width
elide: Text.ElideRight
height: text.length > 0 ? defaultFontHeight : 0
opacity: text.length > 0 ? 1 : 0
Behavior on height {
NumberAnimation { duration: 200 }
}
Behavior on opacity {
NumberAnimation { duration: 200 }
}
onTextChanged: {
if (text.length > 0) {
animationText.text = text
}
}
Text {
id: animationText
color: parent.color
font: parent.font
elide: parent.elide
anchors.fill: parent
}
}
}
}
Row {
id: rightRow
anchors {
top: parent.top
right: parent.right
rightMargin: -backButton.width - root.spacing - nextButton.width
bottom: parent.bottom
margins: root.spacing
}
width: childrenRect.width
spacing: root.spacing
layoutDirection: Qt.RightToLeft
states: [
State {
name: "oneVisible"; when: root.showBackButton && !root.showNextButton
PropertyChanges {
target: rightRow
anchors.rightMargin: -nextButton.width
}
},
State {
name: "bothVisible"; when: root.showBackButton && root.showNextButton
PropertyChanges {
target: rightRow
anchors.rightMargin: root.spacing
}
}
]
Behavior on anchors.rightMargin {
NumberAnimation { duration: 200 }
}
PushButton {
id: nextButton
anchors.verticalCenter: parent.verticalCenter
text: root.nextButtonText
onClicked: root.nextPressed();
}
PushButton {
id: backButton
anchors.verticalCenter: parent.verticalCenter
text: root.backButtonText
onClicked: root.backPressed();
}
InputField {
id: searchField
visible: root.showSearchField
anchors.verticalCenter: parent.verticalCenter
placeholderText: "Search..."
showSearchIcon: true
}
ToggleViewButtons {
id: toggleViewButtons
anchors.verticalCenter: parent.verticalCenter
height: defaultFontHeight * 1.5
}
}
}

View File

@@ -1,7 +0,0 @@
import QtQuick 1.1
Text {
color: "white"
font.pointSize: defaultFontSize + 5
font.bold: true
}

View File

@@ -1,114 +0,0 @@
import QtQuick 1.1
import tomahawk 1.0
FocusScope {
id: root
property alias text: messageText.text
property alias inputText: inputField.text
property real arrowPosition: 1
height: contentColumn.height + defaultFontHeight * 2
signal accepted()
signal rejected()
onFocusChanged: {
if (focus) {
inputField.forceActiveFocus()
}
}
Behavior on opacity {
NumberAnimation { duration: 200 }
}
MouseArea {
anchors.fill: parent
anchors.margins: -999999999
hoverEnabled: root.opacity > 0
enabled: root.opacity > 0
onClicked: root.rejected();
}
Item {
id: backgroundItem
anchors.fill: parent
opacity: 0.9
Rectangle {
id: background
anchors.fill: parent
color: "white"
border.color: "black"
border.width: defaultFontHeight / 10
radius: defaultFontHeight / 2
anchors.topMargin: defaultFontHeight / 4
}
Item {
clip: true
anchors.bottom: backgroundItem.top
anchors.bottomMargin: -background.border.width*3
height: defaultFontHeight
width: height
x: defaultFontHeight - arrowRect.width/2 + (root.width - defaultFontHeight*2) * arrowPosition
Rectangle {
id: arrowRect
height: defaultFontHeight / 1.8
width: height
rotation: 45
color: "white"
anchors.centerIn: parent
anchors.verticalCenterOffset: parent.height/2
border.color: "black"
border.width: defaultFontHeight / 10
}
}
}
Column {
id: contentColumn
width: parent.width - defaultFontHeight
height: childrenRect.height
anchors.centerIn: parent
anchors.verticalCenterOffset: defaultFontHeight / 4
spacing: defaultFontHeight / 2
Row {
width: parent.width
height: childrenRect.height
spacing: defaultFontHeight / 2
Text {
id: messageText
wrapMode: Text.WordWrap
anchors.verticalCenter: parent.verticalCenter
}
InputField {
id: inputField
width: parent.width - x
anchors.verticalCenter: parent.verticalCenter
}
}
Row {
height: childrenRect.height
anchors.right: parent.right
spacing: defaultFontHeight
Button {
text: "OK"
imageSource: "qrc:///data/images/ok.svg"
enabled: inputField.text.length > 0
onClicked: root.accepted()
}
Button {
text: "Cancel"
imageSource: "qrc:///data/images/cancel.svg"
onClicked: {
inputField.text = ""
root.rejected()
}
}
}
}
}

View File

@@ -1,162 +0,0 @@
import QtQuick 1.1
Rectangle {
id: root
color: "white"
border.color: "black"
border.width: defaultFontHeight * 0.1
radius: defaultFontHeight * 0.25
height: textInput.height * 1.4
width: 300
property bool showSearchIcon: false
property string text: ""
property string placeholderText: ""
property variant completionModel
property int spacing: defaultFontHeight * 0.2
signal accepted( string text )
onFocusChanged: {
if(focus) {
textInput.forceActiveFocus();
}
}
Image {
id: searchIcon
anchors {
left: parent.left
leftMargin: root.spacing
verticalCenter: parent.verticalCenter
}
height: parent.height * 0.6
width: root.showSearchIcon ? height : 1
opacity: root.showSearchIcon ? 1 : 0
smooth: true
source: "../../images/search-icon.svg"
}
Item {
id: textItem
anchors.left: searchIcon.right
anchors.leftMargin: root.spacing
anchors.right: clearIcon.right
anchors.rightMargin: root.spacing
height: textInput.height
anchors.verticalCenter: parent.verticalCenter
TextInput {
id: textInput
width: parent.width
anchors.centerIn: parent
text: root.text
font.pointSize: defaultFontSize
onAccepted: root.accepted( text );
onTextChanged: {
root.text = text;
realCompletionListModel.clear();
for (var i in completionModel) {
if (completionModel[i].indexOf(text) == 0) {
realCompletionListModel.append({modelData: completionModel[i]})
}
}
}
}
Text {
width: parent.width
anchors.centerIn: parent
text: root.text.length === 0 ? root.placeholderText : ""
color: "lightgray"
font.pointSize: defaultFontSize
}
}
Image {
id: clearIcon
anchors {
right: parent.right
rightMargin: root.spacing
verticalCenter: parent.verticalCenter
}
height: parent.height * 0.8
width: (root.showSearchIcon && root.text.length > 0) ? height : 1
opacity: (root.showSearchIcon && root.text.length > 0) ? 1 : 0
smooth: true
source: "../../images/search-box-dismiss-x.svg"
MouseArea {
anchors.fill: parent
onClicked: textInput.text = ""
}
}
Image {
// source: "../../images/inputfield-border.svg"
anchors.fill: parent
anchors.margins: root.radius * 0.1
clip: true
}
Rectangle {
anchors {
top: parent.bottom
left: parent.left
right: parent.right
}
height: Math.min(completionListView.count, 10) * completionListView.delegateHeight
color: "white"
ListView {
id: completionListView
anchors.fill: parent
anchors.rightMargin: scrollBar.width + scrollBar.margin
clip: true
model: ListModel {
id: realCompletionListModel
}
property int delegateHeight: defaultFontHeight * 1.25
delegate: Rectangle {
height: completionListView.delegateHeight
color: delegateMouseArea.containsMouse ? "lightblue" : "transparent"
width: parent.width
Text {
anchors {
left: parent.left
right: parent.right
verticalCenter: parent.verticalCenter
margins: defaultFontHeight / 4
}
text: modelData
}
MouseArea {
id: delegateMouseArea
anchors.fill: parent
hoverEnabled: true
onClicked: {
textInput.text = modelData
realCompletionListModel.clear();
}
}
}
}
ScrollBar {
id: scrollBar
listView: completionListView
color: "black"
margin: 0
}
}
MouseArea {
anchors.fill: parent
anchors.margins: -99999999
z: -1
enabled: completionListView.count > 0
onClicked: {
realCompletionListModel.clear();
}
}
}

View File

@@ -1,35 +0,0 @@
import QtQuick 1.1
//import tomahawk 1.0
Rectangle {
id: root
height: buttonText.height * 1.4
width: buttonText.width + (spacing * 2)
radius: defaultFontHeight * 0.25
// border.width: defaultFontHeight * 0.05
// border.color: "#a7a7a7"
color: "white"
/* gradient: Gradient {
GradientStop { position: 0.0; color: mouseArea.pressed ? "#040404" : "#fbfbfb" }
GradientStop { position: 1.0; color: mouseArea.pressed ? "#8e8f8e" : "#787878" }
}*/
property int spacing: defaultFontHeight * 0.5
property alias text: buttonText.text
signal clicked()
Text {
id: buttonText
anchors.centerIn: root
font.pointSize: defaultFontSize
color: mouseArea.pressed ? "grey" : "black"
}
MouseArea {
id: mouseArea
anchors.fill: parent
onClicked: root.clicked()
}
}

View File

@@ -1,43 +0,0 @@
import QtQuick 1.1
import tomahawk 1.0
Rectangle {
id: root
border.width: 4
border.color: enabled ? "white" : "grey"
radius: height / 2
color: (buttonMouseArea.containsMouse && enabled) ? "#22ffffff" : "black"
opacity: hidden ? 0 : 1
height: defaultFontHeight * 2
width: height
property string text
property bool enabled: true
property bool hidden: false
signal clicked()
Behavior on opacity {
NumberAnimation { duration: 200 }
}
Behavior on color {
ColorAnimation { duration: 200 }
}
Text {
anchors.centerIn: parent
text: parent.text
color: root.border.color
font.pixelSize: parent.height * .75
font.bold: true
}
MouseArea {
id: buttonMouseArea
anchors.fill: parent
hoverEnabled: true
enabled: root.enabled
onClicked: parent.clicked()
}
}

View File

@@ -1,71 +0,0 @@
import QtQuick 1.1
Item {
id: scrollBar
width: defaultFontHeight / 2
// the ListView where to attach this scrollbar
property variant listView
// the orientation of the scrollbar
property variant orientation : Qt.Vertical
property int margin: defaultFontHeight * 0.25
property color color: "white"
states: [
State {
name: "hidden"; when: !listView.moving
PropertyChanges { target: scrollBar; opacity: 0 }
},
State {
name: "visible"; when: listView.moving
PropertyChanges { target: scrollBar; opacity: 1 }
}
]
transitions: [
Transition {
from: "hidden"
to: "visible"
NumberAnimation { properties: "opacity"; duration: 200 }
},
Transition {
from: "visible"
to: "hidden"
NumberAnimation { properties: "opacity"; duration: 2000 }
}
]
anchors {
left: orientation == Qt.Vertical ? listView.right : listView.left
leftMargin: orientation == Qt.Vertical ? scrollBar.margin : 0
top: orientation == Qt.Vertical ? listView.top : listView.bottom
topMargin: orientation == Qt.Vertical ? 0 : scrollBar.margin
bottom: orientation == Qt.Vertical ? listView.bottom : undefined
right: orientation == Qt.Vertical ? undefined : listView.right
}
// A light, semi-transparent background
Rectangle {
id: background
anchors.fill: parent
radius: orientation == Qt.Vertical ? (width/2 - 1) : (height/2 - 1)
color: scrollBar.color
opacity: 0.2
clip: true
// Size the bar to the required size, depending upon the orientation.
Rectangle {
property real position: orientation == Qt.Vertical ? (listView.contentY / listView.contentHeight) : (listView.contentX / listView.contentWidth)
property real pageSize: orientation == Qt.Vertical ? (listView.height / listView.contentHeight) : (listView.width / listView.contentWidth)
x: orientation == Qt.Vertical ? 1 : (position * (scrollBar.width-2) + 1)
y: orientation == Qt.Vertical ? (position * (scrollBar.height-2) + 1) : 1
width: orientation == Qt.Vertical ? (parent.width-2) : (pageSize * (scrollBar.width-2))
height: orientation == Qt.Vertical ? (pageSize * (scrollBar.height-2)) : (parent.height-2)
radius: orientation == Qt.Vertical ? (width/2 - 1) : (height/2 - 1)
color: scrollBar.color
opacity: 1
}
}
}

View File

@@ -1,80 +0,0 @@
import QtQuick 1.1
import tomahawk 1.0
Item {
id: tagCloud
property variant model: 10
signal tagClicked( string tag )
function randomNumber(min, max) {
var date = new Date();
return (max - min) * Math.random(date.getSeconds()) + min
}
Flow {
anchors.centerIn: parent
width: parent.width
spacing: defaultFontSize
Repeater {
id: cloudRepeater
model: tagCloud.model
delegate: Item {
id: cloudItem
width: delegateText.width * 1.1
height: delegateText.height
property double itemScale: tagCloud.randomNumber(0.5, 1.2)
scale: itemScale
Text {
id: delegateText
color: "gray"
//text: controlModel.controlAt( index ).summary
text: modelData
font.pixelSize: defaultFontHeight * 1.8
anchors.verticalCenter: parent.verticalCenter
//anchors.verticalCenterOffset: tagCloud.randomNumber(0, 15)
states: [
State {
name: "hovered"; when: cloudItemMouseArea.containsMouse
PropertyChanges {
target: delegateText
color: "white"
}
}
]
transitions: [
Transition {
from: "*"
to: "hovered"
ColorAnimation {
duration: 200
}
},
Transition {
from: "hovered"
to: "*"
ColorAnimation {
duration: 1000
}
}
]
}
MouseArea {
id: cloudItemMouseArea
hoverEnabled: true
anchors.fill: parent
onClicked: tagCloud.tagClicked( modelData )
}
Behavior on scale {
NumberAnimation { easing: Easing.Linear; duration: 1000 }
}
}
}
}
}

View File

@@ -1,34 +0,0 @@
import QtQuick 1.1
import tomahawk 1.0
Row {
id: root
width: repeater.width
property alias model: repeater.model
property int currentIndex: 0
Repeater {
id: repeater
height: root.height
width: count * height
delegate: Image {
height: repeater.height
width: height
source: "../../images/view-toggle-" + (index === root.currentIndex ? "active-" : "inactive-" ) + (index === 0 ? "left" : ( index === repeater.count - 1 ? "right" : "centre" )) + ".svg"
smooth: true
Image {
anchors.fill: parent
source: "../../images/" + modelData + (index === root.currentIndex ? "-active.svg" : "-inactive.svg")
}
MouseArea {
id: mouseArea
anchors.fill: parent
onClicked: root.currentIndex = index
}
}
}
}

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

Some files were not shown because too many files have changed in this diff Show More