summaryrefslogtreecommitdiff
path: root/librsvg
Commit message (Collapse)AuthorAgeFilesLines
* roll out accidentally-checked-in changeDarin Adler2001-03-091-4/+5
|
* Merge from HEAD:Darin Adler2001-03-091-5/+4
| | | | | | | | | | | | | | | 2001-03-09 Darin Adler <darin@eazel.com> reviewed by: John Sullivan <sullivan@eazel.com> Fix bug 7587 (Copying text in Notes with menu item kills Notes [also Text viewer, etc]): * libnautilus/nautilus-clipboard.c: (do_with_fake_current_event): Function to set up a non-NULL event so the code in GtkEditable won't die. (cut_callback), (copy_callback), (paste_callback): Use the new function.
* Fixed bug 7402 (Fonts that don't define ` ' cause assertions and squashJohn Harper2001-03-061-8/+41
| | | | | | | | | | | | | | | | | | | | | 2001-03-05 John Harper <jsh@eazel.com> Fixed bug 7402 (Fonts that don't define ` ' cause assertions and squash words together): * librsvg/rsvg-ft.c (rsvg_ft_measure_or_render_string): force the width of the returned glyph to be at least one pixel * librsvg/rsvg-ft.c (rsvg_ft_get_glyph_cached): added extra arg `cache_ix'. Used when accessing the glyph cache. The old `glyph_ix' arg is only used when accessing the physical font (this allows a cached glyph to be created from a different physical glyph) (rsvg_ft_measure_or_render_string): if the character is a ` ' and has a glyph index but doesn't have an actual glyph definition, create one by caching the glyph for `-' as ` ' and zeroing its pixel buffer
* reviewed by: Ramiro Estrugo <ramiro@eazel.com>John Harper2001-03-061-21/+24
| | | | | | | | | | | | | | | | 2001-03-05 John Harper <jsh@eazel.com> reviewed by: Ramiro Estrugo <ramiro@eazel.com> Fixed bug 7380 (Nautilus crashes when I choose "Microsoft Sans Serif" font): * librsvg/rsvg-ft.c (rsvg_ft_measure_or_render_string): initialize y components of bbox. Don't call rsvg_ft_get_glyph_cached with a zero index (non-existent glyph). Use `n_glyphs' to index `glyph_xy' array instead of `i' (this is what fixes the bug - when one or more glyphs don't exist `i' points too far into the array)
* reviewed by: Pavel Cisler <pavel@eazel.com>John Harper2001-03-051-3/+5
| | | | | | | | | | | | 2001-03-05 John Harper <jsh@eazel.com> reviewed by: Pavel Cisler <pavel@eazel.com> Fixed bug 7374 (Crash in font cache code after changing fonts many times): * librsvg/rsvg-ft.c (rsvg_ft_font_evict): check if victim->font is null before freeing it
* reviewed by: Darin Adler <darin@eazel.com>John Harper2001-03-031-2/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-03-02 John Harper <jsh@eazel.com> reviewed by: Darin Adler <darin@eazel.com> Fixed bug 7264 (Nautilus crashing regularly when browsing folders with .svg files with text in them): * librsvg/rsvg-ft.c (rsvg_ft_measure_or_render_string): in the returned `dimensions' array, return the actual height of the glyph buffer, not the height of the text bounding box. This appears to fix bug 7264 * librsvg/rsvg-ft.c (rsvg_ft_measure_or_render_string): subtract the last element of the glyph affine transformation (the vertical offset) from the position at which it's rendered. This fixes the test-ft-gtk test program reviewed by: Pavel Cisler <pavel@eazel.com> * src/nautilus-window.c (nautilus_window_realize): modified my last change to use gnome_pixmap_file () instead of nautilus_pixmap_file () (since the nautilus-launch-icon.png image gets installed in $prefix/share/pixmaps instead of $pixmap/share/nautilus/pixmaps, I had an old icon lying around which made me not see this..)
* reviewed by: Darin Adler <darin@eazel.com>Ramiro Estrugo2001-03-011-4/+29
| | | | | | | | | | | | | | | | | | | | | | | | | Fix bug 6368 - Multibyte font handling. * librsvg/rsvg-ft.c: (rsvg_ft_get_glyph), (rsvg_ft_measure_or_render_string): Tell freetype to never load bitmaps when loading glyphs. We only use the outlines of scalable fonts. This means our code will work even for glyphs that have embedded bitmaps. Add support for multi byte characters. We do this by allocate a wide character array and converting the source string to wide chars. If no wide characters are found in the source string, then we fill in the wide char array with the regular single byte chars. This changes are based on a patch contributed by Yukihiro Nakai <nakai@gnome.gr.jp> - thanks much. Unrelated change. * libnautilus-extensions/nautilus-labeled-image.c: (nautilus_labeled_image_initialize): Remove a extraneous '+' that sneaked in here.
* reviewed by Ramiro Estrugo <ramiro@eazel.com>John Harper2001-02-282-3/+29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-02-28 John Harper <jsh@eazel.com> reviewed by Ramiro Estrugo <ramiro@eazel.com> Fixed bug 7111 (Icons appear in formation, then shift, when page first loads). This also fixed bugs 4174 (NautilusLabel needs to handle text with descenders better.) and 2865 (Text underlining should honor the rendered string's baseline): * librsvg/rsvg-ft.c (rsvg_ft_measure_or_render_string): don't use the union of the bounding boxes of the glyphs to find the overall bounding box, for the vertical component use the actual font metrics. Also set the underline_position and underline_thickness fields of the returned glyph structure * librsvg/rsvg-ft.h (struct _RsvgFTGlyph): added two new fields: underline_position and underline_thickness * libnautilus-extensions/nautilus-smooth-text-layout.c (smooth_text_layout_line_list_draw_to_pixbuf): don't just draw the underline under the glyph's rectangle, draw it where the glyph object wants it to be (using nautilus_glyph_get_underline_rectangle (), which for text uses the actual underline information from the font) * libnautilus-extensions/nautilus-glyph.h, libnautilus-extensions/nautilus-glyph.c (nautilus_glyph_get_underline_rectangle): new function, fills in an ArtIRect corresponding to the underline of the given glyph object * components/services/nautilus-dependent-shared/eazel-services-header.c: * libnautilus-extensions/nautilus-tabs.c, libnautilus-extensions/nautilus-smooth-text-layout.c, libnautilus-extensions/nautilus-icon-canvas-item.c * src/nautilus-sidebar-title.c, src/nautilus-sidebar-tabs.c Tweaked a few hardcoded constants to fix minor changes in font layout (this part was checked by Arlo)
* Move $(FREETYPE2_CFLAGS) all the way to the top of $(INCLUDES), so that ifRamiro Estrugo2001-02-141-1/+1
| | | | | | | * librsvg/Makefile.am: Move $(FREETYPE2_CFLAGS) all the way to the top of $(INCLUDES), so that if there are multiple versions of freetype installed in the build machine, then we will catch only the one we are interested in.
* reviewed by: John Sullivan <sullivan@eazel.com>Darin Adler2001-02-131-30/+34
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix bug 6408 (nautilus_view_report_load_failed causes Nautilus to segfault in an idle callback): * libnautilus/nautilus-idle-queue.c: (execute_queued_functions), (nautilus_idle_queue_destroy): Changed the idle queue so it can handle being destroyed while inside one of the queued functions. Fix bug 6402 (Click desktop icon -> Nautilus window not moved to front): * src/nautilus-window-manage-views.c: (open_location): Bring the existing window up when it's reused in the "open icon on desktop" in single-window mode. Other changes: * libnautilus-extensions/nautilus-icon-factory.c: (is_theme_in_user_directory): Rename from "check_local_theme" and changed it to use a normal function result instead of taking a gboolean pointer. (set_theme): Use new function and booleans by their new names. "in_user_directory" instead of "local". (make_full_icon_path): Just the name change. (get_themed_icon_file_path): Take a boolean parameter instead of trying to figure out if the theme is in the user directory, because the old way would get it wrong for the default theme. (get_icon_file_path): Pass in the boolean to say if the theme is in the user directory or not. * libnautilus-extensions/nautilus-string.h: Remove repeated declaration for nautilus_str_get_prefix. reviewed by: Ramiro Estrugo <ramiro@eazel.com> * librsvg/rsvg-ft.c: (rsvg_ft_glyph_evict): Fix code that was looking at the "prev" pointer of a victim after freeing it. Also made some other code simplifications. * src/nautilus-theme-selector.c: (render_theme_name_and_description): Added an explicit call to gtk_widget_realize before grabbing the style field and expecting it to have gc's in it. Not sure why no one ran into this before.
* fixed bug 6301, bad svg crashes Nautilus, by adding a check inAndy Hertzfeld2001-02-051-0/+7
| | | | | | | * librsvg/rsvg.c: (rsvg_render_svp): fixed bug 6301, bad svg crashes Nautilus, by adding a check in rsvg_render_svp to make sure a pixbuf has been allocated; if not, don't try to render.
* Updated insert function to evict everytime we are above the cache 'limit' ↵Arik Devens2001-01-311-2/+1
| | | | not just when adding the glyph would put us above.
* Refactored the glyph cache to be a bit smarter about when to insert and ↵Arik Devens2001-01-311-41/+43
| | | | remove from its cache.
* reviewed by: Pavel Cisler <pavel@eazel.com>Darin Adler2000-11-301-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixed some problems with callbacks that are left around after the object is destroyed. * src/nautilus-window-manage-views.h: * src/nautilus-window-manage-views.c: (viewed_file_changed_callback): Changed to be a normal callback, not a "connect_object" callback, and simplified the logic. (cancel_viewed_file_changed_callback): Added a function to cancel the callback, which is needed both when the window is destroyed and when the viewed file changes. (update_for_new_location): Cancel the old callback before setting up the new one so we don't leave behind callbacks for old locations. Also use the new nautilus_window_set_viewed_file function so the callbacks set up in nautilus-window.c can be managed properly. (free_location_change): Moved part of nautilus_window_free_load_info in here. This function frees all the stuff that's used in the location change process; shared by destroy and "cancel" code. Also fixed a bug where it wouldn't free the "error_views". (cancel_location_change): Moved the rest of nautilus_window_free_load_info in here and made this use the new function. (disconnect_view): Made this private now that the code to disconnect the views is inside this file. (disconnect_view_callback), (nautilus_window_manage_views_destroy): Moved the code to clean up from nautilus-window.c in here. Added cleanup for the location change fields and for the viewd_file_changed callback. * src/nautilus-window.c: (nautilus_window_destroy): Call a new function to do the nautilus-window-manage-views.c part of the destroy and moved some code in there. Cancel the view-as callback too. (create_view_as_menu_item), (replace_special_current_view_in_view_as_menu), (nautilus_window_synch_view_as_menu): Renamed. The words "view as menu" are clearer than "content view menu". (chose_component_callback): Got rid of code that tries to handle bad values for callback data. The callback must be cancelled, because you can't call NAUTILUS_IS_WINDOW on a freed window and expect it to behave predictably. (cancel_chose_component_callback): Function to cancel the callback, called at both destroy time and before adding a new one. (view_menu_choose_view_callback): Cancel the old callback before adding a new one. (view_menu_vfs_method_callback): Simplify logic a bit. (load_view_as_menu_callback): Renamed. (cancel_view_as_callback): Function to cancel the callback, called at both destroy time and before adding a new one. (nautilus_window_load_view_as_menu): Cancel the old callback before adding a new one. Also renamed. (nautilus_window_set_viewed_file): A new function that cancels the callbacks on the file object before switching to a new one. * libnautilus-extensions/nautilus-program-choosing.c: (nautilus_cancel_choose_component_for_file): Implemented missing cancel function, needed by new window code. * src/nautilus-window-private.h: * src/nautilus-window-menus.c: (bookmarks_menu_add_bookmark_callback), (add_bookmark_for_current_location): Made the function local to this file since it's both defined and used here. * libnautilus-extensions/nautilus-glib-extensions.c: * libnautilus-extensions/nautilus-volume-monitor.c: * libnautilus/nautilus-undo-transaction.c: * libnautilus/nautilus-view.c: * librsvg/rsvg.c: Added missing "static" to make some local non-"nautilus_"-prefixed globals be internal instead of external. * src/nautilus-sidebar.c: Formatting tweaks, added FIXME.
* reviewed by: Darin Adler <darin@eazel.com>Pavel Cisler2000-11-142-5/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2000-11-13 Pavel Cisler <pavel@eazel.com> reviewed by: Darin Adler <darin@eazel.com> * configure.in: Enable the sign-compare and cast-align warnings. * components/help/converters/gnome-db2html2/gdb3html.c: (find_first_element): * components/help/hyperbola-filefmt.c: (fmt_free_tree_info): * components/help/hyperbola-nav-index.c: (hyperbola_navigation_index_update_clist), (despace), (end_element): * components/history/nautilus-history-view.c: (history_load_location): * components/mozilla/nautilus-mozilla-content-view.c: (string_list_get_index_of_string): * components/services/install/lib/eazel-install-corba-types.c: (corba_string_sequence_to_glist), (corba_packagedatastructlist_from_packagedata_list), (packagedata_list_from_corba_packagedatastructlist), (categorydata_list_from_corba_categorystructlist): * components/services/install/lib/eazel-install-query.c: (eazel_install_simple_rpm_query): * components/services/install/lib/eazel-install-rpm-glue.c: (eazel_install_monitor_rpm_process_pipe): * components/services/install/lib/eazel-install-rpm-signature.c: (read_rpm_lead), (read_rpm_signature): * components/services/trilobite/libtrilobite/trilobite-root-helper. c: (trilobite_root_helper_run_program), (trilobite_root_helper_set_time): * cut-n-paste-code/widgets/nautilusclist/nautilusclist.c: (nautilus_clist_get_arg), (nautilus_clist_construct): * helper-utilities/authenticate/nautilus-authenticate.c: (main): * libnautilus-extensions/nautilus-background.c: (set_image_and_color_image_loading_done_callback): * libnautilus-extensions/nautilus-buffered-widget.c: (nautilus_gdk_pixbuf_tile_alpha): * libnautilus-extensions/nautilus-caption-table.c: (entry_activate): * libnautilus-extensions/nautilus-caption-table.h: * libnautilus-extensions/nautilus-ctree.c: (nautilus_ctree_node_nth), (nautilus_ctree_drag_motion): * libnautilus-extensions/nautilus-ctree.h: * libnautilus-extensions/nautilus-directory-async.c: (metafile_write): * libnautilus-extensions/nautilus-file-changes-queue.c: (nautilus_file_changes_consume_changes): * libnautilus-extensions/nautilus-file-operations-progress.c: (truncate_string_from_start): * libnautilus-extensions/nautilus-file-operations.c: (extract_string_until): * libnautilus-extensions/nautilus-file-utilities.c: (nautilus_read_entire_file): * libnautilus-extensions/nautilus-gdk-extensions.c: (nautilus_get_largest_fitting_font): * libnautilus-extensions/nautilus-global-preferences.c: (global_preferences_get_sidebar_panel_view_identifiers): * libnautilus-extensions/nautilus-gtk-extensions.c: (nautilus_gtk_window_set_initial_geometry_from_string), (nautilus_gtk_menu_set_item_visibility): * libnautilus-extensions/nautilus-icon-canvas-item.c: (draw_or_measure_label_text), (draw_or_measure_label_text_aa): * libnautilus-extensions/nautilus-icon-container.c: (rubberband_timeout_callback), (destroy), (compute_stretch): * libnautilus-extensions/nautilus-icon-container.h: (nautilus_icon_container_find_drop_target): * libnautilus-extensions/nautilus-icon-factory.c: (check_recently_used_list), (get_themed_icon_file_path), (revise_scale_factors_if_too_big): * libnautilus-extensions/nautilus-icon-text-item.c: (recompute_bounding_box), (iti_draw), (iti_selection_motion): * libnautilus-extensions/nautilus-label.c: (nautilus_label_size_allocate), (label_recompute_line_geometries): * libnautilus-extensions/nautilus-list.c: (draw_cell), (nautilus_list_drag_data_received): * libnautilus-extensions/nautilus-mime-actions.c: (server_matches_content_requirements), (nautilus_do_component_query): * libnautilus-extensions/nautilus-password-dialog.c: (caption_table_activate_callback): * libnautilus-extensions/nautilus-preferences-item.c: (has_image_file): * libnautilus-extensions/nautilus-scalable-font.c: (file_as_string), (parse_font_description_file), (nautilus_text_layout_new): * libnautilus-extensions/nautilus-scalable-font.h: * libnautilus-extensions/nautilus-volume-monitor.c: (check_permissions): * libnautilus/nautilus-view.c: (nautilus_shallow_g_list_from_uri_list): * libnautilus/nautilus-zoomable.c: (nautilus_g_list_from_ZoomLevelList): * librsvg/rsvg-ft.c: (rsvg_ft_measure_or_render_string): * librsvg/rsvg.c: (rsvg_parse_transform): * src/file-manager/fm-icon-view.c: (fm_icon_view_create_background_context_menu_items), (get_sort_criterion_by_metadata_text), (get_sort_criterion_by_id): * src/file-manager/fm-list-view.c: (select_row_common), (select_matching_name_callback), (select_previous_next_common), (fm_list_view_bump_zoom_level): * src/nautilus-search-bar-criterion.c: (nautilus_search_bar_criterion_update_valid_criteria_choices): * src/nautilus-shell.c: (corba_open_windows), (corba_open_default_window): * src/nautilus-sidebar.c: (nautilus_sidebar_add_panel_items): * src/nautilus-window-menus.c: (nautilus_window_disable_keyboard_navigation_for_menus): * src/nautilus-window.c: (nautilus_window_size_request): Fix all sign-compare violations.
* fix the build. Checking in for Ramiro.Pavel Cisler2000-10-261-0/+2
| | | | | | | | 2000-10-26 Pavel Cisler <pavel@eazel.com> * librsvg/Makefile.am: fix the build. Checking in for Ramiro.
* Add LIBPNG to test program link line. It was breaking for me.Ramiro Estrugo2000-10-261-0/+1
| | | | | * librsvg/Makefile.am: Add LIBPNG to test program link line. It was breaking for me.
* Fix the broken build. Add missing header to sources.Ramiro Estrugo2000-10-251-0/+1
| | | | | * librsvg/Makefile.am: Fix the broken build. Add missing header to sources.
* Make Raph's latest changes work with the old version of libart inRamiro Estrugo2000-10-254-1/+311
| | | | | | | | | | * librsvg/Makefile.am: * librsvg/art_rgba.c: (art_rgba_rgba_composite), (art_rgba_fill_run), (art_rgba_run_alpha): * librsvg/art_rgba.h: * librsvg/rsvg.c: Make Raph's latest changes work with the old version of libart in gnome-libs-1-0.
* Implemented "opacity" property of the SVG spec in librsvg, increasing theRaph Levien2000-10-242-7/+203
| | | | number of SVG files exported from Adobe Illustrator 9 it renders ok.
* Things allocated with glib functions must be freed with g_free, not freeGeorge Lebl2000-10-221-4/+4
| | | | | | | Sun Oct 22 05:25:46 2000 George Lebl <jirka@5z.com> * librsvg/rsvg-ft.c (rsvg_ft_ctx_done): Things allocated with glib functions must be freed with g_free, not free
* Make sure the font used for text is svg icons actually exists. Fix (ratherRamiro Estrugo2000-10-202-3/+7
| | | | | | | | * librsvg/Makefile.am: * librsvg/rsvg.c: (rsvg_text_handler_characters): Make sure the font used for text is svg icons actually exists. Fix (rather a worksround) for bug 3774. We will have a better fix later (bug 3904).
* Quiet down the debug spewage.Ramiro Estrugo2000-10-201-0/+7
| | | | | | * librsvg/rsvg.c: (rsvg_text_handler_characters), (rsvg_start_text): Quiet down the debug spewage.
* Do some routine housekeeping that will help make the futureDarin Adler2000-10-191-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | switchover to libxml2 easier. * components/help/converters/gnome-db2html2/gdb3html.h: * components/help/hyperbola-nav-index.c: * components/help/hyperbola-nav-search.c: * libnautilus-extensions/nautilus-directory-async.c: * libnautilus-extensions/nautilus-directory-metafile.c: * libnautilus-extensions/nautilus-directory-metafile.h: * libnautilus-extensions/nautilus-directory-private.h: * libnautilus-extensions/nautilus-file.c: * libnautilus-extensions/nautilus-icon-factory.c: * libnautilus-extensions/nautilus-link-set.c: * libnautilus-extensions/nautilus-link.c: * libnautilus-extensions/nautilus-theme.c: * libnautilus-extensions/nautilus-volume-monitor.c: * libnautilus-extensions/nautilus-xml-extensions.h: * librsvg/rsvg.c: * src/nautilus-bookmark-list.c: * src/nautilus-bookmark-parsing.c: * src/nautilus-bookmark-parsing.h: * src/nautilus-link-set-window.c: * src/nautilus-property-browser.c: * src/nautilus-sidebar.c: * src/nautilus-theme-selector.c: * src/nautilus-window-menus.c: Use the <gnome-xml/> prefix on all includes of gnome-xml headers. This is allowed with the version of libxml1 we use now, and required for libxml2. Note that we now require the newer libxml1 version that allows this, because Bonobo requires it. * components/services/install/lib/eazel-install-xml-package-list.c: (parse_package), (parse_category), (parse_shared), (parse_memory_transaction_file), (parse_local_xml_package_list), (generate_xml_package_list), (osd_parse_dependency), (osd_parse_implementation), (osd_parse_softpkg), (osd_parse_shared): * components/services/summary/lib/eazel-summary-shared.c: (build_services_glist_from_xml), (build_eazel_news_glist_from_xml), (build_update_news_glist_from_xml), (parse_summary_xml_file): * components/services/trilobite/libtrilobite/helixcode-utils.c: (xml_get_value): * components/services/trilobite/libtrilobite/trilobite-redirect.c: (trilobite_redirect_parse_xml): * libnautilus-extensions/nautilus-xml-extensions.c: (nautilus_xml_get_children): Use xmlChildrenNode instead of childs, as recommended by the libxml maintainer for libxml1/libxml2 compatibility. * src/nautilus-main.c: (main): Use the LIBXML_TEST_VERSION macro as recommended by the libxml maintainer for libxml1/libxml2 compatibility. * components/music/nautilus-music-view.c: Added a lot of FIXMEs. Some other rudimentary cleanup.
* Add new function to only measure a string without doing all the renderingRamiro Estrugo2000-10-182-9/+99
| | | | | | | | | | | | | | * librsvg/rsvg-ft.c: (rsvg_ft_measure_or_render_string), (rsvg_ft_render_string), (rsvg_ft_measure_string): * librsvg/rsvg-ft.h: Add new function to only measure a string without doing all the rendering work. * libnautilus-extensions/nautilus-scalable-font.c: (nautilus_scalable_font_measure_text): Use the new rsvg_ft string measuring api. Fixes bug 2544.
* Update for the FreeType2 changes.Ramiro Estrugo2000-10-061-4/+4
| | | | | | | | | * librsvg/Makefile.am: Update for the FreeType2 changes. * nautilus.spec.in: Update for the FreeType2 changes. Add requires dependency on freetype2.
* Dont install the test programs.Ramiro Estrugo2000-09-271-1/+5
| | | | | | | | | * librsvg/Makefile.am: Dont install the test programs. * nautilus.spec.in: Make sure the fallback font is part of the package. Dont include the rsvg test programs.
* After some investigation found that fixme (#2553) was complete bollocks,George Lebl2000-09-141-1/+1
| | | | | | | | | | | | | | | | | | | | | | Wed Sep 13 22:06:55 2000 George Lebl <jirka@5z.com> * libnautilus-extensions/nautilus-druid.c (nautilus_druid_size_request): After some investigation found that fixme (#2553) was complete bollocks, so I removed it. * libnautilus-extensions/nautilus-file.c (nautilus_file_get_uri): Apparently my current alpha compiler (egcs 1.1.2) is now more sensitive to uninitialized vars. This one is harmless, since there was a g_assert_not_reached for the case where it's uninited. * libnautilus-extensions/nautilus-scalable-font.c (invert_glyph), librsvg/test-ft-gtk.c (invert_glyph): YAIKES! casting to to (int) to get artithmetic. Changed to (long) but that's still Wrong(tm) * src/file-manager/fm-desktop-icon-view.c (get_sort_category): remove the "char *link_type", as it wasn't ever used, it was only freed thus causing havoc
* Implementation of font cache eviction, so font cache is now bounded in size.Raph Levien2000-09-081-37/+100
|
* Workaround for bug 2239, minor tweaks for "attached" font files.Raph Levien2000-09-074-4/+17
|
* Glyph cache evicts glyphs when full. Some mem leaks cleaned up.Raph Levien2000-09-072-4/+99
|
* Fix all the warnings -Wuninitialized found. Quite a number of them werePavel Cisler2000-09-054-78/+110
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2000-09-05 Pavel Cisler <pavel@eazel.com> * components/help/converters/gnome-db2html2/gdb3html.c: (xml_parse_document): * components/help/hyperbola-nav-index.c: (end_element): * components/services/summary/nautilus-view/nautilus-summary-view.c : (logout_button_cb): * components/services/time/service/trilobite-eazel-time-service.c: (trilobite_eazel_time_service_do_http_request): * components/tree/nautilus-tree-view.c: * configure.in: * libnautilus-extensions/bonobo-stream-vfs.c: (bonobo_stream_vfs_open): * libnautilus-extensions/nautilus-background.c: (nautilus_background_draw), (nautilus_background_draw_aa): * libnautilus-extensions/nautilus-customization-data.c: (nautilus_customization_data_new): * libnautilus-extensions/nautilus-directory-background.c: (nautilus_directory_background_write_desktop_settings): * libnautilus-extensions/nautilus-file-operations.c: (nautilus_file_operations_move_to_trash), (do_empty_trash): * libnautilus-extensions/nautilus-file.c: (nautilus_file_dump): * libnautilus-extensions/nautilus-icon-canvas-item.c: (draw_or_measure_label_text), (emblem_layout_next): * libnautilus-extensions/nautilus-icon-factory.c: (get_image_from_cache): * libnautilus-extensions/nautilus-icon-text-item.c: (iti_paint_text): * libnautilus-extensions/nautilus-list.c: (draw_cell), (draw_row): * libnautilus-extensions/nautilus-mime-actions.c: (nautilus_mime_add_application_to_short_list_for_uri): * libnautilus-extensions/nautilus-program-chooser.c: (program_file_pair_get_short_status_text), (program_file_pair_get_long_status_text): * libnautilus-extensions/nautilus-program-choosing.c: (nautilus_choose_component_for_file), (nautilus_choose_application_for_file): * libnautilus-extensions/nautilus-scalable-font.c: (nautilus_scalable_font_draw_text_lines_with_dimensions): * libnautilus-extensions/nautilus-theme.c: (nautilus_theme_make_selector): * librsvg/rsvg-ft.c: (rsvg_ft_get_glyph): * librsvg/test-ft-gtk.c: (set_text): * librsvg/test-ft.c: (save_pixbuf_to_file_internal), (save_pixbuf_to_file): * librsvg/test-rsvg.c: (save_pixbuf_to_file_internal), (save_pixbuf_to_file): * src/file-manager/fm-directory-view.c: (display_pending_files), (compute_menu_item_info): * src/file-manager/fm-icon-view.c: (compute_menu_item_info): * src/file-manager/fm-list-view.c: (get_column_from_attribute): * src/nautilus-application.c: (nautilus_application_startup): * src/nautilus-search-bar-criterion.c: (nautilus_search_bar_criterion_next_new), (nautilus_search_bar_criterion_get_location), (get_date_modified_location_for): * src/nautilus-sidebar-tabs.c: (draw_one_tab_themed), (draw_or_layout_all_tabs): * src/nautilus-toolbar.c: (nautilus_toolbar_size_allocate): * src/nautilus-window-manage-views.c: (nautilus_window_get_current_location_title): * test/test-nautilus-label.c: (justification_changed_callback): Fix all the warnings -Wuninitialized found. Quite a number of them were actual bugs. Turn on -Wuninitialized in configure.in now that ORBit generates warning-free code.
* Add a band aid fix for the unknown character problem when trying to indexRamiro Estrugo2000-09-051-0/+9
| | | | | | | * librsvg/rsvg-ft.c: (rsvg_ft_render_string): Add a band aid fix for the unknown character problem when trying to index glyphs from a font face. I filed a bug for this issue: 2775.
* Work on task 1588.Ramiro Estrugo2000-09-045-7/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * libnautilus-extensions/nautilus-scalable-font.c: (nautilus_scalable_font_measure_text), (nautilus_scalable_font_draw_text), (nautilus_scalable_font_measure_text_lines), (nautilus_scalable_font_draw_text_lines), (nautilus_scalable_font_measure_text_lines), (nautilus_scalable_font_draw_text_lines), (nautilus_scalable_font_largest_fitting_font_size): * libnautilus-extensions/nautilus-scalable-font.h: Change api to accept a string with embedded new lines instead of an array of strings. This simplifies many things. * libnautilus-extensions/nautilus-label.c: (nautilus_label_initialize), (nautilus_label_destroy), (render_buffer_pixbuf), (label_recompute_line_geometries): Update for NautilusScalalbleFont api changes. No longer need to tokenize the text string. we can feed the string to the rendering api as is. * librsvg/rsvg-ft.c: (rsvg_ft_render_string): * librsvg/rsvg-ft.h: Change the string to glyph rendering api to accept the string length rather than computing it. This makes it possible to feed it arbitrary lengths. * librsvg/rsvg.c: (rsvg_text_handler_characters): * librsvg/test-ft-gtk.c: (draw_line): * librsvg/test-ft.c: (main): Update for api changes. * src/nautilus-about.c: (draw_aa_string): * src/nautilus-sidebar-tabs.c: (draw_one_tab_plain), (draw_one_tab_themed), (get_tab_width): * test/test-nautilus-font.c: (main): Update test to use text lines drawing api. * test/test-nautilus-label.c: (alpha_background_color_value_changed_callback), (main): Update test for 2 new lines in a row.
* Update for changes in librsvg glyph_xy return values.Ramiro Estrugo2000-08-211-5/+9
| | | | | | * librsvg/test-ft.c: (main): Update for changes in librsvg glyph_xy return values.
* use xml memory allocation/deallocation routines for strings which areGeorge Lebl2000-08-201-3/+4
| | | | | | | | | | | | | | | | | | Sat Aug 19 23:43:23 2000 George Lebl <jirka@5z.com> * librsvg/rsvg.c (rsvg_ctx_free_helper) (rsvg_entity_decl): use xml memory allocation/deallocation routines for strings which are allocated/deallocated inside libxml to make glib memory checking not crash * libnautilus-extentions/nautilus-gnome-extentions.[ch]: add a function nautilus_gnome_stock_set_icon_or_register which does the GnomeStock voodoo for setting stock toolbar icons to arbitrary files * src/nautilus-window-toolbars.c (set_up_button): Use the nautilus_gnome_stock_set_icon_or_register function as per Darin's FIXME which thus got removed.
* Use g_strdup instead of strdup (get_CPU_description): Free allocated dataGeorge Lebl2000-08-191-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fri Aug 18 21:22:17 2000 George Lebl <jirka@5z.com> * components/hardware/nautilus-hardware-view.c (read_proc_info) (extract_info) (get_CPU_description) (get_RAM_description): Use g_strdup instead of strdup (get_CPU_description): Free allocated data when returning due to an error * components/music/nautilus-music-view.c (nautilus_music_view_update_from_uri): Initialize clist_entry in a loop, use g_strdup_printf instead of malloc and sprintf, and properly free allocated data after use * components/services/inventory/lib/eazel-inventory-shared.c (read_proc_info) components/services/inventory/nautilus-view/nautilus-inventory-view.c (gather_config_button_cb) libnautilus-extensions/nautilus-string.c (nautilus_str_middle_truncate) librsvg/rsvg.c (rsvg_ctx_free): Use g_strdup instead of strdup and g_free instead of free to prevent crashes with glib compiled with --enable-mem-check * src/file-manager/Makefile.am, src/file-manager/nautilus-indexing-info.[ch], src/file-manager/fm-search-list-view.c (indexing_info_callback) (real_merge_menus): Bug #1369: Add a dialog for indexing info to the file menu. The dialog shows the last time the indexing was done and allows to update the indexes. Only shown on the file search result dialog
* Fixed a libart bug that triggers when rendering into an rgb buffer withoutRaph Levien2000-08-152-5/+4
| | | | an alpha channel (ie if has_alpha=0 in rsvg_start_svg).
* Some nice GUI instrumentation for speed testing in test-ft-gtk.c.Raph Levien2000-08-142-21/+178
|
* Got glyph cache working. test-ft-gtk now displays impressive speed.Raph Levien2000-08-134-60/+217
|
* Made test-ft-gtk display the entire window worth of text. Boy, doesRaph Levien2000-08-132-3/+11
| | | | performance suck! That will change soon enough, though :)
* Made this local function static to avoid warnings.Maciej Stachowiak2000-08-131-1/+1
| | | | | * librsvg/test-ft-gtk.c (set_text): Made this local function static to avoid warnings.
* Added a Gtk+ test framework for rsvg-ft.Raph Levien2000-08-135-1/+338
|
* Only bugfixes so I suspect I'm allowed to check these in.George Lebl2000-08-043-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | -George Fri Aug 04 14:21:51 2000 George Lebl <jirka@5z.com> * components/hardware/nautilus-hardware-view.c (setup_form_title): Check result of gnome_pixmap_file. If NULL, we can't make a new gnome-pixmap. * components/help/converters/gnome-db2html2/sect-elements.c (sect_get_infobox_logo) (sect_infobox_start_element): sect_get_infobox_logo can return a NULL so check its return and if NULL just add %s instead of <IMG ...> * components/services/vault/command-line/vault-operations.c, libnautilus-extensions/nautilus-list.c: add #include <string.h> * cut-n-paste-code/freetype/ftcalc.h, cut-n-paste-code/freetype/ftconfig.h: Well even though this is cut and paste code I NEED to add this patch for it to even compile on alpha, I'll try to get this upstream. The only changes are inside #ifdefs on platforms where long is 64 bit so it should not affect intel code at all. * libnautilus-extensions/nautilus-file-utilities.c (nautilus_format_uri_for_display): use g_strdup instead of strdup as then g_free is used and this would really confuse glib in memory checking mode. * librsvg/art_render_mask.c, librsvg/rsvg-bpath-util.c, librsvg/rsvg-ft.c: add #include <string.h> * src/Makefile.am: define NAUTILUS_PIXMAPDIR. This is neccessary for both making the tarballs and actual code sanity on switching toolbar themes etc. In GNOME 2.0 the GNOME_PATH can be sanely used to allow relocatable nautilus binary, but in 1.[02] this is the correct way to do things. * src/nautilus-complex-search-bar.c (nautilus_complex_search_bar_initialize) (load_find_them_pixmap_widget): If we can't load pixmaps don't add them. Also don't hardcode "/gnome/share" prefix and use the NAUTILUS_PIXMAPDIR define to find search.png AND make sure we can load it before using it. * src/nautilus-window-toolbars.c (find_toolbar_child) (setup_button) In toolbar_info use the NAUTILUS_PIXMAPDIR define to find pixmaps. remove get_stock_callback and get_stock_widget as those functions were an incredible hack and were likely to break. Replace with a function which searches the toolbar children and then finds correct icon widget. It also doesn't do anything if there is no icon. In setup button, use NAUTILUS_PIXMAPDIR to define pixmaps by their full name. If we cannot set the stock widget icon, then the icon is not registered and we register it with gnome-stock. Miraculously the current code worked but only worked because the eazel theme was set up in the toolbar_info, other themes with outside images would break.
* Fix a small bug where a font entry was found in the table, but it wasntRamiro Estrugo2000-08-022-16/+47
| | | | | | | | | | | | | | | * librsvg/rsvg-ft.c: (rsvg_ft_intern), (rsvg_ft_font_resolve), (rsvg_ft_render_string): Fix a small bug where a font entry was found in the table, but it wasnt returned. Quiet down debug noise. * librsvg/test-ft.c: (glyph_render_test), (main): Add some options and make affine transformation a simple identity to help debug the coordinates of the rendered text.
* Fix a dumb typo i introduced in my last checkin.Ramiro Estrugo2000-07-271-1/+1
| | | | | | * librsvg/Makefile.am: Fix a dumb typo i introduced in my last checkin.
* Make the cut-n-paste libraries be only static archives. Link all theRamiro Estrugo2000-07-261-29/+21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Makefile.am: * components/hardware/Makefile.am: * components/help/Makefile.am: * components/history/Makefile.am: * components/html/Makefile.am: * components/loser/content/Makefile.am: * components/loser/sidebar/Makefile.am: * components/music/Makefile.am: * components/notes/Makefile.am: * components/rpmview/Makefile.am: * components/services/install/nautilus-view/Makefile.am: * components/services/inventory/nautilus-view/Makefile.am: * components/services/login/nautilus-view/Makefile.am: * components/services/startup/nautilus-view/Makefile.am: * components/services/summary/nautilus-view/Makefile.am: * components/services/time/nautilus-view/Makefile.am: * components/services/trilobite/sample/nautilus-view/Makefile.am: * components/services/vault/nautilus-view/Makefile.am: * components/tree/Makefile.am: * components/websearch/Makefile.am: * cut-n-paste-code/widgets/e-paned/Makefile.am: * cut-n-paste-code/widgets/nautilus-druid/Makefile.am: * helper-utilities/authenticate/Makefile.am: * libnautilus-extensions/Makefile.am: * librsvg/Makefile.am: * src/Makefile.am: * test/Makefile.am: Make the cut-n-paste libraries be only static archives. Link all the private libraries statically into libnautilus-extensions. Remove all the references to private libraries in all the components and other users of libnautilus-extensions so that dependencies can be managed in just one place.
* Ignore generated test-ft file.Ramiro Estrugo2000-07-201-0/+2
| | | | | * librsvg/.cvsignore: Ignore generated test-ft file.
* Build this beast only as a static library and dont install any of itsRamiro Estrugo2000-07-201-8/+20
| | | | | | | | | | * cut-n-paste-code/freetype/Makefile.am: Build this beast only as a static library and dont install any of its headers. * librsvg/Makefile.am: Link in the cut-and-pasted freetype lib statically into librsvg to avoid having its clients having a depenency on freetype.
* Initial checkin of freetype integration with rsvg.Raph Levien2000-07-2012-32/+1656
|