initial
441
_locales/en/messages.json
Normal file
@ -0,0 +1,441 @@
|
||||
{
|
||||
"extensionName": {
|
||||
"message": "Tree Tabs"
|
||||
},
|
||||
"extDesc": {
|
||||
"message": "Manage your tabs in the sidebar!"
|
||||
},
|
||||
"button_new": {
|
||||
"message": "Press left mouse button to open new tab. \nPress middle mouse button to clone the active tab. \nPress right mouse button to scroll the list to the active tab."
|
||||
},
|
||||
"button_pin": {
|
||||
"message": "Pin / Unpin current tab"
|
||||
},
|
||||
"button_undo": {
|
||||
"message": "Reopen last closed"
|
||||
},
|
||||
"button_move": {
|
||||
"message": "Detach tab"
|
||||
},
|
||||
"button_search": {
|
||||
"message": "Search tabs"
|
||||
},
|
||||
"button_tools": {
|
||||
"message": "Tools"
|
||||
},
|
||||
"filter_search_go_prev": {
|
||||
"message": "Previous search result"
|
||||
},
|
||||
"filter_search_go_next": {
|
||||
"message": "Next search result"
|
||||
},
|
||||
"button_filter_type": {
|
||||
"message": "Search titles or urls"
|
||||
},
|
||||
"button_bookmarks": {
|
||||
"message": "Unsorted bookmarks"
|
||||
},
|
||||
"button_downloads": {
|
||||
"message": "Downloads"
|
||||
},
|
||||
"button_history": {
|
||||
"message": "History"
|
||||
},
|
||||
"button_settings": {
|
||||
"message": "Settings"
|
||||
},
|
||||
"button_options": {
|
||||
"message": "Tree Tabs settings"
|
||||
},
|
||||
"button_extensions": {
|
||||
"message": "Extensions"
|
||||
},
|
||||
"button_discard": {
|
||||
"message": "Unload tabs"
|
||||
},
|
||||
"tabs_menu_expand_all": {
|
||||
"message": "Expand all trees"
|
||||
},
|
||||
"tabs_menu_collapse_all": {
|
||||
"message": "Collapse all trees"
|
||||
},
|
||||
"tabs_menu_new": {
|
||||
"message": "New tab"
|
||||
},
|
||||
"tabs_menu_clone": {
|
||||
"message": "Duplicate"
|
||||
},
|
||||
"tabs_menu_move": {
|
||||
"message": "Detach"
|
||||
},
|
||||
"tabs_menu_reload": {
|
||||
"message": "Reload"
|
||||
},
|
||||
"tabs_menu_pin": {
|
||||
"message": "Pin"
|
||||
},
|
||||
"tabs_menu_mute": {
|
||||
"message": "Mute"
|
||||
},
|
||||
"tabs_menu_unmute": {
|
||||
"message": "Unmute"
|
||||
},
|
||||
"tabs_menu_mute_other": {
|
||||
"message": "Mute other"
|
||||
},
|
||||
"tabs_menu_unmute_other": {
|
||||
"message": "Unmute other"
|
||||
},
|
||||
"tabs_menu_unpin": {
|
||||
"message": "Unpin"
|
||||
},
|
||||
"tabs_menu_close": {
|
||||
"message": "Close"
|
||||
},
|
||||
"tabs_menu_close_other": {
|
||||
"message": "Close other"
|
||||
},
|
||||
"tabs_menu_undo": {
|
||||
"message": "Undo close"
|
||||
},
|
||||
"tabs_menu_settings": {
|
||||
"message": "Settings"
|
||||
},
|
||||
"tabs_menu_discard": {
|
||||
"message": "Unload"
|
||||
},
|
||||
"options_vivaldi": {
|
||||
"message": " Vivaldi "
|
||||
},
|
||||
"opt_url_for_web_panel": {
|
||||
"message": "Url for the Web Panel"
|
||||
},
|
||||
"options_pinned": {
|
||||
"message": " Pinned tabs bar "
|
||||
},
|
||||
"options_pin_list_multi_row": {
|
||||
"message": "multi row list"
|
||||
},
|
||||
"option_allow_pin_close": {
|
||||
"message": "allow to close pinned tabs"
|
||||
},
|
||||
"options_tabs": {
|
||||
"message": " Tabs "
|
||||
},
|
||||
"options_skip_load": {
|
||||
"message": "discard tree structure after browser's restart, this option is for those who don't use browser's session. Basically it disables loading database at startup."
|
||||
},
|
||||
"options_close_with_MMB": {
|
||||
"message": "close tabs with middle mouse button"
|
||||
},
|
||||
"options_always_show_close": {
|
||||
"message": "show close button on all tabs"
|
||||
},
|
||||
"options_close_other_trees": {
|
||||
"message": "automatically collapse other trees on expand"
|
||||
},
|
||||
"options_promote_children": {
|
||||
"message": "promote children tabs on close, if disabled, when closing the parent of a tree structure, all tabs will be closed (be careful, because undo close tab will not recover the trees structure)"
|
||||
},
|
||||
"options_open_tree_on_hover": {
|
||||
"message": "auto expand collapsed trees when dragging and holding for a second over them"
|
||||
},
|
||||
"options_max_tree_depth": {
|
||||
"message": "maximum tree depth: set it to -1 for unlimited branches, 0 for flat tabs placement (no trees), any number above 0 will be its maximum"
|
||||
},
|
||||
"options_append_child_tab": {
|
||||
"message": "append children tabs at the"
|
||||
},
|
||||
"options_append_child_tab_top": {
|
||||
"message": "top (reverse hierarchy)"
|
||||
},
|
||||
"options_append_child_tab_bottom": {
|
||||
"message": "bottom"
|
||||
},
|
||||
"options_append_child_tab_after_limit": {
|
||||
"message": "once reached tree depth, place tab on the same level, but"
|
||||
},
|
||||
"options_append_child_tab_after_limit_top": {
|
||||
"message": "at the top"
|
||||
},
|
||||
"options_append_child_tab_after_limit_after": {
|
||||
"message": "after parent"
|
||||
},
|
||||
"options_append_child_tab_after_limit_bottom": {
|
||||
"message": "at the bottom"
|
||||
},
|
||||
"options_append_orphan_tab": {
|
||||
"message": "append orphan tabs (opened from +, shortcut or bookmark)"
|
||||
},
|
||||
"options_append_orphan_tab_top": {
|
||||
"message": "at the top"
|
||||
},
|
||||
"options_append_orphan_tab_after_active": {
|
||||
"message": "after active"
|
||||
},
|
||||
"options_append_orphan_tab_bottom": {
|
||||
"message": "at the bottom"
|
||||
},
|
||||
"options_append_orphan_tab_as_child": {
|
||||
"message": "treat as active's tab child"
|
||||
},
|
||||
"options_after_closing_active_tab": {
|
||||
"message": "after closing active tab,"
|
||||
},
|
||||
"options_after_closing_active_tab_go_up": {
|
||||
"message": "activate tab above"
|
||||
},
|
||||
"options_after_closing_active_tab_go_down": {
|
||||
"message": "activate tab below"
|
||||
},
|
||||
"options_after_closing_active_tab_go_browser": {
|
||||
"message": "let browser handle which tab to activate"
|
||||
},
|
||||
"options_theme": {
|
||||
"message": "Theme"
|
||||
},
|
||||
"options_theme_tabs": {
|
||||
"message": " Tabs look "
|
||||
},
|
||||
"options_theme_tabs_sample_text_normal": {
|
||||
"message": "Normal"
|
||||
},
|
||||
"options_theme_tabs_sample_text_active_selected": {
|
||||
"message": "Active and selected"
|
||||
},
|
||||
"options_theme_tabs_sample_text_discarded": {
|
||||
"message": "Unloaded (discarded)"
|
||||
},
|
||||
"options_theme_tabs_sample_text_search_result": {
|
||||
"message": "Search result"
|
||||
},
|
||||
"options_theme_tabs_sample_text_search_result_higlighted": {
|
||||
"message": "Search result higlighted"
|
||||
},
|
||||
"options_theme_tabs_sample_text_search_result_selected": {
|
||||
"message": "Search result, selected"
|
||||
},
|
||||
"options_theme_tabs_sample_text_search_result_selected_active": {
|
||||
"message": "Search result, selected, active"
|
||||
},
|
||||
"options_toolbar": {
|
||||
"message": " Toolbar "
|
||||
},
|
||||
"options_available_buttons": {
|
||||
"message": "Drag and drop buttons to arrange them, drop to the green box, buttons you don't want to use"
|
||||
},
|
||||
"options_scrollbars": {
|
||||
"message": " Scrollbars "
|
||||
},
|
||||
"options_scrollbar_pin_list": {
|
||||
"message": "pinned tabs bar scrollbar height"
|
||||
},
|
||||
"options_scrollbar_tab_list": {
|
||||
"message": "tabs list scrollbar width"
|
||||
},
|
||||
"options_tabs_size": {
|
||||
"message": "Tabs size"
|
||||
},
|
||||
"options_add_theme_button": {
|
||||
"message": "Add new"
|
||||
},
|
||||
"options_remove_theme_button": {
|
||||
"message": "Remove"
|
||||
},
|
||||
"options_export_theme_button": {
|
||||
"message": "Export"
|
||||
},
|
||||
"options_import_theme_button": {
|
||||
"message": "Import"
|
||||
},
|
||||
"options_rename_theme_button": {
|
||||
"message": "Rename"
|
||||
},
|
||||
"options_there_is_a_theme_with_this_name": {
|
||||
"message": "Theme with this name already exists, try a new name"
|
||||
},
|
||||
"options_theme_name_cannot_be_empty": {
|
||||
"message": "Theme name cannot be empty, enter some name"
|
||||
},
|
||||
"options_no_theme_to_export": {
|
||||
"message": "No theme to export, maybe add a new one :)"
|
||||
},
|
||||
"options_loaded_theme_older_version": {
|
||||
"message": "Looks like loaded theme was saved in older version of the extension, some colors or options might be missing"
|
||||
},
|
||||
"options_loaded_theme_newer_version": {
|
||||
"message": "Looks like loaded theme was saved in a newer version of the extension, can't load!"
|
||||
},
|
||||
"options_color_theme_toolbar_background": {
|
||||
"message": " toolbar background"
|
||||
},
|
||||
"options_color_toolbar_border_bottom": {
|
||||
"message": " toolbar borders"
|
||||
},
|
||||
"options_color_button_icons": {
|
||||
"message": " button icon"
|
||||
},
|
||||
"options_color_button_border": {
|
||||
"message": " button borders"
|
||||
},
|
||||
"options_color_button_background": {
|
||||
"message": " button background"
|
||||
},
|
||||
"options_color_button_hover_border": {
|
||||
"message": " button hover border"
|
||||
},
|
||||
"options_color_button_hover_background": {
|
||||
"message": " button hover background"
|
||||
},
|
||||
"options_color_filter_box_background": {
|
||||
"message": " searchbox background"
|
||||
},
|
||||
"options_color_filter_box_border": {
|
||||
"message": " searchbox borders"
|
||||
},
|
||||
"options_color_filter_box_font": {
|
||||
"message": " searchbox font"
|
||||
},
|
||||
"options_color_filter_clear_icon": {
|
||||
"message": " searchbox clear button"
|
||||
},
|
||||
"options_color_pin_list_border_bottom": {
|
||||
"message": " pin list separator line"
|
||||
},
|
||||
"options_color_pin_list_background": {
|
||||
"message": " pin list background"
|
||||
},
|
||||
"options_color_tab_list_background": {
|
||||
"message": " tab list background"
|
||||
},
|
||||
"options_color_tab_background": {
|
||||
"message": " tab background"
|
||||
},
|
||||
"options_color_tab_border": {
|
||||
"message": " tab border"
|
||||
},
|
||||
"options_color_tab_hover_background": {
|
||||
"message": " hover over tab, background"
|
||||
},
|
||||
|
||||
"options_color_tab_hover_border": {
|
||||
"message": " hover over tab, border"
|
||||
},
|
||||
"options_color_drag_indicator": {
|
||||
"message": " drag&drop indicator"
|
||||
},
|
||||
"options_color_tab_title": {
|
||||
"message": " tab title font"
|
||||
},
|
||||
"options_color_tab_title_active": {
|
||||
"message": " active tab title font"
|
||||
},
|
||||
"options_color_tab_title_discarded": {
|
||||
"message": " unloaded tab title font"
|
||||
},
|
||||
"options_color_tab_selected_background": {
|
||||
"message": " selected tab background"
|
||||
},
|
||||
"options_color_tab_selected_border": {
|
||||
"message": " active/selected tab border"
|
||||
},
|
||||
"options_color_tab_selected_hover_border": {
|
||||
"message": " hover over active/selected tab border"
|
||||
},
|
||||
"options_color_tab_selected_hover_background": {
|
||||
"message": " hover over active/selected tab background"
|
||||
},
|
||||
"options_color_tab_filtered": {
|
||||
"message": " search result"
|
||||
},
|
||||
"options_color_tab_filtered_highlighted": {
|
||||
"message": " search result highlighted"
|
||||
},
|
||||
"options_color_tab_filtered_selected": {
|
||||
"message": " search result selected"
|
||||
},
|
||||
"options_color_tab_filtered_selected_active": {
|
||||
"message": " search result selected active"
|
||||
},
|
||||
"options_color_close_x": {
|
||||
"message": " close button (x)"
|
||||
},
|
||||
"options_color_close_hover_x": {
|
||||
"message": " hover over close button, x color"
|
||||
},
|
||||
"options_color_close_hover_border": {
|
||||
"message": " hover over close button, border"
|
||||
},
|
||||
"options_color_close_hover_background": {
|
||||
"message": " hover over close button, background"
|
||||
},
|
||||
"options_color_expand_open_border": {
|
||||
"message": " open tab expand box, border"
|
||||
},
|
||||
"options_color_expand_open_background": {
|
||||
"message": " open tab expand box, background"
|
||||
},
|
||||
"options_color_expand_closed_border": {
|
||||
"message": " closed tab expand box, border"
|
||||
},
|
||||
"options_color_expand_closed_background": {
|
||||
"message": " closed tab expand box, background"
|
||||
},
|
||||
"options_color_expand_lines": {
|
||||
"message": " tree hierarchy lines"
|
||||
},
|
||||
"options_color_scrollbar_thumb": {
|
||||
"message": " scrollbar thumb"
|
||||
},
|
||||
"options_color_scrollbar_thumb_hover": {
|
||||
"message": " scrollbar thumb hover"
|
||||
},
|
||||
"options_color_scrollbar_track": {
|
||||
"message": " scrollbar background"
|
||||
},
|
||||
"options_color_tabs_menu_background": {
|
||||
"message": " background"
|
||||
},
|
||||
"options_color_tabs_menu_border": {
|
||||
"message": " border"
|
||||
},
|
||||
"options_color_tabs_menu_hover_background": {
|
||||
"message": " hover over item, background"
|
||||
},
|
||||
"options_color_tabs_menu_hover_border": {
|
||||
"message": " hover over item, border"
|
||||
},
|
||||
"options_color_tabs_menu_font": {
|
||||
"message": " font"
|
||||
},
|
||||
"options_color_tabs_menu_separator": {
|
||||
"message": " separator"
|
||||
},
|
||||
"options_example_menu_item": {
|
||||
"message": "menu item"
|
||||
},
|
||||
"options_menu": {
|
||||
"message": " Menu "
|
||||
},
|
||||
"options_active_tab_font_bold": {
|
||||
"message": "bold font for active tab"
|
||||
},
|
||||
"caption_clear_filter": {
|
||||
"message": "Clear search results"
|
||||
},
|
||||
"caption_loading": {
|
||||
"message": "Loading..."
|
||||
},
|
||||
"caption_searchbox": {
|
||||
"message": " Search tabs..."
|
||||
},
|
||||
"options_never_show_close": {
|
||||
"message": "don't show close button (option above will be ignored)"
|
||||
},
|
||||
"tabs_menu_close_tree": {
|
||||
"message": "Close tree"
|
||||
},
|
||||
"options_faster_scroll": {
|
||||
"message": "Faster scrolling"
|
||||
}
|
||||
}
|
431
_locales/ru/messages.json
Normal file
@ -0,0 +1,431 @@
|
||||
{
|
||||
"button_bookmarks": {
|
||||
"message": "Закладки"
|
||||
},
|
||||
"button_discard": {
|
||||
"message": "Выгрузить все вкладки"
|
||||
},
|
||||
"button_downloads": {
|
||||
"message": "Загрузки"
|
||||
},
|
||||
"button_extensions": {
|
||||
"message": "Расширения"
|
||||
},
|
||||
"button_filter_type": {
|
||||
"message": "Поиск заголовков или URL-адресов"
|
||||
},
|
||||
"button_history": {
|
||||
"message": "История"
|
||||
},
|
||||
"button_move": {
|
||||
"message": "Отсоединить текущую вкладку"
|
||||
},
|
||||
"button_new": {
|
||||
"message": "ЛКМ - открыть новую вкладку \nСКМ - дублировать активную вкладку \nПКМ - прокрутка списка к активной вкладке"
|
||||
},
|
||||
"button_options": {
|
||||
"message": "Настройки Tree Tabs"
|
||||
},
|
||||
"button_pin": {
|
||||
"message": "Закрепить / Открепить текущую вкладку"
|
||||
},
|
||||
"button_search": {
|
||||
"message": "Поиск вкладок"
|
||||
},
|
||||
"button_settings": {
|
||||
"message": "Настройки браузера"
|
||||
},
|
||||
"button_tools": {
|
||||
"message": "Дополнительные инструменты"
|
||||
},
|
||||
"button_undo": {
|
||||
"message": "Открыть последнюю закрытую вкладку"
|
||||
},
|
||||
"caption_clear_filter": {
|
||||
"message": "Очистить результаты поиска"
|
||||
},
|
||||
"caption_loading": {
|
||||
"message": "Загрузка…"
|
||||
},
|
||||
"caption_searchbox": {
|
||||
"message": " Поиск вкладок…"
|
||||
},
|
||||
"extDesc": {
|
||||
"message": "Управляйте своими вкладками с боковой панели!"
|
||||
},
|
||||
"extensionName": {
|
||||
"message": "Tree Tabs"
|
||||
},
|
||||
"filter_search_go_next": {
|
||||
"message": "Следующий результат поиска"
|
||||
},
|
||||
"filter_search_go_prev": {
|
||||
"message": "Предыдущий результат поиска"
|
||||
},
|
||||
"option_allow_pin_close": {
|
||||
"message": "закрывать закреплённые вкладки из контекстного меню"
|
||||
},
|
||||
"options_add_theme_button": {
|
||||
"message": "Новая"
|
||||
},
|
||||
"options_always_show_close": {
|
||||
"message": "показывать кнопку закрытия на вкладках"
|
||||
},
|
||||
"options_append_child_tab": {
|
||||
"message": "добавлять новые дочерние вкладки"
|
||||
},
|
||||
"options_append_child_tab_after_limit": {
|
||||
"message": "при достижении максимальной глубины дерева, установить вкладку на том же уровне, но"
|
||||
},
|
||||
"options_append_child_tab_after_limit_after": {
|
||||
"message": "после родительской"
|
||||
},
|
||||
"options_append_child_tab_after_limit_bottom": {
|
||||
"message": "ниже предыдущей"
|
||||
},
|
||||
"options_append_child_tab_after_limit_top": {
|
||||
"message": "выше предыдущей"
|
||||
},
|
||||
"options_append_child_tab_bottom": {
|
||||
"message": "ниже предыдущих"
|
||||
},
|
||||
"options_append_child_tab_top": {
|
||||
"message": "выше предыдущих (обратная иерархия)"
|
||||
},
|
||||
"options_append_orphan_tab": {
|
||||
"message": "открывать недавно закрытые вкладки"
|
||||
},
|
||||
"options_append_orphan_tab_after_active": {
|
||||
"message": "после активной вкладки"
|
||||
},
|
||||
"options_append_orphan_tab_as_child": {
|
||||
"message": "как дочерние для активной вкладки"
|
||||
},
|
||||
"options_after_closing_active_tab": {
|
||||
"message": "После закрытия активной вкладки"
|
||||
},
|
||||
"options_after_closing_active_tab_go_up": {
|
||||
"message": "активировать вкладку выше"
|
||||
},
|
||||
"options_after_closing_active_tab_go_down": {
|
||||
"message": "активировать вкладку ниже"
|
||||
},
|
||||
"options_after_closing_active_tab_go_browser": {
|
||||
"message": "активация вкладок согласно настройкам браузера"
|
||||
},
|
||||
"options_append_orphan_tab_bottom": {
|
||||
"message": "в конце списка"
|
||||
},
|
||||
"options_append_orphan_tab_top": {
|
||||
"message": "в начале списка"
|
||||
},
|
||||
"options_close_other_trees": {
|
||||
"message": "автоматически сворачивать другие деревья при раскрывании дерева"
|
||||
},
|
||||
"options_close_with_MMB": {
|
||||
"message": "закрывать вкладки средней кнопкой мыши"
|
||||
},
|
||||
"options_color_button_background": {
|
||||
"message": " фон кнопки"
|
||||
},
|
||||
"options_color_button_border": {
|
||||
"message": " рамка кнопки"
|
||||
},
|
||||
"options_color_button_hover_background": {
|
||||
"message": " фон при наведении на кнопку"
|
||||
},
|
||||
"options_color_button_hover_border": {
|
||||
"message": " рамка при наведении на кнопку"
|
||||
},
|
||||
"options_color_button_icons": {
|
||||
"message": " иконка кнопки"
|
||||
},
|
||||
"options_color_close_hover_background": {
|
||||
"message": " фон при наведении на кнопку закрытия"
|
||||
},
|
||||
"options_color_close_hover_border": {
|
||||
"message": " рамка при наведении на кнопку закрытия"
|
||||
},
|
||||
"options_color_close_hover_x": {
|
||||
"message": " иконка при наведении на кнопку закрытия"
|
||||
},
|
||||
"options_color_close_x": {
|
||||
"message": " кнопка закрытия [x]"
|
||||
},
|
||||
"options_color_drag_indicator": {
|
||||
"message": " индикатор drag&drop"
|
||||
},
|
||||
"options_color_expand_closed_background": {
|
||||
"message": " фон указателя свёрнутого дерева"
|
||||
},
|
||||
"options_color_expand_closed_border": {
|
||||
"message": " рамка указателя свёрнутого дерева"
|
||||
},
|
||||
"options_color_expand_lines": {
|
||||
"message": " линии ветвей дерева"
|
||||
},
|
||||
"options_color_expand_open_background": {
|
||||
"message": " фон указателя раскрытого дерева"
|
||||
},
|
||||
"options_color_expand_open_border": {
|
||||
"message": " рамка указателя раскрытого дерева"
|
||||
},
|
||||
"options_color_filter_box_background": {
|
||||
"message": " фон окна поиска"
|
||||
},
|
||||
"options_color_filter_box_border": {
|
||||
"message": " рамка окна поиска"
|
||||
},
|
||||
"options_color_filter_box_font": {
|
||||
"message": " шрифт в окне поиска"
|
||||
},
|
||||
"options_color_filter_clear_icon": {
|
||||
"message": " кнопка очистки в окне поиска"
|
||||
},
|
||||
"options_color_pin_list_background": {
|
||||
"message": " фон списка закреплённых вкладок"
|
||||
},
|
||||
"options_color_pin_list_border_bottom": {
|
||||
"message": " разделитель списка закреплённых вкладок"
|
||||
},
|
||||
"options_color_scrollbar_thumb": {
|
||||
"message": " полоса прокрутки"
|
||||
},
|
||||
"options_color_scrollbar_thumb_hover": {
|
||||
"message": " полоса прокрутки при наведении"
|
||||
},
|
||||
"options_color_scrollbar_track": {
|
||||
"message": " фон полосы прокрутки"
|
||||
},
|
||||
"options_color_tab_background": {
|
||||
"message": " фон вкладки"
|
||||
},
|
||||
"options_color_tab_border": {
|
||||
"message": " рамка вкладки"
|
||||
},
|
||||
"options_color_tab_filtered": {
|
||||
"message": " результат поиска"
|
||||
},
|
||||
"options_color_tab_filtered_highlighted": {
|
||||
"message": " выделенный результат поиска"
|
||||
},
|
||||
"options_color_tab_filtered_selected": {
|
||||
"message": " выбранный результат поиска"
|
||||
},
|
||||
"options_color_tab_filtered_selected_active": {
|
||||
"message": " активный результат поиска"
|
||||
},
|
||||
"options_color_tab_hover_background": {
|
||||
"message": " фон при наведении на вкладку"
|
||||
},
|
||||
"options_color_tab_hover_border": {
|
||||
"message": " рамка при наведении на вкладку"
|
||||
},
|
||||
"options_color_tab_list_background": {
|
||||
"message": " фон списка вкладок"
|
||||
},
|
||||
"options_color_tab_selected_background": {
|
||||
"message": " фон активной вкладки"
|
||||
},
|
||||
"options_color_tab_selected_border": {
|
||||
"message": " рамка активной вкладки"
|
||||
},
|
||||
"options_color_tab_selected_hover_background": {
|
||||
"message": " фон при наведении на активную вкладку"
|
||||
},
|
||||
"options_color_tab_selected_hover_border": {
|
||||
"message": " рамка при наведении на активную вкладку"
|
||||
},
|
||||
"options_color_tab_title": {
|
||||
"message": " шрифт заголовка вкладки"
|
||||
},
|
||||
"options_color_tab_title_active": {
|
||||
"message": " шрифт заголовка активной вкладки"
|
||||
},
|
||||
"options_color_tab_title_discarded": {
|
||||
"message": " шрифт заголовка выгруженной вкладки"
|
||||
},
|
||||
"options_color_tabs_menu_background": {
|
||||
"message": " фон"
|
||||
},
|
||||
"options_color_tabs_menu_border": {
|
||||
"message": " рамка"
|
||||
},
|
||||
"options_color_tabs_menu_font": {
|
||||
"message": " шрифт"
|
||||
},
|
||||
"options_color_tabs_menu_hover_background": {
|
||||
"message": " фон при наведении на пункт"
|
||||
},
|
||||
"options_color_tabs_menu_hover_border": {
|
||||
"message": " рамка при наведении на пункт"
|
||||
},
|
||||
"options_color_tabs_menu_separator": {
|
||||
"message": " разделитель"
|
||||
},
|
||||
"options_color_theme_toolbar_background": {
|
||||
"message": " фон панели инструментов"
|
||||
},
|
||||
"options_color_toolbar_border_bottom": {
|
||||
"message": " рамка панели инструментов"
|
||||
},
|
||||
"options_example_menu_item": {
|
||||
"message": "пункт меню"
|
||||
},
|
||||
"options_export_theme_button": {
|
||||
"message": "Экспорт"
|
||||
},
|
||||
"options_import_theme_button": {
|
||||
"message": "Импорт"
|
||||
},
|
||||
"options_loaded_theme_newer_version": {
|
||||
"message": "Похоже, загружаемая тема была сохранена в более новой версии расширения; её невозможно загрузить!"
|
||||
},
|
||||
"options_loaded_theme_older_version": {
|
||||
"message": "Похоже, загружаемая тема была сохранена в более старой версии расширения; некоторые цвета или параметры могут отсутствовать."
|
||||
},
|
||||
"options_max_tree_depth": {
|
||||
"message": "максимальная глубина дерева (-1 - неограниченное количество ветвей; 0 - отключить древовидную структуру вкладок)"
|
||||
},
|
||||
"options_menu": {
|
||||
"message": " Контекстное меню "
|
||||
},
|
||||
"options_no_theme_to_export": {
|
||||
"message": "Нет темы для экспорта, можете добавить новую :)"
|
||||
},
|
||||
"options_open_tree_on_hover": {
|
||||
"message": "автоматически раскрывать свёрнутые деревья при перетаскивании вкладки с удерживанием курсора над ними"
|
||||
},
|
||||
"options_pin_list_multi_row": {
|
||||
"message": "список закреплённых вкладок в несколько строк"
|
||||
},
|
||||
"options_pinned": {
|
||||
"message": " Панель закреплённых вкладок "
|
||||
},
|
||||
"options_promote_children": {
|
||||
"message": "оставлять дочерние вкладки при закрытии родительской. (Если отключено, то при закрытии родительской вкладки все дочерние вкладки дерева будут закрыты. Будьте осторожны, так как отмена закрытия вкладки не восстановит структуру дерева)"
|
||||
},
|
||||
"options_remove_theme_button": {
|
||||
"message": "Удалить"
|
||||
},
|
||||
"options_rename_theme_button": {
|
||||
"message": "Переименовать"
|
||||
},
|
||||
"options_scrollbar_pin_list": {
|
||||
"message": "высота полосы прокрутки закреплённых вкладок"
|
||||
},
|
||||
"options_scrollbar_tab_list": {
|
||||
"message": "ширина полосы прокрутки списка вкладок"
|
||||
},
|
||||
"options_scrollbars": {
|
||||
"message": " Полоса прокрутки "
|
||||
},
|
||||
"options_skip_load": {
|
||||
"message": "отменить древовидную структуру после перезапуска браузера. Это предназначено для тех, кто не использует сохранение сессии (опция отключает загрузку базы данных при запуске браузера)"
|
||||
},
|
||||
"options_tabs": {
|
||||
"message": " Вкладки "
|
||||
},
|
||||
"options_tabs_size": {
|
||||
"message": "Размер вкладок"
|
||||
},
|
||||
"options_theme": {
|
||||
"message": "Тема"
|
||||
},
|
||||
"options_theme_name_cannot_be_empty": {
|
||||
"message": "Введите название темы."
|
||||
},
|
||||
"options_theme_tabs": {
|
||||
"message": " Внешний вид вкладок "
|
||||
},
|
||||
"options_theme_tabs_sample_text_active_selected": {
|
||||
"message": "Активная"
|
||||
},
|
||||
"options_theme_tabs_sample_text_discarded": {
|
||||
"message": "Выгруженная"
|
||||
},
|
||||
"options_theme_tabs_sample_text_normal": {
|
||||
"message": "Обычная"
|
||||
},
|
||||
"options_theme_tabs_sample_text_search_result": {
|
||||
"message": "Результат поиска"
|
||||
},
|
||||
"options_theme_tabs_sample_text_search_result_higlighted": {
|
||||
"message": "Выделенный результат поиска"
|
||||
},
|
||||
"options_theme_tabs_sample_text_search_result_selected": {
|
||||
"message": "Выбранный результат поиска"
|
||||
},
|
||||
"options_theme_tabs_sample_text_search_result_selected_active": {
|
||||
"message": "Активный результат поиска"
|
||||
},
|
||||
"options_there_is_a_theme_with_this_name": {
|
||||
"message": "Такое название темы уже существует, введите новое."
|
||||
},
|
||||
"options_toolbar": {
|
||||
"message": " Панель инструментов "
|
||||
},
|
||||
"options_available_buttons": {
|
||||
"message": "Настраивайте панель управления перетаскиванием элементов. Чтобы скрыть элемент, переместите его на зелёное поле."
|
||||
},
|
||||
"options_vivaldi": {
|
||||
"message": " Vivaldi "
|
||||
},
|
||||
"opt_url_for_web_panel": {
|
||||
"message": "Вставить этот URL в веб-панель"
|
||||
},
|
||||
"tabs_menu_clone": {
|
||||
"message": "Дублировать вкладку"
|
||||
},
|
||||
"tabs_menu_close": {
|
||||
"message": "Закрыть вкладку"
|
||||
},
|
||||
"tabs_menu_close_other": {
|
||||
"message": "Закрыть другие вкладки"
|
||||
},
|
||||
"tabs_menu_collapse_all": {
|
||||
"message": "Свернуть все деревья"
|
||||
},
|
||||
"tabs_menu_discard": {
|
||||
"message": "Выгрузить вкладку"
|
||||
},
|
||||
"tabs_menu_expand_all": {
|
||||
"message": "Раскрыть все деревья"
|
||||
},
|
||||
"tabs_menu_move": {
|
||||
"message": "Отсоединить вкладку"
|
||||
},
|
||||
"tabs_menu_mute": {
|
||||
"message": "Выключить звук на вкладке"
|
||||
},
|
||||
"tabs_menu_mute_other": {
|
||||
"message": "Выключить звук (на других)"
|
||||
},
|
||||
"tabs_menu_new": {
|
||||
"message": "Новая вкладка"
|
||||
},
|
||||
"tabs_menu_pin": {
|
||||
"message": "Закрепить вкладку"
|
||||
},
|
||||
"tabs_menu_reload": {
|
||||
"message": "Обновить вкладку"
|
||||
},
|
||||
"tabs_menu_settings": {
|
||||
"message": "Настройки Tree Tabs"
|
||||
},
|
||||
"tabs_menu_undo": {
|
||||
"message": "Отменить закрытие"
|
||||
},
|
||||
"tabs_menu_unmute": {
|
||||
"message": "Включить звук на вкладке"
|
||||
},
|
||||
"tabs_menu_unmute_other": {
|
||||
"message": "Включить звук (на других)"
|
||||
},
|
||||
"tabs_menu_unpin": {
|
||||
"message": "Открепить вкладку"
|
||||
},
|
||||
"options_active_tab_font_bold": {
|
||||
"message": "жирный шрифт для активной вкладки"
|
||||
}
|
||||
}
|
292
background.js
Normal file
@ -0,0 +1,292 @@
|
||||
var opt = {
|
||||
"skip_load": false, "new_open_below": false, "pin_list_multi_row": false, "close_with_MMB": true,
|
||||
"always_show_close": false, "allow_pin_close": false,
|
||||
"append_child_tab": "bottom", "append_child_tab_after_limit": "after",
|
||||
"append_orphan_tab": "bottom", "after_closing_active_tab": "below", "close_other_trees": false,
|
||||
"promote_children": true, "open_tree_on_hover": true, "max_tree_depth": -1, "never_show_close": false, "faster_scroll": false
|
||||
};
|
||||
var opt_toolbar = {
|
||||
"active_toolbar_tool": "", "filter_type": "url"
|
||||
};
|
||||
|
||||
var hold = true,
|
||||
started = false,
|
||||
schedule_save = 0,
|
||||
|
||||
tabs = {},
|
||||
|
||||
dt = {tabsIds: [], DropAfter: true, DropToTabId: 0, DropToIndex: 0, CameFromWindowId: 0, DroppedToWindowId: 0},
|
||||
|
||||
caption_clear_filter = chrome.i18n.getMessage("caption_clear_filter"),
|
||||
caption_loading = chrome.i18n.getMessage("caption_loading"),
|
||||
caption_searchbox = chrome.i18n.getMessage("caption_searchbox");
|
||||
|
||||
function Start(){
|
||||
started = true;
|
||||
|
||||
// open options to set defaults
|
||||
if (localStorage.getItem("themeDefault") === null){
|
||||
chrome.tabs.create({url: "options.html" });
|
||||
}
|
||||
|
||||
// all variables needed to load data
|
||||
var loaded_options = {}, loaded_opt_toolbar = {};
|
||||
|
||||
// set loaded options
|
||||
if (localStorage.getItem("current_options") !== null){
|
||||
loaded_options = JSON.parse(localStorage["current_options"]);
|
||||
}
|
||||
for (var parameter in opt) {
|
||||
if (loaded_options[parameter] != undefined && opt[parameter] != undefined){
|
||||
opt[parameter] = loaded_options[parameter];
|
||||
}
|
||||
}
|
||||
|
||||
// toolbar shelfs options (search url-title and which shelf is active)
|
||||
if (localStorage.getItem("current_toolbar_options") !== null){
|
||||
loaded_opt_toolbar = JSON.parse(localStorage["current_toolbar_options"]);
|
||||
}
|
||||
for (var parameter in opt_toolbar) {
|
||||
if (loaded_opt_toolbar[parameter] != undefined && opt_toolbar[parameter] != undefined){
|
||||
opt_toolbar[parameter] = loaded_opt_toolbar[parameter];
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
LoadTabs(0);
|
||||
}
|
||||
|
||||
|
||||
|
||||
function LoadTabs(retry){
|
||||
chrome.tabs.query({windowType: "normal"}, function(qtabs){
|
||||
|
||||
// will loop forever if session restore tab is found
|
||||
if (navigator.userAgent.match("Firefox") !== null){
|
||||
var halt = false;
|
||||
for (var t = 0; t < qtabs.length; t++){
|
||||
if (qtabs[t].url.match("sessionrestore")){
|
||||
halt = true;
|
||||
chrome.tabs.update(qtabs[t].id, { active: true });
|
||||
break;
|
||||
}
|
||||
}
|
||||
if (halt){
|
||||
setTimeout(function(){
|
||||
LoadTabs(retry);
|
||||
}, 2000);
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
// create current tabs object
|
||||
qtabs.forEach(function(Tab){
|
||||
HashTab(Tab);
|
||||
});
|
||||
|
||||
var reference_tabs = {};
|
||||
var tabs_matched = 0;
|
||||
|
||||
// compare saved tabs from storage to current session tabs, but can be skipped if set in options
|
||||
if (opt.skip_load == false){
|
||||
qtabs.forEach(function(Tab){
|
||||
for (var t = 0; t < 9999; t++){
|
||||
if (localStorage.getItem("t"+t) !== null){
|
||||
var LoadedTab = JSON.parse(localStorage["t"+t]);
|
||||
if (LoadedTab[1] === tabs[Tab.id].h && reference_tabs[LoadedTab[0]] == undefined){
|
||||
reference_tabs[LoadedTab[0]] = Tab.id;
|
||||
tabs[Tab.id].p = LoadedTab[2];
|
||||
tabs[Tab.id].n = LoadedTab[3];
|
||||
tabs[Tab.id].o = LoadedTab[4];
|
||||
tabs_matched++;
|
||||
break;
|
||||
}
|
||||
|
||||
} else {
|
||||
break;
|
||||
}
|
||||
|
||||
}
|
||||
});
|
||||
|
||||
// replace parents tabIds to new ones, for that purpose reference_tabs was made before
|
||||
for (var tabId in tabs){
|
||||
if (reference_tabs[tabs[tabId].p] != undefined){
|
||||
tabs[tabId].p = reference_tabs[tabs[tabId].p];
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// will try to find tabs for 10 times, roughly 30 seconds
|
||||
if (opt.skip_load == true || retry > 10 || localStorage.getItem("t0") === null || localStorage.getItem("t_count") === null || (tabs_matched > JSON.parse(localStorage["t_count"]))){
|
||||
hold = false;
|
||||
StartChromeListeners();
|
||||
PeriodicCheck();
|
||||
AutoSaveData();
|
||||
} else {
|
||||
setTimeout(function(){
|
||||
LoadTabs(retry+1);
|
||||
}, 3000);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
// once a minute checking for missing tabs
|
||||
function PeriodicCheck(){
|
||||
setTimeout(function(){
|
||||
PeriodicCheck();
|
||||
if (!hold){
|
||||
chrome.tabs.query({windowType: "normal"}, function(qtabs){
|
||||
qtabs.forEach(function(Tab){
|
||||
if (tabs[Tab.id] == undefined){
|
||||
HashTab(Tab);
|
||||
setTimeout(function(){
|
||||
chrome.runtime.sendMessage({command: "recheck_tabs"});
|
||||
},300);
|
||||
setTimeout(function(){
|
||||
schedule_save++;
|
||||
},600);
|
||||
}
|
||||
});
|
||||
});
|
||||
}
|
||||
},60000);
|
||||
}
|
||||
|
||||
// save every 2 seconds if there is anything to save obviously
|
||||
function AutoSaveData(){
|
||||
setTimeout(function(){
|
||||
AutoSaveData();
|
||||
if (schedule_save > 0){
|
||||
schedule_save = 1;
|
||||
}
|
||||
if (!hold && schedule_save > 0 && Object.keys(tabs).length > 1){
|
||||
chrome.tabs.query({windowType: "normal"}, function(qtabs){
|
||||
localStorage["t_count"] = qtabs.length*0.5;
|
||||
for (var t = 0; t < qtabs.length; t++){
|
||||
if (tabs[qtabs[t].id] != undefined && tabs[qtabs[t].id].h != undefined && tabs[qtabs[t].id].p != undefined && tabs[qtabs[t].id].n != undefined && tabs[qtabs[t].id].o != undefined){
|
||||
var Tab = JSON.stringify([qtabs[t].id, tabs[qtabs[t].id].h, tabs[qtabs[t].id].p, tabs[qtabs[t].id].n, tabs[qtabs[t].id].o]);
|
||||
if (localStorage.getItem("t"+t) == null || localStorage["t"+t] !== Tab){
|
||||
localStorage["t"+t] = Tab;
|
||||
}
|
||||
}
|
||||
}
|
||||
schedule_save--;
|
||||
});
|
||||
}
|
||||
}, 1000);
|
||||
}
|
||||
|
||||
function SaveOptions(){
|
||||
localStorage["current_options"] = JSON.stringify(opt);
|
||||
}
|
||||
function SaveToolbarOptions(){
|
||||
localStorage["current_toolbar_options"] = JSON.stringify(opt_toolbar);
|
||||
}
|
||||
|
||||
function HashTab(tab){
|
||||
if (tabs[tab.id] == undefined){
|
||||
tabs[tab.id] = {h: 0, p: tab.pinned ? "pin_list" : "tab_list", n: tab.index, o: "n"};
|
||||
}
|
||||
var hash = 0;
|
||||
if (tab.url.length === 0){
|
||||
return 0;
|
||||
}
|
||||
for (var i = 0; i < tab.url.length; i++){
|
||||
hash = (hash << 5)-hash;
|
||||
hash = hash+tab.url.charCodeAt(i);
|
||||
hash |= 0;
|
||||
}
|
||||
tabs[tab.id].h = hash;
|
||||
}
|
||||
|
||||
// start all listeners
|
||||
function StartChromeListeners(){
|
||||
chrome.tabs.onCreated.addListener(function(tab){
|
||||
HashTab(tab);
|
||||
chrome.runtime.sendMessage({command: "tab_created", windowId: tab.windowId, tab: tab, tabId: tab.id});
|
||||
schedule_save++;
|
||||
});
|
||||
chrome.tabs.onAttached.addListener(function(tabId, attachInfo){
|
||||
chrome.tabs.get(tabId, function(tab){
|
||||
if (tabs[tabId] == undefined){ HashTab(tab); }
|
||||
chrome.runtime.sendMessage({command: "tab_attached", windowId: attachInfo.newWindowId, tab: tab, tabId: tabId});
|
||||
});
|
||||
schedule_save++;
|
||||
});
|
||||
chrome.tabs.onRemoved.addListener(function(tabId, removeInfo){
|
||||
chrome.runtime.sendMessage({command: "tab_removed", windowId: removeInfo.windowId, tabId: tabId});
|
||||
delete tabs[tabId];
|
||||
schedule_save++;
|
||||
});
|
||||
chrome.tabs.onDetached.addListener(function(tabId, detachInfo){
|
||||
if (tabs[tabId] == undefined){ HashTab(tab); }
|
||||
chrome.runtime.sendMessage({command: "tab_removed", windowId: detachInfo.oldWindowId, tabId: tabId});
|
||||
schedule_save++;
|
||||
});
|
||||
chrome.tabs.onUpdated.addListener(function(tabId, changeInfo, tab){
|
||||
if (tabs[tabId] == undefined || changeInfo.url != undefined){ HashTab(tab); }
|
||||
if (changeInfo.pinned == true){ tabs[tabId].p = "pin_list"; }
|
||||
if (changeInfo.pinned == false){ tabs[tabId].p = "tab_list"; }
|
||||
chrome.runtime.sendMessage({command: "tab_updated", windowId: tab.windowId, tab: tab, tabId: tabId, changeInfo: changeInfo});
|
||||
if (changeInfo.url != undefined || changeInfo.pinned != undefined){schedule_save++;}
|
||||
});
|
||||
chrome.tabs.onMoved.addListener(function(tabId, moveInfo){
|
||||
if (tabs[tabId] == undefined){ HashTab(tab); }
|
||||
chrome.runtime.sendMessage({command: "tab_moved", windowId: moveInfo.windowId, tabId: tabId, moveInfo: moveInfo});
|
||||
schedule_save++;
|
||||
});
|
||||
chrome.tabs.onReplaced.addListener(function(addedTabId, removedTabId){
|
||||
chrome.tabs.get(addedTabId, function(tab){
|
||||
if (addedTabId == removedTabId){
|
||||
chrome.runtime.sendMessage({command: "tab_updated", windowId: tab.windowId, tab: tab, tabId: tab.id, changeInfo: {status: tab.status, url: tab.url, title: tab.title, audible: tab.audible, mutedInfo: tab.mutedInfo}});
|
||||
} else {
|
||||
if (tabs[removedTabId]){
|
||||
tabs[addedTabId] = {h: GetHash(tab.url), p: tabs[removedTabId].p, n: tabs[removedTabId].n, o: tabs[removedTabId].o};
|
||||
} else {
|
||||
HashTab(tab);
|
||||
}
|
||||
chrome.runtime.sendMessage({command: "tab_removed", windowId: tab.windowId, tabId: removedTabId});
|
||||
chrome.runtime.sendMessage({command: "tab_attached", windowId: tab.windowId, tab: tab, tabId: addedTabId});
|
||||
delete tabs[removedTabId];
|
||||
}
|
||||
schedule_save++;
|
||||
});
|
||||
});
|
||||
chrome.tabs.onActivated.addListener(function(activeInfo){
|
||||
chrome.runtime.sendMessage({command: "tab_activated", windowId: activeInfo.windowId, tabId: activeInfo.tabId});
|
||||
});
|
||||
}
|
||||
|
||||
chrome.runtime.onMessage.addListener(function(message, sender, sendResponse){
|
||||
switch(message.command){
|
||||
case "background_start":
|
||||
if (!started){
|
||||
Start();
|
||||
}
|
||||
break;
|
||||
case "reload":
|
||||
window.location.reload();
|
||||
break;
|
||||
case "options_save":
|
||||
SaveOptions();
|
||||
break;
|
||||
case "toolbar_options_save":
|
||||
SaveToolbarOptions();
|
||||
break;
|
||||
}
|
||||
});
|
||||
function log(m){
|
||||
console.log(m);
|
||||
}
|
||||
chrome.runtime.onStartup.addListener(function(){
|
||||
Start();
|
||||
});
|
||||
|
||||
if (navigator.userAgent.match("Firefox") === null){
|
||||
chrome.runtime.onSuspend.addListener(function(){
|
||||
hold = true;
|
||||
});
|
||||
}
|
||||
|
298
defaults.js
Normal file
@ -0,0 +1,298 @@
|
||||
var ColorsSet = {
|
||||
// scrolls
|
||||
"scrollbar_thumb": "#cdcdcd",
|
||||
"scrollbar_thumb_hover": "#a6a6a6",
|
||||
"scrollbar_track": "#e4e4e4",
|
||||
|
||||
// toolbar
|
||||
"toolbar_background": "#f2f2f2",
|
||||
"toolbar_border_bottom": "#cccccc",
|
||||
|
||||
"button_border": "#f2f2f2",
|
||||
"button_background": "#f2f2f2",
|
||||
|
||||
"button_hover_border": "#bebebe",
|
||||
"button_hover_background": "#dcdcdc",
|
||||
|
||||
"button_icons": "#808080",
|
||||
|
||||
"filter_box_background": "#fafafa",
|
||||
"filter_box_border": "#cccccc",
|
||||
"filter_box_font": "#333333",
|
||||
"filter_clear_icon": "#808080",
|
||||
|
||||
|
||||
// lists
|
||||
"pin_list_border_bottom": "#cccccc",
|
||||
"pin_list_background": "#fafafa",
|
||||
"tab_list_background": "#fafafa",
|
||||
|
||||
// tabs
|
||||
"tab_background": "#f2f2f2",
|
||||
"tab_border": "#bebebe",
|
||||
|
||||
"tab_hover_background": "#d7d7d7",
|
||||
"tab_hover_border": "#878787",
|
||||
|
||||
"tab_selected_background": "#e5f3fb",
|
||||
"tab_selected_border": "#70c0e7",
|
||||
|
||||
"tab_selected_hover_border": "#78aee5",
|
||||
"tab_selected_hover_background": "#d0e2f0",
|
||||
|
||||
"tab_filtered": "#e8e000",
|
||||
"tab_filtered_highlighted": "#ffa500",
|
||||
|
||||
"tab_filtered_selected": "#0f8079",
|
||||
"tab_filtered_selected_active": "#1299a9",
|
||||
|
||||
"active_font_weight": "bold",
|
||||
|
||||
// tabs title
|
||||
"tab_title": "#000000",
|
||||
"tab_title_active": "#000000",
|
||||
"tab_title_discarded": "#7e7e7e",
|
||||
|
||||
// drag&drop placeholder indicator
|
||||
"drag_indicator": "#339bf3",
|
||||
|
||||
// close button
|
||||
"close_x": "#7d7d7d",
|
||||
"close_hover_x": "#fbfcfe",
|
||||
|
||||
"close_hover_border": "#757676",
|
||||
"close_hover_background": "#939394",
|
||||
|
||||
// trees expand
|
||||
"expand_open_border": "#339bf3",
|
||||
"expand_open_background": "#d0e2f0",
|
||||
|
||||
"expand_closed_border": "#969696",
|
||||
"expand_closed_background": "#eaeaea",
|
||||
|
||||
"expand_lines": "#cccccc",
|
||||
|
||||
"tabs_menu_font": "#333333",
|
||||
|
||||
"tabs_menu_background": "#fafafa",
|
||||
"tabs_menu_border": "#bebebe",
|
||||
|
||||
"tabs_menu_hover_background": "#efefef",
|
||||
"tabs_menu_hover_border": "#bebebe",
|
||||
|
||||
"tabs_menu_separator": "#efefef"
|
||||
}
|
||||
|
||||
var TabsSizeSets = [
|
||||
//0
|
||||
{
|
||||
"pin_width": "22px",
|
||||
"pin_height": "20px",
|
||||
|
||||
"tab_height": "15px",
|
||||
"tab_height_line": "17px",
|
||||
|
||||
"expand_box_size": "5px",
|
||||
"expand_box_top": "4px",
|
||||
"expand_box_left": "3px",
|
||||
|
||||
"expand_line_h_top": "7px",
|
||||
"expand_line_h_width": "12px",
|
||||
"expand_line_h_oc_width": "3px",
|
||||
|
||||
"expand_line_v_top": "-7px",
|
||||
"expand_line_v_left": "0px",
|
||||
"expand_line_v_last_height": "15px",
|
||||
|
||||
"title_padding_with_close": "20px",
|
||||
"title_font_size": "10.5px",
|
||||
|
||||
"title_padding_left": "19px",
|
||||
|
||||
"drag_area_top": "6px",
|
||||
"drag_area_bottom": "4px",
|
||||
|
||||
"close_top": "1px",
|
||||
"close_right": "1px",
|
||||
"close_size": "11px",
|
||||
|
||||
"favicon_size": "13px 13px",
|
||||
"favicon_pos": "2px center"
|
||||
|
||||
},
|
||||
//1
|
||||
{
|
||||
"pin_width": "24px",
|
||||
"pin_height": "22px",
|
||||
|
||||
"tab_height": "17px",
|
||||
"tab_height_line": "19px",
|
||||
|
||||
"expand_box_size": "5px",
|
||||
"expand_box_top": "5px",
|
||||
"expand_box_left": "3px",
|
||||
|
||||
"expand_line_h_top": "8px",
|
||||
"expand_line_h_width": "12px",
|
||||
"expand_line_h_oc_width": "3px",
|
||||
|
||||
"expand_line_v_top": "-8px",
|
||||
"expand_line_v_left": "0px",
|
||||
"expand_line_v_last_height": "17px",
|
||||
|
||||
"title_padding_with_close": "20px",
|
||||
"title_font_size": "10.5px",
|
||||
|
||||
"title_padding_left": "20px",
|
||||
|
||||
"drag_area_top": "7px",
|
||||
"drag_area_bottom": "5px",
|
||||
|
||||
"close_top": "2px",
|
||||
"close_right": "2px",
|
||||
"close_size": "11px",
|
||||
|
||||
"favicon_size": "14px 14px",
|
||||
"favicon_pos": "3px center"
|
||||
},
|
||||
//2
|
||||
{
|
||||
"pin_width": "26px",
|
||||
"pin_height": "24px",
|
||||
|
||||
"tab_height": "19px",
|
||||
"tab_height_line": "23px",
|
||||
|
||||
"expand_box_size": "5px",
|
||||
"expand_box_top": "6px",
|
||||
"expand_box_left": "3px",
|
||||
|
||||
"expand_line_h_top": "9px",
|
||||
"expand_line_h_width": "12px",
|
||||
"expand_line_h_oc_width": "3px",
|
||||
|
||||
"expand_line_v_top": "-9px",
|
||||
"expand_line_v_left": "0px",
|
||||
"expand_line_v_last_height": "19px",
|
||||
|
||||
"title_padding_with_close": "24px",
|
||||
"title_font_size": "12px",
|
||||
|
||||
"title_padding_left": "25px",
|
||||
|
||||
"drag_area_top": "7px",
|
||||
"drag_area_bottom": "5px",
|
||||
|
||||
"close_top": "2px",
|
||||
"close_right": "2px",
|
||||
"close_size": "13px",
|
||||
|
||||
"favicon_size": "16px 16px",
|
||||
"favicon_pos": "4px center"
|
||||
},
|
||||
//3
|
||||
{
|
||||
"pin_width": "28px",
|
||||
"pin_height": "26px",
|
||||
|
||||
"tab_height": "21px",
|
||||
"tab_height_line": "25px",
|
||||
|
||||
"expand_box_size": "5px",
|
||||
"expand_box_top": "7px",
|
||||
"expand_box_left": "3px",
|
||||
|
||||
"expand_line_h_top": "10px",
|
||||
"expand_line_h_width": "12px",
|
||||
"expand_line_h_oc_width": "3px",
|
||||
|
||||
"expand_line_v_top": "-10px",
|
||||
"expand_line_v_left": "0px",
|
||||
"expand_line_v_last_height": "21px",
|
||||
|
||||
"title_padding_with_close": "24px",
|
||||
"title_font_size": "12px",
|
||||
|
||||
"title_padding_left": "25px",
|
||||
|
||||
"drag_area_top": "8px",
|
||||
"drag_area_bottom": "5px",
|
||||
|
||||
"close_top": "3px",
|
||||
"close_right": "3px",
|
||||
"close_size": "13px",
|
||||
|
||||
"favicon_size": "16px 16px",
|
||||
"favicon_pos": "4px center"
|
||||
},
|
||||
//4
|
||||
{
|
||||
"pin_width": "30px",
|
||||
"pin_height": "28px",
|
||||
|
||||
"tab_height": "23px",
|
||||
"tab_height_line": "26px",
|
||||
|
||||
"expand_box_size": "5px",
|
||||
"expand_box_top": "8px",
|
||||
"expand_box_left": "3px",
|
||||
|
||||
"expand_line_h_top": "11px",
|
||||
"expand_line_h_width": "12px",
|
||||
"expand_line_h_oc_width": "3px",
|
||||
|
||||
"expand_line_v_top": "-11px",
|
||||
"expand_line_v_left": "0px",
|
||||
"expand_line_v_last_height": "23px",
|
||||
|
||||
"title_padding_with_close": "24px",
|
||||
"title_font_size": "12.5px",
|
||||
|
||||
"title_padding_left": "25px",
|
||||
|
||||
"drag_area_top": "9px",
|
||||
"drag_area_bottom": "6px",
|
||||
|
||||
"close_top": "4px",
|
||||
"close_right": "4px",
|
||||
"close_size": "14px",
|
||||
|
||||
"favicon_size": "16px 16px",
|
||||
"favicon_pos": "4px center"
|
||||
}
|
||||
];
|
||||
|
||||
var CurrentThemeVersion = 1;
|
||||
var TabsSizeSet = 2;
|
||||
var ScrollbarPinList = 4;
|
||||
var ScrollbarTabList = 16;
|
||||
var ToolbarShow = true;
|
||||
var ToolbarSet = $("#toolbar").html();
|
||||
|
||||
|
||||
function SaveTheme(themeName){
|
||||
var themeObj = {
|
||||
"toolbar": ToolbarSet,
|
||||
"ToolbarShow": ToolbarShow,
|
||||
"ColorsSet": ColorsSet,
|
||||
"TabsSizeSetNumber": TabsSizeSet,
|
||||
"TabsSizeSet": TabsSizeSets[TabsSizeSet],
|
||||
"ScrollbarPinList": ScrollbarPinList,
|
||||
"ScrollbarTabList": ScrollbarTabList,
|
||||
"theme_version": CurrentThemeVersion
|
||||
};
|
||||
|
||||
localStorage["theme"+themeName] = JSON.stringify(themeObj);
|
||||
return themeObj;
|
||||
}
|
||||
|
||||
if (localStorage.getItem("themeDefault") === null){
|
||||
SaveTheme("Default");
|
||||
localStorage["current_theme"] = "Default";
|
||||
} else {
|
||||
var theme = JSON.parse(localStorage["themeDefault"]);
|
||||
if (theme.theme_version != CurrentThemeVersion){
|
||||
SaveTheme("Default");
|
||||
}
|
||||
}
|
||||
|
BIN
icons/128.png
Normal file
After Width: | Height: | Size: 359 B |
BIN
icons/16.png
Normal file
After Width: | Height: | Size: 127 B |
BIN
icons/24.png
Normal file
After Width: | Height: | Size: 138 B |
BIN
icons/38.png
Normal file
After Width: | Height: | Size: 158 B |
BIN
icons/48.png
Normal file
After Width: | Height: | Size: 181 B |
BIN
icons/64.png
Normal file
After Width: | Height: | Size: 217 B |
4
lib_jquery/jquery-3.2.1.min.js
vendored
Normal file
51
manifest.json
Normal file
@ -0,0 +1,51 @@
|
||||
{
|
||||
"manifest_version": 2,
|
||||
"default_locale": "en",
|
||||
"background": {
|
||||
"scripts": [ "background.js" ],
|
||||
"persistent": true
|
||||
},
|
||||
"name": "Tree Tabs",
|
||||
"description": "__MSG_extDesc__",
|
||||
"icons": {
|
||||
"128": "icons/128.png",
|
||||
"48": "icons/48.png",
|
||||
"38": "icons/24.png",
|
||||
"19": "icons/16.png",
|
||||
"16": "icons/16.png"
|
||||
},
|
||||
"permissions": [ "tabs", "sessions", "chrome://favicon/" ],
|
||||
"commands": {
|
||||
"goto_tab_above": {
|
||||
"suggested_key": {
|
||||
"default": "Alt+1"
|
||||
},
|
||||
"description": "Go to tab above"
|
||||
},
|
||||
"goto_tab_below": {
|
||||
"suggested_key": {
|
||||
"default": "Alt+2"
|
||||
},
|
||||
"description": "Go to tab below"
|
||||
}
|
||||
},
|
||||
"sidebar_action": {
|
||||
"default_icon": {
|
||||
"19": "icons/16.png",
|
||||
"38": "icons/38.png"
|
||||
},
|
||||
"default_panel": "sidebar.html",
|
||||
"default_title": "Tree Tabs"
|
||||
},
|
||||
"options_page": "options.html",
|
||||
"applications": {
|
||||
"gecko": {
|
||||
"id": "TreeTabs@jagiello.it"
|
||||
}
|
||||
},
|
||||
"options_ui": {
|
||||
"page": "options.html",
|
||||
"open_in_tab":true
|
||||
},
|
||||
"version": "0.0.16"
|
||||
}
|
498
options.html
Normal file
@ -0,0 +1,498 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8"/>
|
||||
<title></title>
|
||||
<style rel="stylesheet">
|
||||
body:hover #donate {
|
||||
animation: shake 0.82s cubic-bezier(.36,.07,.19,.97) both;
|
||||
transform: translate3d(0, 0, 0);
|
||||
backface-visibility: hidden;
|
||||
perspective: 1000px;
|
||||
}
|
||||
|
||||
@keyframes shake {
|
||||
10%, 90% {
|
||||
transform: translate3d(-1px, 0, 0);
|
||||
}
|
||||
20%, 80% {
|
||||
transform: translate3d(2px, 0, 0);
|
||||
}
|
||||
30%, 50%, 70% {
|
||||
transform: translate3d(-4px, 0, 0);
|
||||
}
|
||||
40%, 60% {
|
||||
transform: translate3d(4px, 0, 0);
|
||||
}
|
||||
}
|
||||
body {
|
||||
margin: 20px;
|
||||
background-color: transparent;
|
||||
border: none;
|
||||
width: auto;
|
||||
height: auto;
|
||||
overflow: auto;
|
||||
padding: 0;
|
||||
font-family: Arial;
|
||||
font-size: 13px;
|
||||
cursor: default;
|
||||
}
|
||||
.field {
|
||||
width: 850px;
|
||||
word-wrap: break-word;
|
||||
overflow: hidden;
|
||||
margin-bottom:15px;
|
||||
}
|
||||
ul {
|
||||
padding-left: 22px;
|
||||
}
|
||||
|
||||
ul li {
|
||||
margin: 5px;
|
||||
}
|
||||
.label {
|
||||
padding-left: 6px;
|
||||
padding-right: 6px;
|
||||
}
|
||||
.cp {
|
||||
position:relative;
|
||||
left:-10px;
|
||||
top:-10px;
|
||||
width:40px;
|
||||
height:40px;
|
||||
border:none;
|
||||
margin:none;
|
||||
}
|
||||
.cb {
|
||||
border:1px solid #636363;
|
||||
overflow:hidden;
|
||||
width:20px;
|
||||
height:20px;
|
||||
margin-bottom:2px;
|
||||
}
|
||||
|
||||
</style>
|
||||
<link type="text/css" rel="stylesheet" media="all" href="../theme/theme.css" id="theme" />
|
||||
</head>
|
||||
<body id="body">
|
||||
<div style="width:850px; align:left;"><span style="width:100%; font-size:20px; display:inline-block; text-align:center; ">Tree Tabs</span></div>
|
||||
<br>
|
||||
|
||||
|
||||
<fieldset class="field" id="field_vivaldi">
|
||||
<legend class="label" id="options_vivaldi"></legend>
|
||||
<table>
|
||||
<tr>
|
||||
<td class="label" id="opt_url_for_web_panel"></td>
|
||||
<td><input style="position:relative;width:450px;left:8px;" type="text" id="url_for_web_panel" value="test"></input></td>
|
||||
</tr>
|
||||
</table>
|
||||
</fieldset>
|
||||
|
||||
<fieldset class="field" id="field_pins">
|
||||
<legend class="label" id="options_pinned" ></legend>
|
||||
<table style="display:inline-block;">
|
||||
<tr>
|
||||
<td><input type="checkbox" class="opt_checkbox bg_opt" id="pin_list_multi_row"></input></td>
|
||||
<td style="position:relative;left:2px;width:3px;">-</td>
|
||||
<td class="label" id="options_pin_list_multi_row"></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><input type="checkbox" class="opt_checkbox bg_opt" id="allow_pin_close"></input></td>
|
||||
<td style="position:relative;left:2px;width:3px;">-</td>
|
||||
<td class="label" id="option_allow_pin_close"></td>
|
||||
</tr>
|
||||
</table>
|
||||
</fieldset>
|
||||
|
||||
|
||||
<fieldset class="field" id="field_tabs">
|
||||
<legend class="label" id="options_tabs"></legend>
|
||||
<table style="display:vinline-block;">
|
||||
<tr>
|
||||
<td><input type="checkbox" class="opt_checkbox bg_opt" id="close_with_MMB"></input></td>
|
||||
<td style="position:relative;left:2px;width:3px;">-</td>
|
||||
<td class="label" id="options_close_with_MMB"></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><input type="checkbox" class="opt_checkbox bg_opt" id="always_show_close"></input></td>
|
||||
<td style="position:relative;left:2px;width:3px;">-</td>
|
||||
<td class="label" id="options_always_show_close"></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><input type="checkbox" class="opt_checkbox bg_opt" id="never_show_close"></input></td>
|
||||
<td style="position:relative;left:2px;width:3px;">-</td>
|
||||
<td class="label" id="options_never_show_close"></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><input type="checkbox" class="opt_checkbox bg_opt" id="close_other_trees"></input></td>
|
||||
<td style="position:relative;left:2px;width:3px;">-</td>
|
||||
<td class="label" id="options_close_other_trees"></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><input type="checkbox" class="opt_checkbox bg_opt" id="open_tree_on_hover"></input></td>
|
||||
<td style="position:relative;left:2px;width:3px;">-</td>
|
||||
<td class="label" id="options_open_tree_on_hover"></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td style="position:relative;top:-5px;"><input type="checkbox" class="opt_checkbox bg_opt" id="promote_children"></input></td>
|
||||
<td style="position:relative;top:-5px;left:2px;width:3px;">-</td>
|
||||
<td class="label" id="options_promote_children"></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td style="position:relative;top:-1px;"><input type="checkbox" class="opt_checkbox bg_opt" id="skip_load"></input></td>
|
||||
<td style="position:relative;top:-1px;left:2px;width:3px;">-</td>
|
||||
<td class="label" id="options_skip_load"></td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
<table id="faster_scroll_for_firefox" style="display:vinline-block;">
|
||||
<tr>
|
||||
<td><input type="checkbox" class="opt_checkbox bg_opt" id="faster_scroll"></input></td>
|
||||
<td style="position:relative;left:2px;width:3px;">-</td>
|
||||
<td class="label" id="options_faster_scroll"></td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
|
||||
<ul>
|
||||
<li>
|
||||
<label class="label" id="options_append_child_tab"></label>
|
||||
<select id="append_child_tab">
|
||||
<option class="bg_opt_drop_down_menu" id="options_append_child_tab_top" value="top"></option>
|
||||
<option class="bg_opt_drop_down_menu" id="options_append_child_tab_bottom" value="bottom"></option>
|
||||
</select>
|
||||
</li>
|
||||
<li>
|
||||
<label class="label" id="options_append_orphan_tab"></label>
|
||||
<select id="append_orphan_tab">
|
||||
<option class="bg_opt_drop_down_menu" id="options_append_orphan_tab_top" value="top"></option>
|
||||
<option class="bg_opt_drop_down_menu" id="options_append_orphan_tab_after_active" value="after_active"></option>
|
||||
<option class="bg_opt_drop_down_menu" id="options_append_orphan_tab_bottom" value="bottom"></option>
|
||||
<option class="bg_opt_drop_down_menu" id="options_append_orphan_tab_as_child" value="as_child"></option>
|
||||
</select>
|
||||
</li>
|
||||
<li>
|
||||
<label class="label" id="options_after_closing_active_tab"></label>
|
||||
<select id="after_closing_active_tab">
|
||||
<option class="bg_opt_drop_down_menu" id="options_after_closing_active_tab_go_up" value="above"></option>
|
||||
<option class="bg_opt_drop_down_menu" id="options_after_closing_active_tab_go_down" value="below"></option>
|
||||
<option class="bg_opt_drop_down_menu" id="options_after_closing_active_tab_go_browser" value="browser"></option>
|
||||
</select>
|
||||
</li>
|
||||
<li>
|
||||
<label class="label" id="options_append_child_tab_after_limit"></label>
|
||||
<select id="append_child_tab_after_limit">
|
||||
<option class="bg_opt_drop_down_menu" id="options_append_child_tab_after_limit_top" value="top"></option>
|
||||
<option class="bg_opt_drop_down_menu" id="options_append_child_tab_after_limit_after" value="after"></option>
|
||||
<option class="bg_opt_drop_down_menu" id="options_append_child_tab_after_limit_bottom" value="bottom"></option>
|
||||
</select>
|
||||
</li>
|
||||
</ul>
|
||||
<table style="display:vinline-block;">
|
||||
<tr>
|
||||
<td>
|
||||
<input type="number" style="width:80px;" min="-1" max="9999" step="1" id="max_tree_depth"></input>
|
||||
</td>
|
||||
<td style="position:relative;left:2px;width:3px;">-</td>
|
||||
<td class="label" id="options_max_tree_depth"></td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
</fieldset>
|
||||
|
||||
|
||||
<fieldset class="field" id="field_theme" style="width:850px;">
|
||||
<legend class="label" id="options_theme"></legend>
|
||||
|
||||
<select id="theme_list" style="padding-right:6px;"></select>
|
||||
<input type="text" id="new_theme_name" name="untitled" value="untitled"></input>
|
||||
<button class="set_button" type="button" id="options_rename_theme_button" style="margin:10px;">Rename</button>
|
||||
<button class="set_button" type="button" id="options_add_theme_button" style="margin:10px;">Add new</button>
|
||||
<button class="set_button" type="button" id="options_remove_theme_button" style="margin:10px;">Remove</button>
|
||||
<button class="set_button" type="button" id="options_import_theme_button" style="margin:10px;">Import</button>
|
||||
<button class="set_button" type="button" id="options_export_theme_button" style="margin:10px;">Export</button>
|
||||
<input type="file" multiple id="import_theme" style="display:none"></input>
|
||||
|
||||
|
||||
|
||||
<fieldset class="field" id="field_show_toolbar" style="width:816px;">
|
||||
<legend id="toolbar_legend">
|
||||
<input type="checkbox" style="position:relative; top:-1px;" id="show_toolbar"></input>
|
||||
<label class="label" style="position:relative; top:-3px;" id="options_toolbar"></label>
|
||||
</legend>
|
||||
|
||||
<label class="label" style="margin-bottom: 10px; margin-top: 4px; display: inline-block;" id="options_available_buttons"></label>
|
||||
|
||||
<div class="toolbar" id="toolbar" style="height: 94px; width: 250px;">
|
||||
<div class="toolbar_int" id="toolbar_main">
|
||||
<div class="button" id="button_new"><div class="button_img"></div></div>
|
||||
<div class="button" id="button_pin"><div class="button_img"></div></div>
|
||||
<div class="button" id="button_undo"><div class="button_img"></div></div>
|
||||
<div class="button" id="button_search"><div class="button_img"></div></div>
|
||||
<div class="button" id="button_tools"><div class="button_img"></div></div>
|
||||
</div>
|
||||
<div class="toolbar_int" id="toolbar_search">
|
||||
<div id="toolbar_search_input_box">
|
||||
<input id="filter_box" type="text" placeholder="Search tabs..."></input>
|
||||
<div id="button_filter_clear" style="opacity:0;" type="reset"></div>
|
||||
</div>
|
||||
<div id="toolbar_search_buttons">
|
||||
<div class="button" id="button_filter_type"><div class="button_img"></div></div>
|
||||
<div class="button" id="filter_search_go_prev"><div class="button_img"></div></div>
|
||||
<div class="button" id="filter_search_go_next"><div class="button_img"></div></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="toolbar_int" id="toolbar_tools">
|
||||
<div class="button" id="button_options"><div class="button_img"></div></div>
|
||||
<div class="button" id="button_bookmarks"><div class="button_img"></div></div>
|
||||
<div class="button" id="button_downloads"><div class="button_img"></div></div>
|
||||
<div class="button" id="button_history"><div class="button_img"></div></div>
|
||||
<div class="button" id="button_settings"><div class="button_img"></div></div>
|
||||
<div class="button" id="button_extensions"><div class="button_img"></div></div>
|
||||
<div class="button" id="button_discard"><div class="button_img"></div></div>
|
||||
<div class="button" id="button_move"><div class="button_img"></div></div>
|
||||
</div>
|
||||
<div id="toolbar_separator">
|
||||
</div>
|
||||
<div class="toolbar_int" id="toolbar_unused_buttons">
|
||||
</div>
|
||||
</div>
|
||||
<br>
|
||||
<table id="toolbar_colors" style="margin: 10px; vertical-align: top;">
|
||||
|
||||
<tr>
|
||||
<td><div class="cb"><input class="cp" id="toolbar_background" type="color"></div></td>
|
||||
<td class="cpl" id="options_color_theme_toolbar_background"></td>
|
||||
<td><div class="cb"><input class="cp" id="toolbar_border_bottom" type="color"></div></td>
|
||||
<td class="cpl" id="options_color_toolbar_border_bottom"></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><div class="cb"><input class="cp" id="button_icons" type="color"></div></td>
|
||||
<td class="cpl" id="options_color_button_icons"></td>
|
||||
<td><div class="cb"><input class="cp" id="button_border" type="color"></div></td>
|
||||
<td class="cpl" id="options_color_button_border"></td>
|
||||
<td><div class="cb"><input class="cp" id="button_background" type="color"></div></td>
|
||||
<td class="cpl" id="options_color_button_background"></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><div class="cb"><input class="cp" id="button_hover_border" type="color"></div></td>
|
||||
<td class="cpl" id="options_color_button_hover_border"></td>
|
||||
<td><div class="cb"><input class="cp" id="button_hover_background" type="color"></div></td>
|
||||
<td class="cpl" id="options_color_button_hover_background"></td>
|
||||
<td><div class="cb"><input class="cp" id="filter_box_background" type="color"></div></td>
|
||||
<td class="cpl" id="options_color_filter_box_background"></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><div class="cb"><input class="cp" id="filter_box_border" type="color"></div></td>
|
||||
<td class="cpl" id="options_color_filter_box_border"></td>
|
||||
<td><div class="cb"><input class="cp" id="filter_box_font" type="color"></div></td>
|
||||
<td class="cpl" id="options_color_filter_box_font"></td>
|
||||
<td><div class="cb"><input class="cp" id="filter_clear_icon" type="color"></div></td>
|
||||
<td class="cpl" id="options_color_filter_clear_icon"></td>
|
||||
</tr>
|
||||
</table>
|
||||
</fieldset>
|
||||
|
||||
|
||||
<fieldset class="field" id="Tabs" style="width:816px;">
|
||||
<legend class="label" id="options_theme_tabs"></legend>
|
||||
<table style="display: inline-block;">
|
||||
<tr>
|
||||
<td>
|
||||
<div class="pin_list" id="pin_list" style="height: 30px; width: 250px;">
|
||||
</div>
|
||||
<br>
|
||||
<div class="tab_list" id="tab_list" style="height: 80px; width: 250px;">
|
||||
</div>
|
||||
</td>
|
||||
|
||||
<table style="position:relative;top:-35px;display: inline-block;">
|
||||
<tr>
|
||||
<td>
|
||||
<button id="options_tabs_size_down" style="margin-top:10px;margin-left:10px;">-</button>
|
||||
<label class="label" id="options_tabs_size"></label>
|
||||
<button id="options_tabs_size_up" style="margin-top:10px;">+</button>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td style="position:relative;left:10px">
|
||||
<input style="position:relative;top:2px;" type="checkbox" id="active_tab_font_bold"></input> - <label class="label" id="options_active_tab_font_bold"></label>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</tr>
|
||||
</table>
|
||||
<table style="display: inline-block; margin-top: 10px;margin-left: 10px;vertical-align: top;">
|
||||
<tr>
|
||||
<td><div class="cb"><input class="cp" id="pin_list_border_bottom" type="color"></div></td>
|
||||
<td class="cpl" id="options_color_pin_list_border_bottom"></td>
|
||||
<td><div class="cb"><input class="cp" id="pin_list_background" type="color"></div></td>
|
||||
<td class="cpl" id="options_color_pin_list_background"></td>
|
||||
<td><div class="cb"><input class="cp" id="tab_list_background" type="color"></div></td>
|
||||
<td class="cpl" id="options_color_tab_list_background"></td>
|
||||
<td><div class="cb"><input class="cp" id="expand_lines" type="color"></div></td>
|
||||
<td class="cpl" id="options_color_expand_lines"></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><div class="cb"><input class="cp" id="tab_background" type="color"></div></td>
|
||||
<td class="cpl" id="options_color_tab_background"></td>
|
||||
<td><div class="cb"><input class="cp" id="tab_border" type="color"></div></td>
|
||||
<td class="cpl" id="options_color_tab_border"></td>
|
||||
<td><div class="cb"><input class="cp" id="tab_hover_background" type="color"></div></td>
|
||||
<td class="cpl" id="options_color_tab_hover_background"></td>
|
||||
<td><div class="cb"><input class="cp" id="tab_hover_border" type="color"></div></td>
|
||||
<td class="cpl" id="options_color_tab_hover_border"></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><div class="cb"><input class="cp" id="drag_indicator" type="color"></div></td>
|
||||
<td class="cpl" id="options_color_drag_indicator"></td>
|
||||
<td><div class="cb"><input class="cp" id="tab_title" type="color"></div></td>
|
||||
<td class="cpl" id="options_color_tab_title"></td>
|
||||
<td><div class="cb"><input class="cp" id="tab_title_active" type="color"></div></td>
|
||||
<td class="cpl" id="options_color_tab_title_active"></td>
|
||||
<td><div class="cb"><input class="cp" id="tab_title_discarded" type="color"></div></td>
|
||||
<td class="cpl" id="options_color_tab_title_discarded"></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><div class="cb"><input class="cp" id="tab_selected_background" type="color"></div></td>
|
||||
<td class="cpl" id="options_color_tab_selected_background"></td>
|
||||
<td><div class="cb"><input class="cp" id="tab_selected_border" type="color"></div></td>
|
||||
<td class="cpl" id="options_color_tab_selected_border"></td>
|
||||
<td><div class="cb"><input class="cp" id="tab_selected_hover_border" type="color"></div></td>
|
||||
<td class="cpl" id="options_color_tab_selected_hover_border"></td>
|
||||
<td><div class="cb"><input class="cp" id="tab_selected_hover_background" type="color"></div></td>
|
||||
<td class="cpl" id="options_color_tab_selected_hover_background"></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><div class="cb"><input class="cp" id="tab_filtered" type="color"></div></td>
|
||||
<td class="cpl" id="options_color_tab_filtered"></td>
|
||||
<td><div class="cb"><input class="cp" id="tab_filtered_highlighted" type="color"></div></td>
|
||||
<td class="cpl" id="options_color_tab_filtered_highlighted"></td>
|
||||
<td><div class="cb"><input class="cp" id="tab_filtered_selected" type="color"></div></td>
|
||||
<td class="cpl" id="options_color_tab_filtered_selected"></td>
|
||||
<td><div class="cb"><input class="cp" id="tab_filtered_selected_active" type="color"></div></td>
|
||||
<td class="cpl" id="options_color_tab_filtered_selected_active"></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><div class="cb"><input class="cp" id="close_x" type="color"></div></td>
|
||||
<td class="cpl" id="options_color_close_x"></td>
|
||||
<td><div class="cb"><input class="cp" id="close_hover_x" type="color"></div></td>
|
||||
<td class="cpl" id="options_color_close_hover_x"></td>
|
||||
<td><div class="cb"><input class="cp" id="close_hover_border" type="color"></div></td>
|
||||
<td class="cpl" id="options_color_close_hover_border"></td>
|
||||
<td><div class="cb"><input class="cp" id="close_hover_background" type="color"></div></td>
|
||||
<td class="cpl" id="options_color_close_hover_background"></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><div class="cb"><input class="cp" id="expand_open_border" type="color"></div></td>
|
||||
<td class="cpl" id="options_color_expand_open_border"></td>
|
||||
<td><div class="cb"><input class="cp" id="expand_open_background" type="color"></div></td>
|
||||
<td class="cpl" id="options_color_expand_open_background"></td>
|
||||
<td><div class="cb"><input class="cp" id="expand_closed_border" type="color"></div></td>
|
||||
<td class="cpl" id="options_color_expand_closed_border"></td>
|
||||
<td><div class="cb"><input class="cp" id="expand_closed_background" type="color"></div></td>
|
||||
<td class="cpl" id="options_color_expand_closed_background"></td>
|
||||
</tr>
|
||||
|
||||
</table>
|
||||
</fieldset>
|
||||
|
||||
<fieldset class="field" id="field_scrollbars" style="width:816px;">
|
||||
<legend class="label" id="options_scrollbars"></legend>
|
||||
<table style="display:inline-block;margin-top:10px;margin-left:0px;vertical-align:top;">
|
||||
<tr>
|
||||
<td>
|
||||
<div class="scrollbar" id="scrollbar" style="height:20px;width:25px;overflow:auto;">
|
||||
<div style="height: 1px; width: 200px;"></div>
|
||||
</div>
|
||||
<br>
|
||||
<div class="scrollbar" id="scrollbar" style="height:20px;width:25px;overflow:auto;">
|
||||
<div style="height:1000px;width:5px;"></div>
|
||||
</div>
|
||||
</td>
|
||||
<td>
|
||||
<table style="display:inline-block;vertical-align:top;">
|
||||
<tr>
|
||||
<td><input type="number" style="width:40px;" min="0" max="20" step="1" id="scrollbar_pin_list"></input></td>
|
||||
<td style="position:relative;left:2px;width:3px;">-</td>
|
||||
<td class="label" id="options_scrollbar_pin_list"></td>
|
||||
|
||||
<td><div class="cb"><input class="cp" id="scrollbar_thumb" type="color"></div></td>
|
||||
<td class="cpl" id="options_color_scrollbar_thumb"></td>
|
||||
<td><div class="cb"><input class="cp" id="scrollbar_thumb_hover" type="color"></div></td>
|
||||
<td class="cpl" id="options_color_scrollbar_thumb_hover"></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><input type="number" style="width:40px;" min="0" max="20" step="1" id="scrollbar_tab_list"></input></td>
|
||||
<td style="position:relative;left:2px;width:3px;">-</td>
|
||||
<td class="label" id="options_scrollbar_tab_list"></td>
|
||||
|
||||
<td><div class="cb"><input class="cp" id="scrollbar_track" type="color"></div></td>
|
||||
<td class="cpl" id="options_color_scrollbar_track"></td>
|
||||
</tr>
|
||||
</table>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</fieldset>
|
||||
|
||||
<fieldset class="field" style="width:816px;">
|
||||
<legend class="label" id="options_menu"></legend>
|
||||
|
||||
<ul class="menu" id="tabs_menu" style="display:inline-block;position:relative;top:0px;left:0px;">
|
||||
<li class="menu_item"></li>
|
||||
<div class="separator"></div>
|
||||
<li class="menu_item"></li>
|
||||
<div class="separator"></div>
|
||||
<li class="menu_item"></li>
|
||||
</ul>
|
||||
|
||||
|
||||
<table style="display:inline-block;vertical-align:top;margin-left:10px;margin-top:16px;">
|
||||
<tr>
|
||||
<td><div class="cb"><input class="cp" id="tabs_menu_background" type="color"></div></td>
|
||||
<td class="cpl" id="options_color_tabs_menu_background"></td>
|
||||
<td><div class="cb"><input class="cp" id="tabs_menu_border" type="color"></div></td>
|
||||
<td class="cpl" id="options_color_tabs_menu_border"></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><div class="cb"><input class="cp" id="tabs_menu_hover_background" type="color"></div></td>
|
||||
<td class="cpl" id="options_color_tabs_menu_hover_background"></td>
|
||||
<td><div class="cb"><input class="cp" id="tabs_menu_hover_border" type="color"></div></td>
|
||||
<td class="cpl" id="options_color_tabs_menu_hover_border"></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><div class="cb"><input class="cp" id="tabs_menu_font" type="color"></div></td>
|
||||
<td class="cpl" id="options_color_tabs_menu_font"></td>
|
||||
<td><div class="cb"><input class="cp" id="tabs_menu_separator" type="color"></div></td>
|
||||
<td class="cpl" id="options_color_tabs_menu_separator"></td>
|
||||
</tr>
|
||||
</table>
|
||||
</fieldset>
|
||||
</fieldset>
|
||||
|
||||
<script type="text/javascript" src="../lib_jquery/jquery-3.2.1.min.js"></script>
|
||||
<script type="text/javascript" src="../defaults.js"></script>
|
||||
<script type="text/javascript" src="../scripts/events_refresh.js"></script>
|
||||
<script type="text/javascript" src="../scripts/tabs.js"></script>
|
||||
<script type="text/javascript" src="../options.js"></script>
|
||||
|
||||
|
||||
<div id="donate" style="position:absolute; top:10px; left:700px;">
|
||||
<form action="https://www.paypal.com/cgi-bin/webscr" method="post" target="_top">
|
||||
<input type="hidden" name="cmd" value="_donations">
|
||||
<input type="hidden" name="business" value="karol@jagiello.it">
|
||||
<input type="hidden" name="lc" value="US">
|
||||
<input type="hidden" name="item_number" value="Vertical Tabs Support">
|
||||
<input type="hidden" name="no_note" value="0">
|
||||
<input type="hidden" name="currency_code" value="USD">
|
||||
<input type="hidden" name="bn" value="PP-DonationsBF:btn_donateCC_LG.gif:NonHostedGuest">
|
||||
<input type="image" src="https://www.paypalobjects.com/en_US/i/btn/btn_donateCC_LG.gif" border="0" name="submit" alt="PayPal - The safer, easier way to pay online!">
|
||||
<img alt="" border="0" src="https://www.paypalobjects.com/en_US/i/scr/pixel.gif" width="1" height="1">
|
||||
</form>
|
||||
</div>
|
||||
|
||||
</body>
|
||||
|
||||
</html>
|
581
options.js
Normal file
@ -0,0 +1,581 @@
|
||||
// ********** OPTIONS ***************
|
||||
|
||||
var bg;
|
||||
if (navigator.userAgent.match("Firefox") !== null){
|
||||
bg = browser.extension.getBackgroundPage();
|
||||
} else {
|
||||
bg = chrome.extension.getBackgroundPage();
|
||||
}
|
||||
|
||||
var themes = [];
|
||||
var theme = {};
|
||||
|
||||
document.addEventListener("DOMContentLoaded", function(){
|
||||
document.title = "Tree Tabs";
|
||||
|
||||
if (bg.opt == undefined){
|
||||
setTimeout(function(){
|
||||
location.reload();
|
||||
}, 3000);
|
||||
}
|
||||
|
||||
if (localStorage.getItem("themes") != null){
|
||||
themes = JSON.parse(localStorage["themes"]);
|
||||
}
|
||||
if (localStorage.getItem("current_theme") != null){
|
||||
LoadTheme(localStorage["current_theme"]);
|
||||
}
|
||||
|
||||
GetOptions();
|
||||
RefreshFields();
|
||||
SetEvents();
|
||||
});
|
||||
|
||||
|
||||
// AppendCSSSheets from theme
|
||||
function AppendCSSSheets(theme){
|
||||
var css_variables = "";
|
||||
for (var css_variable in theme.TabsSizeSet){
|
||||
css_variables = css_variables + "--" + css_variable + ":" + theme.TabsSizeSet[css_variable] + ";";
|
||||
}
|
||||
|
||||
for (var css_variable in theme.ColorsSet){
|
||||
ColorsSet[css_variable] = theme.ColorsSet[css_variable];
|
||||
if ($("#"+css_variable)[0]) $("#"+css_variable)[0].value = theme.ColorsSet[css_variable];
|
||||
css_variables = css_variables + "--" + css_variable + ":" + theme.ColorsSet[css_variable] + ";";
|
||||
}
|
||||
|
||||
// remove previous css rules in css sheet 0
|
||||
for (var r = 0; r < document.styleSheets[0].cssRules.length; r++){
|
||||
if (document.styleSheets[0].cssRules[r].cssText.match("--pin_width") !== null){
|
||||
document.styleSheets[0].deleteRule(r);
|
||||
}
|
||||
if (document.styleSheets[0].cssRules[r].cssText.match("::-webkit-scrollbar") !== null){
|
||||
document.styleSheets[0].deleteRule(r);
|
||||
}
|
||||
}
|
||||
document.styleSheets[0].insertRule("body { "+css_variables+" }", 0);
|
||||
|
||||
// scrollbars
|
||||
if (navigator.userAgent.match("Firefox") === null){
|
||||
document.styleSheets[0].insertRule("::-webkit-scrollbar { width:"+theme.ScrollbarTabList+"px; height:"+theme.ScrollbarPinList+"px; }", 3);
|
||||
}
|
||||
}
|
||||
|
||||
function LoadTheme(themeName){
|
||||
var theme = JSON.parse(localStorage["theme"+themeName]);
|
||||
|
||||
TabsSizeSet = theme.TabsSizeSetNumber;
|
||||
|
||||
// append toolbar from theme
|
||||
$("#toolbar").html(theme.toolbar);
|
||||
|
||||
AppendCSSSheets(theme);
|
||||
|
||||
$("#button_filter_type").addClass("url").removeClass("title");
|
||||
|
||||
// expand toolbar options
|
||||
ToolbarShow = $("#show_toolbar")[0].checked = theme.ToolbarShow;
|
||||
$("#field_show_toolbar").css({"height": $("#show_toolbar")[0].checked ? "" : "6"});
|
||||
ToolbarShow ? $("#options_available_buttons, #toolbar, #toolbar_colors").show() : $("#options_available_buttons, #toolbar, #toolbar_colors").hide();
|
||||
|
||||
// append example tabs
|
||||
$("#pin_list, #tab_list").html("");
|
||||
// pins
|
||||
AppendTab({tab: {id: "p0", pinned: true}, Append: true});
|
||||
AppendTab({tab: {id: "p1", pinned: true, active: true}, Append: true});
|
||||
|
||||
// tabs
|
||||
AppendTab({tab: {id: "t2", pinned: false}, Append: true});
|
||||
$("#tab_titlet2")[0].textContent = chrome.i18n.getMessage("options_theme_tabs_sample_text_normal");
|
||||
|
||||
AppendTab({tab: {id: "t3", pinned: false, active: true}, Append: true, ParentId: "t2"});
|
||||
$("#tab_titlet3")[0].textContent = chrome.i18n.getMessage("options_theme_tabs_sample_text_active_selected");
|
||||
$(".tab#t3").addClass("c selected");
|
||||
|
||||
|
||||
AppendTab({tab: {id: "t5", pinned: false, discarded: true}, Append: true});
|
||||
$("#tab_titlet5")[0].textContent = chrome.i18n.getMessage("options_theme_tabs_sample_text_discarded");
|
||||
|
||||
AppendTab({tab: {id: "t6", pinned: false}, Append: true});
|
||||
$("#tab_titlet6")[0].textContent = chrome.i18n.getMessage("options_theme_tabs_sample_text_search_result");
|
||||
$(".tab#t6").addClass("filtered");
|
||||
|
||||
|
||||
AppendTab({tab: {id: "t7", pinned: false}, Append: true});
|
||||
$("#tab_titlet7")[0].textContent = chrome.i18n.getMessage("options_theme_tabs_sample_text_search_result_higlighted");
|
||||
$(".tab#t7").addClass("filtered highlighted_search");
|
||||
|
||||
|
||||
AppendTab({tab: {id: "t8", pinned: false}, Append: true});
|
||||
$("#tab_titlet8")[0].textContent = chrome.i18n.getMessage("options_theme_tabs_sample_text_search_result_selected");
|
||||
$(".tab#t8").addClass("selected filtered");
|
||||
|
||||
|
||||
|
||||
AppendTab({tab: {id: "t9", pinned: false}, Append: true});
|
||||
$("#tab_titlet9")[0].textContent = chrome.i18n.getMessage("options_theme_tabs_sample_text_search_result_selected_active");
|
||||
$(".tab#t9").addClass("active selected filtered");
|
||||
|
||||
// drag&drop indicator
|
||||
$(".drag_entered_bottom").first().addClass("highlighted_drop_target");
|
||||
|
||||
// toolbar events
|
||||
$("#toolbar_tools, #toolbar_search").addClass("hidden");
|
||||
$(".on").removeClass("on");
|
||||
|
||||
ScrollbarPinList = $("#scrollbar_pin_list")[0].value = theme.ScrollbarPinList;
|
||||
ScrollbarTabList = $("#scrollbar_tab_list")[0].value = theme.ScrollbarTabList;
|
||||
|
||||
$("#active_tab_font_bold")[0].checked = theme.ColorsSet.active_font_weight == "normal" ? false : true;
|
||||
$("#body").css({"background-color": "transparent"});
|
||||
|
||||
}
|
||||
|
||||
|
||||
// document events
|
||||
function GetOptions(){
|
||||
// get language labels
|
||||
$(".label").each(function(){
|
||||
$(this).text(chrome.i18n.getMessage(this.id));
|
||||
});
|
||||
// get language for color pick labels
|
||||
$(".cpl").each(function(){
|
||||
$(this).text(chrome.i18n.getMessage(this.id));
|
||||
});
|
||||
// get language for menu labels
|
||||
$(".menu_item").each(function(){
|
||||
$(this).text(chrome.i18n.getMessage("options_example_menu_item"));
|
||||
});
|
||||
|
||||
// get checkboxes from saved states
|
||||
$(".opt_checkbox").each(function(){
|
||||
$(this)[0].checked = bg.opt[this.id];
|
||||
});
|
||||
$(".set_button").each(function(){
|
||||
$(this)[0].textContent = chrome.i18n.getMessage(this.id);
|
||||
});
|
||||
|
||||
// get language dropdown menus
|
||||
$(".bg_opt_drop_down_menu").each(function(){
|
||||
$(this)[0].textContent = chrome.i18n.getMessage(this.id);
|
||||
});
|
||||
|
||||
|
||||
// get options for append child tab
|
||||
for (var i = 0; i < $("#append_child_tab")[0].options.length; i++){
|
||||
if ($("#append_child_tab")[0].options[i].value === bg.opt.append_child_tab){
|
||||
$("#append_child_tab")[0].selectedIndex = i;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
// get options for append child tab after limit
|
||||
for (var i = 0; i < $("#append_child_tab_after_limit")[0].options.length; i++){
|
||||
if ($("#append_child_tab_after_limit")[0].options[i].value === bg.opt.append_child_tab_after_limit){
|
||||
$("#append_child_tab_after_limit")[0].selectedIndex = i;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
// get options for append orphan tab
|
||||
for (var i = 0; i < $("#append_orphan_tab")[0].options.length; i++){
|
||||
if ($("#append_orphan_tab")[0].options[i].value === bg.opt.append_orphan_tab){
|
||||
$("#append_orphan_tab")[0].selectedIndex = i;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
// get options for action after closing active tab
|
||||
for (var i = 0; i < $("#after_closing_active_tab")[0].options.length; i++){
|
||||
if ($("#after_closing_active_tab")[0].options[i].value === bg.opt.after_closing_active_tab){
|
||||
$("#after_closing_active_tab")[0].selectedIndex = i;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
// get options for tabs tree depth option
|
||||
$("#max_tree_depth")[0].value = bg.opt.max_tree_depth;
|
||||
|
||||
// append themes to dropdown menu
|
||||
for (var i = 0; i < themes.length; i++){
|
||||
var t_list = document.getElementById("theme_list");
|
||||
var theme_name = document.createElement("option");
|
||||
theme_name.value = themes[i];
|
||||
theme_name.text = themes[i];
|
||||
t_list.add(theme_name);
|
||||
}
|
||||
|
||||
// select current theme in dropdown list
|
||||
for (var i = 0; i < $("#theme_list")[0].options.length; i++){
|
||||
if ($("#theme_list")[0].options[i].value === localStorage["current_theme"]){
|
||||
$("#theme_list")[0].selectedIndex = i;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
function ExportTheme(filename) {
|
||||
var themeObj = {
|
||||
"ToolbarShow": ToolbarShow,
|
||||
"ColorsSet": ColorsSet,
|
||||
"TabsSizeSetNumber": TabsSizeSet,
|
||||
"TabsSizeSet": TabsSizeSets[TabsSizeSet],
|
||||
"ScrollbarPinList": ScrollbarPinList,
|
||||
"ScrollbarTabList": ScrollbarTabList,
|
||||
"theme_name": $("#theme_list").val(),
|
||||
"theme_version": CurrentThemeVersion,
|
||||
"toolbar": ToolbarSet
|
||||
};
|
||||
var data = JSON.stringify(themeObj);
|
||||
var body = document.getElementById("body");
|
||||
var link = document.createElement("a");
|
||||
link.target = "_blank";
|
||||
link.download = filename;
|
||||
link.href = "data:text/csv;charset=utf-8," + encodeURIComponent(data);
|
||||
body.appendChild(link);
|
||||
link.click();
|
||||
link.remove();
|
||||
}
|
||||
|
||||
|
||||
function ImportTheme(){
|
||||
var file = document.getElementById("import_theme");
|
||||
var fr = new FileReader();
|
||||
if (file.files[0] == undefined) return;
|
||||
fr.readAsText(file.files[0]);
|
||||
fr.onload = function(){
|
||||
var data = fr.result;
|
||||
var themeObj = JSON.parse(data);
|
||||
|
||||
if (themeObj.theme_version > CurrentThemeVersion){
|
||||
alert(chrome.i18n.getMessage("options_loaded_theme_newer_version"));
|
||||
}
|
||||
if (themeObj.theme_version < CurrentThemeVersion){
|
||||
alert(chrome.i18n.getMessage("options_loaded_theme_older_version"));
|
||||
}
|
||||
|
||||
if (themeObj.theme_version <= CurrentThemeVersion){
|
||||
for (var val in ColorsSet){
|
||||
ColorsSet[val] = themeObj.ColorsSet[val];
|
||||
}
|
||||
|
||||
ToolbarShow = themeObj.ToolbarShow;
|
||||
TabsSizeSet = themeObj.TabsSizeSetNumber;
|
||||
ScrollbarPinList = themeObj.ScrollbarPinList;
|
||||
ScrollbarTabList = themeObj.ScrollbarTabList;
|
||||
|
||||
$("#toolbar").html(themeObj.toolbar);
|
||||
ToolbarSet = themeObj.toolbar;
|
||||
|
||||
if (themes.indexOf(themeObj.theme_name) != -1){
|
||||
themeObj.theme_name = themeObj.theme_name + "(1)";
|
||||
}
|
||||
|
||||
themes.push(themeObj.theme_name);
|
||||
|
||||
SaveTheme(themeObj.theme_name);
|
||||
var t_list = document.getElementById("theme_list");
|
||||
var theme_name = document.createElement("option");
|
||||
theme_name.value = themeObj.theme_name;
|
||||
theme_name.text = theme_name.value;
|
||||
t_list.add(theme_name);
|
||||
|
||||
$("#theme_list")[0].selectedIndex = $("#theme_list")[0].options.length-1;
|
||||
|
||||
localStorage["themes"] = JSON.stringify(themes);
|
||||
localStorage["current_theme"] = themeObj.theme_name;
|
||||
LoadTheme(themeObj.theme_name);
|
||||
RefreshFields();
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
// document events
|
||||
function SetEvents(){
|
||||
|
||||
// import theme preset button
|
||||
$(document).on("click", "#options_import_theme_button", function(event){
|
||||
$("#import_theme").click();
|
||||
});
|
||||
$(document).on("change", "#import_theme", function(event){
|
||||
ImportTheme();
|
||||
});
|
||||
|
||||
// export theme preset button
|
||||
$(document).on("click", "#options_export_theme_button", function(event){
|
||||
if ($("#theme_list")[0].options.length == 0){
|
||||
alert(chrome.i18n.getMessage("options_no_theme_to_export"));
|
||||
} else {
|
||||
ExportTheme($("#theme_list").val() + ".tt_theme");
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
// rename theme preset button
|
||||
$(document).on("click", "#options_rename_theme_button", function(event){
|
||||
|
||||
if (themes.indexOf($("#new_theme_name")[0].value) != -1){
|
||||
alert(chrome.i18n.getMessage("options_there_is_a_theme_with_this_name"));
|
||||
return;
|
||||
}
|
||||
|
||||
if ($("#new_theme_name")[0].value == ""){
|
||||
alert(chrome.i18n.getMessage("options_theme_name_cannot_be_empty"));
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
localStorage["theme"+($("#new_theme_name")[0].value)] = localStorage["theme"+($("#theme_list").val())];
|
||||
localStorage.removeItem("theme"+($("#theme_list").val()));
|
||||
|
||||
var t_list = document.getElementById("theme_list");
|
||||
|
||||
themes[themes.indexOf(t_list.options[t_list.selectedIndex].value)] = $("#new_theme_name")[0].value;
|
||||
t_list.options[t_list.selectedIndex].value = t_list.options[t_list.selectedIndex].text = $("#new_theme_name")[0].value;
|
||||
localStorage["themes"] = JSON.stringify(themes);
|
||||
localStorage["current_theme"] = $("#theme_list").val();
|
||||
});
|
||||
|
||||
|
||||
|
||||
// set checkbox options on/off and save
|
||||
$(document).on("click", ".bg_opt", function(event){
|
||||
bg.opt[this.id] = $(this)[0].checked ? true : false;
|
||||
chrome.runtime.sendMessage({command: "options_save"});
|
||||
});
|
||||
|
||||
// set dropdown menu options
|
||||
$("#append_child_tab, #append_child_tab_after_limit, #after_closing_active_tab, #append_orphan_tab").change(function(){
|
||||
bg.opt[this.id] = $(this).val();
|
||||
chrome.runtime.sendMessage({command: "options_save"});
|
||||
});
|
||||
|
||||
|
||||
// set tabs tree depth option
|
||||
$(document).on("input", "#max_tree_depth", function(event){
|
||||
bg.opt.max_tree_depth = $(this)[0].value;
|
||||
chrome.runtime.sendMessage({command: "options_save"});
|
||||
});
|
||||
|
||||
|
||||
// set toolbar on/off and show/hide all toolbar options
|
||||
$(document).on("click", "#show_toolbar", function(event){
|
||||
ToolbarShow = $("#show_toolbar")[0].checked ? true : false;
|
||||
SaveTheme($("#theme_list").val());
|
||||
$("#field_show_toolbar").css({"height": $("#show_toolbar")[0].checked ? "" : "6"});
|
||||
ToolbarShow ? $("#options_available_buttons, #toolbar, #toolbar_colors").show() : $("#options_available_buttons, #toolbar, #toolbar_colors").hide();
|
||||
});
|
||||
|
||||
|
||||
// block system dragging
|
||||
$(document).bind("drop dragover", function(event){
|
||||
event.preventDefault();
|
||||
});
|
||||
|
||||
var dragged_button;
|
||||
$(document).on("mousedown", ".button", function(event){
|
||||
if ($(this).is("#button_filter_type, #filter_search_go_prev, #filter_search_go_next")){
|
||||
return;
|
||||
}
|
||||
$(this).attr("draggable", "true");
|
||||
dragged_button = this;
|
||||
});
|
||||
|
||||
// set dragged button node
|
||||
$(document).on("dragstart", ".button", function(event){
|
||||
event.originalEvent.dataTransfer.setData(" "," ");
|
||||
event.originalEvent.dataTransfer.setDragImage(document.getElementById("DragImage"), 0, 0);
|
||||
});
|
||||
|
||||
// remove draggable attribute to clean html which will be saved in the toolbar
|
||||
$(document).on("mouseleave", ".button", function(event){
|
||||
$(".button").removeAttr("draggable");
|
||||
});
|
||||
|
||||
// save toolbar
|
||||
$(document).on("dragend", ".button", function(event){
|
||||
ToolbarSet = $("#toolbar").html();
|
||||
SaveTheme($("#theme_list").val());
|
||||
});
|
||||
|
||||
|
||||
// drag&drop buttons to lists
|
||||
$(document).on("dragenter", "#toolbar_main, #toolbar_tools, #toolbar_unused_buttons", function(event){
|
||||
if ($(dragged_button).is("#button_tools, #button_search") && $(this).is("#toolbar_tools")){
|
||||
return;
|
||||
}
|
||||
if (dragged_button.parentNode.id != this.id){
|
||||
$("#"+dragged_button.id).appendTo($(this));
|
||||
}
|
||||
});
|
||||
|
||||
// move (flip) buttons
|
||||
$(document).on("dragenter", ".button", function(event){
|
||||
if ($(dragged_button).is("#button_tools, #button_search") && $(this).parent().is("#toolbar_tools")){
|
||||
return;
|
||||
}
|
||||
if ($(this).parent().is("#toolbar_search, #toolbar_search_buttons")){
|
||||
return;
|
||||
}
|
||||
if ( $(this).index() <= $("#"+dragged_button.id).index()){
|
||||
$("#"+dragged_button.id).insertBefore($(this));
|
||||
} else {
|
||||
$("#"+dragged_button.id).insertAfter($(this));
|
||||
}
|
||||
});
|
||||
|
||||
// add new theme preset button
|
||||
$(document).on("click", "#options_add_theme_button", function(event){
|
||||
if (themes.indexOf($("#new_theme_name")[0].value) != -1){
|
||||
alert(chrome.i18n.getMessage("options_there_is_a_theme_with_this_name"));
|
||||
return;
|
||||
}
|
||||
|
||||
if ($("#new_theme_name")[0].value == ""){
|
||||
alert(chrome.i18n.getMessage("options_theme_name_cannot_be_empty"));
|
||||
return;
|
||||
}
|
||||
|
||||
LoadTheme("Default");
|
||||
themes.push($("#new_theme_name")[0].value);
|
||||
var t_list = document.getElementById("theme_list");
|
||||
var theme_name = document.createElement("option");
|
||||
theme_name.value = $("#new_theme_name")[0].value;
|
||||
theme_name.text = theme_name.value;
|
||||
t_list.add(theme_name);
|
||||
|
||||
$("#theme_list")[0].selectedIndex = $("#theme_list")[0].options.length-1;
|
||||
SaveTheme(theme_name.value);
|
||||
localStorage["themes"] = JSON.stringify(themes);
|
||||
localStorage["current_theme"] = $("#theme_list").val();
|
||||
RefreshFields();
|
||||
});
|
||||
|
||||
// remove theme preset button
|
||||
$(document).on("click", "#options_remove_theme_button", function(event){
|
||||
if ($("#theme_list")[0].options.length == 0){
|
||||
localStorage["current_theme"] = "Default";
|
||||
return;
|
||||
}
|
||||
|
||||
themes.splice(themes.indexOf($("#theme_list").val()), 1);
|
||||
localStorage["themes"] = JSON.stringify(themes);
|
||||
|
||||
localStorage.removeItem("theme"+($("#theme_list").val()));
|
||||
var x = document.getElementById("theme_list");
|
||||
x.remove(x.selectedIndex);
|
||||
|
||||
localStorage["current_theme"] = ($("#theme_list")[0].options.length > 0) ? $("#theme_list").val() : "Default";
|
||||
LoadTheme(localStorage["current_theme"]);
|
||||
RefreshFields();
|
||||
});
|
||||
|
||||
// select theme from list
|
||||
$("#theme_list").change(function(){
|
||||
localStorage["current_theme"] = $(this).val();
|
||||
LoadTheme($(this).val());
|
||||
});
|
||||
|
||||
|
||||
// change colors with color pickers
|
||||
$(document).on("input", ".cp", function(event){
|
||||
ColorsSet[this.id] = $(this)[0].value;
|
||||
AppendCSSSheets(SaveTheme($("#theme_list").val()));
|
||||
});
|
||||
|
||||
// set scrollbar sizes
|
||||
$(document).on("input", "#scrollbar_pin_list, #scrollbar_tab_list", function(event){
|
||||
ScrollbarPinList = $("#scrollbar_pin_list")[0].value;
|
||||
ScrollbarTabList = $("#scrollbar_tab_list")[0].value;
|
||||
SaveTheme($("#theme_list").val());
|
||||
document.styleSheets[0].addRule("::-webkit-scrollbar", "width:"+ScrollbarTabList+"px; height:"+ScrollbarPinList+"px;");
|
||||
});
|
||||
|
||||
|
||||
// change tabs size preset(up)
|
||||
$(document).on("click", "#options_tabs_size_up", function(event){
|
||||
if (TabsSizeSet < TabsSizeSets.length-1){
|
||||
TabsSizeSet++;
|
||||
AppendCSSSheets(SaveTheme($("#theme_list").val()));
|
||||
}
|
||||
});
|
||||
|
||||
// change tabs size preset(down)
|
||||
$(document).on("click", "#options_tabs_size_down", function(event){
|
||||
if (TabsSizeSet > 0){
|
||||
TabsSizeSet--;
|
||||
AppendCSSSheets(SaveTheme($("#theme_list").val()));
|
||||
}
|
||||
});
|
||||
|
||||
// change active_tab_font_bold
|
||||
$(document).on("click", "#active_tab_font_bold", function(event){
|
||||
ColorsSet.active_font_weight = $(this)[0].checked ? "bold" : "normal";
|
||||
AppendCSSSheets(SaveTheme($("#theme_list").val()));
|
||||
});
|
||||
|
||||
// show close button on hover
|
||||
$(document).on("mouseenter", ".close", function(event){
|
||||
$(this).addClass("close_hover");
|
||||
});
|
||||
$(document).on("mouseleave", ".close", function(event){
|
||||
$(".close_hover").removeClass("close_hover");
|
||||
});
|
||||
|
||||
// tabs on hover
|
||||
$(document).on("mouseover", ".tab_header", function(event){
|
||||
$(this).addClass("tab_header_hover").addClass("close_show");
|
||||
});
|
||||
|
||||
$(document).on("mouseleave", ".tab_header", function(event){
|
||||
$(this).removeClass("tab_header_hover").removeClass("close_show");
|
||||
});
|
||||
|
||||
$(document).on("click", "#button_tools, #button_search", function(event){
|
||||
if (event.button != 0){
|
||||
return;
|
||||
}
|
||||
if ($(this).is(".on")){
|
||||
$("#button_tools, #button_search").removeClass("on");
|
||||
$("#toolbar_tools, #toolbar_search").addClass("hidden");
|
||||
} else {
|
||||
$(this).addClass("on");
|
||||
if ($(this).is("#button_tools")){
|
||||
$("#button_search").removeClass("on");
|
||||
$("#toolbar_search").addClass("hidden");
|
||||
$("#toolbar_tools").removeClass("hidden");
|
||||
} else {
|
||||
$("#button_tools").removeClass("on");
|
||||
$("#toolbar_tools").addClass("hidden");
|
||||
$("#toolbar_search").removeClass("hidden");
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
// shrink or expand theme field
|
||||
function RefreshFields(){
|
||||
if ($("#theme_list")[0].options.length == 0){
|
||||
$("#field_theme").css({"height": "45px"});
|
||||
} else {
|
||||
$("#field_theme").css({"height": ""});
|
||||
}
|
||||
if (navigator.userAgent.match("Firefox") !== null){
|
||||
$("#field_scrollbars").hide();
|
||||
} else {
|
||||
$("#faster_scroll_for_firefox").hide();
|
||||
}
|
||||
if (navigator.userAgent.match("Vivaldi") !== null){
|
||||
$("#url_for_web_panel").val(chrome.runtime.getURL("sidebar.html"));
|
||||
$("#url_for_web_panel").prop("readonly", true);
|
||||
$("#url_for_web_panel").select();
|
||||
} else{
|
||||
$("#field_vivaldi").hide();
|
||||
}
|
||||
}
|
92
scripts/IO.js
Normal file
@ -0,0 +1,92 @@
|
||||
// ********** KEYBOARD AND MOUSE ***************
|
||||
|
||||
function SetIOEvents(){
|
||||
|
||||
// scroll horizontally on pin list
|
||||
$("#pin_list").bind("mousewheel DOMMouseScroll", function(event) {
|
||||
event = event.originalEvent;
|
||||
var delta = event.wheelDelta > 0 || event.detail < 0 ? -1 : 1;
|
||||
var multiplier = 1;
|
||||
for (var t = 1; t < 20; t++){
|
||||
setTimeout(function(){
|
||||
$("#pin_list").scrollLeft($("#pin_list").scrollLeft()+(delta*multiplier));
|
||||
}, t);
|
||||
multiplier++;
|
||||
}
|
||||
multiplier = 20;
|
||||
for (var t = 21; t < 40; t++){
|
||||
setTimeout(function(){
|
||||
$("#pin_list").scrollLeft($("#pin_list").scrollLeft()+(delta*multiplier));
|
||||
}, t);
|
||||
multiplier--;
|
||||
}
|
||||
|
||||
});
|
||||
|
||||
// this is for faster scrolling in firefox, for some reason its default scrolling is slow
|
||||
if (bg.opt.faster_scroll){
|
||||
$("#tab_list").bind("mousewheel DOMMouseScroll", function(event) {
|
||||
event = event.originalEvent;
|
||||
var delta = event.wheelDelta > 0 || event.detail < 0 ? -1.5 : 1.5;
|
||||
var multiplier = 1;
|
||||
for (var t = 1; t < 40; t++){
|
||||
setTimeout(function(){
|
||||
$("#tab_list").scrollTop($("#tab_list").scrollTop()+(delta*multiplier));
|
||||
}, t);
|
||||
multiplier++;
|
||||
}
|
||||
multiplier = 40;
|
||||
for (var t = 41; t < 80; t++){
|
||||
setTimeout(function(){
|
||||
$("#tab_list").scrollTop($("#tab_list").scrollTop()+(delta*multiplier));
|
||||
}, t);
|
||||
multiplier--;
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
// catch keyboard keys
|
||||
$(document).keydown(function(event){
|
||||
if (MouseHoverOver == "pin_list"){
|
||||
// ctrl+a to select all
|
||||
if (event.ctrlKey && event.which == 65){
|
||||
$(".pin").addClass("selected");
|
||||
}
|
||||
// ctrl+i to invert selection
|
||||
if (event.ctrlKey && event.which == 73){
|
||||
$(".pin").toggleClass("selected");
|
||||
}
|
||||
}
|
||||
if (MouseHoverOver == "tab_list"){
|
||||
// ctrl+a to select all
|
||||
if (event.ctrlKey && event.which == 65){
|
||||
$(".tab").addClass("selected");
|
||||
}
|
||||
// ctrl+i to invert selection
|
||||
if (event.ctrlKey && event.which == 73){
|
||||
$(".tab").toggleClass("selected");
|
||||
}
|
||||
}
|
||||
RefreshGUI();
|
||||
});
|
||||
|
||||
$(document).on("dragenter", "#toolbar", function(event){ // set mouse over id
|
||||
MouseHoverOver = this.id;
|
||||
});
|
||||
$(document).on("mouseenter", "#pin_list, #tab_list, #toolbar", function(event){ // set mouse over id
|
||||
MouseHoverOver = this.id;
|
||||
});
|
||||
$(document).on("mouseleave", window, function(event){
|
||||
MouseHoverOver = "";
|
||||
});
|
||||
|
||||
// remove middle mouse and set hiding menu
|
||||
document.body.onmousedown = function(event){
|
||||
if (event.button == 1 && bg.opt.close_with_MMB == true){
|
||||
event.preventDefault();
|
||||
}
|
||||
if (event.button == 0 && !$(event.target).is(".menu_item")){
|
||||
$(".menu").hide(0);
|
||||
}
|
||||
};
|
||||
}
|
150
scripts/events_chrome.js
Normal file
@ -0,0 +1,150 @@
|
||||
// ********** CHROME EVENTS ***************
|
||||
|
||||
chrome.commands.onCommand.addListener(function(command) {
|
||||
chrome.windows.getLastFocused({windowTypes: ["normal"]}, function(window) {
|
||||
if (CurrentWindowId == window.id){
|
||||
if (command == "goto_tab_above"){
|
||||
ActivatePrevTab();
|
||||
}
|
||||
if (command == "goto_tab_below"){
|
||||
ActivateNextTab();
|
||||
}
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
chrome.runtime.onMessage.addListener(function(message, sender, sendResponse){
|
||||
if (message.command == "reload"){
|
||||
window.location.reload();
|
||||
}
|
||||
if (message.command == "recheck_tabs"){
|
||||
schedule_update_data++;
|
||||
}
|
||||
if (message.command == "drag_end"){
|
||||
DropTargetsSendToBack();
|
||||
}
|
||||
|
||||
|
||||
if (message.windowId == CurrentWindowId){
|
||||
switch(message.command){
|
||||
case "tab_created":
|
||||
|
||||
// if set to treat unparented tabs as active tab's child
|
||||
if (bg.opt.append_orphan_tab == "as_child" && message.tab.openerTabId == undefined){
|
||||
message.tab.openerTabId = $(".active")[0].id;
|
||||
}
|
||||
// child case
|
||||
if (message.tab.openerTabId){
|
||||
|
||||
// append to tree
|
||||
if (bg.opt.max_tree_depth < 0 || (bg.opt.max_tree_depth > 0 && $("#"+message.tab.openerTabId).parents(".tab").length < bg.opt.max_tree_depth)){
|
||||
if (bg.opt.append_child_tab == "top"){
|
||||
AppendTab({ tab: message.tab, ParentId: message.tab.openerTabId, Append: false });
|
||||
}
|
||||
if (bg.opt.append_child_tab == "bottom"){
|
||||
AppendTab({ tab: message.tab, ParentId: message.tab.openerTabId, Append: true });
|
||||
}
|
||||
}
|
||||
|
||||
// if reached depth limit of the tree
|
||||
if (bg.opt.max_tree_depth > 0 && $("#"+message.tab.openerTabId).parents(".tab").length >= bg.opt.max_tree_depth){
|
||||
if (bg.opt.append_child_tab_after_limit == "after"){
|
||||
AppendTab({ tab: message.tab, InsertAfterId: message.tab.openerTabId, Append: true });
|
||||
}
|
||||
if (bg.opt.append_child_tab_after_limit == "top"){
|
||||
AppendTab({ tab: message.tab, ParentId: $("#"+message.tab.openerTabId).parent().parent()[0].id, Append: false });
|
||||
}
|
||||
if (bg.opt.append_child_tab_after_limit == "bottom"){
|
||||
AppendTab({ tab: message.tab, ParentId: $("#"+message.tab.openerTabId).parent().parent()[0].id, Append: true });
|
||||
}
|
||||
}
|
||||
|
||||
// place tabs flat, (should I merge it with orphans case?)
|
||||
if (bg.opt.max_tree_depth == 0){
|
||||
if (bg.opt.append_child_tab_after_limit == "after"){
|
||||
AppendTab({ tab: message.tab, InsertAfterId: message.tab.openerTabId, Append: false });
|
||||
}
|
||||
if (bg.opt.append_child_tab_after_limit == "top"){
|
||||
AppendTab({ tab: message.tab, Append: false });
|
||||
}
|
||||
if (bg.opt.append_child_tab_after_limit == "bottom"){
|
||||
AppendTab({ tab: message.tab, Append: true });
|
||||
}
|
||||
}
|
||||
// orphan case
|
||||
} else {
|
||||
if (bg.opt.append_orphan_tab == "after_active"){
|
||||
AppendTab({ tab: message.tab, InsertAfterId: $(".active")[0].id, Append: false });
|
||||
}
|
||||
if (bg.opt.append_orphan_tab == "top"){
|
||||
AppendTab({ tab: message.tab, Append: false });
|
||||
}
|
||||
if (bg.opt.append_orphan_tab == "bottom"){
|
||||
AppendTab({ tab: message.tab, Append: true });
|
||||
}
|
||||
}
|
||||
if ($("#"+message.tab.openerTabId).is(".c")){
|
||||
$("#"+message.tab.openerTabId).removeClass("c").addClass("o");
|
||||
}
|
||||
RefreshExpandStates();
|
||||
schedule_update_data++;
|
||||
RefreshGUI();
|
||||
break;
|
||||
case "tab_attached":
|
||||
AppendTab({ tab: message.tab, ParentId: bg.tabs[message.tabId].p, Append: true});
|
||||
if ($("#"+message.tabId).parent().children().eq(bg.dt.DropToIndex)){
|
||||
if (bg.dt.DropAfter){
|
||||
$("#"+message.tabId).insertAfter($("#"+message.tabId).parent().children().eq(bg.dt.DropToIndex));
|
||||
} else {
|
||||
$("#"+message.tabId).insertBefore($("#"+message.tabId).parent().children().eq(bg.dt.DropToIndex));
|
||||
}
|
||||
}
|
||||
RefreshExpandStates();
|
||||
setTimeout(function(){
|
||||
DropTargetsSendToBack();
|
||||
schedule_update_data++;
|
||||
},300);
|
||||
RefreshGUI();
|
||||
break;
|
||||
case "tab_removed":
|
||||
if (bg.opt.promote_children && $("#"+message.tabId).is(".tab")){
|
||||
$("#ch"+message.tabId).children().insertAfter($("#"+message.tabId));
|
||||
} else {
|
||||
$("#"+message.tabId).find(".tab").each(function(){
|
||||
chrome.tabs.remove(parseInt(this.id));
|
||||
});
|
||||
}
|
||||
RemoveTabFromList(message.tabId);
|
||||
RefreshExpandStates();
|
||||
setTimeout(function(){ schedule_update_data++; },300);
|
||||
RefreshGUI();
|
||||
break;
|
||||
case "tab_activated":
|
||||
setTimeout(function(){ SetActiveTab(message.tabId); },100);
|
||||
break;
|
||||
case "tab_updated":
|
||||
if (message.changeInfo.favIconUrl != undefined || message.changeInfo.url != undefined){
|
||||
setTimeout(function(){ GetFaviconAndTitle(message.tabId); },100);
|
||||
}
|
||||
if (message.changeInfo.title != undefined){
|
||||
setTimeout(function(){ GetFaviconAndTitle(message.tabId); },1000);
|
||||
}
|
||||
|
||||
if (message.changeInfo.audible != undefined || message.changeInfo.mutedInfo != undefined){
|
||||
RefreshMediaIcon(message.tabId);
|
||||
}
|
||||
if (message.changeInfo.discarded != undefined){
|
||||
RefreshDiscarded(message.tabId);
|
||||
}
|
||||
if (message.changeInfo.pinned != undefined && DragNode == undefined){
|
||||
if ((message.tab.pinned && $("#"+message.tabId).is(".tab")) || (!message.tab.pinned && $("#"+message.tabId).is(".pin"))){
|
||||
SetTabClass({ id: message.tabId, pin: message.tab.pinned });
|
||||
schedule_update_data++;
|
||||
}
|
||||
RefreshExpandStates();
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
});
|
145
scripts/events_refresh.js
Normal file
@ -0,0 +1,145 @@
|
||||
// ********** REFRESH GUI ***************
|
||||
|
||||
function SetTRefreshEvents(){
|
||||
$(window).on("resize", function(event){
|
||||
RefreshGUI();
|
||||
});
|
||||
|
||||
// click on media icon
|
||||
$(document).on("mousedown", ".tab_mediaicon", function(event){
|
||||
event.stopPropagation();
|
||||
if (event.button == 0 && $(this).parent().parent().is(".audible, .muted")){
|
||||
chrome.tabs.get(parseInt(this.parentNode.parentNode.id), function(tab){
|
||||
chrome.tabs.update(tab.id, {muted:!tab.mutedInfo.muted});
|
||||
});
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
function RefreshGUI() {
|
||||
if ($("#toolbar").children().length > 0) {
|
||||
if ($("#button_tools, #button_search").is(".on")) {
|
||||
$("#toolbar").css({ "height": 53 });
|
||||
} else {
|
||||
$("#toolbar").css({ "height": 26 });
|
||||
}
|
||||
} else {
|
||||
$("#toolbar").css({ "height": 0 });
|
||||
}
|
||||
if ($("#pin_list").children().length == 0) {
|
||||
$("#pin_list").addClass("hidden");
|
||||
} else {
|
||||
$("#pin_list").removeClass("hidden");
|
||||
}
|
||||
$("#tab_list").css({ "height": $(window).height() - $("#pin_list").outerHeight() - $("#toolbar").outerHeight() });
|
||||
}
|
||||
|
||||
// set discarded class
|
||||
function RefreshDiscarded(tabId) {
|
||||
if ($("#" + tabId).length > 0) {
|
||||
chrome.tabs.get(parseInt(tabId), function(tab) {
|
||||
if (tab.discarded) {
|
||||
$("#" + tabId).addClass("discarded");
|
||||
} else {
|
||||
$("#" + tabId).removeClass("discarded");
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
// change media icon
|
||||
function RefreshMediaIcon(tabId) {
|
||||
if ($("#" + tabId).length > 0 && bg.tabs[tabId]) {
|
||||
chrome.tabs.get(parseInt(tabId), function(tab) {
|
||||
if (tab) {
|
||||
if (tab.mutedInfo.muted) {
|
||||
$("#" + tabId).removeClass("audible").addClass("muted");
|
||||
}
|
||||
if (!tab.mutedInfo.muted && tab.audible) {
|
||||
$("#" + tabId).removeClass("muted").addClass("audible");
|
||||
}
|
||||
if (!tab.mutedInfo.muted && !tab.audible) {
|
||||
$("#" + tabId).removeClass("audible").removeClass("muted");
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// Vivaldi does not have changeInfo.audible listener, this is my own implementation, hopefully this will not affect performance too much
|
||||
function VivaldiRefreshMediaIcons() {
|
||||
chrome.tabs.query({currentWindow: true}, function(tabs){
|
||||
$(".audible, .muted").removeClass("audible").removeClass("muted");
|
||||
tabs.forEach(function(Tab){
|
||||
if (Tab.audible) {
|
||||
$("#" + Tab.id).addClass("audible");
|
||||
}
|
||||
if (Tab.mutedInfo.muted) {
|
||||
$("#" + Tab.id).addClass("muted");
|
||||
}
|
||||
});
|
||||
});
|
||||
setTimeout(function() {
|
||||
VivaldiRefreshMediaIcons();
|
||||
}, 1400);
|
||||
}
|
||||
|
||||
|
||||
function GetFaviconAndTitle(tabId) {
|
||||
if ($("#" + tabId).length > 0 && bg.tabs[tabId]) {
|
||||
chrome.tabs.get(parseInt(tabId), function(tab) {
|
||||
|
||||
if (tab && tab.status == "complete") {
|
||||
$("#" + tabId).removeClass("loading");
|
||||
var title = tab.title ? tab.title : tab.url;
|
||||
// change title
|
||||
$("#tab_title" + tab.id)[0].textContent = title;
|
||||
$("#tab_header" + tab.id).attr("title", title);
|
||||
|
||||
// compatibility with various Tab suspender extensions
|
||||
if (tab.favIconUrl != undefined && tab.favIconUrl.match("data:image/png;base64") != null) {
|
||||
$("#tab_header" + tab.id).css({ "background-image": "url(" + tab.favIconUrl + ")" });
|
||||
} else {
|
||||
// case for internal pages, favicons don't have access, but can be loaded from url
|
||||
if (tab.url.match("opera://|vivaldi://|browser://|chrome://|chrome-extension://|about:") != null) {
|
||||
$("#tab_header" + tab.id).css({ "background-image": "url(chrome://favicon/" + tab.url + ")" });
|
||||
} else {
|
||||
// change favicon
|
||||
var img = new Image();
|
||||
img.src = tab.favIconUrl;
|
||||
img.onload = function() {
|
||||
$("#tab_header" + tab.id).css({ "background-image": "url(" + tab.favIconUrl + ")" });
|
||||
};
|
||||
img.onerror = function() {
|
||||
$("#tab_header" + tab.id).css({ "background-image": "url(chrome://favicon/" + tab.url + ")" });
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
if (tab && tab.status == "loading") {
|
||||
$("#" + tabId).addClass("loading");
|
||||
var title = tab.title ? tab.title : bg.caption_loading;
|
||||
$("#tab_title" + tab.id)[0].textContent = title;
|
||||
$("#tab_header" + tab.id).attr("title", title);
|
||||
setTimeout(function() {
|
||||
if ($("#" + tabId).length != 0) GetFaviconAndTitle(tabId);
|
||||
}, 1000);
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
// refresh open closed trees states
|
||||
function RefreshExpandStates() {
|
||||
$(".children").each(function() {
|
||||
if ($(this).children().length > 0) {
|
||||
$(this).parent().removeClass("n");
|
||||
if ($(this).parent().is(":not(.o, .c)")) {
|
||||
$(this).parent().addClass("o");
|
||||
}
|
||||
} else {
|
||||
$(this).parent().removeClass("o").removeClass("c").addClass("n");
|
||||
}
|
||||
});
|
||||
}
|
323
scripts/events_tabs.js
Normal file
@ -0,0 +1,323 @@
|
||||
// ********** TABS EVENTS ***************
|
||||
|
||||
function SetTabEvents() {
|
||||
// double click to create tab
|
||||
$(document).on("dblclick", "#tab_list, #pin_list, .expand", function(event) {
|
||||
if (event.button == 0 && $(this).parent().is(".n")) {
|
||||
chrome.tabs.create({});
|
||||
}
|
||||
if (event.button == 0 && event.target.id == "tab_list") {
|
||||
chrome.tabs.create({});
|
||||
}
|
||||
if (event.button == 0 && event.target.id == "pin_list") {
|
||||
chrome.tabs.create({ pinned: true });
|
||||
}
|
||||
});
|
||||
|
||||
$(document).on("mouseenter", ".close", function(event) {
|
||||
$(this).addClass("close_hover");
|
||||
});
|
||||
|
||||
$(document).on("mouseleave", ".close", function(event) {
|
||||
$(".close_hover").removeClass("close_hover");
|
||||
});
|
||||
|
||||
$(document).on("mouseover", ".tab_header", function(event) {
|
||||
$(this).addClass("tab_header_hover");
|
||||
|
||||
if (bg.opt.always_show_close == false) {
|
||||
$(this).addClass("close_show");
|
||||
}
|
||||
});
|
||||
|
||||
$(document).on("mouseleave", ".tab_header", function(event) {
|
||||
$(this).removeClass("tab_header_hover");
|
||||
|
||||
if (bg.opt.always_show_close == false) {
|
||||
$(this).removeClass("close_show");
|
||||
}
|
||||
});
|
||||
|
||||
// PREVENT THE DEFAULT BROWSER DROP ACTION
|
||||
$(document).bind("drop dragover", function(event) {
|
||||
event.preventDefault();
|
||||
});
|
||||
|
||||
|
||||
// bring to front drop zones
|
||||
$(document).on("dragover", ".tab_header", function(event) {
|
||||
DropTargetsSendToFront();
|
||||
});
|
||||
|
||||
// SET DRAG SOURCE
|
||||
$(document).on("dragstart", ".tab_header", function(event) {
|
||||
event.stopPropagation();
|
||||
bg.dt.tabsIds.splice(0, bg.dt.tabsIds.length);
|
||||
|
||||
event.originalEvent.dataTransfer.setData("null", "null");
|
||||
event.originalEvent.dataTransfer.setDragImage(document.getElementById("DragImage"), 0, 0);
|
||||
|
||||
DragNode = $(this).parent()[0];
|
||||
$(".close").removeClass("show");
|
||||
$(".tab_header_hover").removeClass("tab_header_hover");
|
||||
$(this).parent().addClass("tab_header_hover");
|
||||
|
||||
if ($(this).parent().is(":not(.selected)")) {
|
||||
$(".selected").addClass("frozen").removeClass("selected");
|
||||
$(this).parent().addClass("temporary").addClass("selected");
|
||||
}
|
||||
|
||||
$(".selected").each(function() {
|
||||
bg.dt.tabsIds.push(parseInt(this.id));
|
||||
if ($("#ch" + this.id).children().length > 0) {
|
||||
$($("#ch" + this.id).find(".tab")).each(function() {
|
||||
bg.dt.tabsIds.push(parseInt(this.id));
|
||||
});
|
||||
}
|
||||
});
|
||||
bg.dt.CameFromWindowId = CurrentWindowId;
|
||||
});
|
||||
|
||||
// SET DROP TARGET
|
||||
$(document).on("dragenter", ".drag_entered_top, .drag_entered_bottom, .drag_enter_center", function(event) {
|
||||
event.stopPropagation();
|
||||
if ($(".selected").find($(this)).length > 0) return;
|
||||
$(".highlighted_drop_target").removeClass("highlighted_drop_target");
|
||||
$(this).addClass("highlighted_drop_target");
|
||||
});
|
||||
|
||||
$(document).on("dragenter", ".drag_enter_center", function(event) {
|
||||
timeout = false;
|
||||
setTimeout(function() { timeout = true; }, 1800);
|
||||
});
|
||||
$(document).on("dragleave", ".drag_enter_center", function(event) {
|
||||
timeout = false;
|
||||
});
|
||||
$(document).on("dragover", ".drag_enter_center", function(event) {
|
||||
if (timeout && bg.opt.open_tree_on_hover && $(this).parent().is(".c")) {
|
||||
$(this).parent().addClass("o").removeClass("c");
|
||||
timeout = false;
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
$(document).on("dragend", ".tab_header", function(event) {
|
||||
if (bg.dt.CameFromWindowId == CurrentWindowId && bg.dt.DroppedToWindowId == 0) {
|
||||
DetachTabs(bg.dt.tabsIds);
|
||||
}
|
||||
|
||||
if (bg.dt.CameFromWindowId == CurrentWindowId && bg.dt.DroppedToWindowId != CurrentWindowId && bg.dt.DroppedToWindowId != 0) {
|
||||
bg.tabs[bg.dt.tabsIds[0]].p = bg.dt.DropToTabId;
|
||||
bg.tabs[bg.dt.tabsIds[0]].n = bg.dt.DropToIndex;
|
||||
chrome.tabs.move(bg.dt.tabsIds, { windowId: bg.dt.DroppedToWindowId, index: -1 });
|
||||
}
|
||||
|
||||
if (bg.dt.CameFromWindowId == CurrentWindowId && bg.dt.DroppedToWindowId == CurrentWindowId) {
|
||||
if ($(".highlighted_drop_target").parent().is(".pin")) {
|
||||
$(".selected").each(function() {
|
||||
SetTabClass({ id: this.id, pin: true });
|
||||
|
||||
if ($(".highlighted_drop_target").is(".drag_entered_top")) {
|
||||
$(this).insertBefore($(".highlighted_drop_target").parent());
|
||||
} else {
|
||||
$(this).insertAfter($(".highlighted_drop_target").parent());
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
if ($(".highlighted_drop_target").parent().is(".tab")) {
|
||||
$(".selected").each(function() {
|
||||
SetTabClass({ id: this.id, pin: false });
|
||||
});
|
||||
if ($(".highlighted_drop_target").is(".drag_entered_top")) {
|
||||
$(".selected").insertBefore($(".highlighted_drop_target").parent());
|
||||
|
||||
}
|
||||
if ($(".highlighted_drop_target").is(".drag_entered_bottom")) {
|
||||
$(".selected").insertAfter($(".highlighted_drop_target").parent());
|
||||
}
|
||||
if (($(".highlighted_drop_target").is(".drag_enter_center") && $("#" + DragNode.id).parent()[0].id != "ch" + $(".highlighted_drop_target")[0].id.substr(2))) {
|
||||
if (bg.opt.append_at_end) {
|
||||
$("#ch" + $(".highlighted_drop_target")[0].id.substr(2)).append($(".selected"));
|
||||
} else {
|
||||
$("#ch" + $(".highlighted_drop_target")[0].id.substr(2)).prepend($(".selected"));
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
RefreshExpandStates();
|
||||
|
||||
setTimeout(function() {
|
||||
timeout = false;
|
||||
DragNode = undefined;
|
||||
schedule_update_data++;
|
||||
DropTargetsSendToBack();
|
||||
}, 500);
|
||||
$(".highlighted_drop_target").removeClass("highlighted_drop_target");
|
||||
$(".tab_header_hover").removeClass("tab_header_hover");
|
||||
$(".frozen").addClass("selected").removeClass("frozen");
|
||||
$(".temporary").removeClass("selected").removeClass("temporary");
|
||||
chrome.runtime.sendMessage({command: "drag_end"});
|
||||
});
|
||||
|
||||
|
||||
$(document).on("click", ".exp_box", function(event) {
|
||||
event.stopPropagation();
|
||||
if (event.button == 0) {
|
||||
if ($(this).parent().parent().is(".o")) {
|
||||
$(this).parent().parent().removeClass("o").addClass("c");
|
||||
if (bg.tabs[$(this).parent().parent()[0].id]) {
|
||||
bg.tabs[$(this).parent().parent()[0].id].o = "c";
|
||||
}
|
||||
} else {
|
||||
if ($(this).parent().parent().is(".c")) {
|
||||
if (bg.opt.close_other_trees) {
|
||||
$(".o").removeClass("o").addClass("c");
|
||||
$(this).parents(".tab").each(function() {
|
||||
$(this).removeClass("n").removeClass("c").addClass("o");
|
||||
if (bg.tabs[this.id]) {
|
||||
bg.tabs[this.id].o = "o";
|
||||
}
|
||||
});
|
||||
$(".c").each(function() {
|
||||
if (bg.tabs[this.id]) {
|
||||
bg.tabs[this.id].o = "c";
|
||||
}
|
||||
});
|
||||
}
|
||||
$(this).parent().parent().removeClass("c").addClass("o");
|
||||
if (bg.tabs[$(this).parent().parent()[0].id]) {
|
||||
bg.tabs[$(this).parent().parent()[0].id].o = "o";
|
||||
}
|
||||
}
|
||||
}
|
||||
bg.schedule_save++;
|
||||
}
|
||||
});
|
||||
|
||||
// SELECT OR CLOSE TAB/PIN
|
||||
$(document).on("mousedown", ".tab, .pin", function(event) {
|
||||
DropTargetsSendToBack();
|
||||
event.stopPropagation();
|
||||
if (event.button == 0) {
|
||||
|
||||
// SET SELECTION WITH SHIFT
|
||||
if (event.shiftKey) {
|
||||
$(".pin, .tab").removeClass("selected").removeClass("frozen").removeClass("temporary");
|
||||
if ($(this).index() >= $(".active").index()) {
|
||||
$(".active").nextUntil($(this), ":visible").add($(".active")).add($(this)).addClass("selected");
|
||||
} else {
|
||||
$(".active").prevUntil($(this), ":visible").add($(".active")).add($(this)).addClass("selected");
|
||||
}
|
||||
}
|
||||
|
||||
// TOGGLE SELECTION WITH CTRL
|
||||
if (event.ctrlKey) {
|
||||
$(this).toggleClass("selected");
|
||||
}
|
||||
}
|
||||
|
||||
// CLOSE TAB
|
||||
if (
|
||||
(($(this).is(".tab") && $(event.target).is(":not(.expand)")) && ((event.button == 1 && bg.opt.close_with_MMB == true) || (event.button == 0 && $(event.target).is(".close, .close_img"))))
|
||||
||
|
||||
($(this).is(".pin") && event.button == 1 && bg.opt.close_with_MMB == true && bg.opt.allow_pin_close == true)
|
||||
) {
|
||||
if ($(this).is(".active") && bg.opt.after_closing_active_tab != "browser") {
|
||||
var tabId;
|
||||
var Prev = $(this).prev();
|
||||
var Next = $(this).next();
|
||||
|
||||
// if in root, seek for closest, in order set in options, first next then prev, or prev then next
|
||||
if ($(this).parent().is("#pin_list, #tab_list, .children")) {
|
||||
if (bg.opt.after_closing_active_tab == "above") {
|
||||
if (Prev[0]) {
|
||||
tabId = Prev[0].id;
|
||||
} else {
|
||||
if (Next[0]) {
|
||||
tabId = Next[0].id;
|
||||
}
|
||||
}
|
||||
}
|
||||
if (bg.opt.after_closing_active_tab == "below") {
|
||||
if (Next[0]) {
|
||||
tabId = Next[0].id;
|
||||
} else {
|
||||
if (Prev[0]) {
|
||||
tabId = Prev[0].id;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// if no tabs left in the tree, go to parent
|
||||
if (tabId == undefined && $(this).parent().parent().is(".tab")) {
|
||||
tabId = $(this).parent().parent()[0].id;
|
||||
}
|
||||
|
||||
// if found a matching condition a new tab will be activated
|
||||
if (tabId) {
|
||||
SetActiveTab(tabId);
|
||||
chrome.tabs.update(parseInt(tabId), { active: true });
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
if ($("#" + this.id).is(".pin")) {
|
||||
$("#" + this.id).remove();
|
||||
chrome.tabs.update(parseInt(this.id), { pinned: false });
|
||||
}
|
||||
|
||||
chrome.tabs.remove(parseInt(this.id));
|
||||
}
|
||||
});
|
||||
|
||||
// single click to activate tab
|
||||
$(document).on("click", ".tab_header", function(event) {
|
||||
event.stopPropagation();
|
||||
if (!event.shiftKey && !event.ctrlKey && $(event.target).is(":not(.close, .close_img, .expand, .tab_mediaicon)")) {
|
||||
SetActiveTab($(this).parent()[0].id);
|
||||
chrome.tabs.update(parseInt($(this).parent()[0].id), { active: true });
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
// set bg.dt to detach tabs when drag ends outside the window
|
||||
$(document).on("dragleave", "body", function(event) {
|
||||
bg.dt.DroppedToWindowId = 0;
|
||||
});
|
||||
// set bg.dt to attach tabs when drag ends inside the window
|
||||
$(document).on("dragover", "*", function(event) {
|
||||
bg.dt.DroppedToWindowId = CurrentWindowId;
|
||||
});
|
||||
$(document).on("drag", ".tab_header", function(event) {
|
||||
event.stopPropagation();
|
||||
bg.dt.DroppedToWindowId = CurrentWindowId;
|
||||
});
|
||||
$(document).on("drop", "#pin_list, #tab_list", function(event) {
|
||||
bg.dt.DroppedToWindowId = CurrentWindowId;
|
||||
});
|
||||
|
||||
// set bg.dt to attach tabs and append them to tabId
|
||||
$(document).on("drop", ".drag_enter_center", function(event) {
|
||||
event.stopPropagation();
|
||||
bg.dt.DroppedToWindowId = CurrentWindowId;
|
||||
bg.dt.DropToTabId = $(this).parent()[0].id;
|
||||
});
|
||||
|
||||
// set bg.dt to attach tabs and move them above or below highligted tab
|
||||
$(document).on("drop", ".drag_entered_top, .drag_entered_bottom", function(event) {
|
||||
event.stopPropagation();
|
||||
bg.dt.DroppedToWindowId = CurrentWindowId;
|
||||
if ($(this).parent().parent().is("#tab_list, #pin_list")){
|
||||
bg.dt.DropToTabId = $(this).parent().parent()[0].id;
|
||||
} else {
|
||||
bg.dt.DropToTabId = $(this).parent().parent().parent()[0].id;
|
||||
}
|
||||
|
||||
bg.dt.DropToIndex = $(this).parent().index();
|
||||
bg.dt.DropAfter = $(this).is(".drag_entered_bottom") ? true : false;
|
||||
});
|
||||
|
||||
}
|
17
scripts/global_variables.js
Normal file
@ -0,0 +1,17 @@
|
||||
// ********** GLOBAL VARIABLES ***************
|
||||
|
||||
var bg;
|
||||
if (navigator.userAgent.match("Firefox") !== null){
|
||||
bg = browser.extension.getBackgroundPage();
|
||||
} else {
|
||||
bg = chrome.extension.getBackgroundPage();
|
||||
}
|
||||
|
||||
var MouseHoverOver = "";
|
||||
var DragNode;
|
||||
var DropTargetsInFront = false;
|
||||
var timeout = false;
|
||||
var menuTabId = 0;
|
||||
var CurrentWindowId = 0;
|
||||
var SearchIndex = 0;
|
||||
var schedule_update_data = 0;
|
213
scripts/menu_tabs.js
Normal file
@ -0,0 +1,213 @@
|
||||
// ********** TABS MENU ***************
|
||||
|
||||
function SetMenu() {
|
||||
// set menu labels
|
||||
$(".menu_item").each(function() {
|
||||
$(this).text(chrome.i18n.getMessage(this.id));
|
||||
});
|
||||
|
||||
// trigger action when the contexmenu is about to be shown
|
||||
$(document).bind("contextmenu", function(event) {
|
||||
event.preventDefault();
|
||||
});
|
||||
|
||||
// show menu
|
||||
$(document).on("mousedown", "#pin_list, #tab_list, .tab, .pin", function(event) {
|
||||
event.stopPropagation();
|
||||
if (event.button == 2) {
|
||||
$(".menu").hide(0);
|
||||
|
||||
if ($(this).is(".tab, .pin")) {
|
||||
menuTabId = parseInt($(this)[0].id);
|
||||
} else {
|
||||
menuTabId = parseInt($(".active")[0].id);
|
||||
}
|
||||
if ($("#" + menuTabId).is(".pin")) {
|
||||
$("#tabs_menu_pin").text(chrome.i18n.getMessage("tabs_menu_unpin"));
|
||||
$("#tabs_menu_close").prev().css({ "display": "none" });
|
||||
$("#tabs_menu_close_other").css({ "display": "none" });
|
||||
|
||||
$("#tabs_menu_expand_all, #tabs_menu_collapse_all").css({ "display": "none" });
|
||||
$("#tabs_menu_collapse_all").next().css({ "display": "none" });
|
||||
|
||||
if (!bg.opt.allow_pin_close) {
|
||||
$("#tabs_menu_close").css({ "display": "none" });
|
||||
}
|
||||
} else {
|
||||
$("#tabs_menu_pin").text(chrome.i18n.getMessage("tabs_menu_pin"));
|
||||
$("#tabs_menu_close").prev().css({ "display": "" });
|
||||
$("#tabs_menu_close, #tabs_menu_close_other").css({ "display": "" });
|
||||
|
||||
$("#tabs_menu_expand_all, #tabs_menu_collapse_all").css({ "display": "" });
|
||||
$("#tabs_menu_collapse_all").next().css({ "display": "" });
|
||||
}
|
||||
|
||||
if ($("#" + menuTabId).is(".o, .c")) {
|
||||
$("#tabs_menu_close_tree").css({ "display": "" });
|
||||
} else {
|
||||
$("#tabs_menu_close_tree").css({ "display": "none" });
|
||||
}
|
||||
|
||||
// MUTE TABS
|
||||
if ($("#" + menuTabId).is(".muted")) {
|
||||
$("#tabs_menu_mute").css({ "display": "none" });
|
||||
$("#tabs_menu_unmute").css({ "display": "" });
|
||||
} else {
|
||||
$("#tabs_menu_mute").css({ "display": "" });
|
||||
$("#tabs_menu_unmute").css({ "display": "none" });
|
||||
}
|
||||
|
||||
|
||||
// APPEND TABS TO BG.DATA ARRAY
|
||||
bg.dt.tabsIds = $("#" + menuTabId).is(".selected") ? $(".tab.selected:visible").map(function() { return parseInt(this.id); }).toArray() : [menuTabId];
|
||||
|
||||
// show contextmenu with correct size position
|
||||
if ($("#tabs_menu").outerWidth() > $(window).width() - 10) {
|
||||
$("#tabs_menu").css({ "width": $(window).width() - 10 });
|
||||
} else {
|
||||
$("#tabs_menu").css({ "width": "" });
|
||||
}
|
||||
var x = event.pageX >= $(window).width() - $("#tabs_menu").outerWidth() ? $(window).width() - $("#tabs_menu").outerWidth() : event.pageX;
|
||||
var y = event.pageY >= $(window).height() - $("#tabs_menu").outerHeight() - 10 ? $(window).height() - $("#tabs_menu").outerHeight() - 10 : event.pageY;
|
||||
$("#tabs_menu").css({ "display": "block", "top": y - 15, "left": x - 5 });
|
||||
}
|
||||
});
|
||||
|
||||
// hide menu
|
||||
$(document).on("mousedown", "body", function(event) {
|
||||
if (event.button != 2) {
|
||||
$(".menu").hide(300);
|
||||
}
|
||||
});
|
||||
|
||||
$(document).on("mouseleave", "body", function(event) {
|
||||
$(".menu").hide(300);
|
||||
});
|
||||
|
||||
// if the menu element is clicked
|
||||
$(document).on("mousedown", "#tabs_menu li", function(event) {
|
||||
if (event.button != 0) {
|
||||
return;
|
||||
}
|
||||
event.stopPropagation();
|
||||
switch ($(this).attr("data-action")) {
|
||||
case "tab_new":
|
||||
chrome.tabs.create({});
|
||||
break;
|
||||
case "tab_clone":
|
||||
if ($("#" + menuTabId).is(".selected")) {
|
||||
$(".selected:visible").each(function() {
|
||||
chrome.tabs.duplicate(parseInt(this.id));
|
||||
});
|
||||
} else {
|
||||
chrome.tabs.duplicate(menuTabId);
|
||||
}
|
||||
break;
|
||||
case "tab_move":
|
||||
if ($("#" + menuTabId).is(".selected")) {
|
||||
DetachTabs($(".selected:visible").map(function() { return parseInt(this.id); }).toArray());
|
||||
} else {
|
||||
DetachTabs([menuTabId]);
|
||||
}
|
||||
break;
|
||||
case "tab_reload":
|
||||
if ($("#" + menuTabId).is(".selected")) {
|
||||
$(".selected:visible").each(function() {
|
||||
chrome.tabs.reload(parseInt(this.id));
|
||||
});
|
||||
} else {
|
||||
chrome.tabs.reload(menuTabId);
|
||||
}
|
||||
break;
|
||||
case "tab_pin":
|
||||
if ($("#" + menuTabId).is(".selected")) {
|
||||
$(".selected:visible").each(function() {
|
||||
chrome.tabs.update(parseInt(this.id), { pinned: ($("#" + menuTabId).is(".pin") ? false : true) });
|
||||
});
|
||||
} else {
|
||||
chrome.tabs.update(menuTabId, { pinned: ($("#" + menuTabId).is(".pin") ? false : true) });
|
||||
}
|
||||
break;
|
||||
case "tab_mute":
|
||||
if ($("#" + menuTabId).is(".selected")) {
|
||||
$(".selected:visible").each(function() {
|
||||
chrome.tabs.get(parseInt(this.id), function(tab) {
|
||||
chrome.tabs.update(tab.id, { muted: true });
|
||||
});
|
||||
});
|
||||
} else {
|
||||
chrome.tabs.get(menuTabId, function(tab) {
|
||||
chrome.tabs.update(tab.id, { muted: true });
|
||||
});
|
||||
}
|
||||
break;
|
||||
case "tab_unmute":
|
||||
if ($("#" + menuTabId).is(".selected")) {
|
||||
$(".selected:visible").each(function() {
|
||||
chrome.tabs.get(parseInt(this.id), function(tab) {
|
||||
chrome.tabs.update(tab.id, { muted: false });
|
||||
});
|
||||
});
|
||||
} else {
|
||||
chrome.tabs.get(menuTabId, function(tab) {
|
||||
chrome.tabs.update(tab.id, { muted: false });
|
||||
});
|
||||
}
|
||||
break;
|
||||
case "tab_mute_other":
|
||||
if ($("#" + menuTabId).is(".selected")) {
|
||||
$(".tab:visible:not(.selected)").each(function() {
|
||||
chrome.tabs.update(parseInt(this.id), { muted: true });
|
||||
});
|
||||
} else {
|
||||
$(".tab:visible:not(#" + menuTabId + ")").each(function() {
|
||||
chrome.tabs.update(parseInt(this.id), { muted: true });
|
||||
});
|
||||
}
|
||||
break;
|
||||
case "tab_unmute_other":
|
||||
if ($("#" + menuTabId).is(".selected")) {
|
||||
$(".tab:visible:not(.selected)").each(function() {
|
||||
chrome.tabs.update(parseInt(this.id), { muted: false });
|
||||
});
|
||||
} else {
|
||||
$(".tab:visible:not(#" + menuTabId + ")").each(function() {
|
||||
chrome.tabs.update(parseInt(this.id), { muted: false });
|
||||
});
|
||||
}
|
||||
break;
|
||||
case "tab_close":
|
||||
CloseTabs($("#" + menuTabId).is(".selected") ? $(".selected:visible").map(function() { return parseInt(this.id); }).toArray() : [menuTabId]);
|
||||
break;
|
||||
case "tab_close_tree":
|
||||
CloseTabs($("#" + menuTabId).find(".tab").map(function() { return parseInt(this.id); }).toArray());
|
||||
CloseTabs([menuTabId]);
|
||||
break;
|
||||
case "tab_close_other":
|
||||
CloseTabs($(".tab:visible:not(#" + menuTabId + ")").map(function() { return parseInt(this.id); }).toArray());
|
||||
break;
|
||||
case "tab_undo_close":
|
||||
chrome.sessions.getRecentlyClosed(null, function(sessions) {
|
||||
if (sessions.length > 0) {
|
||||
chrome.sessions.restore(null, function() {});
|
||||
}
|
||||
});
|
||||
break;
|
||||
case "tab_discard":
|
||||
DiscardTabs(bg.dt.tabsIds);
|
||||
break;
|
||||
case "tab_settings":
|
||||
chrome.tabs.create({ "url": "options.html" });
|
||||
break;
|
||||
case "tab_expand_all":
|
||||
$(".tab.c").addClass("o").removeClass("c");
|
||||
schedule_update_data++;
|
||||
break;
|
||||
case "tab_collapse_all":
|
||||
$(".tab.o").addClass("c").removeClass("o");
|
||||
schedule_update_data++;
|
||||
break;
|
||||
}
|
||||
$(".menu").hide(0);
|
||||
});
|
||||
}
|
319
scripts/tabs.js
Normal file
@ -0,0 +1,319 @@
|
||||
// ********** TABS FUNCTIONS ***************
|
||||
|
||||
function UpdateData(){
|
||||
setTimeout(function(){
|
||||
// changed it from 1 to 2 if there are some more changes queued, just in case if something did not catch in the first loop
|
||||
if (schedule_update_data > 1){
|
||||
schedule_update_data = 2;
|
||||
}
|
||||
if (schedule_update_data > 0){
|
||||
$(".pin").each(function(){
|
||||
if (bg.tabs[this.id]){
|
||||
bg.tabs[this.id].p = "pin_list";
|
||||
bg.tabs[this.id].n = $(this).index();
|
||||
bg.tabs[this.id].o = "n";
|
||||
}
|
||||
});
|
||||
$(".tab").each(function(){
|
||||
if (bg.tabs[this.id]){
|
||||
bg.tabs[this.id].n = $(this).index();
|
||||
if ($(this).parent().parent()[0].id){
|
||||
bg.tabs[this.id].p = $(this).parent().parent()[0].id;
|
||||
} else {
|
||||
bg.tabs[this.id].p = "tab_list";
|
||||
}
|
||||
if ($(this).is(".n")){
|
||||
bg.tabs[this.id].o = "n";
|
||||
} else {
|
||||
if ($(this).is(".c")){
|
||||
bg.tabs[this.id].o = "c";
|
||||
} else {
|
||||
bg.tabs[this.id].o = "o";
|
||||
}
|
||||
}
|
||||
}
|
||||
});
|
||||
bg.schedule_save++;
|
||||
schedule_update_data--;
|
||||
} else {
|
||||
}
|
||||
UpdateData();
|
||||
},2000);
|
||||
}
|
||||
|
||||
function AppendTab(p){
|
||||
if ($("#"+p.tab.id).length > 0){
|
||||
GetFaviconAndTitle(p.tab.id);
|
||||
return;
|
||||
}
|
||||
|
||||
var div_tab = document.createElement("div");
|
||||
div_tab.id = p.tab.id;
|
||||
div_tab.className = p.tab.pinned ? "pin" : "tab n";
|
||||
div_tab.innerHTML =
|
||||
"<div class='drop_target drag_enter_center' id=dc"+p.tab.id+"></div>"+
|
||||
"<div class='drop_target drag_entered_top' id=du"+p.tab.id+"></div>"+
|
||||
"<div class='drop_target drag_entered_bottom' id=dd"+p.tab.id+"></div>"+
|
||||
"<div class=expand id=exp"+p.tab.id+">"+
|
||||
"<div class=exp_line_v id=exp_line_v"+p.tab.id+"></div>"+
|
||||
"<div class=exp_line_h id=exp_line_h"+p.tab.id+"></div>"+
|
||||
"<div class=exp_box id=exp_box"+p.tab.id+"></div>"+
|
||||
"</div>"+
|
||||
"<div class=tab_header id=tab_header"+p.tab.id+" draggable=true>"+
|
||||
"<div class=tab_title id=tab_title"+p.tab.id+"></div>"+
|
||||
|
||||
|
||||
(bg.opt.never_show_close ? "" :
|
||||
("<div class=close id=close"+p.tab.id+"><div class=close_img id=close_img"+p.tab.id+"></div></div>")
|
||||
)+
|
||||
|
||||
|
||||
"<div class=tab_mediaicon id=tab_mediaicon"+p.tab.id+"></div>"+
|
||||
"</div>"+
|
||||
"<div class=children id=ch"+p.tab.id+"></div>";
|
||||
|
||||
|
||||
if (($("#"+p.InsertAfterId).is(".pin") && p.tab.pinned) || ($("#"+p.InsertAfterId).is(".tab") && !p.tab.pinned)){
|
||||
$("#"+p.InsertAfterId).parent()[0].append(div_tab);
|
||||
$("#"+p.tab.id).insertAfter($("#"+p.InsertAfterId));
|
||||
p.ParentId = undefined;
|
||||
} else {
|
||||
p.InsertAfterId = undefined;
|
||||
}
|
||||
|
||||
if ($("#"+p.ParentId).length > 0 && $("#"+p.ParentId).is(".tab") && !p.tab.pinned){
|
||||
if ($("#ch"+p.ParentId).children().length == 0){
|
||||
$("#"+p.ParentId).addClass("o").removeClass("n").removeClass("c");
|
||||
}
|
||||
if (p.Append){
|
||||
$("#ch"+p.ParentId).append(div_tab);
|
||||
}
|
||||
if (!p.Append){
|
||||
$("#ch"+p.ParentId).prepend(div_tab);
|
||||
}
|
||||
} else {
|
||||
p.ParentId = undefined;
|
||||
}
|
||||
|
||||
if (p.InsertAfterId == undefined && p.ParentId == undefined){
|
||||
if (p.Append){
|
||||
$(p.tab.pinned ? "#pin_list" : "#tab_list").append(div_tab);
|
||||
}
|
||||
if (!p.Append){
|
||||
$(p.tab.pinned ? "#pin_list" : "#tab_list").prepend(div_tab);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
if (bg.opt.always_show_close){
|
||||
$("#tab_header"+p.tab.id).addClass("close_show");
|
||||
}
|
||||
GetFaviconAndTitle(p.tab.id);
|
||||
RefreshMediaIcon(p.tab.id);
|
||||
|
||||
if (p.tab.discarded){
|
||||
$("#"+p.tab.id).addClass("discarded");
|
||||
}
|
||||
if (p.tab.active){
|
||||
SetActiveTab(p.tab.id);
|
||||
}
|
||||
}
|
||||
|
||||
function RemoveTabFromList(tabId){
|
||||
if ($("#"+tabId).length > 0){
|
||||
$("#"+tabId).remove();
|
||||
}
|
||||
}
|
||||
|
||||
function SetTabClass(p){
|
||||
if (p.pin){
|
||||
$("#pin_list").append($("#"+p.id));
|
||||
// flatten out children
|
||||
if ($("#ch"+p.id).children().length > 0){
|
||||
$($("#"+p.id).children().find(".pin, .tab").get().reverse()).each(function(){
|
||||
$(this).removeClass("tab").removeClass("n").removeClass("o").removeClass("c").addClass("pin");
|
||||
$(this).insertAfter($("#"+p.id));
|
||||
chrome.tabs.update(parseInt(this.id), {pinned: true});
|
||||
});
|
||||
}
|
||||
$("#"+p.id).removeClass("tab").removeClass("n").removeClass("o").removeClass("c").addClass("pin");
|
||||
} else {
|
||||
$("#tab_list").prepend($("#"+p.id));
|
||||
|
||||
$("#"+p.id).removeClass("pin").addClass("tab");
|
||||
RefreshExpandStates();
|
||||
}
|
||||
chrome.tabs.update(parseInt(p.id), {pinned: p.pin});
|
||||
RefreshGUI();
|
||||
}
|
||||
|
||||
function SetActiveTab(tabId){
|
||||
if ($("#"+tabId).length > 0){
|
||||
$(".active").removeClass("active").removeClass("selected");
|
||||
$(".pin, .tab").removeClass("active").removeClass("selected").removeClass("frozen").removeClass("temporary").removeClass("tab_header_hover");
|
||||
$(".highlighted_drop_target").removeClass("highlighted_drop_target");
|
||||
$("#"+tabId).addClass("active").addClass("selected");
|
||||
ScrollToTab(tabId);
|
||||
}
|
||||
}
|
||||
|
||||
function ScrollToTab(tabId){
|
||||
if ($("#"+tabId).length == 0){
|
||||
return false;
|
||||
}
|
||||
if ($("#"+tabId).is(":not(:visible)")){
|
||||
$("#"+tabId).parents(".tab").removeClass("c").addClass("o");
|
||||
}
|
||||
|
||||
if ($("#"+tabId).is(".pin")){
|
||||
if ($("#"+tabId).position().left+$("#"+tabId).outerWidth() > $("#pin_list").innerWidth()){
|
||||
$("#pin_list").scrollLeft($("#pin_list").scrollLeft()+$("#"+tabId).position().left+$("#"+tabId).outerWidth()-$("#pin_list").innerWidth());
|
||||
} else {
|
||||
if ($("#"+tabId).position().left < 0){
|
||||
$("#pin_list").scrollLeft($("#pin_list").scrollLeft()+$("#"+tabId).position().left);
|
||||
}
|
||||
}
|
||||
}
|
||||
if ($("#"+tabId).is(".tab")){
|
||||
if ($("#"+tabId).offset().top - $("#tab_list").offset().top < 0){
|
||||
$("#tab_list").scrollTop($("#tab_list").scrollTop() + $("#"+tabId).offset().top - $("#tab_list").offset().top);
|
||||
} else {
|
||||
if ($("#"+tabId).offset().top - $("#tab_list").offset().top > $("#tab_list").innerHeight() - $(".tab_header").outerHeight()){
|
||||
$("#tab_list").scrollTop($("#tab_list").scrollTop() + $("#"+tabId).offset().top - $("#tab_list").offset().top - $("#tab_list").innerHeight() + $(".tab_header").outerHeight() + 4);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
function DetachTabs(tabsIds){
|
||||
chrome.windows.get(CurrentWindowId, {populate : true}, function(window){
|
||||
if (window.tabs.length == 1){
|
||||
return;
|
||||
}
|
||||
chrome.windows.create({state:window.state}, function(new_window){
|
||||
chrome.tabs.move(tabsIds[0], {windowId: new_window.id, index:-1});
|
||||
chrome.tabs.remove(new_window.tabs[0].id, null);
|
||||
for (var i = 1; i < tabsIds.length; i++){
|
||||
chrome.tabs.move(tabsIds[i], {windowId: new_window.id, index:-1});
|
||||
}
|
||||
})
|
||||
});
|
||||
}
|
||||
|
||||
// find and select tabs
|
||||
function FindTab(input){
|
||||
$(".filtered").removeClass("filtered").removeClass("selected");
|
||||
$(".highlighted_search").removeClass("highlighted_search");
|
||||
if (input.length == 0){
|
||||
$("#filter_box")[0].value = "";
|
||||
return;
|
||||
}
|
||||
SearchIndex = 0;
|
||||
chrome.tabs.query({windowId: CurrentWindowId, pinned: false}, function(tabs){
|
||||
tabs.forEach(function(Tab){
|
||||
if (bg.opt_toolbar.filter_type == "url" && Tab.url.toLowerCase().match(input.toLowerCase())){
|
||||
$("#"+Tab.id).addClass("filtered").addClass("selected");
|
||||
}
|
||||
if (bg.opt_toolbar.filter_type == "title" && Tab.title.toLowerCase().match(input.toLowerCase())){
|
||||
$("#"+Tab.id).addClass("filtered").addClass("selected");
|
||||
}
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
function CloseTabs(tabsIds){
|
||||
tabsIds.forEach(function(tabId) {
|
||||
if ($("#"+tabId).is(".pin") && bg.opt.allow_pin_close){
|
||||
$("#"+tabId).remove();
|
||||
chrome.tabs.update(tabId, {pinned: false});
|
||||
}
|
||||
if ($("#"+tabId).is(".tab")){
|
||||
$("#"+tabId).remove();
|
||||
}
|
||||
});
|
||||
setTimeout(function(){
|
||||
chrome.tabs.remove(tabsIds, null);
|
||||
},100);
|
||||
}
|
||||
|
||||
|
||||
function DiscardTabs(tabsIds){
|
||||
var delay = 400;
|
||||
if ($("#"+tabsIds[0]).is(".discarded")){
|
||||
delay = 5;
|
||||
} else {
|
||||
chrome.tabs.discard(tabsIds[0]);
|
||||
}
|
||||
tabsIds.splice(0, 1);
|
||||
if (tabsIds.length > 0){
|
||||
setTimeout(function(){
|
||||
DiscardTabs(tabsIds);
|
||||
},delay);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
function ActivateNextTab(){
|
||||
if ($(".active").is(".pin")){
|
||||
if ($(".active").next()[0]){
|
||||
chrome.tabs.update(parseInt($(".active").next()[0].id), { active: true });
|
||||
}
|
||||
}
|
||||
|
||||
if ($(".active").is(".tab")){
|
||||
if ($(".active").children().last().children()[0]){
|
||||
chrome.tabs.update(parseInt($(".active").children().last().children()[0].id), { active: true });
|
||||
} else {
|
||||
if ($(".active").next()[0]){
|
||||
chrome.tabs.update(parseInt($(".active").next()[0].id), { active: true });
|
||||
} else {
|
||||
if ($(".active").parent().parent().next().is(".tab")){
|
||||
chrome.tabs.update(parseInt($(".active").parent().parent().next()[0].id), { active: true });
|
||||
} else {
|
||||
if ($(".active").parents(".tab").eq(-2).next().is(".tab")){
|
||||
chrome.tabs.update(parseInt($(".active").parents(".tab").eq(-2).next()[0].id), { active: true });
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
function ActivatePrevTab(){
|
||||
if ($(".active").is(".pin")){
|
||||
if ($(".active").prev()[0]){
|
||||
chrome.tabs.update(parseInt($(".active").prev()[0].id), { active: true });
|
||||
}
|
||||
}
|
||||
|
||||
if ($(".active").is(".tab")){
|
||||
if ($(".active").prev().find(".tab").length > 0){
|
||||
chrome.tabs.update(parseInt($(".active").prev().find(".tab").last()[0].id), { active: true });
|
||||
} else {
|
||||
if ($(".active").prev()[0]){
|
||||
chrome.tabs.update(parseInt($(".active").prev()[0].id), { active: true });
|
||||
} else {
|
||||
if ($(".active").parent().is(".children")){
|
||||
chrome.tabs.update(parseInt($(".active").parent().parent()[0].id), { active: true });
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
function DropTargetsSendToFront(){
|
||||
if (DropTargetsInFront == false){
|
||||
$(".drop_target").show();
|
||||
DropTargetsInFront = true;
|
||||
}
|
||||
}
|
||||
function DropTargetsSendToBack(){
|
||||
if (DropTargetsInFront){
|
||||
$(".drop_target").hide();
|
||||
DropTargetsInFront = false;
|
||||
}
|
||||
}
|
224
scripts/toolbar.js
Normal file
@ -0,0 +1,224 @@
|
||||
// ********** TOOLBAR ***************
|
||||
|
||||
function SaveToolbarOptions(){
|
||||
chrome.runtime.sendMessage({command: "toolbar_options_save"});
|
||||
}
|
||||
|
||||
function SetToolbarEvents(){
|
||||
// tools and search buttons toggle
|
||||
$(document).on("mousedown", "#button_tools, #button_search", function(event){
|
||||
if (event.button != 0){
|
||||
return;
|
||||
}
|
||||
if ($(this).is(".on")){
|
||||
$("#button_tools, #button_search").removeClass("on");
|
||||
$("#toolbar_tools, #toolbar_search").addClass("hidden");
|
||||
bg.opt_toolbar.active_toolbar_tool = "";
|
||||
} else {
|
||||
$(this).addClass("on");
|
||||
if ($(this).is("#button_tools")){
|
||||
$("#button_search").removeClass("on");
|
||||
$("#toolbar_search").addClass("hidden");
|
||||
$("#toolbar_tools").removeClass("hidden");
|
||||
bg.opt_toolbar.active_toolbar_tool = "tools";
|
||||
} else {
|
||||
$("#button_tools").removeClass("on");
|
||||
$("#toolbar_tools").addClass("hidden");
|
||||
$("#toolbar_search").removeClass("hidden");
|
||||
bg.opt_toolbar.active_toolbar_tool = "search";
|
||||
}
|
||||
}
|
||||
RefreshGUI();
|
||||
SaveToolbarOptions();
|
||||
});
|
||||
|
||||
|
||||
// go to previous search result
|
||||
$(document).on("mousedown", "#filter_search_go_prev", function(event){
|
||||
if (event.button != 0){
|
||||
return;
|
||||
}
|
||||
if (SearchIndex == 0){
|
||||
SearchIndex = $(".tab.filtered").length-1;
|
||||
} else {
|
||||
SearchIndex--;
|
||||
}
|
||||
$(".highlighted_search").removeClass("highlighted_search");
|
||||
$($(".tab.filtered")[SearchIndex]).addClass("highlighted_search");
|
||||
ScrollToTab($(".tab.filtered")[SearchIndex].id);
|
||||
});
|
||||
|
||||
// go to next search result
|
||||
$(document).on("mousedown", "#filter_search_go_next", function(event){
|
||||
if (event.button != 0){
|
||||
return;
|
||||
}
|
||||
if (SearchIndex == $(".tab.filtered").length-1){
|
||||
SearchIndex = 0;
|
||||
} else {
|
||||
SearchIndex++;
|
||||
}
|
||||
$(".highlighted_search").removeClass("highlighted_search");
|
||||
$($(".tab.filtered")[SearchIndex]).addClass("highlighted_search");
|
||||
ScrollToTab($(".tab.filtered")[SearchIndex].id);
|
||||
});
|
||||
|
||||
|
||||
// new tab
|
||||
$(document).on("mousedown", "#button_new", function(event){
|
||||
if (event.button == 0){
|
||||
chrome.tabs.create({});
|
||||
}
|
||||
if (event.button == 1){
|
||||
chrome.tabs.query({windowId: CurrentWindowId, active: true}, function(tabs){
|
||||
chrome.tabs.duplicate(tabs[0].id, function(tab){
|
||||
setTimeout(function(){
|
||||
$("#"+tab.id).insertAfter($(".active")[0]);
|
||||
}, 300);
|
||||
});
|
||||
});
|
||||
}
|
||||
if (event.button == 2){
|
||||
chrome.tabs.query({windowId: CurrentWindowId, active: true}, function(tabs){
|
||||
ScrollToTab(tabs[0].id);
|
||||
});
|
||||
}
|
||||
});
|
||||
// pin tab
|
||||
$(document).on("mousedown", "#button_pin", function(event){
|
||||
if (event.button != 0){
|
||||
return;
|
||||
}
|
||||
$(".selected:visible").each(function(){
|
||||
chrome.tabs.update(parseInt(this.id), { pinned: ($(this).is(".pin") ? false : true) });
|
||||
});
|
||||
});
|
||||
// undo close
|
||||
$(document).on("mousedown", "#button_undo", function(event){
|
||||
if (event.button != 0){
|
||||
return;
|
||||
}
|
||||
chrome.sessions.getRecentlyClosed( null, function(sessions){
|
||||
if (sessions.length > 0){
|
||||
chrome.sessions.restore(null, function(){});
|
||||
}
|
||||
});
|
||||
});
|
||||
// move tab to new window (detach)
|
||||
$(document).on("mousedown", "#button_move", function(event){
|
||||
if (event.button != 0){
|
||||
return;
|
||||
}
|
||||
var tabsArr = [];
|
||||
$(".selected:visible").each(function(){
|
||||
tabsArr.push(parseInt(this.id));
|
||||
if ($("#ch"+this.id).children().length > 0){
|
||||
$($("#ch"+this.id).find(".tab")).each(function(){
|
||||
tabsArr.push(parseInt(this.id));
|
||||
});
|
||||
}
|
||||
});
|
||||
DetachTabs(tabsArr);
|
||||
});
|
||||
// move tab to new window (detach)
|
||||
$(document).on("mousedown", "#repeat_search", function(event){
|
||||
if (event.button != 0){
|
||||
return;
|
||||
}
|
||||
FindTab($("#filter_box")[0].value);
|
||||
});
|
||||
// filter on input
|
||||
$("#filter_box").on("input", function(){
|
||||
if ($("#filter_box")[0].value == ""){
|
||||
$("#button_filter_clear").css({"opacity": "0"}).attr("title", "");
|
||||
} else {
|
||||
$("#button_filter_clear").css({"opacity": "1"});
|
||||
$("#button_filter_clear").attr("title", bg.caption_clear_filter);
|
||||
}
|
||||
FindTab($("#filter_box")[0].value);
|
||||
});
|
||||
// change filtering type
|
||||
$(document).on("mousedown", "#button_filter_type", function(event){
|
||||
if (event.button != 0){
|
||||
return;
|
||||
}
|
||||
$("#button_filter_type").toggleClass("url").toggleClass("title");
|
||||
if (bg.opt_toolbar.filter_type == "url"){
|
||||
bg.opt_toolbar.filter_type = "title";
|
||||
} else {
|
||||
bg.opt_toolbar.filter_type = "url";
|
||||
}
|
||||
FindTab($("#filter_box")[0].value);
|
||||
SaveToolbarOptions();
|
||||
});
|
||||
// clear filter button
|
||||
$(document).on("mousedown", "#button_filter_clear", function(event){
|
||||
if (event.button != 0){
|
||||
return;
|
||||
}
|
||||
$("#button_filter_clear").css({"opacity": "0"}).attr("title", "");
|
||||
FindTab("");
|
||||
});
|
||||
// sort tabs
|
||||
$(document).on("mousedown", "#button_sort", function(event){
|
||||
if (event.button != 0){
|
||||
return;
|
||||
}
|
||||
SortTabs();
|
||||
});
|
||||
// bookmarks
|
||||
$(document).on("mousedown", "#button_bookmarks", function(event){
|
||||
if (event.button != 0){
|
||||
return;
|
||||
}
|
||||
chrome.tabs.create({url: "chrome://bookmarks/"});
|
||||
});
|
||||
// downloads
|
||||
$(document).on("mousedown", "#button_downloads", function(event){
|
||||
if (event.button != 0){
|
||||
return;
|
||||
}
|
||||
chrome.tabs.create({url: "chrome://downloads/"});
|
||||
});
|
||||
// history
|
||||
$(document).on("mousedown", "#button_history", function(event){
|
||||
if (event.button != 0){
|
||||
return;
|
||||
}
|
||||
chrome.tabs.create({url: "chrome://history/"});
|
||||
});
|
||||
// extensions
|
||||
$(document).on("mousedown", "#button_extensions", function(event){
|
||||
if (event.button != 0){
|
||||
return;
|
||||
}
|
||||
chrome.tabs.create({url: "chrome://extensions"});
|
||||
});
|
||||
// settings
|
||||
$(document).on("mousedown", "#button_settings", function(event){
|
||||
if (event.button != 0){
|
||||
return;
|
||||
}
|
||||
chrome.tabs.create({url: "chrome://settings/"});
|
||||
});
|
||||
// vertical tabs options
|
||||
$(document).on("mousedown", "#button_options", function(event){
|
||||
if (event.button != 0){
|
||||
return;
|
||||
}
|
||||
chrome.tabs.create({url: "options.html" });
|
||||
});
|
||||
// discard tabs
|
||||
$(document).on("mousedown", "#button_discard", function(event){
|
||||
if (event.button != 0){
|
||||
return;
|
||||
}
|
||||
chrome.tabs.query({windowId: CurrentWindowId, pinned: false}, function(tabs){
|
||||
var tabsIds = [];
|
||||
tabs.forEach(function(Tab){
|
||||
tabsIds.push(Tab.id);
|
||||
});
|
||||
DiscardTabs(tabsIds);
|
||||
});
|
||||
});
|
||||
}
|
80
sidebar.html
Normal file
@ -0,0 +1,80 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8"/>
|
||||
<title></title>
|
||||
<style id="pagestyle">
|
||||
html,
|
||||
body {
|
||||
min-width: 100px;
|
||||
min-height: 250px;
|
||||
width:100%;
|
||||
height:100%;
|
||||
border:none;
|
||||
margin:0;
|
||||
padding:0;
|
||||
white-space:nowrap;
|
||||
overflow:hidden;
|
||||
font-family:Arial;
|
||||
font-size:0px;
|
||||
cursor:default;
|
||||
-webkit-user-select:none;
|
||||
-webkit-user-drag:none;
|
||||
}
|
||||
</style>
|
||||
<link type="text/css" rel="stylesheet" media="all" href="../theme/theme.css" id="theme" />
|
||||
<script type="text/javascript" src="../lib_jquery/jquery-3.2.1.min.js"></script>
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<div id="DragImage" style="display: none; width:0px; height:0px;"></div>
|
||||
<div class="toolbar" id="toolbar">
|
||||
</div>
|
||||
<div class="pin_list" id="pin_list" >
|
||||
</div>
|
||||
<div class="tab_list" id="tab_list">
|
||||
</div>
|
||||
|
||||
<ul class="menu" id="tabs_menu">
|
||||
<li data-action="tab_new" class="menu_item" id="tabs_menu_new"></li>
|
||||
<li data-action="tab_clone" class="menu_item" id="tabs_menu_clone"></li>
|
||||
<li data-action="tab_move" class="menu_item" id="tabs_menu_move"></li>
|
||||
<li data-action="tab_reload" class="menu_item" id="tabs_menu_reload"></li>
|
||||
<li data-action="tab_discard" class="menu_item" id="tabs_menu_discard"></li>
|
||||
<div class="separator"></div>
|
||||
<li data-action="tab_expand_all" class="menu_item" id="tabs_menu_expand_all"></li>
|
||||
<li data-action="tab_collapse_all" class="menu_item" id="tabs_menu_collapse_all"></li>
|
||||
<div class="separator"></div>
|
||||
<li data-action="tab_pin" class="menu_item" id="tabs_menu_pin"></li>
|
||||
<div class="separator"></div>
|
||||
<li data-action="tab_mute" class="menu_item" id="tabs_menu_mute"></li>
|
||||
<li data-action="tab_unmute" class="menu_item" id="tabs_menu_unmute"></li>
|
||||
<div class="separator"></div>
|
||||
<li data-action="tab_mute_other" class="menu_item" id="tabs_menu_mute_other"></li>
|
||||
<li data-action="tab_unmute_other" class="menu_item" id="tabs_menu_unmute_other"></li>
|
||||
<div class="separator"></div>
|
||||
<li data-action="tab_close" class="menu_item" id="tabs_menu_close"></li>
|
||||
<li data-action="tab_close_tree" class="menu_item" id="tabs_menu_close_tree"></li>
|
||||
<li data-action="tab_close_other" class="menu_item" id="tabs_menu_close_other"></li>
|
||||
<div class="separator"></div>
|
||||
<li data-action="tab_undo_close" class="menu_item" id="tabs_menu_undo"></li>
|
||||
<div class="separator"></div>
|
||||
<li data-action="tab_settings" class="menu_item" id="tabs_menu_settings"></li>
|
||||
</ul>
|
||||
|
||||
<script type="text/javascript" src="../scripts/global_variables.js"></script>
|
||||
|
||||
<script type="text/javascript" src="../scripts/events_chrome.js"></script>
|
||||
<script type="text/javascript" src="../scripts/events_tabs.js"></script>
|
||||
<script type="text/javascript" src="../scripts/events_refresh.js"></script>
|
||||
|
||||
<script type="text/javascript" src="../scripts/tabs.js"></script>
|
||||
<script type="text/javascript" src="sidebar.js"></script>
|
||||
|
||||
<script type="text/javascript" src="../scripts/IO.js"></script>
|
||||
<script type="text/javascript" src="../scripts/menu_tabs.js"></script>
|
||||
<script type="text/javascript" src="../scripts/toolbar.js"></script>
|
||||
|
||||
</body>
|
||||
|
||||
</html>
|
144
sidebar.js
Normal file
@ -0,0 +1,144 @@
|
||||
document.addEventListener("DOMContentLoaded", Initialize(), false);
|
||||
|
||||
function Initialize(){
|
||||
if (bg.hold){
|
||||
setTimeout(function(){ Initialize(); },500);
|
||||
chrome.runtime.sendMessage({command: "background_start"});
|
||||
} else {
|
||||
|
||||
var theme = {
|
||||
"ToolbarShow": false,
|
||||
"ScrollbarPinList": 4,
|
||||
"ScrollbarTabList": 16
|
||||
};
|
||||
|
||||
if (localStorage.getItem("current_theme") != null && localStorage["theme"+localStorage["current_theme"]] != null){
|
||||
theme = JSON.parse(localStorage["theme"+localStorage["current_theme"]]);
|
||||
|
||||
$("#toolbar").html(theme.toolbar);
|
||||
|
||||
var css_variables = "";
|
||||
for (var css_variable in theme.ColorsSet){
|
||||
css_variables = css_variables + "--" + css_variable + ":" + theme.ColorsSet[css_variable] + ";";
|
||||
}
|
||||
for (var css_variable in theme.TabsSizeSet){
|
||||
css_variables = css_variables + "--" + css_variable + ":" + theme.TabsSizeSet[css_variable] + ";";
|
||||
}
|
||||
|
||||
document.styleSheets[0].insertRule("body { "+css_variables+" }", 0);
|
||||
}
|
||||
|
||||
if (navigator.userAgent.match("Firefox") === null){
|
||||
document.styleSheets[0].insertRule("::-webkit-scrollbar { width:"+theme.ScrollbarTabList+"px; height:"+theme.ScrollbarPinList+"px; }", 0);
|
||||
} else {
|
||||
// I have no idea what is going on in latest build, but why top position for various things is different in firefox?????
|
||||
if (theme.TabsSizeSetNumber > 1){
|
||||
document.styleSheets[1].insertRule(".tab_header>.tab_title { margin-top: -1.5px; }", document.styleSheets[1].cssRules.length);
|
||||
}
|
||||
// document.styleSheets[1].insertRule("#toolbar_main { top: 1px; height: 25px; }", document.styleSheets[1].cssRules.length);
|
||||
// document.styleSheets[1].insertRule(".button_img { position: relative; top: -1px; left: -1px; }", document.styleSheets[1].cssRules.length);
|
||||
}
|
||||
|
||||
chrome.tabs.query({currentWindow: true}, function(tabs){
|
||||
CurrentWindowId = tabs[0].windowId;
|
||||
|
||||
|
||||
if (bg.opt.pin_list_multi_row){
|
||||
$("#pin_list").css({"white-space": "normal", "overflow-x": "hidden"});
|
||||
}
|
||||
|
||||
|
||||
if (theme.ToolbarShow == true){
|
||||
if (bg.opt_toolbar.filter_type == "url"){
|
||||
$("#button_filter_type").addClass("url");
|
||||
} else {
|
||||
$("#button_filter_type").addClass("title");
|
||||
}
|
||||
$(".button").each(function(){
|
||||
$(this).attr("title", chrome.i18n.getMessage(this.id));
|
||||
});
|
||||
$("#filter_box").attr("placeholder", bg.caption_searchbox);
|
||||
$("#filter_box").css({"opacity": 1});
|
||||
|
||||
$(".on").removeClass("on");
|
||||
$("#toolbar_tools, #toolbar_search").removeClass("hidden");
|
||||
|
||||
if (bg.opt_toolbar.active_toolbar_tool == ""){
|
||||
$("#toolbar_tools, #toolbar_search").addClass("hidden");
|
||||
}
|
||||
if (bg.opt_toolbar.active_toolbar_tool == "tools" && $("#button_tools").length != 0){
|
||||
$("#toolbar_search").addClass("hidden");
|
||||
$("#button_tools").addClass("on");
|
||||
}
|
||||
if (bg.opt_toolbar.active_toolbar_tool == "search" && $("#button_search").length != 0){
|
||||
$("#toolbar_tools").addClass("hidden");
|
||||
$("#button_search").addClass("on");
|
||||
}
|
||||
$("#toolbar_separator").remove();
|
||||
$("#toolbar_unused_buttons").remove();
|
||||
} else {
|
||||
$("#toolbar").children().remove();
|
||||
}
|
||||
|
||||
|
||||
tabs.forEach(function(Tab){
|
||||
AppendTab({
|
||||
tab: Tab,
|
||||
Append: true
|
||||
});
|
||||
});
|
||||
|
||||
tabs.forEach(function(Tab){
|
||||
if (bg.tabs[Tab.id] && !Tab.pinned){
|
||||
$("#"+Tab.id).addClass(bg.tabs[Tab.id].o);
|
||||
if ($("#"+bg.tabs[Tab.id].p).length > 0 && $("#"+bg.tabs[Tab.id].p).is(".tab") && $("#"+Tab.id).find( $("#ch"+bg.tabs[Tab.id].p)).length == 0){
|
||||
$("#ch"+bg.tabs[Tab.id].p).append($("#"+Tab.id));
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
tabs.forEach(function(Tab){
|
||||
if ($("#"+Tab.id)[0] && $("#"+Tab.id).parent().children().eq(bg.tabs[Tab.id].n)[0]){
|
||||
if ($("#"+Tab.id).index() > bg.tabs[Tab.id].n){
|
||||
$("#"+Tab.id).insertBefore($("#"+Tab.id).parent().children().eq(bg.tabs[Tab.id].n));
|
||||
} else {
|
||||
$("#"+Tab.id).insertAfter($("#"+Tab.id).parent().children().eq(bg.tabs[Tab.id].n));
|
||||
}
|
||||
}
|
||||
});
|
||||
tabs.forEach(function(Tab){
|
||||
if ($("#"+Tab.id)[0] && $("#"+Tab.id).parent().children().eq(bg.tabs[Tab.id].n)[0]){
|
||||
if ($("#"+Tab.id).index() < bg.tabs[Tab.id].n){
|
||||
$("#"+Tab.id).insertAfter($("#"+Tab.id).parent().children().eq(bg.tabs[Tab.id].n));
|
||||
}
|
||||
}
|
||||
});
|
||||
delete theme;
|
||||
|
||||
SetIOEvents();
|
||||
SetToolbarEvents();
|
||||
SetTRefreshEvents();
|
||||
SetTabEvents();
|
||||
SetMenu();
|
||||
RefreshGUI();
|
||||
RefreshExpandStates();
|
||||
UpdateData();
|
||||
|
||||
// Scroll to active tab
|
||||
setTimeout(function(){ ScrollToTab($(".active")[0].id); },100);
|
||||
|
||||
|
||||
|
||||
if (navigator.userAgent.match("Vivaldi") !== null){
|
||||
VivaldiRefreshMediaIcons();
|
||||
}
|
||||
|
||||
});
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
function log(m){
|
||||
bg.log(m);
|
||||
}
|
68
theme/close.svg
Normal file
@ -0,0 +1,68 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||
|
||||
<svg
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||
xmlns:cc="http://creativecommons.org/ns#"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
width="12"
|
||||
height="12"
|
||||
viewBox="0 0 12 12"
|
||||
id="svg4216"
|
||||
version="1.1"
|
||||
inkscape:version="0.91 r13725"
|
||||
sodipodi:docname="close.svg">
|
||||
<defs
|
||||
id="defs4218" />
|
||||
<sodipodi:namedview
|
||||
id="base"
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#666666"
|
||||
borderopacity="1.0"
|
||||
inkscape:pageopacity="0.0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:zoom="44.8"
|
||||
inkscape:cx="4.1559123"
|
||||
inkscape:cy="4.8313983"
|
||||
inkscape:document-units="px"
|
||||
inkscape:current-layer="layer1"
|
||||
showgrid="false"
|
||||
units="px"
|
||||
inkscape:window-width="1920"
|
||||
inkscape:window-height="1028"
|
||||
inkscape:window-x="-8"
|
||||
inkscape:window-y="-8"
|
||||
inkscape:window-maximized="1"
|
||||
inkscape:object-paths="true"
|
||||
inkscape:snap-intersection-paths="true"
|
||||
inkscape:object-nodes="true"
|
||||
inkscape:snap-smooth-nodes="true" />
|
||||
<metadata
|
||||
id="metadata4221">
|
||||
<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 />
|
||||
</cc:Work>
|
||||
</rdf:RDF>
|
||||
</metadata>
|
||||
<g
|
||||
inkscape:label="Layer 1"
|
||||
inkscape:groupmode="layer"
|
||||
id="layer1"
|
||||
transform="translate(0,-1040.3622)">
|
||||
<path
|
||||
style="color:#000000;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate"
|
||||
d="m 2.9081908,1042.7622 c 0.2324213,0 0.4647584,0.089 0.6421314,0.2661 l 0.963197,0.9631 1.4864809,1.4848 1.484707,-1.4848 0.963197,-0.9631 c 0.3546774,-0.3548 0.9313595,-0.3548 1.2860364,0 0.3546775,0.3546 0.3546775,0.9294 0,1.2842 l -0.9631972,0.9632 -1.4864805,1.4865 1.4864805,1.4848 0.9631972,0.9631 c 0.3547465,0.3548 0.3547465,0.9314 0,1.286 -0.3546552,0.3548 -0.9312909,0.3548 -1.2860364,0 l -0.963197,-0.9631 -1.484707,-1.4865 -1.4864809,1.4865 -0.963197,0.9631 c -0.354677,0.3548 -0.9295858,0.3548 -1.2842627,0 -0.354677,-0.3546 -0.354677,-0.9312 0,-1.286 l 0.963197,-0.9631 1.484707,-1.4848 -1.484707,-1.4865 -0.963197,-0.9632 c -0.354746,-0.3548 -0.354746,-0.9296 0,-1.2842 0.1773275,-0.1771 0.40971,-0.2661 0.6421313,-0.2661 z"
|
||||
id="rect4134"
|
||||
inkscape:connector-curvature="0"
|
||||
sodipodi:nodetypes="sscccccccccscscccccccccscs" />
|
||||
</g>
|
||||
</svg>
|
After Width: | Height: | Size: 3.1 KiB |
BIN
theme/empty.png
Normal file
After Width: | Height: | Size: 161 B |
74
theme/empty.svg
Normal file
@ -0,0 +1,74 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||
|
||||
<svg
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||
xmlns:cc="http://creativecommons.org/ns#"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
id="svg3347"
|
||||
version="1.1"
|
||||
inkscape:version="0.91 r13725"
|
||||
width="16"
|
||||
height="16"
|
||||
viewBox="0 0 16 16"
|
||||
sodipodi:docname="empty.svg">
|
||||
<metadata
|
||||
id="metadata3353">
|
||||
<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="defs3351" />
|
||||
<sodipodi:namedview
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#666666"
|
||||
borderopacity="1"
|
||||
objecttolerance="10"
|
||||
gridtolerance="10"
|
||||
guidetolerance="10"
|
||||
inkscape:pageopacity="0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:window-width="1920"
|
||||
inkscape:window-height="1028"
|
||||
id="namedview3349"
|
||||
showgrid="false"
|
||||
inkscape:zoom="22.627417"
|
||||
inkscape:cx="4.0568809"
|
||||
inkscape:cy="10.507545"
|
||||
inkscape:window-x="-8"
|
||||
inkscape:window-y="-8"
|
||||
inkscape:window-maximized="1"
|
||||
inkscape:current-layer="svg3347"
|
||||
inkscape:snap-page="true"
|
||||
inkscape:snap-center="true"
|
||||
inkscape:snap-midpoints="true"
|
||||
inkscape:snap-bbox="true"
|
||||
inkscape:bbox-paths="true"
|
||||
inkscape:bbox-nodes="true"
|
||||
inkscape:snap-bbox-edge-midpoints="true"
|
||||
inkscape:snap-bbox-midpoints="true"
|
||||
inkscape:object-paths="true" />
|
||||
<path
|
||||
style="fill:#b2b2b2;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:0;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
d="M 9,0.9999962 13,5 9,5 Z"
|
||||
id="rect3369"
|
||||
inkscape:connector-curvature="0"
|
||||
sodipodi:nodetypes="cccc" />
|
||||
<path
|
||||
style="fill:#b2b2b2;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:0;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
d="m 2,1 6,0 0,5 5,-3.8e-6 L 13,15 2,15 Z"
|
||||
id="rect3371"
|
||||
inkscape:connector-curvature="0"
|
||||
sodipodi:nodetypes="ccccccc" />
|
||||
</svg>
|
After Width: | Height: | Size: 2.4 KiB |
71
theme/loading.svg
Normal file
@ -0,0 +1,71 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<svg width='32px' height='32px' xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" preserveAspectRatio="xMidYMid" class="uil-spin">
|
||||
<rect x="0" y="0" width="100" height="100" fill="none" class="bk">
|
||||
</rect>
|
||||
<g transform="translate(50 50)">
|
||||
<g transform="rotate(0) translate(34 0)">
|
||||
<circle cx="0" cy="0" r="8" fill="#b2b2b2">
|
||||
<animate attributeName="opacity" from="1" to="0.1" begin="0s" dur="1s" repeatCount="indefinite">
|
||||
</animate>
|
||||
<animateTransform attributeName="transform" type="scale" from="1.5,1.0" to="1.0,1.0" begin="0s" dur="1s" repeatCount="indefinite">
|
||||
</animateTransform>
|
||||
</circle>
|
||||
</g>
|
||||
<g transform="rotate(45) translate(34 0)">
|
||||
<circle cx="0" cy="0" r="8" fill="#b2b2b2">
|
||||
<animate attributeName="opacity" from="1" to="0.1" begin="0.12s" dur="1s" repeatCount="indefinite">
|
||||
</animate>
|
||||
<animateTransform attributeName="transform" type="scale" from="1.5,1.0" to="1.0,1.0" begin="0.12s" dur="1s" repeatCount="indefinite">
|
||||
</animateTransform>
|
||||
</circle>
|
||||
</g>
|
||||
<g transform="rotate(90) translate(34 0)">
|
||||
<circle cx="0" cy="0" r="8" fill="#b2b2b2">
|
||||
<animate attributeName="opacity" from="1" to="0.1" begin="0.25s" dur="1s" repeatCount="indefinite">
|
||||
</animate>
|
||||
<animateTransform attributeName="transform" type="scale" from="1.5,1.0" to="1.0,1.0" begin="0.25s" dur="1s" repeatCount="indefinite">
|
||||
</animateTransform>
|
||||
</circle>
|
||||
</g>
|
||||
<g transform="rotate(135) translate(34 0)">
|
||||
<circle cx="0" cy="0" r="8" fill="#b2b2b2">
|
||||
<animate attributeName="opacity" from="1" to="0.1" begin="0.37s" dur="1s" repeatCount="indefinite">
|
||||
</animate>
|
||||
<animateTransform attributeName="transform" type="scale" from="1.5,1.0" to="1.0,1.0" begin="0.37s" dur="1s" repeatCount="indefinite">
|
||||
</animateTransform>
|
||||
</circle>
|
||||
</g>
|
||||
<g transform="rotate(180) translate(34 0)">
|
||||
<circle cx="0" cy="0" r="8" fill="#b2b2b2">
|
||||
<animate attributeName="opacity" from="1" to="0.1" begin="0.5s" dur="1s" repeatCount="indefinite">
|
||||
</animate>
|
||||
<animateTransform attributeName="transform" type="scale" from="1.5,1.0" to="1.0,1.0" begin="0.5s" dur="1s" repeatCount="indefinite">
|
||||
</animateTransform>
|
||||
</circle>
|
||||
</g>
|
||||
<g transform="rotate(225) translate(34 0)">
|
||||
<circle cx="0" cy="0" r="8" fill="#b2b2b2">
|
||||
<animate attributeName="opacity" from="1" to="0.1" begin="0.62s" dur="1s" repeatCount="indefinite">
|
||||
</animate>
|
||||
<animateTransform attributeName="transform" type="scale" from="1.5,1.0" to="1.0,1.0" begin="0.62s" dur="1s" repeatCount="indefinite">
|
||||
</animateTransform>
|
||||
</circle>
|
||||
</g>
|
||||
<g transform="rotate(270) translate(34 0)">
|
||||
<circle cx="0" cy="0" r="8" fill="#b2b2b2">
|
||||
<animate attributeName="opacity" from="1" to="0.1" begin="0.75s" dur="1s" repeatCount="indefinite">
|
||||
</animate>
|
||||
<animateTransform attributeName="transform" type="scale" from="1.5,1.0" to="1.0,1.0" begin="0.75s" dur="1s" repeatCount="indefinite">
|
||||
</animateTransform>
|
||||
</circle>
|
||||
</g>
|
||||
<g transform="rotate(315) translate(34 0)">
|
||||
<circle cx="0" cy="0" r="8" fill="#b2b2b2">
|
||||
<animate attributeName="opacity" from="1" to="0.1" begin="0.87s" dur="1s" repeatCount="indefinite">
|
||||
</animate>
|
||||
<animateTransform attributeName="transform" type="scale" from="1.5,1.0" to="1.0,1.0" begin="0.87s" dur="1s" repeatCount="indefinite">
|
||||
</animateTransform>
|
||||
</circle>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
After Width: | Height: | Size: 3.2 KiB |
BIN
theme/media.gif
Normal file
After Width: | Height: | Size: 1.6 KiB |
BIN
theme/media_muted.gif
Normal file
After Width: | Height: | Size: 128 B |
762
theme/theme.css
Normal file
@ -0,0 +1,762 @@
|
||||
::-webkit-scrollbar-thumb {
|
||||
background-color: var(--scrollbar_thumb, #cdcdcd);
|
||||
}
|
||||
|
||||
::-webkit-scrollbar-thumb:hover {
|
||||
background-color: var(--scrollbar_thumb_hover, #a6a6a6);
|
||||
}
|
||||
|
||||
::-webkit-scrollbar-track {
|
||||
background-color: var(--scrollbar_track, #e4e4e4);
|
||||
}
|
||||
|
||||
body {
|
||||
background-color: var(--tab_list_background, #fafafa);
|
||||
}
|
||||
/* DO NOT REPEAT BACKGROUND IMAGES */
|
||||
|
||||
div {
|
||||
background-repeat: no-repeat;
|
||||
}
|
||||
|
||||
|
||||
/* HIDE OVERFLOW */
|
||||
|
||||
#toolbar,
|
||||
#toolbar_search,
|
||||
#toolbar_tools,
|
||||
#tabs_menu {
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
|
||||
/* AUTO SIZE */
|
||||
|
||||
#tab_list,
|
||||
#pin_list {
|
||||
width: auto;
|
||||
height: auto;
|
||||
}
|
||||
|
||||
|
||||
/* WIDTH: 100% */
|
||||
|
||||
#toolbar,
|
||||
#toolbar_main,
|
||||
#toolbar_search,
|
||||
#toolbar_tools {
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
|
||||
/* POSITION: RELATIVE */
|
||||
|
||||
#toolbar,
|
||||
#toolbar_separator,
|
||||
#filter_box,
|
||||
#button_filter_clear,
|
||||
.button,
|
||||
#pin_list,
|
||||
#tab_list,
|
||||
.pin,
|
||||
.tab {
|
||||
position: relative;
|
||||
}
|
||||
|
||||
|
||||
/* POSITION: ABSOLUTE */
|
||||
|
||||
.tab_mediaicon,
|
||||
#tabs_menu,
|
||||
.toolbar_int {
|
||||
position: absolute;
|
||||
}
|
||||
|
||||
|
||||
/* PLACEMENT HORIZONTAL */
|
||||
|
||||
#toolbar_search_input_box,
|
||||
#toolbar_search_buttons,
|
||||
#filter_box,
|
||||
#button_filter_clear,
|
||||
.button,
|
||||
.tab_mediaicon,
|
||||
.pin {
|
||||
display: inline-block;
|
||||
vertical-align: top;
|
||||
}
|
||||
|
||||
|
||||
/* PLACEMENT VERTICAL */
|
||||
|
||||
#toolbar,
|
||||
#pin_list,
|
||||
#tab_list,
|
||||
.tab {
|
||||
display: vinline-block;
|
||||
}
|
||||
|
||||
|
||||
/* HIDE */
|
||||
|
||||
.hidden {
|
||||
position: absolute;
|
||||
top: -1000px;
|
||||
left: -1000px;
|
||||
width: 0px;
|
||||
height: 0px;
|
||||
border: none;
|
||||
margin: 0px;
|
||||
overflow: hidden;
|
||||
margin: 0px;
|
||||
}
|
||||
|
||||
#pin_list.hidden {
|
||||
margin-bottom: -2px;
|
||||
}
|
||||
|
||||
|
||||
/* TOOLBAR */
|
||||
|
||||
.toolbar {
|
||||
padding-top: 1px;
|
||||
background-color: var(--toolbar_background, #f2f2f2);
|
||||
}
|
||||
|
||||
.toolbar_int {
|
||||
border-bottom: 1px solid var(--toolbar_border_bottom, #cccccc);
|
||||
}
|
||||
|
||||
#toolbar_main {
|
||||
top: 0px;
|
||||
height: 26px;
|
||||
}
|
||||
|
||||
#toolbar_search,
|
||||
#toolbar_tools {
|
||||
top: 27px;
|
||||
height: 26px;
|
||||
}
|
||||
|
||||
#toolbar_separator {
|
||||
top: 54px;
|
||||
height: 15px;
|
||||
width: 100%;
|
||||
background-color: white;
|
||||
}
|
||||
|
||||
#toolbar_unused_buttons {
|
||||
top: 69px;
|
||||
height: 26px;
|
||||
width: 100%;
|
||||
background-color: #b8ffbf;
|
||||
}
|
||||
|
||||
.button {
|
||||
z-index: 100;
|
||||
width: 22px;
|
||||
height: 22px;
|
||||
bottom: -1px;
|
||||
left: 1px;
|
||||
margin-right: 1px;
|
||||
}
|
||||
|
||||
.button:not(.on) {
|
||||
background-color: var(--button_background, #f2f2f2);
|
||||
border: 1px solid var(--button_border, #f2f2f2);
|
||||
}
|
||||
|
||||
.button:hover:not(.on) {
|
||||
background-color: var(--button_hover_background, #dcdcdc);
|
||||
border: 1px solid var(--button_hover_border, #bebebe);
|
||||
}
|
||||
|
||||
.button.on {
|
||||
height: 24px;
|
||||
background-color: var(--toolbar_background, #f2f2f2);
|
||||
border: 1px solid var(--toolbar_border_bottom, #cccccc);
|
||||
border-bottom: 1px solid var(--toolbar_background, #f2f2f2);
|
||||
}
|
||||
|
||||
.button_img {
|
||||
width: 22px;
|
||||
height: 22px;
|
||||
background-size: 22px 22px;
|
||||
background-position: 0px 0px;
|
||||
background-color: var(--button_icons, #808080);
|
||||
}
|
||||
|
||||
|
||||
/* TOOLBAR BUTTONS */
|
||||
|
||||
#button_bookmarks>.button_img {
|
||||
-webkit-mask-box-image: url(../theme/toolbar_bookmarks.svg);
|
||||
mask-image: url(../theme/toolbar_bookmarks.svg);
|
||||
}
|
||||
|
||||
#button_options>.button_img {
|
||||
-webkit-mask-box-image: url(../theme/toolbar_options.svg);
|
||||
mask-image: url(../theme/toolbar_options.svg);
|
||||
}
|
||||
|
||||
#button_settings>.button_img {
|
||||
-webkit-mask-box-image: url(../theme/toolbar_settings.svg);
|
||||
mask-image: url(../theme/toolbar_settings.svg);
|
||||
}
|
||||
|
||||
#button_move .button_img {
|
||||
-webkit-mask-box-image: url(../theme/toolbar_move.svg);
|
||||
mask-image: url(../theme/toolbar_move.svg);
|
||||
}
|
||||
|
||||
#button_pin>.button_img {
|
||||
-webkit-mask-box-image: url(../theme/toolbar_pin.svg);
|
||||
mask-image: url(../theme/toolbar_pin.svg);
|
||||
}
|
||||
|
||||
#button_history>.button_img {
|
||||
-webkit-mask-box-image: url(../theme/toolbar_history.svg);
|
||||
mask-image: url(../theme/toolbar_history.svg);
|
||||
}
|
||||
|
||||
#button_undo>.button_img {
|
||||
-webkit-mask-box-image: url(../theme/toolbar_undo.svg);
|
||||
mask-image: url(../theme/toolbar_undo.svg);
|
||||
}
|
||||
|
||||
#button_downloads>.button_img {
|
||||
-webkit-mask-box-image: url(../theme/toolbar_downloads.svg);
|
||||
mask-image: url(../theme/toolbar_downloads.svg);
|
||||
}
|
||||
|
||||
#button_extensions>.button_img {
|
||||
-webkit-mask-box-image: url(../theme/toolbar_extensions.svg);
|
||||
mask-image: url(../theme/toolbar_extensions.svg);
|
||||
}
|
||||
|
||||
#button_discard>.button_img {
|
||||
-webkit-mask-box-image: url(../theme/toolbar_discard.svg);
|
||||
mask-image: url(../theme/toolbar_discard.svg);
|
||||
}
|
||||
|
||||
#button_new>.button_img {
|
||||
-webkit-mask-box-image: url(../theme/toolbar_new.svg);
|
||||
mask-image: url(../theme/toolbar_new.svg);
|
||||
}
|
||||
|
||||
#button_tools>.button_img {
|
||||
-webkit-mask-box-image: url(../theme/toolbar_tools.svg);
|
||||
mask-image: url(../theme/toolbar_tools.svg);
|
||||
}
|
||||
|
||||
#button_search>.button_img {
|
||||
-webkit-mask-box-image: url(../theme/toolbar_search.svg);
|
||||
mask-image: url(../theme/toolbar_search.svg);
|
||||
}
|
||||
|
||||
|
||||
/* TOOLBAR SEARCHBOX */
|
||||
|
||||
#button_filter_type.url>.button_img {
|
||||
-webkit-mask-box-image: url(../theme/toolbar_filter_url.svg);
|
||||
mask-image: url(../theme/toolbar_filter_url.svg);
|
||||
}
|
||||
|
||||
#button_filter_type.title>.button_img {
|
||||
-webkit-mask-box-image: url(../theme/toolbar_filter_title.svg);
|
||||
mask-image: url(../theme/toolbar_filter_title.svg);
|
||||
}
|
||||
|
||||
#filter_search_go_prev,
|
||||
#filter_search_go_next {
|
||||
width: 16px;
|
||||
}
|
||||
|
||||
#filter_search_go_prev>.button_img {
|
||||
-webkit-mask-box-image: url(../theme/toolbar_filter_search_go_prev.svg);
|
||||
mask-image: url(../theme/toolbar_filter_search_go_prev.svg);
|
||||
width: 16px;
|
||||
background-size: 16px 22px;
|
||||
}
|
||||
|
||||
#filter_search_go_next>.button_img {
|
||||
-webkit-mask-box-image: url(../theme/toolbar_filter_search_go_next.svg);
|
||||
mask-image: url(../theme/toolbar_filter_search_go_next.svg);
|
||||
width: 16px;
|
||||
background-size: 16px 22px;
|
||||
}
|
||||
|
||||
#toolbar_search_input_box {
|
||||
position: relative;
|
||||
top: 0px;
|
||||
left: 2px;
|
||||
height: 25px;
|
||||
width: calc(100% - 67px);
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
#filter_box {
|
||||
top: 2px;
|
||||
padding-left: 6px;
|
||||
width: calc(100% - 10px);
|
||||
height: 18px;
|
||||
background-color: var(--filter_box_background, #fafafa);
|
||||
border: solid 1px var(--filter_box_border, #cccccc);
|
||||
color: var(--filter_box_font, #808080);
|
||||
}
|
||||
|
||||
#filter_box:focus {
|
||||
outline: none;
|
||||
}
|
||||
|
||||
#button_filter_clear {
|
||||
-webkit-mask-box-image: url(../theme/toolbar_filter_clear.svg);
|
||||
mask-image: url(../theme/toolbar_filter_clear.svg);
|
||||
top: 6px;
|
||||
right: 17px;
|
||||
width: 16px;
|
||||
height: 16px;
|
||||
background-color: var(--filter_clear_icon, #808080);
|
||||
}
|
||||
|
||||
#toolbar_search_buttons {
|
||||
position: relative;
|
||||
left: 2px;
|
||||
height: 24px;
|
||||
width: 30px;
|
||||
}
|
||||
|
||||
|
||||
/* LISTS */
|
||||
|
||||
#pin_list {
|
||||
height: auto;
|
||||
overflow-x: auto;
|
||||
overflow-y: hidden;
|
||||
padding-right: 2px;
|
||||
padding-bottom: 1px;
|
||||
background-color: var(--pin_list_background, #fafafa);
|
||||
border-bottom: 1px solid var(--pin_list_border_bottom, #cccccc);
|
||||
}
|
||||
|
||||
#tab_list {
|
||||
overflow-x: hidden;
|
||||
overflow-y: auto;
|
||||
z-index: 100;
|
||||
background-color: var(--tab_list_background, #fafafa);
|
||||
}
|
||||
|
||||
|
||||
/* PINS AND TABS */
|
||||
|
||||
.tab_header {
|
||||
border: 1px solid var(--tab_border, #bebebe);
|
||||
background-color: var(--tab_background, #f2f2f2);
|
||||
}
|
||||
|
||||
.tab_header.tab_header_hover {
|
||||
border: 1px solid var(--tab_hover_border, #878787);
|
||||
background-color: var(--tab_hover_background, #d7d7d7);
|
||||
}
|
||||
|
||||
.selected>.tab_header {
|
||||
border: 1px solid var(--tab_selected_border, #70c0e7);
|
||||
background-color: var(--tab_selected_background, #e5f3fb);
|
||||
}
|
||||
|
||||
.selected>.tab_header.tab_header_hover {
|
||||
border: 1px solid var(--tab_selected_hover_border, #78aee5);
|
||||
background-color: var(--tab_selected_hover_background, #d0e2f0);
|
||||
}
|
||||
|
||||
|
||||
/* TABS */
|
||||
|
||||
.tab_header>.tab_title {
|
||||
z-index: 5;
|
||||
font-family: Arial, Helvetica, "Nimbus Sans L", "Liberation Sans", FreeSans, Sans-serif;
|
||||
white-space: nowrap;
|
||||
text-overflow: ellipsis;
|
||||
width: auto;
|
||||
overflow: hidden;
|
||||
padding-right: 3px;
|
||||
padding-left: var(--title_padding_left, 25px);
|
||||
color: var(--tab_title, #000000);
|
||||
font-size: var(--title_font_size, 12px);
|
||||
}
|
||||
|
||||
.tab.active>.tab_header>.tab_title {
|
||||
font-weight: var(--active_font_weight, bold);
|
||||
color: var(--tab_title_active, #000000);
|
||||
}
|
||||
|
||||
.tab.discarded>.tab_header>.tab_title {
|
||||
color: var(--tab_title_discarded, #7e7e7e);
|
||||
}
|
||||
|
||||
.tab.filtered>.tab_header {
|
||||
background-color: var(--tab_filtered, #e8e000);
|
||||
}
|
||||
|
||||
.tab.selected.filtered>.tab_header {
|
||||
background-color: var(--tab_filtered_selected, #0f8079);
|
||||
}
|
||||
|
||||
.tab.selected.active.filtered>.tab_header {
|
||||
background-color: var(--tab_filtered_selected_active, #1299a9);
|
||||
}
|
||||
|
||||
.tab.filtered.highlighted_search>.tab_header {
|
||||
background-color: var(--tab_filtered_highlighted, #ffa500);
|
||||
}
|
||||
|
||||
.tab {
|
||||
position: relative;
|
||||
display: vinline-block;
|
||||
left: 0px;
|
||||
height: auto;
|
||||
width: auto;
|
||||
border-top: 1px solid transparent;
|
||||
}
|
||||
|
||||
.tab>.tab_header {
|
||||
/* tab size is here, all the rest is automatically calculated, adjust line-height to fix title vertical position */
|
||||
z-index: 10;
|
||||
position: relative;
|
||||
top: 0px;
|
||||
left: 13px;
|
||||
height: var(--tab_height, 19px);
|
||||
line-height: var(--tab_height_line, 22px);
|
||||
width: calc(100% - 16px);
|
||||
background-image: url(../theme/empty.svg);
|
||||
background-size: var(--favicon_size, 16px 16px);
|
||||
background-position: var(--favicon_pos, 4px center);
|
||||
}
|
||||
|
||||
|
||||
.drop_target {
|
||||
display: none;
|
||||
position: absolute;
|
||||
}
|
||||
|
||||
.tab>.drop_target {
|
||||
left: 13px;
|
||||
width: calc(100% - 14px);
|
||||
}
|
||||
|
||||
.tab>.drag_enter_center {
|
||||
z-index: 11;
|
||||
top: -1px;
|
||||
height: calc(var(--tab_height, 21px) + 2px);
|
||||
border: 1px solid transparent;
|
||||
}
|
||||
|
||||
.tab>.drag_enter_center.highlighted_drop_target {
|
||||
border: 1px solid var(--drag_indicator, #339bf3);
|
||||
}
|
||||
|
||||
.tab>.drag_entered_top {
|
||||
z-index: 15;
|
||||
top: -1px;
|
||||
height: var(--drag_area_top, 7px);
|
||||
border-top: 1px solid transparent;
|
||||
}
|
||||
.tab>.drag_entered_top.highlighted_drop_target {
|
||||
border-top: 1px solid var(--drag_indicator, #339bf3);
|
||||
}
|
||||
|
||||
.tab>.drag_entered_bottom {
|
||||
z-index: 20;
|
||||
bottom: -1px;
|
||||
height: var(--drag_area_bottom, 5px);
|
||||
border-bottom: 1px solid transparent;
|
||||
}
|
||||
.tab>.drag_entered_bottom.highlighted_drop_target {
|
||||
bottom: -1px;
|
||||
border-bottom: 1px solid var(--drag_indicator, #339bf3);
|
||||
}
|
||||
|
||||
.children>.tab:last-child>.drag_entered_bottom {
|
||||
z-index: 19;
|
||||
bottom: 3px;
|
||||
border-bottom: 1px solid transparent;
|
||||
}
|
||||
.children>.tab:last-child>.drag_entered_bottom.highlighted_drop_target {
|
||||
bottom: -1px;
|
||||
height: calc(var(--drag_area_bottom, 9px) + 4px);
|
||||
border-bottom: 1px solid var(--drag_indicator, #339bf3);
|
||||
}
|
||||
|
||||
/* #tab_list>.tab:first-child {
|
||||
margin-top: 4px;
|
||||
} */
|
||||
#tab_list>.tab:last-child {
|
||||
margin-bottom: 12px;
|
||||
}
|
||||
|
||||
|
||||
/* TABS CHILDREN */
|
||||
|
||||
.children>.tab>.tab_header {
|
||||
left: 13px;
|
||||
}
|
||||
|
||||
.children {
|
||||
position: relative;
|
||||
padding-left: 6px;
|
||||
}
|
||||
|
||||
.o>.children {
|
||||
height: auto;
|
||||
}
|
||||
|
||||
.c>.children {
|
||||
display: none;
|
||||
height: 0px;
|
||||
}
|
||||
|
||||
.expand {
|
||||
z-index: 200;
|
||||
position: absolute;
|
||||
top: 1px;
|
||||
left: 0px;
|
||||
height: 100%;
|
||||
width: 16px;
|
||||
}
|
||||
|
||||
.exp_box {
|
||||
position: absolute;
|
||||
top: var(--expand_box_top, 6px);
|
||||
left: var(--expand_box_left, 3px);
|
||||
height: var(--expand_box_size, 5px);
|
||||
width: var(--expand_box_size, 5px);
|
||||
}
|
||||
|
||||
.c>.expand>.exp_box {
|
||||
border: 1px solid var(--expand_closed_border, #969696);
|
||||
background-color: var(--expand_closed_background, #eaeaea);
|
||||
}
|
||||
|
||||
.o>.expand>.exp_box {
|
||||
border: 1px solid var(--expand_open_border, #339bf3);
|
||||
background-color: var(--expand_open_background, #d0e2f0);
|
||||
}
|
||||
|
||||
.children>.o>.expand>.exp_line_h,
|
||||
.children>.c>.expand>.exp_line_h {
|
||||
position: absolute;
|
||||
top: var(--expand_line_h_top, 9px);
|
||||
left: 1px;
|
||||
height: 1px;
|
||||
width: var(--expand_line_h_oc_width, 3px);
|
||||
border-top: 1px solid var(--expand_lines, #cccccc);
|
||||
}
|
||||
|
||||
.children>.tab:not(.o):not(.c)>.expand>.exp_line_h {
|
||||
position: absolute;
|
||||
top: var(--expand_line_h_top, 9px);
|
||||
left: 1px;
|
||||
height: 1px;
|
||||
width: var(--expand_line_h_width, 12px);
|
||||
border-top: 1px solid var(--expand_lines, #cccccc);
|
||||
}
|
||||
|
||||
.children>.tab:not(:last-child)>.expand>.exp_line_v {
|
||||
position: absolute;
|
||||
top: var(--expand_line_v_top, -9px);
|
||||
left: var(--expand_line_v_left, 0px);
|
||||
height: calc(100% + 1px);
|
||||
width: 1px;
|
||||
border-left: 1px solid var(--expand_lines, #cccccc);
|
||||
}
|
||||
|
||||
.children>.tab:last-child>.expand>.exp_line_v {
|
||||
position: absolute;
|
||||
top: var(--expand_line_v_top, -9px);
|
||||
left: var(--expand_line_v_left, 0px);
|
||||
height: var(--expand_line_v_last_height, 19px);
|
||||
width: 1px;
|
||||
border-left: 1px solid var(--expand_lines, #cccccc);
|
||||
}
|
||||
|
||||
|
||||
/* PINS */
|
||||
|
||||
.pin {
|
||||
/* pin size is here, all the rest is automatically calculated */
|
||||
top: 1px;
|
||||
left: 1px;
|
||||
height: var(--pin_height, 24px);
|
||||
width: var(--pin_width, 26px);
|
||||
/* border: 1px solid red; */
|
||||
}
|
||||
|
||||
.pin>.tab_header>.tab_title,
|
||||
.pin>.expand {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.pin>.tab_header {
|
||||
background-image: url(../theme/empty.svg);
|
||||
background-size: var(--favicon_size, 16px 16px);
|
||||
background-position: center;
|
||||
height: calc(100% - 3px);
|
||||
width: calc(100% - 3px);
|
||||
}
|
||||
|
||||
.pin>.drag_entered_top {
|
||||
z-index: 20;
|
||||
position: absolute;
|
||||
top: 1px;
|
||||
left: -1px;
|
||||
height: calc(100% - 4px);
|
||||
width: 50%;
|
||||
border-left: 1px solid transparent;
|
||||
}
|
||||
|
||||
.pin>.drag_entered_top.highlighted_drop_target {
|
||||
border-left: 1px solid var(--drag_indicator, #339bf3);
|
||||
}
|
||||
|
||||
.pin>.drag_entered_bottom {
|
||||
z-index: 21;
|
||||
position: absolute;
|
||||
top: 1px;
|
||||
left: calc(50% - 2px);
|
||||
height: calc(100% - 4px);
|
||||
width: 50%;
|
||||
border-left: 1px solid transparent;
|
||||
}
|
||||
|
||||
.pin>.drag_entered_bottom.highlighted_drop_target {
|
||||
border-right: 1px solid var(--drag_indicator, #339bf3);
|
||||
}
|
||||
|
||||
.pin>.drag_enter_center {
|
||||
z-index: 2;
|
||||
position: absolute;
|
||||
top: 0px;
|
||||
height: 0px;
|
||||
width: 0px;
|
||||
/* border: 1px solid yellow; */
|
||||
}
|
||||
|
||||
|
||||
/* MEDIA */
|
||||
|
||||
.tab_mediaicon {
|
||||
z-index: 999;
|
||||
bottom: 0px;
|
||||
left: 2px;
|
||||
height: 0px;
|
||||
width: 0px;
|
||||
background-size: 0px 0px;
|
||||
}
|
||||
|
||||
.audible>.tab_header>.tab_mediaicon {
|
||||
height: 10px;
|
||||
width: 10px;
|
||||
background-image: url(../theme/media.gif);
|
||||
background-size: 10px 10px;
|
||||
}
|
||||
|
||||
.muted>.tab_header>.tab_mediaicon {
|
||||
height: 10px;
|
||||
width: 10px;
|
||||
background-image: url(../theme/media_muted.gif);
|
||||
background-size: 10px 10px;
|
||||
}
|
||||
|
||||
|
||||
/* LOADING FAVICON */
|
||||
|
||||
.loading>.tab_header {
|
||||
background-image: url(../theme/loading.svg);
|
||||
}
|
||||
|
||||
|
||||
/* CLOSE BUTTON */
|
||||
|
||||
.close {
|
||||
border: 1px solid transparent;
|
||||
z-index: 998;
|
||||
display: none;
|
||||
position: absolute;
|
||||
top: var(--close_top, 2px);
|
||||
right: var(--close_right, 2px);
|
||||
height: var(--close_size, 13px);
|
||||
width: var(--close_size, 13px);
|
||||
background-size: var(--close_size, 13px) var(--close_size, 13px);
|
||||
}
|
||||
|
||||
.close_img {
|
||||
z-index: -999;
|
||||
position: absolute;
|
||||
top: 0px;
|
||||
left: 0px;
|
||||
height: 100%;
|
||||
width: 100%;
|
||||
background-color: var(--close_x, #7d7d7d);
|
||||
-webkit-mask-box-image: url(../theme/close.svg);
|
||||
mask-image: url(../theme/close.svg);
|
||||
mask-size: 100%;
|
||||
mask-position: center, center;
|
||||
}
|
||||
|
||||
.close_show>.tab_title {
|
||||
padding-right: var(--title_padding_with_close, 24px);
|
||||
}
|
||||
|
||||
.close_show>.close {
|
||||
display: inline-block;
|
||||
}
|
||||
|
||||
.close_show>.close_hover>.close_img {
|
||||
top: 0px;
|
||||
background-color: var(--close_hover_x, #fbfcfe);
|
||||
}
|
||||
|
||||
.close_show>.close_hover {
|
||||
border: 1px solid var(--close_hover_border, #757676);
|
||||
background-color: var(--close_hover_background, #939394);
|
||||
}
|
||||
|
||||
.pin>.tab_header>.close {
|
||||
display: none;
|
||||
z-index: -999;
|
||||
}
|
||||
|
||||
|
||||
/* MENU */
|
||||
|
||||
#tabs_menu {
|
||||
display: none;
|
||||
word-wrap: normal;
|
||||
white-space: initial;
|
||||
z-index: 1000;
|
||||
font-family: Arial, Helvetica, "Nimbus Sans L", "Liberation Sans", FreeSans, Sans-serif;
|
||||
font-size: 12px;
|
||||
border: 1px solid var(--tabs_menu_border, #bebebe);
|
||||
padding: 0;
|
||||
background: var(--tabs_menu_background, #fafafa);
|
||||
color: var(--tabs_menu_font, #333333);
|
||||
}
|
||||
|
||||
#tabs_menu li {
|
||||
padding: 3px 8px;
|
||||
cursor: pointer;
|
||||
list-style-type: none;
|
||||
}
|
||||
|
||||
#tabs_menu li:hover {
|
||||
padding: 2px 7px;
|
||||
border: 1px solid var(--tabs_menu_hover_border, #bebebe);
|
||||
background-color: var(--tabs_menu_hover_background, #efefef);
|
||||
}
|
||||
|
||||
#tabs_menu .separator {
|
||||
height: 1px;
|
||||
width: 80%;
|
||||
background-color: var(--tabs_menu_separator, #efefef);
|
||||
margin: 0 auto;
|
||||
}
|
90
theme/toolbar_bookmarks.svg
Normal file
@ -0,0 +1,90 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||
|
||||
<svg
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||
xmlns:cc="http://creativecommons.org/ns#"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
id="svg3347"
|
||||
version="1.1"
|
||||
inkscape:version="0.91 r13725"
|
||||
width="22"
|
||||
height="22"
|
||||
viewBox="0 0 22 22"
|
||||
sodipodi:docname="toolbar_bookmarks.svg">
|
||||
<metadata
|
||||
id="metadata3353">
|
||||
<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 />
|
||||
</cc:Work>
|
||||
</rdf:RDF>
|
||||
</metadata>
|
||||
<defs
|
||||
id="defs3351" />
|
||||
<sodipodi:namedview
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#666666"
|
||||
borderopacity="1"
|
||||
objecttolerance="10"
|
||||
gridtolerance="10"
|
||||
guidetolerance="10"
|
||||
inkscape:pageopacity="0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:window-width="1920"
|
||||
inkscape:window-height="1028"
|
||||
id="namedview3349"
|
||||
showgrid="false"
|
||||
inkscape:zoom="16"
|
||||
inkscape:cx="-5.354717"
|
||||
inkscape:cy="10.016903"
|
||||
inkscape:window-x="-8"
|
||||
inkscape:window-y="-8"
|
||||
inkscape:window-maximized="1"
|
||||
inkscape:current-layer="svg3347"
|
||||
inkscape:snap-page="true"
|
||||
inkscape:snap-center="true"
|
||||
inkscape:snap-midpoints="true"
|
||||
inkscape:snap-bbox="true"
|
||||
inkscape:bbox-paths="true"
|
||||
inkscape:bbox-nodes="true"
|
||||
inkscape:snap-bbox-edge-midpoints="true"
|
||||
inkscape:snap-bbox-midpoints="true"
|
||||
inkscape:object-paths="true" />
|
||||
<rect
|
||||
style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#cccccc;stroke-width:0;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
id="rect3365"
|
||||
width="6.99999"
|
||||
height="6.99999"
|
||||
x="5.0000048"
|
||||
y="3.9999979" />
|
||||
<rect
|
||||
style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
id="rect3367"
|
||||
width="4.99999"
|
||||
height="4.99999"
|
||||
x="13.000005"
|
||||
y="3.9999979" />
|
||||
<rect
|
||||
style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
id="rect3369"
|
||||
width="4.99999"
|
||||
height="4.99999"
|
||||
x="13.000005"
|
||||
y="9.9999962" />
|
||||
<rect
|
||||
style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
id="rect3371"
|
||||
width="6.99999"
|
||||
height="6.99999"
|
||||
x="5.0000048"
|
||||
y="11.999996" />
|
||||
</svg>
|
After Width: | Height: | Size: 3.0 KiB |
69
theme/toolbar_discard.svg
Normal file
@ -0,0 +1,69 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||
|
||||
<svg
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||
xmlns:cc="http://creativecommons.org/ns#"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
id="svg3347"
|
||||
version="1.1"
|
||||
inkscape:version="0.91 r13725"
|
||||
width="22"
|
||||
height="22"
|
||||
viewBox="0 0 22 22"
|
||||
sodipodi:docname="toolbar_discard.svg">
|
||||
<metadata
|
||||
id="metadata3353">
|
||||
<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 />
|
||||
</cc:Work>
|
||||
</rdf:RDF>
|
||||
</metadata>
|
||||
<defs
|
||||
id="defs3351" />
|
||||
<sodipodi:namedview
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#666666"
|
||||
borderopacity="1"
|
||||
objecttolerance="10"
|
||||
gridtolerance="10"
|
||||
guidetolerance="10"
|
||||
inkscape:pageopacity="0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:window-width="1920"
|
||||
inkscape:window-height="1058"
|
||||
id="namedview3349"
|
||||
showgrid="false"
|
||||
inkscape:zoom="22.627417"
|
||||
inkscape:cx="16.880813"
|
||||
inkscape:cy="10.493162"
|
||||
inkscape:window-x="1912"
|
||||
inkscape:window-y="-8"
|
||||
inkscape:window-maximized="1"
|
||||
inkscape:current-layer="svg3347"
|
||||
inkscape:snap-page="true"
|
||||
inkscape:snap-center="true"
|
||||
inkscape:snap-midpoints="true"
|
||||
inkscape:snap-bbox="true"
|
||||
inkscape:bbox-paths="true"
|
||||
inkscape:bbox-nodes="true"
|
||||
inkscape:snap-bbox-edge-midpoints="true"
|
||||
inkscape:snap-bbox-midpoints="true"
|
||||
inkscape:object-paths="true"
|
||||
inkscape:snap-intersection-paths="true"
|
||||
inkscape:object-nodes="true"
|
||||
inkscape:snap-smooth-nodes="true" />
|
||||
<path
|
||||
style="color:#000000;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:bevel;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate"
|
||||
d="M 11 3 A 8 8 0 0 0 3 11 A 8 8 0 0 0 11 19 A 8 8 0 0 0 19 11 A 8 8 0 0 0 11 3 z M 13.810547 7.5019531 C 13.987006 7.5025032 14.162745 7.5718554 14.296875 7.7070312 C 14.564364 7.9757797 14.564364 8.4089828 14.296875 8.6777344 L 11.972656 11.001953 L 14.292969 13.322266 C 14.56046 13.591015 14.56046 14.02422 14.292969 14.292969 C 14.024711 14.563283 13.588297 14.56555 13.318359 14.296875 L 10.998047 11.976562 L 8.6777344 14.296875 C 8.4089822 14.564364 7.9757799 14.564363 7.7070312 14.296875 C 7.4366759 14.028614 7.4344492 13.592204 7.703125 13.322266 L 10.023438 11.001953 L 7.703125 8.6816406 C 7.4344498 8.4117025 7.4366796 7.9752899 7.7070312 7.7070312 C 7.9757812 7.4395412 8.4089849 7.4395404 8.6777344 7.7070312 L 10.998047 10.027344 L 13.322266 7.703125 C 13.457235 7.5687874 13.634088 7.501403 13.810547 7.5019531 z "
|
||||
id="path4308" />
|
||||
</svg>
|
After Width: | Height: | Size: 3.3 KiB |
109
theme/toolbar_downloads.svg
Normal file
@ -0,0 +1,109 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||
|
||||
<svg
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||
xmlns:cc="http://creativecommons.org/ns#"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
id="svg3347"
|
||||
version="1.1"
|
||||
inkscape:version="0.91 r13725"
|
||||
width="22"
|
||||
height="22"
|
||||
viewBox="0 0 22 22"
|
||||
sodipodi:docname="toolbar_downloads.svg">
|
||||
<metadata
|
||||
id="metadata3353">
|
||||
<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 />
|
||||
</cc:Work>
|
||||
</rdf:RDF>
|
||||
</metadata>
|
||||
<defs
|
||||
id="defs3351">
|
||||
<marker
|
||||
inkscape:stockid="Arrow2Lend"
|
||||
orient="auto"
|
||||
refY="0"
|
||||
refX="0"
|
||||
id="Arrow2Lend"
|
||||
style="overflow:visible"
|
||||
inkscape:isstock="true">
|
||||
<path
|
||||
id="path4159"
|
||||
style="fill:#808080;fill-opacity:1;fill-rule:evenodd;stroke:#808080;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
|
||||
d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
|
||||
transform="matrix(-1.1,0,0,-1.1,-1.1,0)"
|
||||
inkscape:connector-curvature="0" />
|
||||
</marker>
|
||||
<marker
|
||||
inkscape:stockid="Arrow1Lstart"
|
||||
orient="auto"
|
||||
refY="0"
|
||||
refX="0"
|
||||
id="Arrow1Lstart"
|
||||
style="overflow:visible"
|
||||
inkscape:isstock="true">
|
||||
<path
|
||||
id="path4138"
|
||||
d="M 0,0 5,-5 -12.5,0 5,5 0,0 Z"
|
||||
style="fill:#808080;fill-opacity:1;fill-rule:evenodd;stroke:#808080;stroke-width:1pt;stroke-opacity:1"
|
||||
transform="matrix(0.8,0,0,0.8,10,0)"
|
||||
inkscape:connector-curvature="0" />
|
||||
</marker>
|
||||
</defs>
|
||||
<sodipodi:namedview
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#666666"
|
||||
borderopacity="1"
|
||||
objecttolerance="10"
|
||||
gridtolerance="10"
|
||||
guidetolerance="10"
|
||||
inkscape:pageopacity="0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:window-width="1920"
|
||||
inkscape:window-height="1058"
|
||||
id="namedview3349"
|
||||
showgrid="false"
|
||||
inkscape:zoom="32"
|
||||
inkscape:cx="13.266646"
|
||||
inkscape:cy="9.1075792"
|
||||
inkscape:window-x="1912"
|
||||
inkscape:window-y="-8"
|
||||
inkscape:window-maximized="1"
|
||||
inkscape:current-layer="svg3347"
|
||||
inkscape:snap-page="true"
|
||||
inkscape:snap-center="true"
|
||||
inkscape:snap-midpoints="false"
|
||||
inkscape:snap-bbox="true"
|
||||
inkscape:bbox-paths="true"
|
||||
inkscape:bbox-nodes="true"
|
||||
inkscape:snap-bbox-edge-midpoints="true"
|
||||
inkscape:snap-bbox-midpoints="true"
|
||||
inkscape:object-paths="true"
|
||||
inkscape:snap-intersection-paths="true"
|
||||
inkscape:object-nodes="true"
|
||||
inkscape:snap-smooth-nodes="false"
|
||||
inkscape:snap-others="false" />
|
||||
<circle
|
||||
style="opacity:1;fill:none;fill-opacity:0;stroke:#000000;stroke-width:1.39999998;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
id="path6623"
|
||||
cx="11"
|
||||
cy="10.999992"
|
||||
r="6.4082494" />
|
||||
<path
|
||||
id="path4444-4"
|
||||
style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
d="m 8.0000003,10.999993 1.9999997,0 0,-4.0000007 2,0 0,4.0000007 2,0 -3,4 z"
|
||||
inkscape:connector-curvature="0"
|
||||
sodipodi:nodetypes="cccccccc" />
|
||||
</svg>
|
After Width: | Height: | Size: 3.6 KiB |
71
theme/toolbar_extensions.svg
Normal file
@ -0,0 +1,71 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||
|
||||
<svg
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||
xmlns:cc="http://creativecommons.org/ns#"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
id="svg3347"
|
||||
version="1.1"
|
||||
inkscape:version="0.91 r13725"
|
||||
width="22"
|
||||
height="22"
|
||||
viewBox="0 0 22 22"
|
||||
sodipodi:docname="toolbar_extensions.svg">
|
||||
<metadata
|
||||
id="metadata3353">
|
||||
<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 />
|
||||
</cc:Work>
|
||||
</rdf:RDF>
|
||||
</metadata>
|
||||
<defs
|
||||
id="defs3351" />
|
||||
<sodipodi:namedview
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#666666"
|
||||
borderopacity="1"
|
||||
objecttolerance="10"
|
||||
gridtolerance="10"
|
||||
guidetolerance="10"
|
||||
inkscape:pageopacity="0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:window-width="1920"
|
||||
inkscape:window-height="1058"
|
||||
id="namedview3349"
|
||||
showgrid="false"
|
||||
inkscape:zoom="32"
|
||||
inkscape:cx="9.339935"
|
||||
inkscape:cy="9.659087"
|
||||
inkscape:window-x="1912"
|
||||
inkscape:window-y="-8"
|
||||
inkscape:window-maximized="1"
|
||||
inkscape:current-layer="svg3347"
|
||||
inkscape:snap-page="true"
|
||||
inkscape:snap-center="true"
|
||||
inkscape:snap-midpoints="true"
|
||||
inkscape:snap-bbox="true"
|
||||
inkscape:bbox-paths="true"
|
||||
inkscape:bbox-nodes="true"
|
||||
inkscape:snap-bbox-edge-midpoints="true"
|
||||
inkscape:snap-bbox-midpoints="true"
|
||||
inkscape:object-paths="true"
|
||||
inkscape:snap-intersection-paths="true"
|
||||
inkscape:object-nodes="true"
|
||||
inkscape:snap-smooth-nodes="true" />
|
||||
<path
|
||||
style="color:#000000;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:bevel;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate"
|
||||
d="M 10.489408,4.2498488 C 9.6457101,4.2465748 8.9595838,4.9260453 8.9576082,5.7701287 l 0,0.9959049 -2.6674466,0 c -0.5762488,0 -0.9884464,0.4664406 -1.0401613,1.0406193 l 0,2.6728931 1.0015616,0.002 c 0.4218553,9.29e-4 0.8032137,0.171733 1.0787623,0.449126 0.2755512,0.277397 0.4424932,0.661259 0.4408492,1.0833 -0.00202,0.840359 -0.6796142,1.518302 -1.5196115,1.520281 l -1.0015616,0.004 0,2.67086 c 0,0.576541 0.4662452,0.98886 1.0401613,1.040657 l 2.6674466,0 0,-0.995905 c 0.00202,-0.844085 0.6881019,-1.523505 1.5317998,-1.520279 0.839994,0.002 1.517636,0.679915 1.519611,1.520279 l 0,0.995905 2.679635,0 c 0.57625,0 1.040163,-0.418627 1.040163,-1.04062 l 0,-2.674925 1.001563,0 c 0.839995,-0.002 1.517635,-0.67992 1.51961,-1.52028 0.0015,-0.422041 -0.165299,-0.805904 -0.440849,-1.083299 -0.27555,-0.277399 -0.656908,-0.448185 -1.078761,-0.449175 l -1.001563,0 0,-2.6749263 c 0,-0.5765031 -0.463912,-1.0406193 -1.040163,-1.0406193 l -2.679635,0 0,-0.995905 C 12.007037,4.9297649 11.329402,4.251826 10.489408,4.2498488 Z"
|
||||
id="path4181"
|
||||
inkscape:connector-curvature="0"
|
||||
sodipodi:nodetypes="cccssccscccsscccccsscccsccssccc" />
|
||||
</svg>
|
After Width: | Height: | Size: 3.6 KiB |
63
theme/toolbar_filter_clear.svg
Normal file
@ -0,0 +1,63 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||
|
||||
<svg
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||
xmlns:cc="http://creativecommons.org/ns#"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
width="16"
|
||||
height="16"
|
||||
viewBox="0 0 16 16"
|
||||
id="svg4216"
|
||||
version="1.1"
|
||||
inkscape:version="0.91 r13725"
|
||||
sodipodi:docname="toolbar_filter_clear.svg">
|
||||
<defs
|
||||
id="defs4218" />
|
||||
<sodipodi:namedview
|
||||
id="base"
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#666666"
|
||||
borderopacity="1.0"
|
||||
inkscape:pageopacity="0.0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:zoom="31.678384"
|
||||
inkscape:cx="7.5672409"
|
||||
inkscape:cy="8.7375338"
|
||||
inkscape:document-units="px"
|
||||
inkscape:current-layer="layer1"
|
||||
showgrid="false"
|
||||
units="px"
|
||||
inkscape:window-width="1920"
|
||||
inkscape:window-height="1058"
|
||||
inkscape:window-x="1912"
|
||||
inkscape:window-y="-8"
|
||||
inkscape:window-maximized="1" />
|
||||
<metadata
|
||||
id="metadata4221">
|
||||
<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 />
|
||||
</cc:Work>
|
||||
</rdf:RDF>
|
||||
</metadata>
|
||||
<g
|
||||
inkscape:label="Layer 1"
|
||||
inkscape:groupmode="layer"
|
||||
id="layer1"
|
||||
transform="translate(0,-1036.3622)">
|
||||
<path
|
||||
id="path4766"
|
||||
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:2;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
d="m 11.5,1040.8622 -7,7 m 0,-7 7,7"
|
||||
inkscape:connector-curvature="0" />
|
||||
</g>
|
||||
</svg>
|
After Width: | Height: | Size: 1.9 KiB |
73
theme/toolbar_filter_search_go_next.svg
Normal file
@ -0,0 +1,73 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||
|
||||
<svg
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||
xmlns:cc="http://creativecommons.org/ns#"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
id="svg3347"
|
||||
version="1.1"
|
||||
inkscape:version="0.91 r13725"
|
||||
width="16"
|
||||
height="22"
|
||||
viewBox="0 0 16 22"
|
||||
sodipodi:docname="toolbar_filter_search_go_next.svg">
|
||||
<metadata
|
||||
id="metadata3353">
|
||||
<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 />
|
||||
</cc:Work>
|
||||
</rdf:RDF>
|
||||
</metadata>
|
||||
<defs
|
||||
id="defs3351" />
|
||||
<sodipodi:namedview
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#666666"
|
||||
borderopacity="1"
|
||||
objecttolerance="10"
|
||||
gridtolerance="10"
|
||||
guidetolerance="10"
|
||||
inkscape:pageopacity="0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:window-width="1920"
|
||||
inkscape:window-height="1058"
|
||||
id="namedview3349"
|
||||
showgrid="false"
|
||||
inkscape:zoom="22.627417"
|
||||
inkscape:cx="5.3977768"
|
||||
inkscape:cy="11.108757"
|
||||
inkscape:window-x="1912"
|
||||
inkscape:window-y="-8"
|
||||
inkscape:window-maximized="1"
|
||||
inkscape:current-layer="svg3347"
|
||||
inkscape:snap-page="true"
|
||||
inkscape:snap-center="true"
|
||||
inkscape:snap-midpoints="true"
|
||||
inkscape:snap-bbox="true"
|
||||
inkscape:bbox-paths="true"
|
||||
inkscape:bbox-nodes="true"
|
||||
inkscape:snap-bbox-edge-midpoints="true"
|
||||
inkscape:snap-bbox-midpoints="true"
|
||||
inkscape:object-paths="true" />
|
||||
<g
|
||||
id="g3078"
|
||||
transform="matrix(0,-0.68965222,-0.7142857,0,17.28572,18.758609)"
|
||||
style="fill:#000000;fill-opacity:1">
|
||||
<path
|
||||
id="path2988-4-8"
|
||||
style="fill:#000000;fill-opacity:1;stroke:none"
|
||||
d="M 4,20.000008 11.250063,6.0000078 18.500062,20.000008 Z"
|
||||
inkscape:connector-curvature="0"
|
||||
sodipodi:nodetypes="cccc" />
|
||||
</g>
|
||||
</svg>
|
After Width: | Height: | Size: 2.2 KiB |
73
theme/toolbar_filter_search_go_prev.svg
Normal file
@ -0,0 +1,73 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||
|
||||
<svg
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||
xmlns:cc="http://creativecommons.org/ns#"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
id="svg3347"
|
||||
version="1.1"
|
||||
inkscape:version="0.91 r13725"
|
||||
width="16"
|
||||
height="22"
|
||||
viewBox="0 0 16 22"
|
||||
sodipodi:docname="toolbar_filter_search_go_prev.svg">
|
||||
<metadata
|
||||
id="metadata3353">
|
||||
<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 />
|
||||
</cc:Work>
|
||||
</rdf:RDF>
|
||||
</metadata>
|
||||
<defs
|
||||
id="defs3351" />
|
||||
<sodipodi:namedview
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#666666"
|
||||
borderopacity="1"
|
||||
objecttolerance="10"
|
||||
gridtolerance="10"
|
||||
guidetolerance="10"
|
||||
inkscape:pageopacity="0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:window-width="1920"
|
||||
inkscape:window-height="1058"
|
||||
id="namedview3349"
|
||||
showgrid="false"
|
||||
inkscape:zoom="32"
|
||||
inkscape:cx="9.3051622"
|
||||
inkscape:cy="7.6718448"
|
||||
inkscape:window-x="1912"
|
||||
inkscape:window-y="-8"
|
||||
inkscape:window-maximized="1"
|
||||
inkscape:current-layer="svg3347"
|
||||
inkscape:snap-page="true"
|
||||
inkscape:snap-center="true"
|
||||
inkscape:snap-midpoints="true"
|
||||
inkscape:snap-bbox="true"
|
||||
inkscape:bbox-paths="true"
|
||||
inkscape:bbox-nodes="true"
|
||||
inkscape:snap-bbox-edge-midpoints="true"
|
||||
inkscape:snap-bbox-midpoints="true"
|
||||
inkscape:object-paths="true" />
|
||||
<g
|
||||
id="g3078"
|
||||
transform="matrix(0,-0.68965222,0.7142857,0,-1.2857197,18.758609)"
|
||||
style="fill:#000000;fill-opacity:1">
|
||||
<path
|
||||
id="path2988-4-8"
|
||||
style="fill:#000000;fill-opacity:1;stroke:none"
|
||||
d="M 4,20.000008 11.250063,6.0000078 18.500062,20.000008 Z"
|
||||
inkscape:connector-curvature="0"
|
||||
sodipodi:nodetypes="cccc" />
|
||||
</g>
|
||||
</svg>
|
After Width: | Height: | Size: 2.2 KiB |
79
theme/toolbar_filter_title.svg
Normal file
@ -0,0 +1,79 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||
|
||||
<svg
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||
xmlns:cc="http://creativecommons.org/ns#"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
id="svg3347"
|
||||
version="1.1"
|
||||
inkscape:version="0.91 r13725"
|
||||
width="22"
|
||||
height="22"
|
||||
viewBox="0 0 22 22"
|
||||
sodipodi:docname="toolbar_filter_title.svg">
|
||||
<metadata
|
||||
id="metadata3353">
|
||||
<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 />
|
||||
</cc:Work>
|
||||
</rdf:RDF>
|
||||
</metadata>
|
||||
<defs
|
||||
id="defs3351" />
|
||||
<sodipodi:namedview
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#666666"
|
||||
borderopacity="1"
|
||||
objecttolerance="10"
|
||||
gridtolerance="10"
|
||||
guidetolerance="10"
|
||||
inkscape:pageopacity="0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:window-width="1920"
|
||||
inkscape:window-height="1058"
|
||||
id="namedview3349"
|
||||
showgrid="false"
|
||||
inkscape:zoom="22.627418"
|
||||
inkscape:cx="13.986002"
|
||||
inkscape:cy="5.652831"
|
||||
inkscape:window-x="1912"
|
||||
inkscape:window-y="-8"
|
||||
inkscape:window-maximized="1"
|
||||
inkscape:current-layer="svg3347"
|
||||
inkscape:snap-page="true"
|
||||
inkscape:snap-center="false"
|
||||
inkscape:snap-midpoints="false"
|
||||
inkscape:snap-bbox="true"
|
||||
inkscape:bbox-paths="true"
|
||||
inkscape:bbox-nodes="true"
|
||||
inkscape:snap-bbox-edge-midpoints="true"
|
||||
inkscape:snap-bbox-midpoints="true"
|
||||
inkscape:object-paths="true"
|
||||
inkscape:snap-nodes="true"
|
||||
inkscape:object-nodes="true" />
|
||||
<g
|
||||
id="g3078"
|
||||
transform="matrix(0.99997917,0,0,0.8,8.5000937,1)"
|
||||
style="fill:#808080;fill-opacity:1" />
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:12px;line-height:125%;font-family:Sans;-inkscape-font-specification:Sans;text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;"
|
||||
x="1.8066418"
|
||||
y="15.224604"
|
||||
id="text4100"
|
||||
sodipodi:linespacing="125%"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan4104"
|
||||
x="1.8066418"
|
||||
y="15.224604">title</tspan></text>
|
||||
</svg>
|
After Width: | Height: | Size: 2.5 KiB |
79
theme/toolbar_filter_url.svg
Normal file
@ -0,0 +1,79 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||
|
||||
<svg
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||
xmlns:cc="http://creativecommons.org/ns#"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
id="svg3347"
|
||||
version="1.1"
|
||||
inkscape:version="0.91 r13725"
|
||||
width="22"
|
||||
height="22"
|
||||
viewBox="0 0 22 22"
|
||||
sodipodi:docname="toolbar_filter_url.svg">
|
||||
<metadata
|
||||
id="metadata3353">
|
||||
<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 />
|
||||
</cc:Work>
|
||||
</rdf:RDF>
|
||||
</metadata>
|
||||
<defs
|
||||
id="defs3351" />
|
||||
<sodipodi:namedview
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#666666"
|
||||
borderopacity="1"
|
||||
objecttolerance="10"
|
||||
gridtolerance="10"
|
||||
guidetolerance="10"
|
||||
inkscape:pageopacity="0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:window-width="1920"
|
||||
inkscape:window-height="1058"
|
||||
id="namedview3349"
|
||||
showgrid="false"
|
||||
inkscape:zoom="32.000001"
|
||||
inkscape:cx="18.721089"
|
||||
inkscape:cy="11.958546"
|
||||
inkscape:window-x="1912"
|
||||
inkscape:window-y="-8"
|
||||
inkscape:window-maximized="1"
|
||||
inkscape:current-layer="svg3347"
|
||||
inkscape:snap-page="true"
|
||||
inkscape:snap-center="false"
|
||||
inkscape:snap-midpoints="false"
|
||||
inkscape:snap-bbox="true"
|
||||
inkscape:bbox-paths="true"
|
||||
inkscape:bbox-nodes="true"
|
||||
inkscape:snap-bbox-edge-midpoints="true"
|
||||
inkscape:snap-bbox-midpoints="true"
|
||||
inkscape:object-paths="true"
|
||||
inkscape:snap-nodes="true"
|
||||
inkscape:object-nodes="true" />
|
||||
<g
|
||||
id="g3078"
|
||||
transform="matrix(0.99997917,0,0,0.8,8.5000937,1)"
|
||||
style="fill:#808080;fill-opacity:1" />
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:12px;line-height:125%;font-family:Sans;-inkscape-font-specification:Sans;text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;"
|
||||
x="4.3613281"
|
||||
y="15.224603"
|
||||
id="text4100"
|
||||
sodipodi:linespacing="125%"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan4102"
|
||||
x="4.3613281"
|
||||
y="15.224603">url</tspan></text>
|
||||
</svg>
|
After Width: | Height: | Size: 2.5 KiB |
74
theme/toolbar_history.svg
Normal file
@ -0,0 +1,74 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||
|
||||
<svg
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||
xmlns:cc="http://creativecommons.org/ns#"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
id="svg3347"
|
||||
version="1.1"
|
||||
inkscape:version="0.91 r13725"
|
||||
width="22"
|
||||
height="22"
|
||||
viewBox="0 0 22 22"
|
||||
sodipodi:docname="toolbar_history.svg">
|
||||
<metadata
|
||||
id="metadata3353">
|
||||
<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 />
|
||||
</cc:Work>
|
||||
</rdf:RDF>
|
||||
</metadata>
|
||||
<defs
|
||||
id="defs3351" />
|
||||
<sodipodi:namedview
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#666666"
|
||||
borderopacity="1"
|
||||
objecttolerance="10"
|
||||
gridtolerance="10"
|
||||
guidetolerance="10"
|
||||
inkscape:pageopacity="0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:window-width="1920"
|
||||
inkscape:window-height="1058"
|
||||
id="namedview3349"
|
||||
showgrid="false"
|
||||
inkscape:zoom="25.27906"
|
||||
inkscape:cx="10.240121"
|
||||
inkscape:cy="13.335478"
|
||||
inkscape:window-x="1912"
|
||||
inkscape:window-y="-8"
|
||||
inkscape:window-maximized="1"
|
||||
inkscape:current-layer="svg3347"
|
||||
inkscape:snap-page="true"
|
||||
inkscape:snap-center="true"
|
||||
inkscape:snap-midpoints="true"
|
||||
inkscape:snap-bbox="true"
|
||||
inkscape:bbox-paths="true"
|
||||
inkscape:bbox-nodes="true"
|
||||
inkscape:snap-bbox-edge-midpoints="true"
|
||||
inkscape:snap-bbox-midpoints="true"
|
||||
inkscape:object-paths="true" />
|
||||
<circle
|
||||
style="opacity:1;fill:none;fill-opacity:0;stroke:#000000;stroke-width:1.39999998;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
id="path6623"
|
||||
cx="11.10825"
|
||||
cy="10.891744"
|
||||
r="6.4082494" />
|
||||
<path
|
||||
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1.39999998;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
d="m 11,6.9999935 0,4.0000005 3.383084,2.924113"
|
||||
id="path7165"
|
||||
inkscape:connector-curvature="0"
|
||||
sodipodi:nodetypes="ccc" />
|
||||
</svg>
|
After Width: | Height: | Size: 2.4 KiB |
77
theme/toolbar_move.svg
Normal file
@ -0,0 +1,77 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||
|
||||
<svg
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||
xmlns:cc="http://creativecommons.org/ns#"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
id="svg3347"
|
||||
version="1.1"
|
||||
inkscape:version="0.91 r13725"
|
||||
width="22"
|
||||
height="22"
|
||||
viewBox="0 0 22 22"
|
||||
sodipodi:docname="toolbar_move.svg">
|
||||
<metadata
|
||||
id="metadata3353">
|
||||
<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 />
|
||||
</cc:Work>
|
||||
</rdf:RDF>
|
||||
</metadata>
|
||||
<defs
|
||||
id="defs3351" />
|
||||
<sodipodi:namedview
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#666666"
|
||||
borderopacity="1"
|
||||
objecttolerance="10"
|
||||
gridtolerance="10"
|
||||
guidetolerance="10"
|
||||
inkscape:pageopacity="0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:window-width="1920"
|
||||
inkscape:window-height="1058"
|
||||
id="namedview3349"
|
||||
showgrid="false"
|
||||
inkscape:zoom="22.627417"
|
||||
inkscape:cx="6.8485787"
|
||||
inkscape:cy="11.817662"
|
||||
inkscape:window-x="1912"
|
||||
inkscape:window-y="-8"
|
||||
inkscape:window-maximized="1"
|
||||
inkscape:current-layer="svg3347"
|
||||
inkscape:snap-page="true"
|
||||
inkscape:snap-center="true"
|
||||
inkscape:snap-midpoints="true"
|
||||
inkscape:snap-bbox="true"
|
||||
inkscape:bbox-paths="true"
|
||||
inkscape:bbox-nodes="true"
|
||||
inkscape:snap-bbox-edge-midpoints="true"
|
||||
inkscape:snap-bbox-midpoints="true"
|
||||
inkscape:object-paths="true"
|
||||
inkscape:snap-intersection-paths="true"
|
||||
inkscape:object-nodes="true"
|
||||
inkscape:snap-smooth-nodes="true" />
|
||||
<path
|
||||
style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#cccccc;stroke-width:0;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
d="m 3,18.999994 9.200005,0 0,-3.074584 -2.063004,1.191076 0,-3.220492 -3.0935926,0 0,-2.773184 3.0935926,-0.0038 0,-2.6974189 2.063004,1.1910785 0,-3.612676 -9.200005,0 z"
|
||||
id="path7210"
|
||||
inkscape:connector-curvature="0"
|
||||
sodipodi:nodetypes="ccccccccccccc" />
|
||||
<path
|
||||
style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
d="m 8,2.9999936 12,0 0,14.0000004 -6.799995,0 0,-1.651934 4.466986,-2.579016 -4.466986,-2.579022 0,-5.1900284 -5.200005,0 z"
|
||||
id="path7229"
|
||||
inkscape:connector-curvature="0"
|
||||
sodipodi:nodetypes="cccccccccc" />
|
||||
</svg>
|
After Width: | Height: | Size: 2.8 KiB |
74
theme/toolbar_new.svg
Normal file
@ -0,0 +1,74 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||
|
||||
<svg
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||
xmlns:cc="http://creativecommons.org/ns#"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
id="svg3347"
|
||||
version="1.1"
|
||||
inkscape:version="0.91 r13725"
|
||||
width="22"
|
||||
height="22"
|
||||
viewBox="0 0 22 22"
|
||||
sodipodi:docname="toolbar_new.svg">
|
||||
<metadata
|
||||
id="metadata3353">
|
||||
<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 />
|
||||
</cc:Work>
|
||||
</rdf:RDF>
|
||||
</metadata>
|
||||
<defs
|
||||
id="defs3351" />
|
||||
<sodipodi:namedview
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#666666"
|
||||
borderopacity="1"
|
||||
objecttolerance="10"
|
||||
gridtolerance="10"
|
||||
guidetolerance="10"
|
||||
inkscape:pageopacity="0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:window-width="1920"
|
||||
inkscape:window-height="1028"
|
||||
id="namedview3349"
|
||||
showgrid="false"
|
||||
inkscape:zoom="22.627417"
|
||||
inkscape:cx="-2.2881438"
|
||||
inkscape:cy="11.718987"
|
||||
inkscape:window-x="-8"
|
||||
inkscape:window-y="-8"
|
||||
inkscape:window-maximized="1"
|
||||
inkscape:current-layer="svg3347"
|
||||
inkscape:snap-page="true"
|
||||
inkscape:snap-center="true"
|
||||
inkscape:snap-midpoints="true"
|
||||
inkscape:snap-bbox="true"
|
||||
inkscape:bbox-paths="true"
|
||||
inkscape:bbox-nodes="true"
|
||||
inkscape:snap-bbox-edge-midpoints="true"
|
||||
inkscape:snap-bbox-midpoints="true"
|
||||
inkscape:object-paths="true"
|
||||
inkscape:snap-intersection-paths="true"
|
||||
inkscape:object-nodes="true"
|
||||
inkscape:snap-smooth-nodes="true" />
|
||||
<g
|
||||
id="g3793"
|
||||
transform="translate(14.371042,-2.0030322)" />
|
||||
<path
|
||||
style="fill:#000000;fill-opacity:1;stroke:none"
|
||||
d="m 5.0000004,11.999994 4.9999996,0 0,5 2,0 0,-5 5,0 0,-2.0000004 -5,0 0,-4.9999999 -2,0 0,4.9999999 -4.9999996,0 z"
|
||||
id="path3877"
|
||||
inkscape:connector-curvature="0"
|
||||
sodipodi:nodetypes="ccccccccccccc" />
|
||||
</svg>
|
After Width: | Height: | Size: 2.3 KiB |
86
theme/toolbar_options.svg
Normal file
@ -0,0 +1,86 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||
|
||||
<svg
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||
xmlns:cc="http://creativecommons.org/ns#"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
id="svg3347"
|
||||
version="1.1"
|
||||
inkscape:version="0.91 r13725"
|
||||
width="22"
|
||||
height="22"
|
||||
viewBox="0 0 22 22"
|
||||
sodipodi:docname="toolbar_options.svg">
|
||||
<metadata
|
||||
id="metadata3353">
|
||||
<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 />
|
||||
</cc:Work>
|
||||
</rdf:RDF>
|
||||
</metadata>
|
||||
<defs
|
||||
id="defs3351" />
|
||||
<sodipodi:namedview
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#666666"
|
||||
borderopacity="1"
|
||||
objecttolerance="10"
|
||||
gridtolerance="10"
|
||||
guidetolerance="10"
|
||||
inkscape:pageopacity="0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:window-width="1920"
|
||||
inkscape:window-height="1058"
|
||||
id="namedview3349"
|
||||
showgrid="false"
|
||||
inkscape:zoom="22.627417"
|
||||
inkscape:cx="2.3078185"
|
||||
inkscape:cy="8.3551322"
|
||||
inkscape:window-x="1912"
|
||||
inkscape:window-y="-8"
|
||||
inkscape:window-maximized="1"
|
||||
inkscape:current-layer="svg3347"
|
||||
inkscape:snap-page="true"
|
||||
inkscape:snap-center="true"
|
||||
inkscape:snap-midpoints="true"
|
||||
inkscape:snap-bbox="true"
|
||||
inkscape:bbox-paths="true"
|
||||
inkscape:bbox-nodes="true"
|
||||
inkscape:snap-bbox-edge-midpoints="true"
|
||||
inkscape:snap-bbox-midpoints="true"
|
||||
inkscape:object-paths="true"
|
||||
inkscape:snap-intersection-paths="true"
|
||||
inkscape:object-nodes="true"
|
||||
inkscape:snap-smooth-nodes="true" />
|
||||
<rect
|
||||
style="color:#000000;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:bevel;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate"
|
||||
id="rect4133"
|
||||
width="16"
|
||||
height="4"
|
||||
x="3"
|
||||
y="2.9999936" />
|
||||
<rect
|
||||
style="color:#000000;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:bevel;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate"
|
||||
id="rect4133-1"
|
||||
width="13"
|
||||
height="4"
|
||||
x="6"
|
||||
y="9" />
|
||||
<rect
|
||||
style="color:#000000;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:bevel;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate"
|
||||
id="rect4133-1-2"
|
||||
width="10"
|
||||
height="4"
|
||||
x="9"
|
||||
y="15" />
|
||||
</svg>
|
After Width: | Height: | Size: 3.8 KiB |
71
theme/toolbar_pin.svg
Normal file
@ -0,0 +1,71 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||
|
||||
<svg
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||
xmlns:cc="http://creativecommons.org/ns#"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
id="svg3347"
|
||||
version="1.1"
|
||||
inkscape:version="0.91 r13725"
|
||||
width="22"
|
||||
height="22"
|
||||
viewBox="0 0 22 22"
|
||||
sodipodi:docname="toolbar_pin.svg">
|
||||
<metadata
|
||||
id="metadata3353">
|
||||
<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 />
|
||||
</cc:Work>
|
||||
</rdf:RDF>
|
||||
</metadata>
|
||||
<defs
|
||||
id="defs3351" />
|
||||
<sodipodi:namedview
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#666666"
|
||||
borderopacity="1"
|
||||
objecttolerance="10"
|
||||
gridtolerance="10"
|
||||
guidetolerance="10"
|
||||
inkscape:pageopacity="0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:window-width="1920"
|
||||
inkscape:window-height="1058"
|
||||
id="namedview3349"
|
||||
showgrid="false"
|
||||
inkscape:zoom="16"
|
||||
inkscape:cx="4.753406"
|
||||
inkscape:cy="12.081133"
|
||||
inkscape:window-x="1912"
|
||||
inkscape:window-y="-8"
|
||||
inkscape:window-maximized="1"
|
||||
inkscape:current-layer="svg3347"
|
||||
inkscape:snap-page="true"
|
||||
inkscape:snap-center="true"
|
||||
inkscape:snap-midpoints="true"
|
||||
inkscape:snap-bbox="true"
|
||||
inkscape:bbox-paths="true"
|
||||
inkscape:bbox-nodes="true"
|
||||
inkscape:snap-bbox-edge-midpoints="true"
|
||||
inkscape:snap-bbox-midpoints="true"
|
||||
inkscape:object-paths="true"
|
||||
inkscape:snap-intersection-paths="true"
|
||||
inkscape:object-nodes="true"
|
||||
inkscape:snap-smooth-nodes="true" />
|
||||
<path
|
||||
id="path7434-5"
|
||||
style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
d="m 18.571087,8.34765 -0.705226,0.705226 -2.350753,0 -2.649941,2.649941 0,3.93217 -0.918931,0.91893 -2.714052,-2.714052 -3.8253178,3.825318 -1.5416164,0.07556 0.1097934,-1.507379 3.8253179,-3.825317 -2.714052,-2.714052 0.9189303,-0.918931 3.9321696,0 2.649941,-2.6499414 0,-2.3507532 0.705226,-0.7052266 z"
|
||||
inkscape:connector-curvature="0"
|
||||
sodipodi:nodetypes="cccccccccccccccccc" />
|
||||
</svg>
|
After Width: | Height: | Size: 2.5 KiB |
72
theme/toolbar_search.svg
Normal file
@ -0,0 +1,72 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||
|
||||
<svg
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||
xmlns:cc="http://creativecommons.org/ns#"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
id="svg3347"
|
||||
version="1.1"
|
||||
inkscape:version="0.91 r13725"
|
||||
width="22"
|
||||
height="22"
|
||||
viewBox="0 0 22 22"
|
||||
sodipodi:docname="toolbar_search.svg">
|
||||
<metadata
|
||||
id="metadata3353">
|
||||
<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 />
|
||||
</cc:Work>
|
||||
</rdf:RDF>
|
||||
</metadata>
|
||||
<defs
|
||||
id="defs3351" />
|
||||
<sodipodi:namedview
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#666666"
|
||||
borderopacity="1"
|
||||
objecttolerance="10"
|
||||
gridtolerance="10"
|
||||
guidetolerance="10"
|
||||
inkscape:pageopacity="0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:window-width="1920"
|
||||
inkscape:window-height="1058"
|
||||
id="namedview3349"
|
||||
showgrid="false"
|
||||
inkscape:zoom="16"
|
||||
inkscape:cx="3.140617"
|
||||
inkscape:cy="12.732797"
|
||||
inkscape:window-x="1912"
|
||||
inkscape:window-y="-8"
|
||||
inkscape:window-maximized="1"
|
||||
inkscape:current-layer="svg3347"
|
||||
inkscape:snap-page="true"
|
||||
inkscape:snap-center="true"
|
||||
inkscape:snap-midpoints="true"
|
||||
inkscape:snap-bbox="true"
|
||||
inkscape:bbox-paths="true"
|
||||
inkscape:bbox-nodes="true"
|
||||
inkscape:snap-bbox-edge-midpoints="true"
|
||||
inkscape:snap-bbox-midpoints="true"
|
||||
inkscape:object-paths="true" />
|
||||
<g
|
||||
id="g2994"
|
||||
transform="translate(2.6985113,22.999993)"
|
||||
style="fill:#000000;fill-opacity:1;stroke:none">
|
||||
<path
|
||||
style="fill:#000000;fill-opacity:1;stroke:none"
|
||||
d="m 14.235553,-4.1488458 c -0.113331,-0.10039 -0.860918,-0.914203 -1.661303,-1.808473 -2.509101,-2.803415 -3.9043677,-4.3349272 -3.9732487,-4.3612252 -0.03655,-0.01395 -0.31727,0.09688 -0.623829,0.246291 -0.811515,0.3955252 -1.582163,0.5419822 -2.612853,0.4965592 -0.984815,-0.0434 -1.595512,-0.218038 -2.435351,-0.6964162 -0.648673,-0.36949 -1.516159,-1.202891 -1.855812,-1.782897 -0.858412,-1.465856 -1.010041,-3.205698 -0.407689,-4.67794 0.293639,-0.7177 0.557895,-1.119546 1.104715,-1.679905 1.129624,-1.157592 2.466413,-1.667511 4.133998,-1.576918 1.327756,0.07213 2.468067,0.58219 3.420256,1.529871 0.8506607,0.846635 1.3199647,1.780067 1.5182297,3.019713 0.164298,1.02727 -0.08378,2.362732 -0.601604,3.238622 -0.109567,0.18533 -0.199213,0.382496 -0.199213,0.438146 0,0.05565 1.376607,1.377875 3.059128,2.9382762 1.682519,1.560401 3.098435,2.908649 3.146478,2.996106 0.128596,0.234092 0.02556,0.598048 -0.286675,1.012594 -0.542254,0.719944 -1.324438,1.022619 -1.725227,0.667596 z M 6.6596693,-10.717882 c 0.790526,-0.196973 1.321864,-0.496308 1.926372,-1.085242 0.824277,-0.803041 1.21103,-1.722794 1.22812,-2.920645 0.0264,-1.850334 -1.127518,-3.43042 -2.964081,-4.058784 -0.75255,-0.257479 -1.978756,-0.240014 -2.678928,0.03816 -1.776899,0.705943 -2.791917,2.153948 -2.791917,3.982892 0,1.562575 0.872958,2.95571 2.31454,3.693722 0.986632,0.505103 1.907161,0.613702 2.965894,0.3499 z"
|
||||
id="path2996"
|
||||
inkscape:connector-curvature="0" />
|
||||
</g>
|
||||
</svg>
|
After Width: | Height: | Size: 3.4 KiB |
70
theme/toolbar_settings.svg
Normal file
@ -0,0 +1,70 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||
|
||||
<svg
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||
xmlns:cc="http://creativecommons.org/ns#"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
id="svg3347"
|
||||
version="1.1"
|
||||
inkscape:version="0.91 r13725"
|
||||
width="22"
|
||||
height="22"
|
||||
viewBox="0 0 22 22"
|
||||
sodipodi:docname="toolbar_settings.svg">
|
||||
<metadata
|
||||
id="metadata3353">
|
||||
<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 />
|
||||
</cc:Work>
|
||||
</rdf:RDF>
|
||||
</metadata>
|
||||
<defs
|
||||
id="defs3351" />
|
||||
<sodipodi:namedview
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#666666"
|
||||
borderopacity="1"
|
||||
objecttolerance="10"
|
||||
gridtolerance="10"
|
||||
guidetolerance="10"
|
||||
inkscape:pageopacity="0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:window-width="1920"
|
||||
inkscape:window-height="1058"
|
||||
id="namedview3349"
|
||||
showgrid="false"
|
||||
inkscape:zoom="17.875"
|
||||
inkscape:cx="12.11279"
|
||||
inkscape:cy="13.006423"
|
||||
inkscape:window-x="1912"
|
||||
inkscape:window-y="-8"
|
||||
inkscape:window-maximized="1"
|
||||
inkscape:current-layer="svg3347"
|
||||
inkscape:snap-page="true"
|
||||
inkscape:snap-center="true"
|
||||
inkscape:snap-midpoints="true"
|
||||
inkscape:snap-bbox="true"
|
||||
inkscape:bbox-paths="true"
|
||||
inkscape:bbox-nodes="true"
|
||||
inkscape:snap-bbox-edge-midpoints="true"
|
||||
inkscape:snap-bbox-midpoints="true"
|
||||
inkscape:object-paths="true"
|
||||
inkscape:snap-intersection-paths="true"
|
||||
inkscape:object-nodes="true"
|
||||
inkscape:snap-smooth-nodes="true" />
|
||||
<path
|
||||
style="opacity:1;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
d="m 10.979973,3.9999947 c -0.340804,-3e-7 -0.675368,0.1770488 -0.898591,0.5268354 l 0,1.6734773 C 10.092552,7.0200438 8.9471023,7.5123666 8.2641513,6.9477209 L 7.0739289,5.7646199 C 6.2607992,5.5838734 5.6290296,6.2104494 5.7725219,7.0570985 l 1.192045,1.184924 C 7.6449018,8.9913461 7.189173,10.08276 6.2136151,10.048577 l -1.6859965,0 c -0.7034925,0.44396 -0.7034897,1.328834 0,1.826605 l 1.6859965,0 c 0.9976647,-0.02641 1.4289992,1.134544 0.7509518,1.806554 l -1.192045,1.184924 c -0.1817593,0.8086 0.450014,1.435172 1.301407,1.292479 l 1.1902224,-1.184925 c 0.636629,-0.697086 1.9509177,-0.138577 1.8190527,0.825802 l -0.0019,1.6753 c 0.499594,0.699571 1.389011,0.699574 1.835458,0 l 0,-1.6753 c -0.115161,-1.025274 0.957622,-1.496604 1.819053,-0.825802 l 1.190222,1.184925 c 0.851393,0.142693 1.483167,-0.483879 1.301407,-1.292479 l -1.19201,-1.184924 C 14.44529,12.997111 14.7706,11.925028 15.786385,11.875182 l 1.685997,0 c 0.703489,-0.497771 0.703492,-1.382645 0,-1.826605 l -1.685997,0 C 14.951598,9.9883866 14.531211,8.8551851 15.035477,8.2420225 l 1.192045,-1.184924 C 16.371014,6.2104494 15.739245,5.5838734 14.926115,5.7646199 l -1.190222,1.183101 C 13.01239,7.6325599 11.943596,7.1122758 11.918662,6.2003074 l 0,-1.6734773 C 11.668381,4.1770447 11.320775,3.9999951 10.979973,3.9999947 Z m 0.02005,4.9766804 a 2.0228891,2.0231791 0 0 1 2.0232,2.0234869 2.0228891,2.0231791 0 0 1 -2.023196,2.023486 2.0228891,2.0231791 0 0 1 -2.0231957,-2.023486 2.0228891,2.0231791 0 0 1 2.0231957,-2.0234869 z"
|
||||
id="path7516"
|
||||
inkscape:connector-curvature="0" />
|
||||
</svg>
|
After Width: | Height: | Size: 3.6 KiB |
73
theme/toolbar_tools.svg
Normal file
@ -0,0 +1,73 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||
|
||||
<svg
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||
xmlns:cc="http://creativecommons.org/ns#"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
id="svg3347"
|
||||
version="1.1"
|
||||
inkscape:version="0.91 r13725"
|
||||
width="22"
|
||||
height="22"
|
||||
viewBox="0 0 22 22"
|
||||
sodipodi:docname="toolbar_tools.svg">
|
||||
<metadata
|
||||
id="metadata3353">
|
||||
<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 />
|
||||
</cc:Work>
|
||||
</rdf:RDF>
|
||||
</metadata>
|
||||
<defs
|
||||
id="defs3351" />
|
||||
<sodipodi:namedview
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#666666"
|
||||
borderopacity="1"
|
||||
objecttolerance="10"
|
||||
gridtolerance="10"
|
||||
guidetolerance="10"
|
||||
inkscape:pageopacity="0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:window-width="1920"
|
||||
inkscape:window-height="1058"
|
||||
id="namedview3349"
|
||||
showgrid="false"
|
||||
inkscape:zoom="22.627417"
|
||||
inkscape:cx="12.34313"
|
||||
inkscape:cy="10.912764"
|
||||
inkscape:window-x="1912"
|
||||
inkscape:window-y="-8"
|
||||
inkscape:window-maximized="1"
|
||||
inkscape:current-layer="svg3347"
|
||||
inkscape:snap-page="true"
|
||||
inkscape:snap-center="true"
|
||||
inkscape:snap-midpoints="true"
|
||||
inkscape:snap-bbox="true"
|
||||
inkscape:bbox-paths="true"
|
||||
inkscape:bbox-nodes="true"
|
||||
inkscape:snap-bbox-edge-midpoints="true"
|
||||
inkscape:snap-bbox-midpoints="true"
|
||||
inkscape:object-paths="true" />
|
||||
<g
|
||||
id="g3777"
|
||||
transform="translate(25.45274,-8.4700638)"
|
||||
style="fill:#000000;fill-opacity:1">
|
||||
<path
|
||||
style="fill:#000000;fill-opacity:1"
|
||||
d="m -9.5531924,27.44376 c 0.284107,-0.03636 0.58111,-0.103982 0.58111,-0.132317 0,-0.01376 -0.422184,-0.436012 -0.938187,-0.938339 -0.5160026,-0.502324 -0.9522186,-0.939536 -0.9693676,-0.971578 -0.03573,-0.06676 0.405788,-1.782065 0.477942,-1.856835 0.04369,-0.04527 1.6770796,-0.498161 1.7966526,-0.498161 0.04591,0 0.382528,0.309914 1.015842,0.935257 0.520949,0.51439 0.960186,0.935256 0.976085,0.935256 0.04213,0 0.09667,-0.243211 0.140004,-0.624278 0.07039,-0.618988 -0.04213,-1.251709 -0.329575,-1.853331 -0.561113,-1.174397 -1.686327,-1.917847 -2.989828,-1.975436 -0.4604506,-0.02034 -0.7484286,0.01369 -1.2095326,0.142939 l -0.307056,0.08607 c -1.453997,-1.459551 -2.962174,-2.923567 -4.346014,-4.422987 0.0081,-0.0361 0.05563,-0.213304 0.105618,-0.393792 0.08219,-0.296741 0.09111,-0.381574 0.09323,-0.886033 0.002,-0.485748 -0.0077,-0.595771 -0.07491,-0.851016 -0.275808,-1.046505 -0.944988,-1.867052 -1.891362,-2.319183 -0.601645,-0.287437 -1.234391,-0.399948 -1.853404,-0.329562 -0.37574,0.04272 -0.624302,0.09778 -0.624302,0.138274 0,0.01494 0.420882,0.454429 0.935293,0.976625 0.597519,0.606561 0.935293,0.973172 0.935293,1.015142 0,0.117798 -0.453628,1.755397 -0.498164,1.798373 -0.0744,0.0718 -1.790166,0.513694 -1.856285,0.478091 -0.03169,-0.01706 -0.468758,-0.453264 -0.971256,-0.96933 -0.502498,-0.516066 -0.924536,-0.938302 -0.937861,-0.938302 -0.03566,0 -0.09765,0.295181 -0.139778,0.665622 -0.06934,0.609804 0.04477,1.24668 0.330546,1.844803 0.449155,0.940071 1.284052,1.623196 2.311254,1.891099 0.546091,0.142426 1.343836,0.11805 1.901479,-0.0581 0.140992,-0.04453 0.281635,-0.07294 0.312541,-0.06312 0.08352,0.02654 4.33892,4.294168 4.338431,4.350902 -2.3e-4,0.02675 -0.0358,0.159409 -0.07906,0.294799 -0.183194,0.573474 -0.198194,1.377849 -0.03671,1.968919 0.162904,0.596294 0.534746,1.213947 0.98359,1.633801 0.755334,0.706549 1.813595,1.054228 2.8177356,0.925733 z"
|
||||
id="path3781"
|
||||
inkscape:connector-curvature="0"
|
||||
sodipodi:nodetypes="ssscsssssssscccccscsssscsssssccccsss" />
|
||||
</g>
|
||||
</svg>
|
After Width: | Height: | Size: 4.0 KiB |
68
theme/toolbar_undo.svg
Normal file
@ -0,0 +1,68 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||
|
||||
<svg
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||
xmlns:cc="http://creativecommons.org/ns#"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
id="svg3347"
|
||||
version="1.1"
|
||||
inkscape:version="0.91 r13725"
|
||||
width="22"
|
||||
height="22"
|
||||
viewBox="0 0 22 22"
|
||||
sodipodi:docname="toolbar_undo.svg">
|
||||
<metadata
|
||||
id="metadata3353">
|
||||
<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 />
|
||||
</cc:Work>
|
||||
</rdf:RDF>
|
||||
</metadata>
|
||||
<defs
|
||||
id="defs3351" />
|
||||
<sodipodi:namedview
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#666666"
|
||||
borderopacity="1"
|
||||
objecttolerance="10"
|
||||
gridtolerance="10"
|
||||
guidetolerance="10"
|
||||
inkscape:pageopacity="0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:window-width="1920"
|
||||
inkscape:window-height="1058"
|
||||
id="namedview3349"
|
||||
showgrid="false"
|
||||
inkscape:zoom="16"
|
||||
inkscape:cx="8.2700788"
|
||||
inkscape:cy="13.677086"
|
||||
inkscape:window-x="1912"
|
||||
inkscape:window-y="-8"
|
||||
inkscape:window-maximized="1"
|
||||
inkscape:current-layer="svg3347"
|
||||
inkscape:snap-page="true"
|
||||
inkscape:snap-center="true"
|
||||
inkscape:snap-midpoints="true"
|
||||
inkscape:snap-bbox="true"
|
||||
inkscape:bbox-paths="true"
|
||||
inkscape:bbox-nodes="true"
|
||||
inkscape:snap-bbox-edge-midpoints="true"
|
||||
inkscape:snap-bbox-midpoints="true"
|
||||
inkscape:object-paths="true" />
|
||||
<path
|
||||
style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
d="m 8.144957,11.242063 c 1.1067867,-6.8750407 12.655391,-4.8267375 6.215441,2.136305 l 1.944545,1.502602 C 25.478398,3.5563281 6.281537,1.3424514 5.8923543,11.242063 l -2.1333445,0 3.4469131,4.758928 3.2706001,-4.758928 z"
|
||||
id="path4816"
|
||||
inkscape:connector-curvature="0"
|
||||
sodipodi:nodetypes="cccccccc" />
|
||||
</svg>
|
After Width: | Height: | Size: 2.3 KiB |