--
Intersect area for mouse clicks did not cover the entire menu item. Fixed
to use the full dimensions of the menu item evas object instead.
SVN revision: 6072
* scrollbars should not need to know the dir the view they are part of is in,
because that can change without further notice. Access the dir through
scrollbar->view->model->dir and replace the dir with the name of the view for
named callbacks
SVN revision: 6040
for some reason, in e_configure,
if ((v = e_view_machine_get_view_by_base_window(e->win)))
was acting as though true for all cases (including non views), and was segfaulting, so i made it
v = e_view_machine_get_view_by_base_window(e->win);
if (v)
any ideas why this would be necessary?
SVN revision: 6036
Instead of /path/.e_iconbar.bits.db, now uses /path/.e_layout/iconbar.bits.db.
Custom scrollbars can be placed in the .e_layout directory as well.
I should probably move the background db into here also, any objections?
So, to get your iconbar again, move the .e_iconbar[.bits].db to .e_layout/iconbar[.bits].db
SVN revision: 6034
segfault protection, renamed get_model_from_realpath() to
view_model_lookup(). Moved the realpath call to view_model_lookup(),
this way we need not rely on the realpath being passed in.
All minor stuff, really.
One thing I noticed: e_view_machine_get_model() is in the wrong
place and should change its name -- it is not related to the view
machine and does not return anything. It should probably become
e_view_register_model()
and live in view.c.
Also, Raster hasn't replied yet to my question regarding
the need for the explicit -lc in Makefile.am. It works fine
here without it and apparently breaks FreeBSD build, so I
think we should remove it.
Fixed a warning in focus.c due to missing icccm.h.
Added "void" to function declarations that don't accept
parameters.
SVN revision: 5994
their geometry on close. I'll start getting the documentation back in sync and commenting some more. Could anyone
willing to clean up/fix either the iconbar dnd stuff and/or the regular dnd stuff please announce it, so we dont start
duplicating work. Thanks.
SVN revision: 5977
LMB will scroll one screen when pressed in the scrollbar area.
Middle and Right MB will move the scroll bar slider to the clicked
position directly.
So this is rather similar to the behaviour we have in standard GTK apps
for example.
Also, I corrected a small bug in view.c and scrollbar.c that could lead to
the scrollbar beeing redrawn outside the view (because "value" was
recalculated before "range" and "max" were set ; and since value depends
on max and range, this could lead to value of value that were too big).
Thanks Nicolas!
SVN revision: 5976
The matching_drop_attempt flag was set, so it should handle the drop regardless of whether the same view or not, since it checks for the flag later.
Now you can drop icons from the desktop to the iconbar.
SVN revision: 5960
The old background code(background.c) had
e_object_init(E_OBJECT(bg), (E_Cleanup_Func) e_background_cleanup);
in the e_background_new function which isn't being used anymore
I don't fully understand the way the E_Object stuff would work with this or
if this is ok since ebg is its own separate library now.
SVN revision: 5943
(copy em manually for now)
Get epplets to keep track of the ebits / evas objects they create, so they can be cleaned up later.
Also, some small epplet API changes.
When creating Ebits / EvasObjects, pass a path relative to the .fe file rather than the full path. Usually, you just need a file name, which should be in the same dir as the epplet.
if a file named layout.bits.db exists in an epplet's dir, it is used for the default layout (location) of that epplet rather than whatever is in ~/.e/desktop/default/.e_epplets.bits.db. Only use this if a specific size/location of the epplet is necessary. (just create one dummy image in the bits with the name of the epplet, and its location/size relative to the entire view) Note, try to not use this, as user customizability is important...
I will eventually make it so that if a ui.bits.db exists, it will automatically be loaded as the main bits file, and set as epplet.bits in the script. (Can't get object creation from within a .fec to work correctly yet...) This would remove the need for the setBits() call.
SVN revision: 5881
added an e_observer_notify_all_observees() to notify all existing observees of things, such as the creation of a border. This way, an observer can watch for E_EVENT_BORDER_NEW events and register all new borders.
Iconification! Click that iconify button. Then click the middle button on the desktop to get a menu of iconified apps to uniconify. This menu is a decent example of using the observer code to avoid polling or rebuilding more than necessary. Next, maybe instead of completely rebuilding each time something changes, maybe it should dynamically add or remove the respective menu items?
SVN revision: 5854
Added basic iconification implementation, including menu for iconified windows, however this is buggy and doesn't work correctly yet, and is therefore commented out. But maybe someone can take the framework and fix it?
Added ferite wrapping for timers.
SVN revision: 5851
The enum of events is in observer.h, add any you can think of.
Switched desktops over to observer system (which extends objects).
Added ferite functionality for desktop observers. I will probably make functions to observe most of e's subsystems (views, iconbars, etc).
There is probably a small bit of memory leakage in here (and callbacks) because any objects passed along have to have their refcounts increased (so ferite doesn't automatically clean them up, and i haven't put in code to decrease them yet. It should be fairly small, but I'll work on that.
I also changed a few "sprintf(buf..."'s to "snprintf(buf, PATH_MAX..."'s.
Is this the way to go about preventing buffer overflows?
I think that's it.
SVN revision: 5841
Quite a bit has been implemented. Check the data/epplets dir for examples.
Currently the only loading method is a file called .e_epplets.bits.db which contains bits whose names are equal to the epplet name, and whose geometry is the default epplet geometry (unless overridden in the script).
The idea being that one could set up an entire desktop epplet layout within one file, making it easily transferable.
So, to use epplets make sure you copy the default epplets.bits.db to ~/.e/desktop/default/.e_epplets.bits.db
Also, make sure you update ebits
SVN revision: 5826
Added window spacing, so file icons will not appear underneath iconbars.
Currently, icons are placed twice as far from the left/top as the spacing.window.l,t designate. To compensate, the spacing is set to half the actual value. This needs fixing.
It seems as though there are a few other bugs in e_icon_apply_xy() also. (multiple line views don't seem to work quite right, icons on the bottom line are in the middle, and other lines seem right justified. a bit odd).
SVN revision: 5815
If a bit named Resist with class Decoration is added to .e_iconbar.bits.db, it will resist window movement. Makes it easy to line up windows along the edge of the iconbar. I'll commit an updated default db.
SVN revision: 5807
allowed action. We can also change cursor/drag window based on the
state info available. I haven't tackled that yet.
Kevin Brosius <cobra@compuserve.com>
SVN revision: 5765
1. now xdnd works to apps:
tested:
gmc
mozilla
xmms
ee
2. dnd works bewteen e17 views too
3. cleaned up a little (the uri format was a little wrong)
4. notice fixme's - yes we need to have ways of copying and moving etc. files.
efm did this - imho right. right mouse drag always pops up a menu asking
what you want to do. left mosue drag always moves. current shift+left
copies. we can add ctrl+left links etc. - but these shoudl eventually
be configurable. i think this will keep everyone happy.
SVN revision: 5756
now iconbars can have their buttons "disabled" whislt apps launch.. tis a
nasty trick with an ld_preload... has caveats.. if youdsont set it as on it
wont be used atm.
SVN revision: 5748
default mode of move. Hold 'shift' for copy. No visible feedback
of actions occurs yet, but you'll see the view update as soon as efsd
reports the file changes. Tested, but be careful around files you care
about. Moves and copys use efsd_move and efsd_copy, without the force
option. So source files will not overwrite the destination if it exists.
Kevin Brosius <cobra@compuserve.com>
SVN revision: 5747
I changed the name of some of the convenience calls from efsd_reply_...
to efsd_event_... because they're no longer applicable to reply events
only.
I've also hooked in a cleanup function for Efsd when E exits, and
duplicated memory when accessing a returned metadata string.
SVN revision: 5736
window menu. ctrl+alt+insert execs eterm... it wasnt in the default script
to build the dbs'
the scritp also had some mdos done to it before by others that sisnt use the
environemtn variables that devined numerics for actions....
also now menus can remember much more.. as can e. save and load on demand..
the remember things are menu check items... might have a big arse dialog
eventually for this... but for now this is all good :)
SVN revision: 5732
cp most of it and lay it out in /.e eventually anyway (and if u dont like
the idea of cping the files - we can symlink too - but e_setup will take
care of this... eventually.. might start work on it now i have fixed things
- though personally i think i should make it cp to start so your user config
is independant of the system and wont suddenyl chaneg cause the system one
did... but again... can be made an option)
SVN revision: 5729
can scroll around 9if you have too many icons to fit) it also will clip the
icons to the icon area. also u can scroll the icons up and down the bar to a
position you like. a new test iconbar bit to demo this too.
SVN revision: 5726
does.. the background changes - hand for setting your own root bg.. just use
ebony.. save it and:
cp file.bg.db ~/.e.desktop/default/.e_background.bg.db
SVN revision: 5708