added attach point attribute to the icon canvas item, and used
it to derive the emblem positions if present. Tweaked the
emblem positions in the xml file. Cleaned up the attach point
stuff in the icon factory.
* src/nautilus-sidebar-tabs.c: (draw_or_hit_test_all_tabs):
Fixed an uninitialized variable problem that caused a crash on
boot for Kai Lahmann (thanks for the help, Kai).
* libnautilus-extensions/nautilus-file.c:
(nautilus_file_compare_for_sort_internal):
(nautilus_file_get_string_attribute), Got rid of "real_name"
and made "name" just do what "real_name" did before. Renamed
"real_directory" to just "directory".
* src/file-manager/fm-list-view.h:
* src/file-manager/fm-list-view-private.h:
* src/file-manager/fm-list-view.c: (fm_list_view_initialize_class),
(fm_list_view_initialize), (fm_list_view_destroy),
(fm_list_view_compare_rows), (compare_rows_by_name),
(match_row_name), (select_matching_name_callback),
(fm_list_nautilus_file_at), (row_get_data_binder),
(fm_list_get_drag_pixmap), (create_list), (set_up_list),
(add_to_list), (get_list), (fm_list_view_begin_loading),
(fm_list_view_set_zoom_level), (fm_list_view_sort_items),
(get_column_from_attribute), (get_sort_column_from_attribute),
(install_row_images), (update_icons),
(fm_list_view_embedded_text_policy_changed),
(fm_list_view_image_display_policy_changed),
(get_number_of_columns), (get_link_column),
(get_column_specification), (get_column_titles),
(get_column_attribute), (get_column_sort_criterion),
(fm_list_view_column_set), (real_get_number_of_columns),
(real_get_link_column), (real_get_column_specification):
* src/file-manager/fm-search-list-view.h:
* src/file-manager/fm-search-list-view.c:
(fm_search_list_view_initialize_class),
(fm_search_list_view_initialize), (real_get_number_of_columns),
(real_get_link_column), (real_get_column_specification):
Refactored the list view code so that the search list view
doesn't have to replicate anything and can just describe the
differences between it and the non-search list view. I was
able to get rid of a lot of complexity while doing this.
Changed to use the new "name" and "directory" instead of the
old "real_name" and "real_directory" at the same time.
* libnautilus-extensions/nautilus-file.c:
(nautilus_file_new_from_name), (nautilus_file_get), (destroy),
(nautilus_file_is_self_owned),
(nautilus_file_get_parent_uri_as_string),
(get_file_for_parent_directory), (nautilus_file_rename),
(nautilus_file_get_gnome_vfs_uri),
(nautilus_file_get_uri), (nautilus_file_mark_gone),
(nautilus_file_changed):
* libnautilus-extensions/nautilus-directory-private.h:
* libnautilus-extensions/nautilus-directory-async.c:
(select_needy_file):
Redid the "self-owning" file handling (for URIs with no parent) so
that a URI doesn't show up as one of its own children.
* libnautilus-extensions/nautilus-directory.c:
(nautilus_directory_is_search_directory):
Took out "gnome-trash:" which doesn't belong in here. We are doing
trash at the NautilusDirectory level, not the gnome-vfs level.
* icons/arlo/backgrounds/.cvsignore: [added]
* icons/arlo/backgrounds/Makefile.in: [removed]
Added the missing cvsignore file and got rid of the Makefile.in,
which should not be in cvs.
fixed bug 1408, where thumbnail frames had the wrong shadow. Fixed
by maintaining two versions of the thumbnail, for the aa and non-aa
cases. Also, create the frame from an image instead of drawing
commands.
* icons/arlo/backgrounds/
* icons/arlo/backgrounds/Makefile.am
* icons/arlo/backgrounds/window_pattern.png
* icons/arlo/backgrounds/window_pattern.png
Added a folder in my theme directory that will contain
default patterns for the "Teal" theme along with two patterns
to get it started.
* icons/arlo/side_bar_images/fill-active.png
* icons/arlo/side_bar_images/fill-prelight.png
* icons/arlo/side_bar_images/fill.png
* icons/arlo/side_bar_images/middle-normal-normal.png
* icons/arlo/side_bar_images/middle-normal-prelight.png
* icons/arlo/side_bar_images/middle-prelight-normal.png
I changed the height of these images to match the design.
2000-07-27 Arlo Rose <arlo@eazel.com>
* data/backgrounds/*.png
* icons/eazel/*.png
I fixed all the png files in these directories that
contained the bad white point.
2000-07-27 Gene Z. Ragan <gzr@eazel.com>
Fixed bug #1775, add home directory to desktop.
* icons/Makefile.am:
Added temp-home.png. This is a temp icon file.
* src/file-manager/fm-desktop-icon-view.c: (mount_device_mount),
(place_home_directory), (create_desktop_link):
Add users name and default icon to home directory link
on desktop. Change create_mount_link to more generic
create_desktop_link.
fixed bug where the increment and decrement images of the zoom
control were not being erased at the extremes; also, added ability
to use custom numbers via a number strip image.
added arlo's zoom control and adjusted the zoom control class
to work properly with a wider range of images. also added
a zoom control from Bud to experiment with in the vector theme
2000-07-25 Arlo Rose <arlo@eazel.com>
* icons/Makefile.am:
* icons/emblem-trash.png
Added the Trash emblem for items found in the trash by a search.
It will change in the future when/if I clean up or change the
real trash can icon.
finished task 1442, zoom control needs to be themable. Added code
to update the control when the theme changes, and an alternate
magnifying glass image to the eazel theme for testing.
reorganized the menus. Added a user level menu and removed the
settings menu, moving remaining items to the bottom of the edit
menu. Added symbols to reflect the user levels, and made the
menu use the symbol of the current level as it's title.
Tweaked the text box for the eazel theme document icon, too.
added preview icons to eazel and arlo themes, and made
nautilus_theme_get_selector use them. Also, got rid of
explicitly set backgrounds for the panels in the property browser
added code to make sure we use the generic document icon for
text files so that the text-in-icons feature works. Also,
update the non-anti-aliased document icons in the eazel theme so
they're consistent with the anti-aliased ones.
added a mini-icon for Nautilus from Susan. Also, removed the
private hacked version of gdk_pixbuf_render_pixmap_and_mask since
the real version is working properly for images that lack an
alpha channel now.
removed intrinsic property emblem images from browser; added
Susan's new user level images, used new sidebar tab edge piece
in the arlo theme, and made web search force local search off.
added a "web search" button to the toolbar. To do this, I also
had to create a new toolbar subclass to overcome the problem
of using the maximum width for all the buttons.
* src/nautilus-window-toolbars.c: (toolbar_services_callback):
Add a toolbar button to instanciate services. Defaults to off if
EAZEL_SERVICES is not on.
* icons/eazel/Makefile.am:
* icons/eazel/Servics.png:
Add services icon for toolbar.
* components/services/install/command-line/genpkg_list.example:
Represents the july 5th milestone.
(create_default_metadata):
* components/services/install/lib/eazel-install-rpm-glue.c:
(rpm_show_progress), (do_rpm_install),
(eazel_install_fetch_rpm_dependencies):
Added some FIXME's. Fixed a horrible mem bug. It now leaks, but
rpm install works.
* components/services/install/lib/eazel-install-xml-package-list.c:
(parse_package):
Added a check so the strtol isn't a risk anymore
* components/services/trilobite/idl/trilobite-service.idl:
Added the interface for the password query hell.
* components/services/trilobite/libtrilobite/Makefile.am:
*
components/services/trilobite/libtrilobite/trilobite-service-passwo
rdquery-private.h:
*
components/services/trilobite/libtrilobite/trilobite-service-passwo
rdquery-public.h:
*
components/services/trilobite/libtrilobite/trilobite-service-passwo
rdquery.c: (trilobite_passwordquery_get_epv),
(trilobite_passwordquery_destroy),
(trilobite_passwordquery_set_arg),
(trilobite_passwordquery_class_initialize),
(trilobite_passwordquery_construct),
(trilobite_passwordquery_create_corba_object),
(trilobite_passwordquery_initialize),
(trilobite_passwordquery_get_type), (trilobite_passwordquery_new):
Did the initial passwordquery corba object by cp & s/x/y/ on
trilobite-service*[ch].
* data/emblems/Makefile.am:
removed personal.png from _DATA, as it does not exists
* icons/Makefile.am:
removed emblem-personal.svg
* icons/vector/Makefile.am:
icons/Makefile.am
* nautilus-installer/src/Makefile:
* nautilus-installer/src/installer.c: (eazel_install_progress),
(make_dirs), (installer):
Now creates the /var/eazel/services dir. Sets the proper flags for
the install object and again prints the package name during
progress display.
* nautilus-installer/src/interface.c: (create_window):
Fiddled with the layout, everything doesn't jump around anymore,
just a few things.
* nautilus-installer/src/prescript:
Inc'ed the version to 0.1d
fixed long-standing bug where the sidebar tabs would display the
wrong view by decrementing the appropriate index when a view
is removed; gave sidebar views more room and solved the variable
height problem by hiding the sidebar title when a sidebar view
is displayed; reduced slop on splitter to avoid accidental
toggling; and some new images from Susan.
fixed bug where themed sidebar tabs weren't stacking correctly. Fixed
by using the actual tab height instead of the non-themed constant.
Also, added newer tab_pieces image.
an icon). I picked arbitrary existing icons (gnome foot
for "generic bookmark", gnome-foot-question-mark for
"bookmark with known-bad URI"); Arlo and/or Susan will
have to come up with real ones. I'll write a separate
bug report about that.
* icons/i-bookmark.png:
* icons/i-bookmark-20.png:
* icons/i-bookmark-missing.png:
* icons/i-bookmark-missing-20.png: New icons to use
for bookmarks. I supplied the base size and the 20
pixel size because that's the one used in menus, where
bookmarks usually appear. These need to be replaced with
better images.
* icons/Makefile.am: Add new icons to installed set.
* libnautilus-extensions/nautilus-bookmark.h,
* libnautilus-extensions/nautilus-bookmark.c:
(nautilus_bookmark_uri_known_not_to_exist): New public
function, moved some code from elsewhere to encapsulate this.
(nautilus_bookmark_set_icon_to_default): Choose between the
generic and bad-URI icon if there's no better icon.
* src/nautilus-window-menus.c: (activate_bookmark_in_menu_item):
Now calls nautilus_bookmark_uri_known_not_to_exist instead
of doing the work here.
implemented an xml-based general theme mechanism, and used it
for the sidebar backgrounds, which isn't quite working yet. Added
xml files to our themes.
added a nice knob image to use as stretch handles instead of a
black rectangle. Right now it only uses it in aa mode and they
need to be positioned better. Also, added search button to
toolbar theming mechanism.
2000-06-16 Arlo Rose <arlo@eazel.com>
* icons/eazel/search.png
* icons/About_Image.png
Fixed the invalid white point error on out about image.
Made the "Eazel Theme" search icon look like an icon Susan
would have done.
2000-06-16 Rebecka Schulman <set EMAIL_ADDRESS environment variable>
* icons/eazel/Search.png:
Added search icon to toolbar, courtesy of Arlo.
It still has graphics issues, we will try and iron
those out
* libnautilus-extensions/nautilus-global-preferences.c:
(global_preferences_create_dialog),
(global_preferences_register_for_ui):
Changed the word on the search preferences
added new icons from Susan, and fixed bug where images with
special chars (like blanks) in their name wouldn't get displayed
as custom icons properly by unescaping their uri.
corrected scale factor used for vector icons, and updated the
icons in the vector them to be the proper size. Also, some work
on link set configurations that isn't completed yet, and allowed
the sidebar to be reduced to a very small width to get started with
the upcoming rework.
generalized toolbar icon themes to support any number, and
reorganized appearance preference panel to group the icon theme
selectors together. Also, added a cleaner version of the zoom icon.
* data/linksets/desktop.xml:
* icons/Makefile.am:
* icons/trash.png: [removed]
Changed to use the new trash icon Arlo checked in and removed
the old one.
* components/services/install/idl/.cvsignore:
* components/services/time/idl/.cvsignore:
Ignore some Makefile and Makefile.in files.
* data/linksets/Makefile.am:
* data/linksets/desktop.xml:
Added a link set for the trash on the desktop.
* icons/Makefile.am:
Added a trash icon (actually a copy of the Nautilus icon right
now :-).
* libnautilus-extensions/nautilus-link-set.h:
* libnautilus-extensions/nautilus-link-set.c: (create_new_link),
(nautilus_link_set_install), (nautilus_link_set_remove):
Fixed some URI-related issues and added a special case for the ~
character so we can have link sets that are for the home directory.
* libnautilus-extensions/nautilus-string.c:
(nautilus_str_capitalize): Got rid of the unneeded call to strlen.
strlen == 0 is the slowest way I know to check for an empty string.
Also check islower before calling toupper for paranoia like the
calls in glib do (internally).
* src/nautilus-desktop-window.c: (nautilus_desktop_window_new):
Install the desktop link set when we are created. For now this
installs the trash (in a fairly lame way).
* src/nautilus-property-browser.c: (remove_color),
(add_color_to_file), (make_properties_from_xml_node),
(nautilus_property_browser_update_contents):
Changed code to not reference "childs" directly so it's easy to
switch to a new version of gnome-xml.
* test/.cvsignore: Ignore test-nautilus-mime-actions-set.
made linksets actually work.
fixed audio previewing for filename with special characters
made links work for filenames with special characters
added some icons for the default link set
fixed problem where sounds with special characters in their filename
wouldn't preview properly; also, replace the computer link icon with
a more generic, vector-based one and upgraded the open folder to
one with gradients
2000-05-23 Arlo Rose <arlo@eazel.com>
* icons/Makefile.am:
* src/nautilus-window-menus.c: (help_menu_about_nautilus_callback):
* icons/nautilus3.jpg
* icons/About_Image.png
Added new about image, and a few names to the about box
that were missing.
fixed task 514, show file/folder permissions with emblems. Added
Susan's images for "can't read" and "can't write", and made
get_emblem_names return their names when appropriate
added an up arrow on the property browser title bar to act as an
affordance for go back; also, made add background check the
mime type of the file selection and only add it if it's an image
stop showing embedded text. Too bad you can't see it in
action until embedded text is turned back on.
* icons/eazel/i-regular.xml: Added an embedded-text rectangle
for one size smaller icon than had one before.
* libnautilus-extensions/nautilus-icon-factory.c:
Added #defines for minimum embedded text rectangle width
and height.
(embedded_text_rect_usable): New function, ensures that the
embedded text rectangle is sufficiently large.
(nautilus_icon_factory_embed_text),
(nautilus_icon_factory_embed_file_text): Use new function to
skip embedded text if rectangle is nonexistent or too small.
* src/file-manager/fm-icon-view.c:
(get_icon_images_callback): Removed the text-rectangle size
limit here since now there's a universal one inside
nautilus_icon_factory.
added framework for using custom images to reflect highlight state;
used it to make folders reflect drop-highlighting by opening (just
in eazel theme for now)
embedded text fits in each icon.
* icons/eazel/Makefile.am, icons/eazel/i-regular.xml: Added the
file to specify attributes of icons. Specifically added the
attribute that says there is space for embedded text in the
Eazel-theme regular icon.
* libnautilus/nautilus-icon-factory.h:
* libnautilus/nautilus-icon-factory.c:
(get_child_node_by_property), (get_themed_icon_file_path),
(get_icon_file_path), (nautilus_icon_factory_get_thumbnail_uri),
(load_specific_image), (load_image_for_scaling),
(get_image_from_cache), (load_image_scale_if_necessary),
(nautilus_icon_factory_get_pixbuf_for_icon),
(nautilus_icon_factory_get_pixbuf_for_file):
Added code to read a rectangle for the embedded text along with
the icon, cache it with the icon, scale it with the icon, and
return it to the caller along with the icon.
* libnautilus/nautilus-icons-view-icon-item.c:
(nautilus_icons_view_icon_item_initialize_class),
(nautilus_icons_view_icon_item_set_arg),
(nautilus_icons_view_icon_item_get_arg),
(nautilus_icons_view_icon_item_get_image),
(nautilus_icons_view_icon_item_set_image),
(nautilus_art_irect_to_gdk_rectangle),
(draw_mini_text), (draw_embedded_text),
(nautilus_icons_view_icon_item_draw):
Changed the code that draws the embedded text to respect the
text rectangle passed in. Changed the pixbuf setting to use a
function instead of the arg interface and take a text rectangle
along with the pixbuf.
* libnautilus/gnome-icon-container-dnd.c
(gnome_icon_container_dnd_begin_drag):
* libnautilus/gnome-icon-container.c:
(icon_get_actual_size): Got rid of callers who were using the arg
interface to get at the image of an icon
("NautilusIconsViewIconItem::pixbuf").
* src/file-manager/fm-directory-view-icons.c:
(get_icon_property_cb): Get rid of hard-coded rule that only
themes with eazel at the front of their names can display text
inside the icons.
* libnautilus/gnome-icon-container.c:
(icon_new): Fixed a bug where icons would be super-tiny if they
got too big, like if you entered a directory that was zoomed all
the way in.
(start_stretching), (ungrab_stretch_icon), (end_stretching),
(gnome_icon_container_show_stretch_handles): Added code to grab
the pointer while stretching an icon.
(item_event_cb): Added a return statement that John forgot when
he was editing. Without that, it was falling through to the next
case, which had the same effect anyway.
(update_icon): Pass the text rectangle through from the icon
factory to the icon canvas item, using the new call instead of the
old arg interface approach.
* components/help/.cvsignore: Added entries for
.la and .lo files.
* components/help/Makefile.am:
* components/help/hyperbola-nav-index.c:
* components/help/hyperbola-nav-search.c:
* libnautilus/nautilus-directory-private.h:
* libnautilus/nautilus-directory.c:
* src/nautilus-bookmarklist.c:
Fixed flags for gnome-xml
includes. Someone pointed out that you are supposed to include
these as "#include <tree.h>", not "#include <gnome-xml/tree.h>" so
I fixed our uses to work that way.
* libnautilus/nautilus-directory.c:
(nautilus_directory_get_file_metadata_node): Fixed code that was
destroying something allocated by gnome-xml with g_free instead
of xmlFree.
* libnautilus/nautilus-file.c:
(nautilus_file_get_keywords), (nautilus_file_set_keywords):
Fixed storage leak where we were getting a property and not freeing it.
* libnautilus/nautilus-default-file-icon.h:
* libnautilus/nautilus-default-file-icon.c:
* libnautilus/nautilus-icon-factory.c:
(load_image_for_scaling): Got rid of the global that tells whether
the default icon has an alpha channel -- it's not hardwired TRUE.
* libnautilus/nautilus-directory.h,
libnautilus/nautilus-directory.c (get_file_metadata_node),
(nautilus_directory_get_file_metadata),
(nautilus_file_get_keywords): Added nautilus_file_get_keywords,
which returns a GList of keywords.
* libnautilus/nautilus-icon-factory.c (add_size_to_image_name),
(get_themed_icon_file_path), (get_icon_file_path), (add_emblem),
(nautilus_icon_factory_get_emblem_icons_for_file): Changed icon
names to not include the extension and wired some extensions into
the icon-reading code. The old code wired the entire file name, so
this is a bit more flexible. Added code to return an emblem for
each keyword attached to a file as well as the symbolic link emblem.
* libnautilus/gnome-icon-container.c (update_icon): Handle NULL
pixbufs for emblems. This happens when a keyword is specified that
doesn't have a corresponding emblem icon. Add g_list_reverse call
to keep emblems in the correct order.
* src/file-manager/fm-directory-view-icons.c
(fm_directory_view_icons_merge_menus): Took out g_message left
over from Bonobo menu merge work.
* libnautilus/nautilus-glib-extensions.h,
libnautilus/nautilus-glib-extensions.c
(nautilus_g_list_free_deep): Added convenience function for
getting rid of a GList of things that can be freed with g_free.
* icons/Makefile.am, icons/certified.gif, icons/changed.gif,
icons/confidential.gif, icons/emblem-certified.gif,
icons/emblem-changed.gif, icons/emblem-confidential.gif,
icons/emblem-encrypted.gif, icons/emblem-important.gif,
icons/emblem-new.gif, icons/emblem-personal.gif,
icons/emblem-remote.gif, icons/emblem-symbolic-link.png,
icons/encrypted.gif, icons/i-symlink.png, icons/important.gif,
icons/new.gif, icons/personal.gif, icons/remote.gif:
Changed all emblem icons to have names that start with "emblem-".
implemented text in icons feature, for eazel-style icons only
also, added multiple sizes of large gnome-style standard document
icons contributed by Kenneth Christiansen
So for example you can have an icon designed for the 96x96
size, which is called i-directory-96.png, and it will be
loaded instead of loading i-directory.png and scaling it.
* libnautilus/nautilus-icon-factory.c:
(nautilus_icon_factory_get_icon_name_for_regular_file),
(add_size_to_icon_name), (nautilus_icon_factory_load_icon),
(nautilus_icon_factory_create_image_for_item),
(get_larger_icon_size), (get_smaller_icon_size),
(get_next_icon_size_to_try), (load_specific_image),
(load_image_for_scaling), (load_image_scale_if_necessary),
(nautilus_icon_factory_mark_recently_used), (mark_recently_used),
(nautilus_icon_factory_get_pixbuf_for_icon),
(get_image_from_cache), (nautilus_icon_factory_scale): Changed the
icon factory so it will look for icons of multiple resolutions and
scale the nearest. Also made other improvements including sharing
a single fallback icon instead of making multiple ones, using the
"core-dump" icon for files named "core", adding some additional
g_return_if_fail.
* libnautilus/nautilus-icon-factory.c:
(self_test_next_icon_size_to_try),
(nautilus_self_check_icon_factory):
* libnautilus/nautilus-lib-self-check-functions.h:
The new code needed a bit of self-check code, so I added it.
* libnautilus/nautilus-directory.c:
(nautilus_directory_try_to_read_metafile),
(nautilus_directory_construct_alternate_metafile_uri):
Since "make check" was failing, I checked to see what was wrong.
The code that was respecting the new "valid_fields" part of
GnomeVFSFileInfo was looking at the wrong field (flags instead
of valid_fields), which caused all metafile reading to fail.
While debugging this, I noticed that the alternate metafiles
had particularly bad long names, so I fixed that too.
* libnautilus/nautilus-directory.c: (nautilus_file_ref):
* libnautilus/nautilus-glib-extensions.c:
(nautilus_strdup_strftime):
* libnautilus/nautilus-string.c: (nautilus_string_to_int):
Switched from using <limits.h> constants to the ones from
<glib.h>. I have no idea why I made this change. All hail
glib! C Standard be damned!
* fm-directory-view.c:
(use_eazel_theme_icons_cb), (add_menu_item),
(fm_directory_view_real_append_background_context_menu_items):
Started on a user interface to switch to the Eazel theme
icons so you can see the multiple-resolution icons, but
I wanted to check in, so I stopped before it was done.
* src/nautilus-index-title.c:
Reindented Andy's new code to match the emacs mode header.
* configure.in:
* icons/Makefile.am:
* icons/eazel/.cvsignore:
* icons/eazel/Makefile.am:
* icons/eazel/i-directory-24.png:
* icons/eazel/i-directory-36.png:
* icons/eazel/i-directory-72.png:
* icons/eazel/i-directory-96.png:
* icons/eazel/i-directory.png:
I needed some variable-size icons to demonstrate the multiple
resolution support in the icon factory, so I added a few
directory icons from gnomad. Since these don't match the other
icons, I made them part of an "eazel" icons theme.
* RENAMING: Some new name ideas.