Hello community,
here is the log from the commit of package folder-color for openSUSE:Factory checked in at 2015-05-07 08:29:06
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/folder-color (Old)
and /work/SRC/openSUSE:Factory/.folder-color.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "folder-color"
Changes:
--------
--- /work/SRC/openSUSE:Factory/folder-color/folder-color.changes 2015-03-30 19:33:50.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.folder-color.new/folder-color.changes 2015-05-07 08:29:21.000000000 +0200
@@ -1,0 +2,7 @@
+Wed May 6 11:34:12 UTC 2015 - sor.alexei@meowr.ru
+
+- Update to 0.0.78:
+ * Orange colour changed to Humanity.
+ * Dark recent inside.
+
+-------------------------------------------------------------------
Old:
----
folder-color-caja_0.0.70_all.tar.gz
folder-color-common_0.0.70_all.tar.gz
folder-color_0.0.70_all.tar.gz
New:
----
folder-color-caja_0.0.78.tar.gz
folder-color-common_0.0.78.tar.gz
folder-color_0.0.78.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ folder-color.spec ++++++
--- /var/tmp/diff_new_pack.6yolx5/_old 2015-05-07 08:29:21.000000000 +0200
+++ /var/tmp/diff_new_pack.6yolx5/_new 2015-05-07 08:29:21.000000000 +0200
@@ -19,15 +19,15 @@
%define _name folder_color
%define _version 0.0.7x
Name: folder-color
-Version: 0.0.70
+Version: 0.0.78
Release: 0
Summary: Change a directory colour in Caja and Nautilus
License: GPL-3.0+
Group: Productivity/File utilities
Url: https://launchpad.net/folder-color
-Source0: https://launchpad.net/%{name}/trunk/%{_version}/+download/%{name}-common_%{version}_all.tar.gz
-Source1: https://launchpad.net/%{name}/trunk/%{_version}/+download/%{name}-caja_%{version}_all.tar.gz
-Source2: https://launchpad.net/%{name}/trunk/%{_version}/+download/%{name}_%{version}_all.tar.gz
+Source0: https://launchpad.net/%{name}/trunk/%{_version}/+download/%{name}-common_%{version}.tar.gz
+Source1: https://launchpad.net/%{name}/trunk/%{_version}/+download/%{name}-caja_%{version}.tar.gz
+Source2: https://launchpad.net/%{name}/trunk/%{_version}/+download/%{name}_%{version}.tar.gz
BuildRequires: fdupes
BuildRequires: hicolor-icon-theme
BuildRequires: intltool
++++++ folder-color-caja_0.0.70_all.tar.gz -> folder-color-caja_0.0.78.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/folder-color-caja/caja-extension/folder-color.py new/folder-color-caja/caja-extension/folder-color.py
--- old/folder-color-caja/caja-extension/folder-color.py 2015-03-29 12:04:42.000000000 +0200
+++ new/folder-color-caja/caja-extension/folder-color.py 2015-05-01 18:19:13.000000000 +0200
@@ -1,5 +1,5 @@
# -*- coding: utf-8 -*-
-# Folder Color 0.0.70
+# Folder Color 0.0.78
# Copyright (C) 2012-2015 Marcos Alvarez Costales https://launchpad.net/~costales
#
# Folder Color is free software; you can redistribute it and/or modify
@@ -16,7 +16,7 @@
# along with Folder Color; if not, see http://www.gnu.org/licenses
# for more information.
-import os, urllib, gettext, glob, webbrowser, operator, shutil, ConfigParser
+import os, urllib, gettext, glob, webbrowser, operator, shutil, ConfigParser, subprocess
from gi.repository import Caja, Gtk, GObject, Gio, GLib
# i18n
@@ -31,22 +31,29 @@
self.DEFAULT_PATH_THEME = ''
- self.PLACES = 'places'
- self.EMBLEMS = 'emblems'
- self.CUSTOM = 'custom'
+ self.PLACES = 'places'
+ self.EMBLEMS = 'emblems'
+ self.CUSTOM = 'custom'
+ self.GLOBALCOLOR = 'globalcolor'
self.FOLDER = 'folder'
- self.PRE_PLACES = '_'.join([self.FOLDER, 'color'])
- self.PRE_EMBLEMS = '_'.join([self.FOLDER, 'emblem'])
- self.PRE_CUSTOMS = '_'.join([self.FOLDER, 'custom'])
-
- self.SEARCH_PLACES = '_'.join([self.PRE_PLACES, '*.svg'])
- self.SEARCH_EMBLEMS = '_'.join([self.PRE_EMBLEMS, '*.svg'])
- self.SEARCH_CUSTOMS = ''.join([self.PRE_CUSTOMS, '*.svg'])
-
- self.CHECK_PLACE = 'folder_color_blue'
- self.CHECK_EMBLEM = 'folder_emblem_favorite'
- self.CHECK_CUSTOM = 'folder_custom'
+ self.PRE_PLACES = 'folder_color'
+ self.PRE_EMBLEMS = 'folder_emblem'
+ self.PRE_CUSTOMS = 'folder_custom'
+
+ self.SEARCH_PLACES = 'folder_color_*.svg'
+ self.SEARCH_EMBLEMS = 'folder_emblem_*.svg'
+ self.SEARCH_CUSTOMS = 'folder_custom*.svg'
+ self.SEARCH_GLOBALCOLOR = 'folder_color_globalcolor.svg'
+
+ self.CHECK_PLACE = 'folder_color_blue'
+ self.CHECK_EMBLEM = 'folder_emblem_favorite'
+ self.CHECK_CUSTOM = 'folder_custom'
+ self.CHECK_GLOBALCOLOR = 'folder_color_globalcolor'
+
+ self.EXTRA_HOME = 'folder_extraicons_%s_home'
+ self.EXTRA_REMOTE = 'folder_extraicons_%s_remote'
+ self.EXTRA_RECENT = 'folder_extraicons_%s_recent'
self.DESKTOP = 'desktop'
self.DOCUMENTS = 'documents'
@@ -59,6 +66,7 @@
self.DEFAULT_ICONS = ('undo', 'edit', 'picker', 'preferences', 'default', self.DESKTOP, self.DOCUMENTS, self.DOWNLOADS, self.MUSIC, self.PICTURES, self.PUBLIC, self.TEMPLATES, self.VIDEOS)
self.DEFAULT_FOLDERS = self._get_default_folders()
+ self.ICON_RESOLUTIONS = {'16': '16x16', '22': '22x22', '24': '24x24', '32': '32x32', '48': '48x48', '64': '64x64'}
self.SYSTEM_PATH_THEME = '/usr/share/icons'
self.USER_PATH_THEME = os.path.join(os.getenv('HOME'), '.icons')
@@ -71,12 +79,12 @@
self.VALUE_LIGHT = 'value_light'
self.VALUE_MIDDLE = 'value_middle'
self.VALUE_DARK = 'value_dark'
-
+
# Caja crashed? Allow future Preference dialogs
if remove_pid:
self.lock.remove()
- def get_iconname(self, folder, name, what='places'):
+ def get_iconname(self, folder, name, what='places', get_px='48'):
"""For 'green' returns folder_color_green_downloads"""
if what == self.PLACES:
prefix = self.PRE_PLACES
@@ -89,7 +97,7 @@
if folder in self.DEFAULT_FOLDERS:
iconname = '_'.join([prefix, name.replace(' ', '_').lower(), self.DEFAULT_FOLDERS[folder]])
- filename = ''.join([self.get_path(what), iconname, '.svg'])
+ filename = ''.join([self.get_path(what, get_px), iconname, '.svg'])
if os.path.isfile(filename): # Exist?
return iconname
@@ -103,16 +111,18 @@
icon_name = icon_name.replace(self.PRE_PLACES, '').replace(self.PRE_EMBLEMS, '').replace('_', ' ').strip()
return icon_name
- def get_path(self, what='places'):
+ def get_path(self, what='places', get_px='48'):
"""Get current path. By example: /usr/share/icons/hicolor/48x48/places/"""
icon = Gtk.IconTheme.get_default()
if what == self.PLACES:
- icon_path = icon.lookup_icon(self.CHECK_PLACE, 48, 0)
+ icon_path = icon.lookup_icon(self.CHECK_PLACE, int(get_px), 0)
elif what == self.EMBLEMS:
icon_path = icon.lookup_icon(self.CHECK_EMBLEM, 24, 0)
elif what == self.CUSTOM:
- icon_path = icon.lookup_icon(self.CHECK_CUSTOM, 48, 0)
+ icon_path = icon.lookup_icon(self.CHECK_CUSTOM, int(get_px), 0)
+ elif what == self.GLOBALCOLOR:
+ icon_path = icon.lookup_icon(self.CHECK_GLOBALCOLOR, 16, 0)
else:
return ''
@@ -136,6 +146,8 @@
path = ''.join([self.get_path(what), self.SEARCH_EMBLEMS])
elif what == self.CUSTOM:
path = ''.join([self.get_path(what), self.SEARCH_CUSTOMS])
+ elif what == self.GLOBALCOLOR:
+ path = ''.join([self.get_path(what), self.SEARCH_GLOBALCOLOR])
else:
return available_items
@@ -179,7 +191,8 @@
def _reload_icon(self, folder):
"""Reload the current folder icon"""
- os.system('touch "%s"' % folder)
+ proc = subprocess.Popen(['touch', folder], shell=False)
+ proc.communicate()
def _get_default_folders(self):
"""Default user folders"""
@@ -232,9 +245,12 @@
"""Set an emblem"""
# TODO: Use Gio
if emblem:
- os.system('gvfs-set-attribute -t stringv "%s" metadata::emblems "%s"' % (folder, emblem))
+ cmd = ['gvfs-set-attribute', '-t', 'stringv', folder, 'metadata::emblems', emblem]
else:
- os.system('gvfs-set-attribute -t unset "%s" metadata::emblems' % folder)
+ cmd = ['gvfs-set-attribute', '-t', 'unset', folder, 'metadata::emblems']
+
+ proc = subprocess.Popen(cmd, shell=False)
+ proc.communicate()
self._reload_icon(folder)
@@ -304,7 +320,6 @@
pass
except:
pass
- pass
def get_file_items(self, window, items):
"""Caja invoke this function in its startup > Then, create menu entry"""
@@ -312,7 +327,25 @@
if not self._check_generate_menu(items):
return
# Return menu
- return self._generate_menu(items)
+ return self._generate_menu(items, self._check_generate_restore(items))
+
+ def _check_generate_restore(self, items):
+ # For each dir, search custom icon or emblem
+ for item in items:
+ if item.is_gone():
+ continue
+
+ folder_name = urllib.unquote(item.get_uri()[7:])
+ folder = Gio.File.new_for_path(folder_name)
+ info = folder.query_info('metadata', 0, None)
+ if info.get_attribute_as_string('metadata::custom-icon-name'):
+ return True
+ if info.get_attribute_as_string('metadata::custom-icon'):
+ return True
+ if info.get_attribute_as_string('metadata::emblems'):
+ return True
+
+ return False
def _check_generate_menu(self, items):
"""Show the menu?"""
@@ -336,7 +369,7 @@
# All OK > Generate menu
return True
- def _generate_menu(self, items):
+ def _generate_menu(self, items, show_restore):
"""Generate menu: Color | Custom? | Restore | Emblems? | Preferences"""
# Main menu [1 or +1 folder(s)]
if len(items) > 1:
@@ -377,24 +410,31 @@
submenu.append_item(item)
# Restore
- item_sep = Caja.MenuItem(name='ChangeFolderEmblemMenu::Sep', label=_("Restore:"), sensitive=False)
- submenu.append_item(item_sep)
-
- item_restore = Caja.MenuItem(name='ChangeFolderColorMenu::Restore', label=_("Default"), icon='folder_color_undo')
- item_restore.connect('activate', self._menu_activate_restore, items)
- submenu.append_item(item_restore)
-
- # Preferences
- path = self.foldercolor.get_current_icontheme()[0]
- if path:
+ if show_restore:
+ item_sep = Caja.MenuItem(name='ChangeFolderEmblemMenu::Sep', label=_("Restore:"), sensitive=False)
+ submenu.append_item(item_sep)
+
+ item_restore = Caja.MenuItem(name='ChangeFolderColorMenu::Restore', label=_("Default"), icon='folder_color_undo')
+ item_restore.connect('activate', self._menu_activate_restore, items)
+ submenu.append_item(item_restore)
+
+ # Global Color
+ path_theme,customs = self.foldercolor.get_available_icons('globalcolor')
+ if len(customs) and path_theme == self.DEFAULT_PATH_THEME: # Show Global Color only if the theme wants that
item_sep = Caja.MenuItem(name='ChangeFolderColorMenu::Sep2', label=_("Edit:"), sensitive=False)
submenu.append_item(item_sep)
- item = Caja.MenuItem(name=''.join(['ChangeFolderColorMenu::"preferences"']), label=_("Global Color"), icon='folder_color_preferences')
+ item = Caja.MenuItem(name=''.join(['ChangeFolderColorMenu::"preferences"']), label=_("Global Color"), icon='folder_color_globalcolor')
item.connect('activate', self._menu_activate_preferences)
submenu.append_item(item)
+ elif not os.path.exists(self.foldercolor.HIDE_DONATION):
+ item_sep = Caja.MenuItem(name='ChangeFolderColorMenu::Sep2', label=_("Support:"), sensitive=False)
+ submenu.append_item(item_sep)
+ item = Caja.MenuItem(name=''.join(['ChangeFolderColorMenu::"donate"']), label=_("Donate? Click to hide"))
+ item.connect('activate', self._on_donate_menu)
+ submenu.append_item(item)
return top_menuitem,
-
+
def _menu_activate_color(self, menu, color, folders):
"""Set Custom Color"""
for each_folder in folders:
@@ -498,7 +538,18 @@
win.show_all()
Gtk.main()
+ def _on_donate_menu(self, btn):
+ """Open from contextual menu"""
+ webbrowser.open(self.foldercolor.URL_DONATE)
+ try:
+ os.makedirs(self.foldercolor.HIDE_DONATION)
+ except OSError as exception:
+ pass
+ except:
+ pass
+
def _on_donate_hide(self, null):
+ """Open from global color window"""
self.vbox_donate.hide()
# Hide donation after show it
try:
@@ -557,14 +608,13 @@
"""Set default global color"""
def __init__(self):
self.foldercolor = FolderColor()
- pass
def restore(self):
"""Restore theme to default"""
path, name, index = self.foldercolor.get_current_icontheme()
if not path:
return
- fc_name = '.'.join([name, 'foldercolor']) # Only remove a Folder Color theme
+ fc_name = '.'.join([name, 'foldercolor']) # Folder Color theme
local_theme = os.path.join(self.foldercolor.USER_PATH_THEME, fc_name)
self._set_theme(name)
@@ -592,197 +642,105 @@
return cfg.get(section, 'Inherits')
return ''
- def _cp_file(self, src, dst):
- if os.path.isfile(src):
- try:
- shutil.copy2(src, dst)
- except:
- pass
+ def _cp_icon(self, src_file, dst_file):
+ try:
+ shutil.copy2(src_file, dst_file)
+ except:
+ pass
def _generate_local_theme(self, name, inherit, color):
"""Generate a inherit local theme from system theme"""
# Create folder
name = '.'.join([name, 'foldercolor']) # Generate a Folder Color theme
try:
- dst_path = os.path.join(self.foldercolor.USER_PATH_THEME, name, 'scalable', 'places')
- if not os.path.exists(dst_path):
- os.makedirs(dst_path)
- dst_path = os.path.join(self.foldercolor.USER_PATH_THEME, name, '16x16', 'places')
- if not os.path.exists(dst_path):
- os.makedirs(dst_path)
- dst_path = os.path.join(self.foldercolor.USER_PATH_THEME, name, '22x22', 'places')
- if not os.path.exists(dst_path):
- os.makedirs(dst_path)
- dst_path = os.path.join(self.foldercolor.USER_PATH_THEME, name, '24x24', 'places')
- if not os.path.exists(dst_path):
- os.makedirs(dst_path)
+ for resolution,resolution_x in self.foldercolor.ICON_RESOLUTIONS.iteritems():
+ dst_path = os.path.join(self.foldercolor.USER_PATH_THEME, name, resolution_x, 'places')
+ if not os.path.exists(dst_path):
+ os.makedirs(dst_path)
except OSError as exception:
pass
except:
pass
-
- # Generate icons
+
+ # Generate regular icons
for folder in self.foldercolor.DEFAULT_FOLDERS:
- # scalable
- src_file = ''.join([self.foldercolor.get_path(), self.foldercolor.get_iconname(folder, color), '.svg'])
- dst_file = os.path.join(self.foldercolor.USER_PATH_THEME, name, 'scalable', 'places', self._get_folder_icon(folder))
- self._cp_file(src_file, dst_file)
- # 16x16
- src_file_16 = src_file.replace('/48', '/16').replace('48/', '16/')
- dst_file_16 = dst_file.replace('/scalable/', '/16x16/')
- self._cp_file(src_file_16, dst_file_16)
- # 22x22
- src_file_22 = src_file.replace('/48', '/22').replace('48/', '22/')
- dst_file_22 = dst_file.replace('/scalable/', '/22x22/')
- self._cp_file(src_file_22, dst_file_22)
- # 24x24
- src_file_24 = src_file.replace('/48', '/24').replace('48/', '24/')
- dst_file_24 = dst_file.replace('/scalable/', '/24x24/')
- self._cp_file(src_file_24, dst_file_24)
-
- # folder.svg
- src_file = ''.join([self.foldercolor.get_path(), self.foldercolor.get_iconname('', color), '.svg'])
- dst_file = os.path.join(self.foldercolor.USER_PATH_THEME, name, 'scalable', 'places', self._get_folder_icon(None, 0))
- self._cp_file(src_file, dst_file)
-
- src_file_16 = src_file.replace('/48', '/16').replace('48/', '16/')
- dst_file_16 = dst_file.replace('scalable', '16x16')
- self._cp_file(src_file_16, dst_file_16)
-
- src_file_22 = src_file.replace('/48', '/22').replace('48/', '22/')
- dst_file_22 = dst_file.replace('scalable', '22x22')
- self._cp_file(src_file_22, dst_file_22)
-
- src_file_24 = src_file.replace('/48', '/24').replace('48/', '24/')
- dst_file_24 = dst_file.replace('scalable', '24x24')
- self._cp_file(src_file_24, dst_file_24)
-
- # inode-directory.svg
- dst_file = os.path.join(self.foldercolor.USER_PATH_THEME, name, 'scalable', 'places', self._get_folder_icon(None, 1))
- self._cp_file(src_file, dst_file)
-
- src_file_16 = src_file.replace('/48', '/16').replace('48/', '16/')
- dst_file_16 = dst_file.replace('scalable', '16x16')
- self._cp_file(src_file_16, dst_file_16)
-
- src_file_22 = src_file.replace('/48', '/22').replace('48/', '22/')
- dst_file_22 = dst_file.replace('scalable', '22x22')
- self._cp_file(src_file_22, dst_file_22)
-
- src_file_24 = src_file.replace('/48', '/24').replace('48/', '24/')
- dst_file_24 = dst_file.replace('scalable', '24x24')
- self._cp_file(src_file_24, dst_file_24)
-
- # user-home.svg
- dst_file = os.path.join(self.foldercolor.USER_PATH_THEME, name, 'scalable', 'places', self._get_folder_icon(None, 2))
- self._cp_file(src_file, dst_file)
-
- src_file_16 = src_file.replace('/48', '/16').replace('48/', '16/')
- dst_file_16 = dst_file.replace('scalable', '16x16')
- self._cp_file(src_file_16, dst_file_16)
-
- src_file_22 = src_file.replace('/48', '/22').replace('48/', '22/')
- dst_file_22 = dst_file.replace('scalable', '22x22')
- self._cp_file(src_file_22, dst_file_22)
-
- src_file_24 = src_file.replace('/48', '/24').replace('48/', '24/')
- dst_file_24 = dst_file.replace('scalable', '24x24')
- self._cp_file(src_file_24, dst_file_24)
-
- # folder_home.svg
- dst_file = os.path.join(self.foldercolor.USER_PATH_THEME, name, 'scalable', 'places', self._get_folder_icon(None, 3))
- self._cp_file(src_file, dst_file)
-
- src_file_16 = src_file.replace('/48', '/16').replace('48/', '16/')
- dst_file_16 = dst_file.replace('scalable', '16x16')
- self._cp_file(src_file_16, dst_file_16)
-
- src_file_22 = src_file.replace('/48', '/22').replace('48/', '22/')
- dst_file_22 = dst_file.replace('scalable', '22x22')
- self._cp_file(src_file_22, dst_file_22)
-
- src_file_24 = src_file.replace('/48', '/24').replace('48/', '24/')
- dst_file_24 = dst_file.replace('scalable', '24x24')
- self._cp_file(src_file_24, dst_file_24)
-
- # network-workgroup.svg
- dst_file = os.path.join(self.foldercolor.USER_PATH_THEME, name, 'scalable', 'places', self._get_folder_icon(None, 4))
- self._cp_file(src_file, dst_file)
-
- src_file_16 = src_file.replace('/48', '/16').replace('48/', '16/')
- dst_file_16 = dst_file.replace('scalable', '16x16')
- self._cp_file(src_file_16, dst_file_16)
-
- src_file_22 = src_file.replace('/48', '/22').replace('48/', '22/')
- dst_file_22 = dst_file.replace('scalable', '22x22')
- self._cp_file(src_file_22, dst_file_22)
-
- src_file_24 = src_file.replace('/48', '/24').replace('48/', '24/')
- dst_file_24 = dst_file.replace('scalable', '24x24')
- self._cp_file(src_file_24, dst_file_24)
-
- # folder-remote.svg
- dst_file = os.path.join(self.foldercolor.USER_PATH_THEME, name, 'scalable', 'places', self._get_folder_icon(None, 5))
- self._cp_file(src_file, dst_file)
-
- src_file_16 = src_file.replace('/48', '/16').replace('48/', '16/')
- dst_file_16 = dst_file.replace('scalable', '16x16')
- self._cp_file(src_file_16, dst_file_16)
-
- src_file_22 = src_file.replace('/48', '/22').replace('48/', '22/')
- dst_file_22 = dst_file.replace('scalable', '22x22')
- self._cp_file(src_file_22, dst_file_22)
-
- src_file_24 = src_file.replace('/48', '/24').replace('48/', '24/')
- dst_file_24 = dst_file.replace('scalable', '24x24')
- self._cp_file(src_file_24, dst_file_24)
-
- # document-open-recent.svg
- dst_file = os.path.join(self.foldercolor.USER_PATH_THEME, name, 'scalable', 'places', self._get_folder_icon(None, 6))
- self._cp_file(src_file, dst_file)
-
- src_file_16 = src_file.replace('/48', '/16').replace('48/', '16/')
- dst_file_16 = dst_file.replace('scalable', '16x16')
- self._cp_file(src_file_16, dst_file_16)
-
- src_file_22 = src_file.replace('/48', '/22').replace('48/', '22/')
- dst_file_22 = dst_file.replace('scalable', '22x22')
- self._cp_file(src_file_22, dst_file_22)
-
- src_file_24 = src_file.replace('/48', '/24').replace('48/', '24/')
- dst_file_24 = dst_file.replace('scalable', '24x24')
- self._cp_file(src_file_24, dst_file_24)
+ for resolution,resolution_x in self.foldercolor.ICON_RESOLUTIONS.iteritems():
+ # Get source default icon for a resolution
+ src_file = ''.join([self.foldercolor.get_path('places', resolution), self.foldercolor.get_iconname(folder, color, 'places', resolution), '.svg'])
+ # Generate
+ dst_file = os.path.join(self.foldercolor.USER_PATH_THEME, name, resolution_x, 'places', self._get_folder_icon(folder))
+ self._cp_icon(src_file, dst_file)
+
+ # Generate no regular icons: default, home, remote
+ for resolution,resolution_x in self.foldercolor.ICON_RESOLUTIONS.iteritems():
+ src_file = ''.join([self.foldercolor.get_path('places', resolution), self.foldercolor.get_iconname('', color, 'places', resolution), '.svg'])
+
+ # folder.svg & inode-directory.svg
+ dst_file = os.path.join(self.foldercolor.USER_PATH_THEME, name, resolution_x, 'places', self._get_folder_icon(None, 0)) # folder.svg
+ self._cp_icon(src_file, dst_file)
+ dst_file = os.path.join(self.foldercolor.USER_PATH_THEME, name, resolution_x, 'places', self._get_folder_icon(None, 1)) # inode-directory.svg
+ self._cp_icon(src_file, dst_file)
+
+ # user-home.svg & folder_home.svg
+ src_icon_default_folder = src_file
+ # Exist home? If not > default folder icon
+ src_file = ''.join([self.foldercolor.get_path('places', resolution), self.foldercolor.EXTRA_HOME % color, '.svg'])
+ if not os.path.isfile(src_file):
+ src_file = src_icon_default_folder
+ # Generate
+ dst_file = os.path.join(self.foldercolor.USER_PATH_THEME, name, resolution_x, 'places', self._get_folder_icon(None, 2)) # user-home.svg
+ self._cp_icon(src_file, dst_file)
+ dst_file = os.path.join(self.foldercolor.USER_PATH_THEME, name, resolution_x, 'places', self._get_folder_icon(None, 3)) # folder_home.svg
+ self._cp_icon(src_file, dst_file)
+
+ # network-workgroup.svg & folder-remote.svg
+ # Exist remote? If not > default folder icon
+ src_file = ''.join([self.foldercolor.get_path('places', resolution), self.foldercolor.EXTRA_REMOTE % color, '.svg'])
+ if not os.path.isfile(src_file):
+ src_file = src_icon_default_folder
+ # Generate
+ dst_file = os.path.join(self.foldercolor.USER_PATH_THEME, name, resolution_x, 'places', self._get_folder_icon(None, 4)) # network-workgroup.svg
+ self._cp_icon(src_file, dst_file)
+ dst_file = os.path.join(self.foldercolor.USER_PATH_THEME, name, resolution_x, 'places', self._get_folder_icon(None, 5)) # folder-remote.svg
+ self._cp_icon(src_file, dst_file)
+
+ # document-open-recent.svg
+ src_file = ''.join([self.foldercolor.get_path('places', resolution), self.foldercolor.EXTRA_RECENT % color, '.svg'])
+ if not os.path.isfile(src_file):
+ src_file = src_icon_default_folder
+ # Generate
+ dst_file = os.path.join(self.foldercolor.USER_PATH_THEME, name, resolution_x, 'places', self._get_folder_icon(None, 6)) # document-open-recent.svg
+ self._cp_icon(src_file, dst_file)
# Generate index.theme
index_file = '/'.join([os.path.join(self.foldercolor.USER_PATH_THEME, name), 'index.theme'])
cfg = ConfigParser.ConfigParser()
cfg.optionxform = str
cfg.add_section('Icon Theme')
- cfg.set('Icon Theme', 'Name', name)
- cfg.set('Icon Theme', 'Hidden', 'true')
- cfg.set('Icon Theme', 'Comment', 'Generated by Folder Color')
- cfg.set('Icon Theme', 'Inherits', inherit)
- cfg.set('Icon Theme', 'Directories', 'scalable/places,16x16/places,22x22/places,24x24/places')
- cfg.add_section('scalable/places')
- cfg.set('scalable/places', 'Size', '48')
- cfg.set('scalable/places', 'Context', 'Places')
- cfg.set('scalable/places', 'Type', 'Scalable')
- cfg.add_section('16x16/places')
- cfg.set('16x16/places', 'Size', '16')
- cfg.set('16x16/places', 'Context', 'Places')
- cfg.set('16x16/places', 'Type', 'Threshold')
- cfg.add_section('22x22/places')
- cfg.set('22x22/places', 'Size', '22')
- cfg.set('22x22/places', 'Context', 'Places')
- cfg.set('22x22/places', 'Type', 'Threshold')
- cfg.add_section('24x24/places')
- cfg.set('24x24/places', 'Size', '24')
- cfg.set('24x24/places', 'Context', 'Places')
- cfg.set('24x24/places', 'Type', 'Threshold')
+ cfg.set('Icon Theme', 'Name', name)
+ cfg.set('Icon Theme', 'Hidden', 'true')
+ cfg.set('Icon Theme', 'Comment', 'Generated by Folder Color')
+ cfg.set('Icon Theme', 'Inherits', inherit)
+
+ for resolution,resolution_x in self.foldercolor.ICON_RESOLUTIONS.iteritems():
+ section = '/'.join([resolution_x, 'places']) # 16x16/places
+ try:
+ all_px = ','.join([all_px, section])
+ except:
+ all_px = section
+ cfg.set('Icon Theme', 'Directories', all_px)
+
+ for resolution,resolution_x in self.foldercolor.ICON_RESOLUTIONS.iteritems():
+ section = '/'.join([resolution_x, 'places']) # 16x16/places
+ cfg.add_section(section)
+ cfg.set(section, 'Size', resolution)
+ cfg.set(section, 'Context', 'Places')
+ cfg.set(section, 'Type', 'Threshold')
+
f = open(index_file, 'w')
cfg.write(f)
f.close()
-
+
# Reload icon cache
os.system('gtk-update-icon-cache -q "%s"' % os.path.join(self.foldercolor.USER_PATH_THEME, name))
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/folder-color-caja/debian/changelog new/folder-color-caja/debian/changelog
--- old/folder-color-caja/debian/changelog 2015-03-29 12:04:42.000000000 +0200
+++ new/folder-color-caja/debian/changelog 2015-05-01 18:19:13.000000000 +0200
@@ -1,7 +1,7 @@
-folder-color-caja (0.0.70) trusty; urgency=low
+folder-color-caja (0.0.78) trusty; urgency=low
- * Fixed #1437800: No transparency in custom colors
- * Updated translations
+ * Orange color changed to Humanity
+ * Dark recent inside
- -- costales