Commit Graph

144 Commits

Author SHA1 Message Date
Tom Hacohen f87b9900fa Update code to use the new class names generated by eolian. 2014-06-03 11:55:02 +01:00
Jérémy Zurcher b6907e848a ibar: silence uninitialized warning 2014-05-07 11:48:18 +02:00
Mike Blumenkrantz 8f2859a198 fix ibox eo errors 2014-04-10 19:06:04 -04:00
Mike Blumenkrantz a40d0d7e21 fix ibox initial urgent states 2014-03-05 10:08:09 -05:00
Mike Blumenkrantz 9ad04eb877 redo client urgency again with separate flag for actual urgent state
preserve icccm flag for accurate detection
2014-03-05 10:08:09 -05:00
Mike Blumenkrantz 8d71213839 e_client_name_get() -> e_client_util_name_get()
this should be inlined
2014-02-05 10:55:50 -05:00
Carsten Haitzler 61aa61651c ibox/ibar/tasks iconify effect - don't do it if target is not on same screen 2014-01-30 07:45:02 +09:00
Mike Blumenkrantz 9b36b9b78c remove comp iconify hacks (and e_iconify api), expand comp object effect api
instead of adding specific handling which will work (sometimes) in one specific case, expand already-existing api to provide the needed functionality for iconify animations. now on emitting any signal to a comp object, optional glob-able effect providers can be hooked and prioritized to add effect animations

also use animating flags now when applying an object effect

a base effect is provided in elementary, but now each module which wants to hook iconify animations (or other events) can do so in the theme and have different animations with their module
2014-01-29 13:36:42 -05:00
Carsten Haitzler 1ede2a5632 iconify provider - the ability to provide geometry for src/dst of iconify
ibox now uses this as an initial test. there are teething problems:

1. unknown location for new icon (guess that its on right)
2. stacking - the animation is at the stacking layer of the comp obj
   ... this probably needs a way for the comp shobj to request a
   temporary stacking change until anim done
2014-01-29 22:42:54 +09:00
Mike Blumenkrantz 86656e4df9 compositor rewrite / charlie-foxtrot situation
huge fustercluck commit because there wasn't really a way to separate out the changes. better to just rip it all out at once.

* compositor and window management completely rewritten. this was the goal for E19, but it pretty much required everything existing to be scrapped since it wasn't optimized, streamlined, or sensible. now instead of having the compositor strapped to the window manager like an outboard motor, it's housed more like an automobile engine.

** various comp structs have been merged into other places (eg. E_Comp_Zone is now just part of E_Zone where applicable), leading to a large deduplication of attributes

** awful E_Comp_Win is totally dead, having been replaced with e_comp_object smart objects which work just like normal canvas objects

** protocol-specific window management and compositor functionality is now kept exclusively in backend files

** e_pixmap api provides generic client finding and rendering api

** screen/xinerama screens are now provided directly by compositor on startup and re-set on change

** e_comp_render_update finally replaced with eina_tiler

** wayland compositor no longer creates X windows

** compositor e_layout removed entirely

* e_container is gone. this was made unnecessary in E18, but I kept it to avoid having too much code churn in one release. its sole purpose was to catch some events and handle window stacking, both of which are now just done by the compositor infra

* e_manager is just for screensaver and keybind stuff now, possibly remove later?

* e_border is gone along with a lot of its api. e_client has replaced it, and e_client has been rewritten completely; some parts may be similar, but the design now relies upon having a functional compositor

** window configuration/focus functions are all removed. all windows are now managed solely with evas_object_X functions on the "frame" member of a client, just as any other canvas object can be managed.

*** do NOT set interceptors on a client's comp_object. seriously.

* startup order rewritten: compositor now starts much earlier, other things just use attrs and members of the compositor

* ecore_x_pointer_xy_get usage replaced with ecore_evas_pointer_xy_get

* e_popup is totally gone, existing usage replaced by e_comp_object_util_add where applicable, otherwise just placed normally on the canvas

* deskmirror is (more) broken for now

* illume is totally fucked

* Ecore_X_Window replaced with Ecore_Window in most cases

* edge binding XWindows replaced with regular canvas objects

* some E_Win functionality has changed such that delete callbacks are now correctly called in ALL cases. various dialogs have been updated to not crash as a result

comp files and descriptions:

e_comp.c - overall compositor functions, rendering/update loop, shape cutting

e_comp_x.c - X window management and compositor functionality

e_comp_wl.c - Wayland surface management and compositor functionality

e_comp_canvas.c - general compositor canvas functions and utilities

e_comp_object.c - E_Client->frame member for managing clients as Evas_Objects, utility functions for adding objects to the compositor rendering systems

additional authors: ivan.briano@intel.com

feature: new compositor

removal: e_border, e_container, e_popup
2014-01-14 20:22:02 -05:00
Mike Blumenkrantz 1f0a8801b5 fix ibox crash when border hasn't been assigned to a zone 2013-03-26 11:51:40 +00:00
Mike Blumenkrantz 4e779975f9 rename E_LIST_HANDLERS_APPEND to E_LIST_HANDLER_APPEND, also add E_LIST_FOREACH
SVN revision: 76951
2012-09-21 09:23:07 +00:00
Mike Blumenkrantz 5519096a0e ibox now has an option which allows it to expand freely on the desktop
ticket #718


SVN revision: 76914
2012-09-20 13:52:38 +00:00
Mike Blumenkrantz 21c3a90d88 use EINA_LIST_FREE iterators so we don't needlessly loop lists twice, also fixes a leak
SVN revision: 76905
2012-09-20 10:58:05 +00:00
Mike Blumenkrantz f6bbc2e9b3 simplify ibox init/shutdown
SVN revision: 76904
2012-09-20 10:53:31 +00:00
Mike Blumenkrantz dabb75af17 improve usage of eina list
SVN revision: 76903
2012-09-20 10:49:19 +00:00
Mike Blumenkrantz 2434f5adbe more PATH_MAX cleanups
SVN revision: 75520
2012-08-22 07:32:12 +00:00
Mike Blumenkrantz 94e2fc5257 clean up gadget right click menus to stop leaking
SVN revision: 75285
2012-08-15 07:22:04 +00:00
Mike Blumenkrantz bc4383e82f formatting
SVN revision: 75283
2012-08-15 07:00:02 +00:00
Mike Blumenkrantz 98601e4198 sed -i 's/(E_Gadcon_Client_Class/(const E_Gadcon_Client_Class/g'
SVN revision: 74474
2012-07-27 08:25:22 +00:00
Mike Blumenkrantz 74edef9f46 fix memory leak spotted by seb in gc_id_new. this whole thing is pretty confusing; I'm glad we don't have docs for it
SVN revision: 72689
2012-06-22 07:21:51 +00:00
Mike Blumenkrantz 7dbd2e8de9 fix the same instance id bug as in pager, this will likely delete configs for a large number of modules
SVN revision: 72592
2012-06-21 11:03:50 +00:00
Boris Faure 27264671d0 e/gadcon: label() returns a const char*
Original patch by Fabien Romano from OpenBSD

SVN revision: 65204
2011-11-14 21:46:57 +00:00
Mike Blumenkrantz 2a905bb70d properly set __UNUSED__ here
SVN revision: 64904
2011-11-07 23:21:33 +00:00
Hannes Janetzek 950f9cd729 e17: use GADCON_CLIENT_CONFIG_GET, remove old transitional code to remove config items without id
SVN revision: 63125
2011-09-03 14:39:28 +00:00
Hannes Janetzek 7f457f1911 e17: add option to have gadcon client settings menu in toplevel again.
added e_menu_item_new_relative(E_Menu, E_Menu_Item *rel) which appends 
 new item to rel or prepends it when rel is NULL.

changed e_gadcon_util_client_menu_append to to take only the gadget menu
 and returns the new toplevel menu that should be shown by gcc
 depending on the setting this is a new menu with gadget menu as submenu
 or the gadet_menu with gadget menu items appended

updated e-modules-extra comes in a minute


SVN revision: 57826
2011-03-17 17:08:36 +00:00
Sebastian Dransfeld 32a8f5160d Fix dnd working with reference coords.
SVN revision: 54383
2010-11-09 21:14:38 +00:00
Sebastian Dransfeld 2a048b5005 gadcon helper functions
SVN revision: 54348
2010-11-08 20:11:45 +00:00
Sebastian Dransfeld 7ec3dd0f41 Right drop target size
If we are in an autoscroll container, use it's size as drop target

SVN revision: 54328
2010-11-08 14:05:29 +00:00
Miculcy Brian 2f8f31fbf5 This commit will change the shelf menu completly:
If you have a Gadget and open the menu over it, all gadget specific options are under a separate submenu. The menu items which the Gadget sets theirself can be put on the main menu tree or on the Gadget submenu.
If you don't see a reason for this, check the ibar menu _before_ and _after_. :)

This api change broke all modules but i already fixed them all. Hope everything works... I also shortend text strings, etc, etc.
Hope you like it! :)


SVN revision: 52041
2010-09-09 14:44:21 +00:00
Christopher Michael 5919e72ad2 Add UNUSED where needed.
SVN revision: 51407
2010-08-19 15:49:25 +00:00
Lucas De Marchi 6638a10e20 FORMATTING
* Remove vim modelines:
 find . -name '*.[chx]' -exec sed -i '/\/\*$/ {N;N;/ \* vim:ts/d}' \{\} \;
 find . -name '*.[chx]' -exec sed -i '/\/[\*\/] *vim:/d' \{\} \;

* Remove leading blank lines:
 find . -name '*.[cxh]' -exec sed -i '/./,$!d'

If you use vim, use this in your .vimrc:
set ts=8 sw=3 sts=8 expandtab cino=>5n-3f0^-2{2(0W1st0



SVN revision: 50816
2010-08-04 16:57:32 +00:00
Cedric BAIL c6a118d738 * e: remove warning due to Ecore API change.
SVN revision: 49833
2010-06-24 16:19:12 +00:00
Sebastian Dransfeld f2c243f91e make clang happy
SVN revision: 45191
2010-01-15 19:36:00 +00:00
Christopher Michael e300511319 Fix the last of the config dialog problems
SVN revision: 44164
2009-12-03 04:46:49 +00:00
semernin 2f76dd5d99 List of changes:
1. Gadcon sities:
      -- 'E_Gadcon_Site' enum to list all available sities,
      -- added 'is_site' callback for distinguish gadcon sities,
      -- 'e_gadcon_site_is_*' helpers written to use in gadget modules,
      -- gadcon config dialogs modified to show only gadgets that appropriate
         to selected gadcon site,
      -- all gadget modules updated for using new callback.
      
      When callback is not provided in module, then gadget can be used in 
      any gadcon site.
      
   2. Filemanager:
      -- added error icon to unexisting path dialog,
      -- added callback 'func.abort' to 'E_Fm2_Op_Registry_Entry' to specify
         abort operation sequence (if not provided, then operation is not
         cancelable),
      -- added parameter to 'e_fm2_op_registry_entry_add' to specify abort
         method on construct 'E_Fm2_Op_Registry_Entry' or make non-cancelable
         operation if this function is not provided,
      -- added 'e_fm2_operation_abort' call to cancel efm2 operation,
      -- added method '_e_fm2_operation_abort_internal' that represent efm2
         default handler of operation cancelling,
      -- 'done' and 'total' fields of 'E_Fm2_Op_Registry_Entry' changed to
         off_t type, also all message handlers modified to work with it
         (to show progress for large files correctly),
      -- improved file operation progress processing,
      -- added cancel button to operation progress gadget in filemanager window,
      -- added delete file glyph to operation progress gadget,
      -- improved status message for efm2 operation progress.

   3. Filemanager slave:
      -- fixed critical bug in message handling via stdin/stdout,
      -- fixed critical bug in removing task from list,
      -- improved 'E_FM_OP_ABORT' handling,
      -- fix rollback counting on moving files.

   4. Fileman_opinfo module:
      -- a new theme writed: status string and gadget for view operation status
         in summary and detail modes,
      -- summary mode: operation glyph, state message, progressbar, abort button,
      -- detail mode: all for summary + from filename, to filename,
      -- summary/detailed button works as trigger,
      -- added source of module theme and used images.
      
   4. Pathbar module:
      -- non-critical fix, just for safety.

   Also patch contains several minor updates to serve main task.


SVN revision: 41224
2009-06-29 14:38:03 +00:00
Viktor Kojouharov 30b11d23c8 add a urgent show function on the gadcon level and use that
(p.s. it's a good idea to recompile any extra module that you might use)


SVN revision: 39686
2009-03-24 16:08:37 +00:00
Viktor Kojouharov fb323cef74 temporarily show the shelf on urgent windows (ibox)
SVN revision: 39649
2009-03-23 12:14:31 +00:00
Christopher Michael f7ad8fce82 no reason to set the text of o_holder as it contains no text part.
SVN revision: 39454
2009-03-12 20:55:10 +00:00
Davide Andreoli 3d41cbb20d More icon works, this commit include changes to the icons on the desktop.
You will probably loose desktop icons until you get a fresh profile. Or you can edit the
.desktop files in .e/e/fileman/favorites (new icons name are: user-desktop, user-home, computer and user-temp)

Sorry for bothering... the next commit should be the last ;)



SVN revision: 39419
2009-03-08 23:09:48 +00:00
Davide Andreoli 3d669d1177 * Rename the new function:
e_util_menu_item_fdo_icon_set to e_util_menu_item_theme_icon_set
As it looks for icons in e theme AND in fdo icon themes.
* Use the new function everywere instead of e_util_menu_item_edje_icon_set,
that is now marked as DEPRECATED

You should not see any difference with this commit. With the next few commit I'm
going to rename all the icons in the theme following fdo standard. I will not change
any icons, just rename them to match fdo ones.



SVN revision: 39370
2009-03-04 20:46:05 +00:00
Gustavo Sverzut Barbieri 610f3a36da fix segfault, caught by clang -- easy fix.
SVN revision: 38554
2009-01-12 17:11:34 +00:00
Carsten Haitzler b273fe10db use settings insetad of configuration. shorter.
SVN revision: 37742
2008-11-22 08:42:54 +00:00
Christopher Michael c3434ee35a No need to fetch width & height.
SVN revision: 37543
2008-11-08 05:53:02 +00:00
Davide Andreoli 0a4e971359 * Make ibox use the new orient param
SVN revision: 37478
2008-11-05 19:43:26 +00:00
Davide Andreoli 45cbf72298 * Gadcon API 3 *BREAK*
Version 3 add the *client_class param to icon(),label(),id_new(), id_del() 
 and the *orient param to orient().

All the modules (with a gadcon_client) need to be fixed...just add the new params 

to follow the EXTRA modules update.

SVN revision: 37450
2008-11-04 03:57:45 +00:00
Cedric BAIL 1087de2397 Remove Evas list and replace them with Eina list.
No change for ->next and ->data access right now, as the patch is already
big enough.



SVN revision: 36962
2008-10-22 11:49:33 +00:00
Carsten Haitzler b170c9ffe0 fix losing config!
SVN revision: 36899
2008-10-21 01:10:42 +00:00
Cedric BAIL 3d6749983b Switch to eina_stringshare.
This could also change the usage of string share in E17.



SVN revision: 36679
2008-10-15 15:12:56 +00:00
toma a3c3d2c23f Icon work. HUGE revision of icons and their names. This breaks the icon theme API so you might need to revise some themes. It does however, simplify a whole lot of stuff. You'll notice a lot more icons in menus. This bigger changes will come with the new theme once it is done. The missing icon names are put in b_and_w theme for now so if you need them, look them up. Also a bit of base work for EFM and the border icons in there. Commented out till the old icons are merged in. Message me if anything is screwed up.
SVN revision: 36591
2008-10-12 06:04:26 +00:00