def _get_valid_themes(self): """ Only shows themes that have variations for gtk3""" gtk_ver = Gtk.MINOR_VERSION if gtk_ver % 2: # Want even number gtk_ver += 1 valid = ['Adwaita', 'HighContrast', 'HighContrastInverse'] valid += walk_directories(get_resource_dirs("themes"), lambda d: os.path.exists(os.path.join(d, "gtk-3.0", "gtk.css")) or \ os.path.exists(os.path.join(d, "gtk-3.{}".format(gtk_ver)))) return set(valid)
def get_sound_themes(): """Gets the available sound themes as a (theme_directory_name, theme_display_name) tuple list.""" themes = [] seen = set() for location in get_resource_dirs("sounds"): for item in os.listdir(location): candidate = os.path.join(location, item) index_file = os.path.join(candidate, "index.theme") if os.path.isdir(candidate) and os.path.exists(index_file): theme_info = (os.path.basename(candidate), get_theme_name(index_file)) if theme_info[1] not in seen: themes.append(theme_info) seen.add(theme_info[1]) return themes
def _get_valid_cursor_themes(self): valid = walk_directories(get_resource_dirs("icons"), lambda d: os.path.isdir(d) and \ os.path.exists(os.path.join(d, "cursors"))) return set(valid)