2003-04-28 Jens Finke <jens@triq.net>
* libeog/eog-full-screen.c (show_next_image): Free images only if
we have more than three.
(eog_full_screen_instance_init): Actually, do fullscreen again
(erm, forgot my testing code :)
(check_advance_loading): Initiate image loading only, if it hasn't
been loaded yet.
* libeog/eog-image.[ch] (real_image_load): Removed assert for now
so that we don't crash eventually with exif support enabled. Spew
out a warning only. Should be fixed though.
(eog_image_is_loaded): New function.
2003-04-27 Jens Finke <jens@triq.net>
* libeog/eog-full-screen.c: Queue the images to load and load one
by one. Simplified the code.
* libeog/eog-image.[ch] (eog_image_new_uri),
(eog_image_new): Removed load mode parameter.
(eog_image_load): Removed return parameter. Instead, emit load
finished signal if the image is already loaded.
(eog_image_free_mem): Set load status to none.
* libeog/eog-info-view.c (eog_info_view_set_image):
* viewer/eog-image-view.c (load_uri_cb):
* collection/eog-collection-model.c (directory_visit_cb):
(real_file_loading): Removed load mode paramter for eog_image_new.
* libeog/eog-scroll-view.c (eog_scroll_view_set_image): Removed
the special case when an image is already loaded. Submit
LOAD_DEFAULT to eog_image_load.
2003-04-12 Jens Finke <jens@triq.net>
Support for list of recent files.
* configure.in (AC_OUTPUT): Added shell/recent-files/Makefile
* shell/Makefile.am: Build and link against recent files helper
library.
* shell/eog-shell-ui.xml: Placeholder for list of recent files.
* shell/eog-window.c (open_recent_cb): New function.
(eog_window_destroy): Free recent model/view.
(eog_window_construct): Setup recent file objects.
(eog_window_open_list): Add file to the list of recently opened
files.
2003-04-06 Jens Finke <jens@triq.net>
* viewer/eog-full-screen.c (check_cursor_hide),
(eog_full_screen_motion): Use simple counter to determine when the
pointer should be hidden.
2003-04-06 Jens Finke <jens@triq.net>
* libeog/cursors.c: Added invisible cursor data.
(cursor_get): Made it a non public function.
(cursor_set): New function, which directly set the desired cursor
for the widget.
* libeog/cursors.h: New cursor types: CURSOR_INVISBLE and
CURSOR_DEFAULT.
* libeog/eog-full-screen.c: Implemented automatic cursor
hiding. Fixes#92184.
(check_cursor_hide),
(eog_full_screen_motion): New functions.
(eog_full_screen_show): Init cursor hiding stuff.
(eog_full_screen_class_init): Register mouse motion event
callback.
* libeog/eog-scroll-view.c (check_scrollbar_visibility): Set
cursor type according to the state of the scrollbars.
(is_image_movable): New function.
(eog_scroll_view_button_press_event): Use cursor_set, set it only
if the image is movable.
(eog_scroll_view_button_release_event): Use cursor_set.
2003-04-02 Federico Mena Quintero <federico@ximian.com>
* libeog/eog-image.c (real_image_load): Use a macro rather than a
hardcoded value for the buffer size. Also, increased it to 64 KB
so that we don't do so many system calls.
2003-04-02 Federico Mena Quintero <federico@ximian.com>
* libeog/eog-scroll-view.c (eog_scroll_view_get_image_size):
"*width = *height = 0", not "width = height = 0".
(NUM_IMAGE_CALLBACKS): Use a macro rather than a hardcoded value
for the number of signals we connect to.
(ZoomMode): Use an enum rather than ints.
(ProgressiveState): Likewise.
(update_scrollbar_values): Use gtk_adjustment_changed() rather
than emitting signals for the adjustments directly.
(set_zoom): Use NULL, not 0, when calling
check_scrollbar_visibility().
(display_key_press_event): Likewise.
(display_map_event): Likewise.
(image_loading_update_cb): Likewise.
(image_loading_finished_cb): Likewise.
(image_changed_cb): Likewise.
(eog_scroll_view_zoom_fit): Likewise.
(eog_scroll_view_set_image): Likewise.
(check_scrollbar_visibility): We don't use the return value
anywhere, so make it return void.
(is_unity_zoom): Take in an EogScrollView, not a private
structure.
(pack_pixbuf): Removed.
(paint_rectangle): Compute the background color correctly for the
TRASNP_BACKGROUND case.
(scroll_to): Use gtk_adjustment_value_changed() rather than
emitting signals for the adjustments directly.
(compute_center_zoom_offsets): Do not allow negative offsets so
the image doesn't creep to the right when we zoom down at the
upper left corner.
(set_zoom_fit): Set the new offsets before emitting the signal.
(display_map_cb): Removed.
(eog_scroll_view_new): Do not make the whole table non-double-buffered.
* libeog/eog-scroll-view.h (TransparencyStyle): Rename
TRANSP_CHECKEDPATTERN to TRANSP_CHECKED.
2003-03-30 Jens Finke <jens@triq.net>
* collection/eog-collection-item.c (set_pixbuf): Removed
free_pixbuf flag; calculate image position more simple.
(eog_collection_item_construct): Add invisble frame around an
pixbuf to ensure same size for all items.
2003-03-23 Jens Finke <jens@triq.net>
* collection/main.c (main): Check if the factory is already registered,
before registering a new one.
* shell/eog-window.c (eog_window_open_list): Save first loaded
uri, for session recovery (this works in most common cases, but
needs some fixing in case we load multiple uris in one window,
eg. collection view).
2003-03-20 Shivram U <shivaram.upadhyayula@wipro.com>
* viewer/main.c (main): Check if the factory is already registered,
before registering a new one.
2003-03-20 Jens Finke <jens@triq.net>
* eog.glade: Set untranslated title for color picker dialog.
* eog.gladep: Don't output translatable strings in extra file.
* po/POTIFLES.in: Added eog-info-view.c, removed
eog-collection-control.c, eog-collection-preferences.c,
eog-image-helper.c
* po/POTFILES.skip: Removed most of the files in the collection
dir, added GNOME_EOG_Collection.server.in, viewer/eog-image-io.c
2003-03-20 Jens Finke <jens@triq.net>
* eog.glade: Higified the preferences dialog and added a
preliminary page for the slideshow component.
* eog-glade.h: Removed from cvs (we list the glade file in
POTFILES.in directly).
* eog-preferences.c (key_press_cb): Removed. Ignore ESC key,
fixes#105720.
(eog_preferences_show): Open HIGified glade dialog.
2003-03-18 Federico Mena Quintero <federico@ximian.com>
* configure.in: Require eel 2.2.0 or higher.
* shell/main.c (make_canonical_uri): Use
eel_make_uri_from_shell_arg().
2003-03-16 Jens Finke <jens@triq.net>
* configure.in: Removed librsvg compile dependency. If you want
svg support you need librsvg anyway, but gdk-pixbuf queries for
available loader modules on runtime.
2003-03-13 Jens Finke <jens@triq.net>
* libeog/eog-image.c (real_image_load): Assert that exif attribute
is NULL on load.
(eog_image_free_mem): Free exif info too.
2003-03-13 Jens Finke <jens@triq.net>
Added optional libexif support to read information stored in the
images by digital cameras.
* acconfig.h, configure.in: Added check for optional libexif
library.
* libeog/eog-info-view.[ch]: New widget, displays image
information.
* libeog/Makefile.am (SOURCES): Added eog-info-view.[ch]
* libeog/eog-image.[ch] (eog_image_dipose): Free exif data.
(eog_image_class_init): New signal loading_info_finished.
(eog_image_instance_init): Init exif attribute.
(check_load_status): Fire loading_info_finished signal, if flag is
set.
(exif_loader_write): New function, tries to read exif data from a
stream of data chunks.
(real_image_load): Take care for all the exif stuff and call
exif_loader_write for every consumed data chunk.
(eog_image_load): Make sure we only return TRUE if the image is
really completely loaded.
(eog_image_cancel_load): Don't join dead threads.
(eog_image_get_exif_information): New public function. Returns
exif data or NULL.
* collection/eog-collection-view.c (handle_selection_changed):
Feed info view with selected image.
(create_user_interface): Add eog-info-view widget to the ui.
2003-03-13 Christian Rose <menthos@menthos.com>
* configure.in: Added "ml" to ALL_LINGUAS.
* po/ml.po: Added Malayalam translation by
FSF-India <locale@gnu.org.in>.
2003-03-11 Jens Finke <jens@triq.net>
* collection/eog-collection-view.c (verb_SlideShow_cb): Unref
start image.
(eog_collection_view_dispose): Unref displayed image.
(eog_collection_view_instance_init): Init new variable.
(handle_selection_changed): Free ressources of the previously
viewed image and store reference the the new one.
2003-03-11 Jens Finke <jens@triq.net>
* libeog/eog-image.[ch]: Switched to a thread based loading
mechanism.
(eog_image_dispose): Free mutex.
(check_load_status): New function.
(load_area_updated),
(load_size_prepared),
(real_image_load),
(eog_image_load): Reworked, so that they use the thread based
approach.
(eog_image_get_pixbuf): Add mutex around pixbuf accessing.
(eog_image_cancel_load): New function.
* libeog/eog-scroll-view.c (free_image_resources): Cancel loading
of the previous shown image.
* shell/eog-window.c (property_changed_cb): Be quite.
2003-03-11 Jens Finke <jens@triq.net>
* libeog/eog-image.[ch] (eog_image_dispose): Free caption and
caption_key.
(eog_image_get_caption): Save caption string for further
use. Assure that it's a proper UTF-8 string.
(eog_image_get_collate_key): New function, returns a key for fast
compare of UTF strings.
* collection/eog-collection-item.c
(eog_collection_item_construct): Don't free caption string.
* collection/eog-collection-model.c (compare_filename_cb): New
function.
(real_dir_loading): Sort image list.
(real_file_loading): Insert image into sorted list.