aboutsummaryrefslogtreecommitdiffstats
path: root/src/ephy-extensions-manager.c
Commit message (Collapse)AuthorAgeFilesLines
* Correct FSF address. Bug #409075, patch by John Millikin.RELEASE_2_18_0GNOME_2_18_BRANCHPOINTChristian Persch2007-03-121-1/+1
| | | | | | | | | | 2007-03-11 Christian Persch <chpe@gnome.org> * *: Correct FSF address. Bug #409075, patch by John Millikin. svn path=/trunk/; revision=6952
* Utilize GLib's new g_timeout_add_seconds to reduce context switches andDiego Escalante Urrelo2007-01-031-2/+4
| | | | | | | | | | | | | | | | | | | 2007-01-03 Diego Escalante Urrelo <diegoe@svn.gnome.org> * embed/ephy-favicon-cache.c: (ephy_favicon_cache_init): * embed/ephy-history.c: (ephy_history_init): * lib/Makefile.am: * lib/ephy-glib-compat.h: * src/bookmarks/ephy-bookmarks.c: (ephy_bookmarks_save_delayed): * src/ephy-dbus.c: (session_filter_func), (system_filter_func): * src/ephy-extensions-manager.c: (reload_cb): * src/ephy-session.c: (confirm_shutdown_cb): Utilize GLib's new g_timeout_add_seconds to reduce context switches and improve CPU/power efficiency. Patch by Chris Wilson. svn path=/trunk/; revision=6783
* Use UTF-8 copyright symbolChristian Persch2006-09-131-4/+4
|
* Remove some unnecessary static data.Christian Persch2006-09-071-2/+2
| | | | | | | | 2006-09-06 Christian Persch <chpe@cvs.gnome.org> * *.c *.cpp: Remove some unnecessary static data.
* Add an 'enabled' flag in the EphyExtensionInfo struct to track whetherCrispin Flowerday2006-02-081-4/+16
| | | | | | | | | | | | 2006-02-07 Crispin Flowerday <gnome@flowerday.cx> * src/ephy-extensions-manager.c: (load_extension), (unload_extension), (sync_loaded_extensions): * src/ephy-extensions-manager.h: Add an 'enabled' flag in the EphyExtensionInfo struct to track whether gconf says it should be loaded. The 'active' flag is whether it is actually loaded.
* Fix number of /'s in URI.Christian Persch2006-01-171-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2006-01-17 Christian Persch <chpe@cvs.gnome.org> * data/chrome/epiphany.manifest.in: Fix number of /'s in URI. * data/epiphany.schemas.in: Add new entries. * embed/mozilla/EphyAboutModule.cpp: Fix title. * data/glade/prefs-dialog.glade: * embed/ephy-embed-prefs.h: * embed/mozilla/mozilla-embed-single.cpp: * embed/mozilla/mozilla-notifiers.cpp: * embed/mozilla/mozilla-notifiers.h: * lib/eel-gconf-extensions.c: (eel_gconf_unset_key), (eel_gconf_notify): * lib/eel-gconf-extensions.h: * lib/egg/egg-editable-toolbar.c: (popup_context_menu_cb), (button_press_event_cb), (egg_editable_toolbar_set_ui_manager), (egg_editable_toolbar_set_selected): * lib/ephy-dialog.c: (set_value_from_pref), (set_pref_from_value), (set_value_from_togglebutton), (strcmp_with_null), (get_index_from_value), (compare_values), (set_togglebutton_from_value), (set_pref_from_info_and_emit), (spinbutton_changed_cb), (save_info): * lib/ephy-dialog.h: * lib/ephy-file-helpers.c: (ephy_file_monitor_timeout_cb), (ephy_file_monitor_cb), (ephy_file_monitor_add), (ephy_file_monitor_cancel): * lib/ephy-file-helpers.h: * src/ephy-extensions-manager.c: (ephy_extensions_manager_load_file): * src/ephy-window.c: * src/popup-commands.c: (popup_cmd_bookmark_link): * src/prefs-dialog.c: (prefs_dialog_finalize), (setup_font_combo), (fonts_language_changed_cb), (font_prefs_dialog_response_cb), (row_is_separator), (setup_fonts_dialog), (font_prefs_button_clicked_cb), (css_checkbox_toggled), (css_edit_button_clicked_cb), (prefs_dialog_init): Rework font prefs, and add user stylesheet setting. * src/bookmarks/ephy-bookmark-action-group.c: (node_added_cb): * src/bookmarks/ephy-bookmarks.c: (ephy_bookmarks_get_local): * src/window-commands.c: (window_cmd_file_bookmark_page): Some build fixes.
* Don't warn when reading a .xml when we previously read the .ephy-extensionChristian Persch2005-11-191-15/+70
| | | | | | | | | | 2005-11-18 Christian Persch <chpe@cvs.gnome.org> * src/ephy-extensions-manager.c: Don't warn when reading a .xml when we previously read the .ephy-extension for this identifier. Allows .xml and .ephy-extension to co-exist in ~/.gnome2/epiphany/extensions.
* More curly quotes.Christian Persch2005-11-011-1/+0
| | | | | | | | | | | | | | | | | | | | 2005-11-01 Christian Persch <chpe@cvs.gnome.org> * embed/mozilla/ContentHandler.cpp: * embed/mozilla/GtkNSSClientAuthDialogs.cpp: * embed/mozilla/GtkNSSDialogs.cpp: * embed/print-dialog.c: (ephy_print_verify_postscript): * lib/ephy-gui.c: (ephy_gui_check_location_writable): * src/bookmarks/ephy-bookmark-properties.c: (update_window_title): * src/bookmarks/ephy-bookmarks-editor.c: (delete_topic_dialog_construct), (add_bookmarks_source), (import_bookmarks): * src/bookmarks/ephy-bookmarks.c: (redirect_cb): * src/bookmarks/ephy-new-bookmark.c: (duplicate_dialog_construct): * src/ephy-extensions-manager.c: (dir_changed_cb): * src/ephy-tab.c: (update_net_state_message): More curly quotes.
* Load the key files and xml files directly from disc, instead of gettingChristian Persch2005-10-221-109/+204
| | | | | | | | | | | | | | | | | | | 2005-10-21 Christian Persch <chpe@cvs.gnome.org> * src/ephy-extensions-manager.c: (ephy_extensions_manager_parse_keyfile), (ephy_extensions_manager_load_ini_file), (ephy_extensions_manager_load_xml_file), (path_to_identifier), (ephy_extensions_manager_load_file), (reload_sync_cb), (reload_cb), (schedule_load_from_monitor), (dir_changed_cb), (cancel_timeout), (ephy_extensions_manager_init), (ephy_extensions_manager_dispose), (ephy_extensions_manager_class_init): Load the key files and xml files directly from disc, instead of getting their contents and parsing from memory. When a file changes, schedule a reload instead of processing it immediately, to cope with multiple changes (CREATED + CHANGED) in a row.
* Expose the extension description keyfile directly to the loaders.Christian Persch2005-10-211-93/+42
| | | | | | | | | | | | | | | | | 2005-10-21 Christian Persch <chpe@cvs.gnome.org> * lib/ephy-loader.c: (ephy_loader_get_object): * lib/ephy-loader.h: * lib/ephy-module.c: (ephy_module_load), (ephy_module_new): * lib/ephy-module.h: * lib/ephy-shlib-loader.c: (impl_get_object), (ephy_shlib_loader_class_init): * src/ephy-extensions-manager.c: (free_extension_info), (ephy_extensions_manager_load_ini_string), (get_loader_for_type), (load_extension): * src/ephy-python-loader.c: (impl_get_object): Expose the extension description keyfile directly to the loaders.
* A data/ephy-xml2ini.xsl:Christian Persch2005-10-181-357/+73
| | | | | | | | | | | 2005-10-16 Christian Persch <chpe@cvs.gnome.org> * data/Makefile.am: A data/ephy-xml2ini.xsl: * src/ephy-extensions-manager.c: Remove .xml parsing code and translate the .xml files to the new format with XSLT instead.
* Don't crash if the Authors key is missing, or there are no keys in theCrispin Flowerday2005-09-241-20/+27
| | | | | | | | | | 2005-09-23 Crispin Flowerday <gnome@flowerday.cx> * src/ephy-extensions-manager.c: (ephy_extensions_manager_load_ini_string): Don't crash if the Authors key is missing, or there are no keys in the Loader section
* s/DOT_INIT/DOT_INI/g.Christian Persch2005-09-241-6/+6
| | | | | | | | 2005-09-23 Christian Persch <chpe@cvs.gnome.org> * src/ephy-extensions-manager.c: s/DOT_INIT/DOT_INI/g.
* Don't read unused variables, and use a #define for the keyfile extension.Christian Persch2005-09-241-37/+11
| | | | | | | | | | | | 2005-09-23 Christian Persch <chpe@cvs.gnome.org> * src/epphy-extensions-manager.c: (free_extension_info), (ephy_extensions_manager_load_xml_string), (path_to_identifier), (ephy_extensions_manager_load_file), (load_file_from_monitor), (dir_changed_cb), (ephy_extensions_manager_load_dir): Don't read unused variables, and use a #define for the keyfile extension.
* R data/epiphany-extension.xsd:Christian Persch2005-09-241-99/+1
| | | | | | | | | | | | | | 2005-09-23 Christian Persch <chpe@cvs.gnome.org> * data/Makefile.am: R data/epiphany-extension.xsd: * src/ephy-extensions-manager.c: (ephy_extensions_manager_load_xml_string), (ephy_extensions_manager_startup), (ephy_extensions_manager_finalize): Since the .xml format is deprecated, remove the (already #if 0'd) schema validation code.
* Add support for extension description files in the keyfile format, usingCrispin Flowerday2005-09-241-42/+218
| | | | | | | | | | | | | | | | | 2005-09-23 Crispin Flowerday <gnome@flowerday.cx> * data/Makefile.am: * data/epiphany.m4: * src/ephy-extensions-manager.c: (free_extension_info), (ephy_extensions_manager_load_xml_string), (ephy_extensions_manager_load_ini_string), (path_to_identifier), (ephy_extensions_manager_load_file), (load_extension), (load_file_from_monitor), (dir_changed_cb), (ephy_extensions_manager_load_dir): Add support for extension description files in the keyfile format, using the extension .ephy-extension. Also included is a m4 macro to help do the translation of these files.
* Fix compiler warning.Christian Persch2005-07-041-5/+5
| | | | | | | | 2005-07-04 Christian Persch <chpe@cvs.gnome.org> * src/ephy-extensions-manager.c: Fix compiler warning.
* EphyCookie's expires field is now of time_t type (fixes gcc 4.0 warning).Jean-François Rameau2005-07-041-5/+5
| | | | | | | | | | | | | | | | | | | | | | | 2005-07-03 Jean-François Rameau <jframeau@cvs.gnome.org> * embed/ephy-cookie-manager.h: EphyCookie's expires field is now of time_t type (fixes gcc 4.0 warning). * embed/ephy-favicon-cache.c: * lib/ephy-file-helpers.c: * lib/ephy-langs.c: * lib/ephy-node-db.c: * lib/ephy-node.c: * lib/ephy-state.c: * lib/egg/eggtraymanager.c: * src/ephy-extensions-manager.c: * src/ephy-main.c: * src/ephy-notebook.c: * src/ephy-session.c: * src/ephy-window.c: Fixes more signed/unsigned problems with gcc 4.0.
* Common helper function to unref a GObject from idle.Christian Persch2005-06-111-9/+2
| | | | | | | | | | | | | | | | | | | | | | | | 2005-06-10 Christian Persch <chpe@cvs.gnome.org> * lib/Makefile.am: * lib/ephy-object-helpers.c: * lib/ephy-object-helpers.h: Common helper function to unref a GObject from idle. * embed/downloader-view.c: (downloader_view_finalize): * embed/mozilla/mozilla-embed-find.cpp: * embed/mozilla/mozilla-embed-persist.cpp: * embed/mozilla/mozilla-embed.cpp: * src/ephy-extensions-manager.c: (unload_extension): * src/ephy-main.c: (main): * src/ephy-shell.c: (toolwindow_hide_cb): * src/ephy-window.c: (ephy_window_finalize): Always unref the shell from idle, never directly. That's because in case we hold the last reference, we would end up terminating embedding/XPCOM from a mozilla callback. Fixes bug #151037, and moz#236688.
* Version 1.7.1.Release171Christian Persch2005-06-051-3/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2005-06-05 Christian Persch <chpe@cvs.gnome.org> Version 1.7.1. * Makefile.am: Add --enable-python to distcheck configure flags. * NEWS: * configure.ac: Updated for version 1.7.1. * embed/mozilla/EphyBrowser.cpp: * embed/mozilla/EventContext.cpp: Fix warnings. * src/ephy-extensions-manager.c: (get_loader_for_type), (load_extension): Fix --disable-python case. * src/Makefile.am: Fix make distcheck.
* A README.Python A m4/.cvsignore: A m4/python.m4:Christian Persch2005-05-211-0/+18
| | | | | | | | | | | | | | | | | | | | | | 2005-05-21 Christian Persch <chpe@cvs.gnome.org> * Makefile.am: * configure.ac: A README.Python A m4/.cvsignore: A m4/python.m4: * src/Makefile.am: * src/ephy-extensions-manager.c: (get_loader_for_type): A src/ephy-python-extension.c: A src/ephy-python-extension.h: A src/ephy-python-loader.c: A src/ephy-python-loader.h: A src/ephy-python.c: A src/ephy-python.h: A src/epiphany.defs: A src/epiphany.override: Merge Pyphany.
* Add ; to all LOG statements, and adapt ephy-debug.h for non-GNUC-varargsChristian Persch2005-01-291-14/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2005-01-28 Christian Persch <chpe@cvs.gnome.org> * doc/reference/tmpl/ephy-embed.sgml: * embed/ephy-embed-persist.c: (ephy_embed_persist_init), (ephy_embed_persist_finalize): * embed/ephy-embed-shell.c: (ephy_embed_shell_finalize): * embed/ephy-encodings.c: (ephy_encodings_finalize), (ephy_encodings_init): * embed/ephy-favicon-cache.c: (ephy_favicon_cache_finalize), (favicon_download_completed_cb), (favicon_download_cancelled_cb), (ephy_favicon_cache_download), (ephy_favicon_cache_get): * embed/ephy-history.c: (ephy_history_set_enabled), (ephy_history_save), (ephy_history_finalize), (ephy_history_host_visited), (ephy_history_set_page_title), (ephy_history_set_icon), (ephy_history_clear): * embed/mozilla/ContentHandler.cpp: * embed/mozilla/EphyBrowser.cpp: * embed/mozilla/EphyContentPolicy.cpp: * embed/mozilla/EphyHeaderSniffer.cpp: * embed/mozilla/EphyHistoryListener.cpp: * embed/mozilla/EphySidebar.cpp: * embed/mozilla/EphySingle.cpp: * embed/mozilla/FilePicker.cpp: * embed/mozilla/GtkNSSClientAuthDialogs.cpp: * embed/mozilla/GtkNSSKeyPairDialogs.cpp: * embed/mozilla/MozDownload.cpp: * embed/mozilla/PrintingPromptService.cpp: * embed/mozilla/mozilla-download.cpp: * embed/mozilla/mozilla-embed-event.cpp: * lib/ephy-dbus.c: (session_filter_func), (system_filter_func), (ephy_dbus_connect_to_system_bus), (ephy_dbus_connect_to_session_bus), (path_message_func), (ephy_dbus_startup), (ephy_dbus_shutdown), (ephy_dbus_init), (ephy_dbus_finalize): * lib/ephy-debug.h: * lib/ephy-file-chooser.c: (ephy_file_chooser_finalize): * lib/ephy-file-helpers.c: (ephy_file_helpers_shutdown): * lib/ephy-langs.c: (load_iso_entries): * lib/ephy-module.c: (ephy_module_load), (ephy_module_unload), (ephy_module_new_object), (ephy_module_init), (ephy_module_finalize): * lib/ephy-node-db.c: (ephy_node_db_load_from_file), (ephy_node_db_write_to_xml_valist): * lib/ephy-shlib-loader.c: (ephy_shlib_loader_init), (ephy_shlib_loader_finalize): * lib/widgets/ephy-location-entry.c: (entry_style_set_cb), (entry_realize_cb), (ephy_location_entry_construct_contents), (ephy_location_entry_init): * lib/widgets/ephy-spinner.c: (ephy_spinner_cache_load), (ephy_spinner_cache_get_images), (ephy_spinner_cache_init), (ephy_spinner_cache_finalize): * lib/widgets/ephy-tree-model-node.c: (ephy_tree_model_node_update_node): * lib/widgets/ephy-tree-model-sort.c: (each_property_get_data_binder): * src/bookmarks/ephy-bookmark-action.c: (create_tool_item), (connect_proxy), (ephy_bookmark_action_finalize): * src/bookmarks/ephy-bookmark-properties.c: (ephy_bookmark_properties_set_bookmark), (set_window_icon): * src/bookmarks/ephy-bookmarks-editor.c: (ephy_bookmarks_editor_update_menu), (provide_favicon): * src/bookmarks/ephy-bookmarks-export.c: (ephy_bookmarks_export_rdf), (ephy_bookmarks_export_mozilla): * src/bookmarks/ephy-bookmarks-import.c: (ephy_bookmarks_import): * src/bookmarks/ephy-bookmarks-menu.c: (ephy_bookmarks_menu_rebuild), (do_update_cb), (bookmarks_tree_changed_cb), (topics_added_cb), (topics_removed_cb), (topic_child_changed_cb), (bookmark_added_cb), (bookmark_removed_cb), (activate_cb), (ephy_bookmarks_menu_finalize): * src/bookmarks/ephy-bookmarks.c: (ephy_bookmarks_get_toolbars_model), (ephy_bookmarks_save), (ephy_bookmarks_finalize), (ephy_bookmarks_find_keyword), (ephy_bookmarks_set_keyword), (ephy_bookmarks_unset_keyword): * src/bookmarks/ephy-bookmarksbar-model.c: (save_changes_idle), (load_toolbars), (ephy_bookmarksbar_model_init), (ephy_bookmarksbar_model_dispose), (ephy_bookmarksbar_model_finalize): * src/bookmarks/ephy-bookmarksbar.c: (ephy_bookmarksbar_action_request), (ephy_bookmarksbar_finalize): * src/bookmarks/ephy-favorites-menu.c: (ephy_favorites_menu_rebuild): * src/bookmarks/ephy-new-bookmark.c: (ephy_new_bookmark_set_title): * src/bookmarks/ephy-topic-action.c: (connect_proxy): * src/bookmarks/ephy-topics-selector.c: (ephy_topics_selector_set_bookmark): * src/ephy-encoding-menu.c: (add_action): * src/ephy-extensions-manager.c: (ephy_extensions_manager_load), (ephy_extensions_manager_unload), (ephy_extensions_manager_load_string), (get_loader_for_type), (load_extension), (unload_extension), (sync_loaded_extensions), (ephy_extensions_manager_load_dir), (ephy_extensions_manager_init), (ephy_extensions_manager_startup), (ephy_extensions_manager_finalize), (impl_attach_window), (impl_detach_window), (impl_attach_tab), (impl_detach_tab): * src/ephy-history-window.c: (setup_filters), (provide_favicon): * src/ephy-link.c: (ephy_link_open): * src/ephy-location-action.c: (user_changed_cb), (sync_address), (ephy_location_action_set_address): * src/ephy-navigation-action.c: (menu_activated_cb), (connect_proxy): * src/ephy-notebook.c: (ephy_notebook_finalize): * src/ephy-session.c: (window_focus_in_event_cb), (impl_attach_window), (impl_detach_window), (ephy_session_init), (ephy_session_dispose), (ephy_session_finalize), (ephy_session_autoresume), (ephy_session_close), (ephy_session_save), (ephy_session_load), (ephy_session_add_window), (ephy_session_remove_window): * src/ephy-shell.c: (save_yourself_cb), (die_cb), (ephy_shell_finalize), (ephy_shell_new_tab), (ephy_shell_get_toolbars_model), (toolwindow_show_cb), (toolwindow_hide_cb): * src/ephy-tab.c: (popups_manager_add), (popups_manager_add_window), (ephy_tab_get_popups_allowed), (popups_manager_show_all), (popups_manager_hide_all), (ephy_tab_finalize), (ephy_tab_address_cb), (ephy_tab_zoom_changed_cb), (ephy_tab_new_window_cb), (ephy_tab_visibility_cb), (ephy_tab_destroy_brsr_cb), (ephy_tab_size_to_cb), (ephy_tab_dom_mouse_click_cb), (ephy_tab_init): * src/ephy-tabs-menu.c: (ephy_tabs_menu_update): * src/ephy-toolbar.c: (sync_user_input_cb): * src/ephy-toolbars-model.c: (save_changes_idle), (ephy_toolbars_model_load): * src/ephy-window.c: (ephy_window_destroy), (show_embed_popup), (ephy_window_init), (ephy_window_finalize): * src/pdm-dialog.c: (pdm_dialog_cookies_construct), (cookie_added_cb), (cookie_changed_cb), (cookie_deleted_cb), (cookies_cleared_cb), (pdm_dialog_passwords_construct), (passwords_changed_cb): * src/prefs-dialog.c: (fonts_language_changed_cb): Add ; to all LOG statements, and adapt ephy-debug.h for non-GNUC-varargs case.
* Extension manager owns only one ref on extensions which don't implementJean-François Rameau2005-01-281-8/+8
| | | | | | | | | | 2005-01-27 Jean-François Rameau <jframeau@cvs.gnome.org> * src/ephy-extensions-manager.c: (unload_extension): Extension manager owns only one ref on extensions which don't implement EphyExtension interface. Only their loader has to unref them.
* Add loader directory to the .pc file.Christian Persch2005-01-041-2/+47
| | | | | | | | | | | | | 2005-01-03 Christian Persch <chpe@cvs.gnome.org> * data/epiphany-1.6.pc.in: Add loader directory to the .pc file. * src/ephy-extensions-manager.c: (sanitise_type), (get_loader_for_type), (ephy_extensions_manager_finalize): Load new loaders with the sblib loader.
* Free the gconf value. Thanks to jfr for noticing this.Christian Perschristian Persch2004-12-291-0/+4
| | | | | | | | 2004-12-28 Christian Perschristian Persch <chpe@cvs.gnome.org> * src/ephy-extensions-manager.c: (sync_loaded_extensions): Free the gconf value. Thanks to jfr for noticing this.
* Add attach_tab and detach_tab functions to extension interface (bugAdam Hooper2004-12-181-2/+81
| | | | #153732). Thanks to Crispin for almost all of the code.
* If the gconf key doesn't exist, or has the wrong value type, set it toChristian Persch2004-12-021-2/+25
| | | | | | | | | | 2004-12-01 Christian Persch <chpe@cvs.gnome.org> * src/ephy-extensions-manager.c: (sync_loaded_extensions): If the gconf key doesn't exist, or has the wrong value type, set it to ["extensions-manager-ui"] to ensure the extensions manager UI is loaded if it's installed.
* Add defines and #ifdef to enable validation; disabled for now.Christian Persch2004-11-181-2/+16
| | | | | | | | | | | 2004-11-18 Christian Persch <chpe@cvs.gnome.org> * src/ephy-extensions-manager.c: (ephy_extensions_manager_load_string), (ephy_extensions_manager_startup), (ephy_extensions_manager_finalize): Add defines and #ifdef to enable validation; disabled for now.
* make len a gsize rather than an int to fix compilation on 64-bit systems.James Henstridge2004-11-111-1/+1
| | | | | | | 2004-11-11 James Henstridge <james@jamesh.id.au> * src/ephy-extensions-manager.c (load_file_from_monitor): make len a gsize rather than an int to fix compilation on 64-bit systems.
* Free XML data after parsing it. Noticed by jfr. I'm an idiot.Adam Hooper2004-11-031-1/+7
|
* We always have config.h, no need to guard its inclusion.Christian Persch2004-11-031-2/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2004-11-02 Christian Persch <chpe@cvs.gnome.org> * embed/downloader-view.c: * embed/ephy-command-manager.c: * embed/ephy-cookie-manager.c: * embed/ephy-download.c: * embed/ephy-embed-dialog.c: * embed/ephy-embed-event.c: * embed/ephy-embed-factory.c: * embed/ephy-embed-persist.c: * embed/ephy-embed-shell.c: * embed/ephy-embed-single.c: * embed/ephy-embed.c: * embed/ephy-encodings.c: * embed/ephy-favicon-cache.c: * embed/ephy-history.c: * embed/ephy-password-manager.c: * embed/ephy-permission-manager.c: * embed/find-dialog.c: * embed/mozilla/ContentHandler.cpp: * embed/mozilla/ContentHandler.h: * embed/mozilla/EphyAboutRedirector.cpp: * embed/mozilla/EphyBrowser.cpp: * embed/mozilla/EphyBrowser.h: * embed/mozilla/EphyContentPolicy.cpp: * embed/mozilla/EphyHeaderSniffer.cpp: * embed/mozilla/EphySingle.cpp: * embed/mozilla/EphyUtils.cpp: * embed/mozilla/EventContext.cpp: * embed/mozilla/FilePicker.cpp: * embed/mozilla/GlobalHistory.cpp: * embed/mozilla/GtkNSSClientAuthDialogs.cpp: * embed/mozilla/GtkNSSDialogs.cpp: * embed/mozilla/GtkNSSKeyPairDialogs.cpp: * embed/mozilla/MozDownload.cpp: * embed/mozilla/MozDownload.h: * embed/mozilla/MozRegisterComponents.cpp: * embed/mozilla/PrintingPromptService.cpp: * embed/mozilla/mozilla-download.cpp: * embed/mozilla/mozilla-embed-event.cpp: * embed/mozilla/mozilla-embed-persist.cpp: * embed/mozilla/mozilla-embed-single.cpp: * embed/mozilla/mozilla-embed.cpp: * embed/mozilla/mozilla-notifiers.cpp: * embed/print-dialog.c: * lib/eel-gconf-extensions.c: * lib/egg/egg-editable-toolbar.c: * lib/egg/egg-toolbars-model.c: * lib/ephy-debug.c: * lib/ephy-debug.h: * lib/ephy-dialog.c: * lib/ephy-dnd.c: * lib/ephy-file-chooser.c: * lib/ephy-file-helpers.c: * lib/ephy-glade.c: * lib/ephy-gui.c: * lib/ephy-langs.c: * lib/ephy-loader.c: * lib/ephy-module.c: * lib/ephy-node-db.c: * lib/ephy-node-filter.c: * lib/ephy-node.c: * lib/ephy-shlib-loader.c: * lib/ephy-state.c: * lib/ephy-stock-icons.c: * lib/ephy-string.c: * lib/ephy-zoom.c: * lib/widgets/ephy-location-entry.c: * lib/widgets/ephy-node-view.c: * lib/widgets/ephy-search-entry.c: * lib/widgets/ephy-spinner.c: * lib/widgets/ephy-tree-model-node.c: * lib/widgets/ephy-tree-model-sort.c: * lib/widgets/ephy-zoom-action.c: * lib/widgets/ephy-zoom-control.c: * src/bookmarks/ephy-bookmark-action.c: * src/bookmarks/ephy-bookmark-properties.c: * src/bookmarks/ephy-bookmarks-editor.c: * src/bookmarks/ephy-bookmarks-export.c: * src/bookmarks/ephy-bookmarks-import.c: * src/bookmarks/ephy-bookmarks-menu.c: * src/bookmarks/ephy-bookmarks.c: * src/bookmarks/ephy-bookmarksbar-model.c: * src/bookmarks/ephy-bookmarksbar.c: * src/bookmarks/ephy-favorites-menu.c: * src/bookmarks/ephy-new-bookmark.c: * src/bookmarks/ephy-topic-action.c: * src/bookmarks/ephy-topics-selector.c: * src/ephy-automation.c: * src/ephy-completion-model.c: * src/ephy-encoding-dialog.c: * src/ephy-encoding-menu.c: * src/ephy-extension.c: * src/ephy-extensions-manager.c: * src/ephy-favicon-action.c: * src/ephy-go-action.c: * src/ephy-history-window.c: * src/ephy-location-action.c: * src/ephy-main.c: * src/ephy-navigation-action.c: * src/ephy-notebook.c: * src/ephy-session.c: * src/ephy-shell.c: * src/ephy-statusbar.c: * src/ephy-tab.c: * src/ephy-tabs-menu.c: * src/ephy-toolbars-model.c: * src/ephy-window.c: * src/pdm-dialog.c: * src/popup-commands.c: * src/ppview-toolbar.c: * src/prefs-dialog.c: * src/toolbar.c: * src/window-commands.c: We always have config.h, no need to guard its inclusion.
* Disable extensions description validation for now.Christian Persch2004-11-011-2/+2
| | | | | | | | | 2004-10-31 Christian Persch <chpe@cvs.gnome.org> * src/ephy-extensions-manager.c: (ephy_extensions_manager_load_string): Disable extensions description validation for now.
* Process xml:lang in extension description files.Christian Persch2004-10-311-4/+51
| | | | | | | | | | 2004-10-31 Christian Persch <chpe@cvs.gnome.org> * src/ephy-extensions-manager.c: (assign_localised_string), (ephy_extensions_manager_load_string), (ephy_extensions_manager_class_init): Process xml:lang in extension description files.
* Move idle unreffing to extensions manager. Makes sure that extensions areChristian Persch2004-10-301-1/+16
| | | | | | | | | | 2004-10-30 Christian Persch <chpe@cvs.gnome.org> * lib/ephy-shlib-loader.c: (impl_release_object): * src/ephy-extensions-manager.c: (idle_unref), (unload_extension): Move idle unreffing to extensions manager. Makes sure that extensions are finalised.
* Listen for changes to extension directories usingAdam Hooper2004-10-301-59/+252
| | | | | | gnome_vfs_monitor_add(). Paves the way for drag-and-drop installation of extensions, and makes extensions immediately available when installing via 'make install', 'apt-get install', etc.
* De-couple instantiation and initialisation of the extensions manager.Christian Persch2004-10-261-2/+10
| | | | | | | | | | | | | 2004-10-25 Christian Persch <chpe@cvs.gnome.org> * src/ephy-extensions-manager.c: (ephy_extensions_manager_init), (ephy_extensions_manager_startup): * src/ephy-extensions-manager.h: * src/ephy-shell.c: (ephy_shell_get_extensions_manager): De-couple instantiation and initialisation of the extensions manager. Fixes double-instance and weirdness and double-type-registration on startup when extensions use the session in their instance_init.
* Annotate "if (type == 0)" in get_type functions with G_UNLIKELY, like theChristian Persch2004-10-241-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2004-10-23 Christian Persch <chpe@cvs.gnome.org> * embed/downloader-view.c: (downloader_view_get_type): * embed/ephy-command-manager.c: (ephy_command_manager_get_type): * embed/ephy-cookie-manager.c: (ephy_cookie_get_type), (ephy_cookie_manager_get_type): * embed/ephy-download.c: (ephy_download_get_type): * embed/ephy-embed-dialog.c: (ephy_embed_dialog_get_type): * embed/ephy-embed-event.c: (ephy_embed_event_get_type): * embed/ephy-embed-persist.c: (ephy_embed_persist_get_type): * embed/ephy-embed-shell.c: (ephy_embed_shell_get_type): * embed/ephy-embed-single.c: (ephy_embed_single_get_type): * embed/ephy-embed.c: (ephy_embed_get_type): * embed/ephy-encodings.c: (ephy_encodings_get_type): * embed/ephy-favicon-cache.c: (ephy_favicon_cache_get_type): * embed/ephy-history.c: (ephy_history_get_type): * embed/ephy-password-manager.c: (ephy_password_info_get_type), (ephy_password_manager_get_type): * embed/ephy-permission-manager.c: (ephy_permission_info_get_type), (ephy_permission_manager_get_type): * embed/find-dialog.c: (find_dialog_get_type): * embed/mozilla/mozilla-download.cpp: * embed/mozilla/mozilla-embed-event.cpp: * embed/mozilla/mozilla-embed-persist.cpp: * embed/mozilla/mozilla-embed-single.cpp: * embed/mozilla/mozilla-embed.cpp: * lib/egg/egg-editable-toolbar.c: (egg_editable_toolbar_get_type): * lib/egg/egg-toolbar-editor.c: (egg_toolbar_editor_get_type): * lib/egg/egg-toolbars-model.c: (egg_toolbars_model_get_type): * lib/ephy-dialog.c: (ephy_dialog_get_type): * lib/ephy-file-chooser.c: (ephy_file_chooser_get_type): * lib/ephy-loader.c: (ephy_loader_get_type): * lib/ephy-module.c: (ephy_module_get_type): * lib/ephy-node-db.c: (ephy_node_db_get_type): * lib/ephy-node-filter.c: (ephy_node_filter_get_type): * lib/ephy-shlib-loader.c: (ephy_shlib_loader_get_type): * lib/widgets/ephy-location-entry.c: (ephy_location_entry_get_type): * lib/widgets/ephy-node-view.c: (ephy_node_view_get_type): * lib/widgets/ephy-search-entry.c: (ephy_search_entry_get_type): * lib/widgets/ephy-spinner.c: (ephy_spinner_cache_get_type), (ephy_spinner_get_type): * lib/widgets/ephy-tree-model-node.c: (ephy_tree_model_node_get_type): * lib/widgets/ephy-tree-model-sort.c: (ephy_tree_model_sort_get_type): * lib/widgets/ephy-zoom-action.c: (ephy_zoom_action_get_type): * lib/widgets/ephy-zoom-control.c: (ephy_zoom_control_get_type): * src/bookmarks/ephy-bookmark-action.c: (ephy_bookmark_action_get_type): * src/bookmarks/ephy-bookmark-properties.c: (ephy_bookmark_properties_get_type): * src/bookmarks/ephy-bookmarks-editor.c: (ephy_bookmarks_editor_get_type): * src/bookmarks/ephy-bookmarks-menu.c: (ephy_bookmarks_menu_get_type): * src/bookmarks/ephy-bookmarks.c: (ephy_bookmarks_get_type): * src/bookmarks/ephy-bookmarksbar-model.c: (ephy_bookmarksbar_model_get_type): * src/bookmarks/ephy-bookmarksbar.c: (ephy_bookmarksbar_get_type): * src/bookmarks/ephy-favorites-menu.c: (ephy_favorites_menu_get_type): * src/bookmarks/ephy-new-bookmark.c: (ephy_new_bookmark_get_type): * src/bookmarks/ephy-topic-action.c: (ephy_topic_action_get_type): * src/bookmarks/ephy-topics-selector.c: (ephy_topics_selector_get_type): * src/ephy-completion-model.c: (ephy_completion_model_get_type): * src/ephy-encoding-dialog.c: (ephy_encoding_dialog_get_type): * src/ephy-encoding-menu.c: (ephy_encoding_menu_get_type): * src/ephy-extension.c: (ephy_extension_get_type): * src/ephy-extensions-manager.c: (ephy_extensions_manager_get_type): * src/ephy-favicon-action.c: (ephy_favicon_action_get_type): * src/ephy-go-action.c: (ephy_go_action_get_type): * src/ephy-history-window.c: (ephy_history_window_get_type): * src/ephy-location-action.c: (ephy_location_action_get_type): * src/ephy-navigation-action.c: (ephy_navigation_action_get_type): * src/ephy-notebook.c: (ephy_notebook_get_type): * src/ephy-session.c: (ephy_session_get_type): * src/ephy-shell.c: (ephy_shell_get_type): * src/ephy-statusbar.c: (ephy_statusbar_get_type): * src/ephy-tab.c: (ephy_tab_get_type): * src/ephy-tabs-menu.c: (ephy_tabs_menu_get_type): * src/ephy-toolbars-model.c: (ephy_toolbars_model_get_type): * src/ephy-window.c: (ephy_window_get_type): * src/pdm-dialog.c: (pdm_dialog_get_type): * src/ppview-toolbar.c: (ppview_toolbar_get_type): * src/prefs-dialog.c: (prefs_dialog_get_type): * src/toolbar.c: (toolbar_get_type): Annotate "if (type == 0)" in get_type functions with G_UNLIKELY, like the G_TYPE_DEFINE macros do.
* Only multiplex [attach|detach]_window to extensions implementing theChristian Persch2004-10-231-5/+14
| | | | | | | | | | 2004-10-22 Christian Persch <chpe@cvs.gnome.org> * src/ephy-extensions-manager.c: (load_extension), (unload_extension): Only multiplex [attach|detach]_window to extensions implementing the EphyExtension interface.
* Remove bogus debug output.Christian Persch2004-10-221-3/+0
| | | | | | | | | 2004-10-22 Christian Persch <chpe@cvs.gnome.org> * src/ephy-extensions-manager.c: (ephy_extensions_manager_register): Remove bogus debug output.
* Validate extension XML files against an XSD Schema.Adam Hooper2004-10-191-5/+98
|
* R lib/ephy-module-loader.c: R lib/ephy-module-loader.h: AChristian Persch2004-10-171-237/+630
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2004-10-17 Christian Persch <chpe@cvs.gnome.org> * lib/Makefile.am: R lib/ephy-module-loader.c: R lib/ephy-module-loader.h: A lib/ephy-module.c: (ephy_module_get_type), (ephy_module_load), (ephy_module_unload), (ephy_module_get_path), (ephy_module_new_object), (ephy_module_init), (ephy_module_finalize), (ephy_module_class_init), (ephy_module_new): A lib/ephy-module.h: s/EphyModuleLoader/EphyModule/g since "loader" now means something different. A lib/ephy-loader.c: (ephy_loader_get_type), (ephy_loader_type), (ephy_loader_get_object), (ephy_loader_release_object): A lib/ephy-loader.h: Generic object loader. A lib/ephy-shlib-loader.c: (ephy_shlib_loader_get_type), (free_loader_data), (ephy_shlib_loader_init), (ephy_shlib_loader_finalize), (find_library), (find_object), (idle_unref), (impl_get_object), (impl_release_object), (ephy_shlib_loader_iface_init), (ephy_shlib_loader_class_init): A lib/ephy-shlib-loader.h: A .so loader. * src/Makefile.am: * src/ephy-extensions-manager.c: (ephy_extensions_manager_load), (ephy_extensions_manager_unload), (ephy_extensions_manager_register), (ephy_extensions_manager_get_extensions), (free_extension_info), (free_loader_info), (find_extension_info), (ephy_extensions_manager_load_file), (find_loader), (get_loader_for_type), (attach_window), (load_extension), (detach_window), (unload_extension), (ephy_extensions_manager_load_dir), (active_extensions_notifier), (ephy_extensions_manager_init), (ephy_extensions_manager_finalize), (impl_attach_window), (impl_detach_window), (ephy_extensions_manager_class_init): * src/ephy-extensions-manager.h: Read extension descriptions from .xml, load them with the specified loader (for now, just only .so is supported). * src/ephy-shell.c: (ephy_shell_finalize), (ephy_shell_get_session), (ephy_shell_get_extensions_manager): Minor API change in extensions manager. * data/epiphany.schemas.in: Add extensions-manager-ui as default active extension. 2004-10-10 Marco Pesenti Gritti <marco@gnome.org>
* Load/unload extensions based on GConf keyAdam Hooper2004-09-141-47/+303
| | | | | | /apps/epiphany/general/active_extensions. Update documentation a bit (i.e., make sure it actually builds).
* s/EphyExtensionClass/EphyExtensionIface/gChristian Persch2004-02-171-2/+2
| | | | | | | | | | | | | 2004-02-17 Christian Persch <chpe@cvs.gnome.org> * src/ephy-extension.c: (ephy_extension_get_type), (ephy_extension_attach_window), (ephy_extension_detach_window): * src/ephy-extension.h: * src/ephy-extensions-manager.c: (ephy_extensions_manager_iface_init): * src/ephy-session.c: (ephy_session_iface_init): s/EphyExtensionClass/EphyExtensionIface/g
* Decouple extensions manager initialisation and extensions loading. Fixes aChristian Persch2004-02-021-3/+1
| | | | | | | | | | | | 2004-02-01 Christian Persch <chpe@cvs.gnome.org> * src/ephy-extensions-manager.c: (ephy_extensions_manager_init): * src/ephy-extensions-manager.h: * src/ephy-shell.c: (ephy_shell_get_extensions_manager): Decouple extensions manager initialisation and extensions loading. Fixes a crash when an extensions tried to get the session, causing us to load extensions more than once.
* New extensions API.Christian Persch2003-11-111-0/+260
2003-11-10 Christian Persch <chpe@cvs.gnome.org> New extensions API. * Makefile.am: * configure.in: * lib/Makefile.am: * lib/ephy-module-loader.c: (ephy_module_loader_get_type), (ephy_module_loader_new), (ephy_module_loader_load), (ephy_module_loader_unload), (ephy_module_loader_class_init), (ephy_module_loader_init), (ephy_module_loader_finalize), (ephy_module_loader_factory): * lib/ephy-module-loader.h: * plugins/.cvsignore: * plugins/Makefile.am: * plugins/sample/.cvsignore: * plugins/sample/Makefile.am: * plugins/sample/sample.c: * src/Makefile.am: * src/bookmarks/ephy-bookmarks-editor.c: (get_target_window): * src/bookmarks/ephy-bookmarks.c: * src/ephy-automation.c: (ephy_automation_factory), (ephy_automation_factory_new), (impl_ephy_automation_loadurl), (impl_ephy_automation_load_session), (ephy_automation_class_init): * src/ephy-extension.c: (ephy_extension_get_type), (ephy_extension_attach_window), (ephy_extension_detach_window): * src/ephy-extension.h: * src/ephy-extensions-manager.c: (ephy_extensions_manager_get_type), (ephy_extensions_manager_instantiate_extension), (ephy_extensions_manager_load), (ephy_extensions_manager_load_dir), (ephy_extensions_manager_add), (ephy_extensions_manager_init), (ephy_extensions_manager_finalize), (impl_attach_window), (impl_detach_window), (ephy_extensions_manager_iface_init), (ephy_extensions_manager_class_init), (ephy_extensions_manager_new): * src/ephy-extensions-manager.h: * src/ephy-history-window.c: (get_target_window): * src/ephy-plugin.c: * src/ephy-plugin.h: * src/ephy-session.c: (ephy_session_get_type), (get_session_filename), (session_delete), (net_stop_cb), (tab_added_cb), (tab_removed_cb), (tabs_reordered_cb), (impl_attach_window), (impl_detach_window), (save_yourself_cb), (die_cb), (gnome_session_attach), (gnome_session_detach), (ensure_session_directory), (ephy_session_init), (ephy_session_dispose), (ephy_session_finalize), (ephy_session_iface_init), (ephy_session_class_init), (offer_to_resume), (ephy_session_autoresume), (ephy_session_close), (write_tab), (write_window_geometry), (write_tool_window), (write_ephy_window), (ephy_session_save), (parse_embed), (ephy_session_load), (ephy_session_get_windows), (ephy_session_add_window), (ephy_session_remove_window), (ephy_session_get_active_window): * src/ephy-session.h: * src/ephy-shell.c: (ephy_shell_init), (ephy_shell_finalize), (ephy_shell_get_session), (ephy_shell_get_extensions_manager), (toolwindow_show_cb), (toolwindow_hide_cb): * src/ephy-shell.h: * src/ephy-window.c: (ephy_window_destroy), (ephy_window_init): * src/prefs-dialog.c: (prefs_homepage_current_button_clicked_cb): * src/session.c: * src/session.h: Create a new extensions API. Make session an internal extension :) Port callers to session API changes.