Warning: eog-ng branch has been merged in trunk as part of 2.19/2.20 development cycle. Therefore, this page is now deprecated. The official page for EOG Roadmap and tasks is EyeOfGnome/RoadMap. |
Eog-Ng: Putting Hightech Glasses on the Eye
EOG is old in many senses: its code, its look. In the last two release cycles EOG received a lot of love and some very-wanted features were implemented. However, there a need to rethink about the future of EOG in terms of its code (deep refactoring/recoding needed) and features. There are some design problems in the current code which are seriously affecting EOG's stability. Eog-Ng is a branch which aims to agregate all development work related to what we want from EOG from now on. Eog-Ng main goal is to maintain a very solid and stable core with the very basic feature of an image viewer but with support for some extensibility.
Contents
Components
Core
EOG's core comprises all the basic features:
- Load/view images
- Save images
- Zoom in/out
- Browse image list
- Remove images
- Preferences dialog (to be reviewed)
- Image properties dialog (to be done)
- Basic image transformations
- Rotate left
- Rotate right
- Rotate 180 degree
- Flip vertical
- Flip horizontal
- Resize image (to be done)
- Crop image (to be done)
Comments here.
Related bugs/tasks |
|||
Description |
Status |
Priority |
Assignee |
Implement new Save/Save as actions (377123) |
done |
High |
Felix Riemann, LucasRocha |
Implement new error/warning UI stuff (316175, 326199, 399988) |
done |
High |
|
eog doesn't ask whether to save changes (322243) |
in progress |
High |
|
Should not zoom with mouse wheel (341935) |
done |
High |
|
doesn't allow to go to next image for a non-local directory (364426) |
done |
High |
|
Feature request (file renaming, save all) (167216) |
to do |
High |
No One |
Cleanup of EXIF tab (or, if you want, side pane) (313676) |
in progress |
High |
|
Use tooltips to show image information in the thumbview (416321) |
in progress |
High |
|
SVG scaling support (108435) |
to do |
Normal |
No One |
"open image with" function (319859) |
done |
Normal |
Rodrigo Aguilar, ClaudioSaavedra |
Debug/Profiling framework for EOG (325711) |
done |
Normal |
|
DBus based activation (401946) |
done |
Normal |
|
command-line option to disable collection view (336712) |
done |
Normal |
|
eog could automatically save images after rotation, if the rotation is lossless (338138) |
to do |
Normal |
No One |
Editable toolbar for EOG (393586) |
in progress |
Normal |
|
Collection should size to show an exact number of rows (338603) |
done |
Normal |
|
Collection pane should scroll horizontally when showing only one row of images (338608) |
done |
Normal |
|
Can't delete images on mounted volume (338653) |
to do |
Normal |
No One |
Command line full-screen option (308787) |
done |
Normal |
|
add toolbar icon for image collection (340831) |
to do |
Normal |
No One |
EOG should not create thumbnails over gnomevfs (341703) |
to do |
Normal |
No One |
RAW file support (344601) |
to do |
Low |
No One |
USB device removal should be noticed (346372) |
to do |
Low |
No One |
Visualization Support for .xcf files (347307) |
to do |
Low |
No One |
How about eog-thumbnailer (361488) |
in progress |
Low |
|
copy item in edit menu (78514) |
to do |
Low |
No One |
Setting for how much the mouse wheel should affect zoom (89512) |
done |
Low |
|
preload prev and next files (321603) |
to do |
Low |
No One |
Should be possible move the collection in EOG (334321) |
done |
Low |
|
Support for animated gifs (335093) |
to do |
Low |
No One |
adding gimp's navigation control button go eog (336223) |
to do |
Low |
No One |
should restrict svg dimensions to something reasonable (340963) |
to do |
Low |
No One |
Metadata
There should be a flexible metadata infrastructure which allows easy metadata gathering of different types from images. Architecture still needs to be defined. Each "backend" must have support for loading, updating and saving. Currently EXIF support is builtin EogImage code. Not very flexible. Some examples of possible "backends":
- EXIF
- Creative Commons
- IPTC-NAA
Comments here.
Related bugs/tasks |
|||
Description |
Status |
Priority |
Assignee |
Add suport for IPTC-NAA (341653) |
to do |
Normal |
No One |
Exif MakerNotes are not decoded (even when supported by libexif) (350809) |
to do |
Normal |
No One |
Show Creative Commons license info (349222) |
to do |
Normal |
No One |
Design and implement metadata framework for EOG |
to do |
Normal |
No One |
Fullscreen/Slideshow
Eog-Ng already has an implementation of a fullscreen toolbar which makes it easier to interact with EOG with the mouse to browse images, zoom in/out/fit/1:1, leave fullscreen. Currently, the same toolbar is used on Slideshow mode which is not very nice because there should different items on slideshow toolbar for starting/stop show, change switching effects. Also there's no visual hint about the current image information. Maybe adding fullscreen and slideshow buttons to toolbar is an option. Not sure. Adding switching effects may involve refactoring/reimplementing current EogScrollView widget.
Here's a list on wanted features:
- Fullscreen mode
- Same toolbar as normal window mode
- Browse image list
- Two-pages side-by-side layout for reading comics, RtL and LtR.
- Zooming
- Loading feedback
- Leave fullscreen
- Slideshow mode
- New toolbar
- Start/pause slideshow
- Browse image list
- Zooming (when paused)
- Switching animations (fading, crossfading, move to left, etc)
- Leave slideshow
Comments here.
Related bugs/tasks |
|||
Description |
Status |
Priority |
Assignee |
Need 'slideshow' button on toolbar (374582) |
to do |
Normal |
No One |
Hard to leave fullscreen (323124) |
done |
Normal |
|
no indication of load status in fullscreen mode (340743) |
to do |
Normal |
No One |
Printing
Currently printing in EOG is totally broken (different image types result in wrong printing outputs). Also, there must be a simple way to define image printing setting (i.e image position and size on paper). Use new GTK printing API.
Comments here.
Related bugs/tasks |
|||
Description |
Status |
Priority |
Assignee |
done |
High |
||
Eog enlarges image way too much when printing (321815) |
done |
Normal |
|
.tif doesn't print properly (Fit to page option not present?) (348116) |
done |
Normal |
|
No easy way to print a single sheet of multiple copies of the same photo (349648) |
to do |
Normal |
No One |
Printing TIFF images I only get completely black pages (355590) |
done |
Normal |
|
TIFF images prints/views incorrectly (367085) |
done |
Normal |
Plugin system
There's a full room of coolness by adding a plugin system to an image viewer like EOG because people can adapt EOG to do what they want. Also, we can bring more developers/users around EOG. Some cool examples of plugins:
- New image transformations
- Image convertions to different formats
- Images sharing (filckr upload?)
- Tagging support
- Define as wallpaper (currently builtin)
- EXIF autorotation
- Creative Commons license info on statusbar
Gedit and Epiphany plugin infrastructure can be taken as good code examples.
Comments here.
Related bugs/tasks |
|||
Description |
Status |
Priority |
Assignee |
Auto rotate image using Exif information (148400) |
done |
Normal |
Jef Driesen, LucasRocha |
Embedded
As EOG is a very simple image viewer, it's natural that we have a lighter version of EOG for mobile devices (i.e Nokia 770). To make it possible, we should write EOG's main window in way that we can have several implementations which share tha same interface. The Embedded EOG would have the same features listed in core but with an adapted UI. The final goal is to have an <pre>--embedded</pre> configure option and everything would be done for you.
Comments here.
Website
EOG doesn't have a official website. We could use the GNOME software template and have a simple web site. Epiphany and Evince websites can be used as reference: they're simple and go direct to the point. What info must be present on website:
- Screenshot
- What's EOG?
- Features
- Download
- Contribute
- Contact
Bear in mind that the template is probably out of date (where can I find it, by the way?). The gedit site (http://www.gnome.org/projects/gedit/) looks more gnome-ish that the evince site, for example. The Projects sites on GnomeWeb are due a revamp, possibly during the next cycle. - JoachimNoreiko
Schedule
Our goal is having eog-ng branch merged in HEAD in the beginning of 2.20 development cycle on March 15th 2007. In terms of components, we must have a stable version of Core, Printing and Website at this stage. Of course, it would be great to have stable versions of the other components at this point too but they can be worked out during 2.20 development cycle. The point here is to have a fully functional and stable version of EOG to be merged in HEAD.
Get Involved
If you want to help, assign yourself to one or more tasks (by putting your name in the respective tasks) and follow these general instructions:
- Subscribe to eog-list;
- The fact that a bug is listed here doesn't necessarily imply that it's an accepted request. If the respective bug report is not on "NEW" status yet, please, discuss that before start working on it;
- Discuss implementation issues and submit patches to the respective bug report;
- If there's no bug report related to a specific development task, create one;
- Assign yourself to the respective bug report in GNOME Bugzilla;
- Major design/coding issues should be discussed on eog-list;
- Task/bug specific issues must be discussed on respective bug report;
Contributions are always welcome! Give some love to EOG today and have a better GNOME image viewer tomorrow! Let's make EOG rock our world!
Bug Notes
All bugs that are already fixed but are not in HEAD are being marked with eog-ng tag in whiteboard. Here is a list of bugs already fixed in eog-ng that will be closed as soon as we merge it in HEAD.
Contact
EOG Developers:
LucasRocha (maintainer)