Commit Graph

316 Commits

Author SHA1 Message Date
wonguk.jeong 0034b2d6ee everything: delete mouse event handlers on selector_free
Summary:
Since mouse up handler is invoked after selector_free, there was a crash.

reproduce: double click on selector area (tabbar area on top) to launch app -> SEGV

Fixes T1264

Test Plan: enlightenment -> everything -> double click on selector area (tabbar on top)

Reviewers: raster, zmike

CC: seoz, cedric

Maniphest Tasks: T1264

Differential Revision: https://phab.enlightenment.org/D886
2014-05-26 15:11:13 +09:00
Mike Blumenkrantz 1950f54caf bugfix: correctly check evry trigger matches
CID 1039880
2014-04-04 15:04:28 -04:00
Mike Blumenkrantz c04d754ac5 enabling drm output module should NOT require X-less build.
these defines all need to be changed from HAVE_WAYLAND_ONLY to something like WITH_X or we're going to have lots of problems with xwayland later on
2014-03-18 16:14:04 -04:00
Mike Blumenkrantz 4b58fa9a4e replace ev->keyname with ev->key
see efl 5ae4cfd1923e502731f4d8fc2bf67b1f536a9216
2014-03-13 13:03:34 -04: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 ec9ea6c97c fix evry crash when switching views
T317
2013-12-02 15:14:56 -05:00
Mike Blumenkrantz 505cec1d91 giant comp rejiggering commit #5:
* border frame/object now drawn directly on compositor canvas

* border shadows now in border theme with edje hint, non-updated themes still receive comp object shadows FOR NOW

* e_border MOVE/RESIZE pointer mode defines are now e_pointer.h enums

* added BD_CHANGED() util macro for setting bd->changed and printing a debug line to assist in finding places where this all-important flag is wrongly set

* bd->bg_win removed entirely

* bd->pointer objects moved to compositor object; now only one pointer object exists for each compositor

* resizing windows now shows a new and totally-intended scaling effect for window contents

* some additional retooling of border deletion/free callbacks

* fixed lurking potential bug where window could recieve focus from autoraise timer after border had been deleted

* more comp shape improvements/rewrites

* desk transitions are now BROKEN(ish)

* various modules updated to not be totally broken with these changes
2013-04-15 08:39:16 +01:00
Mike Blumenkrantz c48fd0b06d giant commit that wipes all bindi^W^W^Wsplits out binding configs into a separate config domain so they can be more easily copied and so they won't be wiped in the event that primary config is wiped
also splits all binding lists out of e_config: they are now conveniently located in the global "e_bindings" struct


SVN revision: 83544
2013-02-01 10:21:54 +00:00
Lucas De Marchi 0675dd03a0 e: rename option use_composite to use_shaped_win
In order to move composite inside the core we need to kill the
use_composite option. However in some places it is being used to switch
between ARGB and shaped windows. It doesn't make much sense to keep the
advanced/engine dialog to let the user toggle this options if we have
composite always enabledm, but lets allow the user to shoot
himself on the foot (for now).

Next step will be to move the comp module files to core so user can't
unload it anymore.



SVN revision: 82433
2013-01-09 03:21:25 +00:00
José Roberto de Souza e0ef1e75ad e: Replace FALSE that was defined in lidbus to EINA_FALSE
Patch by: José Roberto de Souza  <zehortigoza@profusion.mobi>



SVN revision: 82090
2013-01-03 18:16:04 +00:00
Hannes Janetzek 2e15739b21 e17/evry: ensure that there will be only one true popup.
- add timer to delay closing with the same binding that triggers evry 


SVN revision: 81432
2012-12-20 09:37:37 +00:00
Mike Blumenkrantz 1c161c7713 also prevent recursive obj del on evry windows and unset window defer delete so we don't get crazy errors when people hold down the god damn keybind to piss me off
ticket #2009


SVN revision: 81167
2012-12-17 17:14:21 +00:00
Hannes Janetzek f920665d49 e17/evry: free window in _evry_window_free
SVN revision: 80952
2012-12-14 14:28:16 +00:00
Carsten Haitzler a4af3e5f6d fix evry segv!
SVN revision: 80047
2012-12-03 11:34:41 +00:00
Mike Blumenkrantz 8adb889d90 hide evry when desklock goes up
SVN revision: 80033
2012-12-03 09:43:51 +00:00
Sebastian Dransfeld 80b0b615b8 e: Cleanup
Fixes potential invalid memory reads.

Patch by Igor Murzov

SVN revision: 77491
2012-10-04 23:27:01 +00:00
Sebastian Dransfeld 436323bf59 e: cleanup layer handling
It seems people put random numbers as layers, so it is better to define
available layer numbers.

This patch also puts popups below fullscreen windows, as it sucks to get
popups during presentations. A better solution is maybe to put popups
above fullscreen, but have a presentation mode to put fullscreen windows
above popups?

SVN revision: 77293
2012-10-02 08:54:35 +00:00
Carsten Haitzler 1739590e05 fix wad of focus issues with click-to-focus and alt+tab + fullscreen
windows.



SVN revision: 75399
2012-08-18 04:40:56 +00:00
Vincent Torri 9d9ce41db0 E17: fix some warning
SVN revision: 71233
2012-05-18 13:02:20 +00:00
Cedric BAIL c2a29811d5 e: massiv warning cleanup !
SVN revision: 70756
2012-05-04 09:38:52 +00:00
Cedric BAIL 70d21a1f44 e: move everyone to use eina_file_direct_ls and friend.
NOTE: I think, but I am not sure yet, that only EFM should
do this kind of operation or it could hard lock E17.


SVN revision: 70546
2012-04-30 07:07:33 +00:00
Mike Blumenkrantz abcc8f9ad3 add new functions evry_item_{app,file}_free for freeing standard file/app items
SVN revision: 65705
2011-11-30 04:00:51 +00:00
Mike Blumenkrantz 0cc0f8c658 ATTN: JEFFDAMETH!
YOUR CODE FORMATTING IS BROKEN! PLEASE FIX THIS IN YOUR EDITOR ASAP!


SVN revision: 65704
2011-11-30 03:32:54 +00:00
Boris Faure 78c5215f0a e/evry: warnings--
SVN revision: 65199
2011-11-14 21:07:29 +00:00
Hannes Janetzek d0fc3802d0 e17/evry: disabled first run page. it's rather annoying.
now it shows all app categories by default, should suffice as hint what it does.
maybe add a 'help' item to the list later.


SVN revision: 63574
2011-09-24 02:23:57 +00:00
Hannes Janetzek 9f6e4a581d e17/evry: api change: recompile exrta evry modules.
- more work on evry gadget for illume (only works with tablet profile)


SVN revision: 63097
2011-09-02 23:02:26 +00:00
Hannes Janetzek 8e3724f95d e17/evry: dont update selector when changed plugin is not in current state
SVN revision: 63024
2011-08-31 11:12:56 +00:00
Hannes Janetzek f27bdcb087 e17/evry: leak--
SVN revision: 62770
2011-08-25 01:27:52 +00:00
Hannes Janetzek edf0e07a3b e17/evry: add per instance config for gadget to show other plugins that 'Start'
-add EVRY_PLUGIN_HAS_ITEMS macro


SVN revision: 62662
2011-08-21 15:41:37 +00:00
Hannes Janetzek 7e553786d5 e17/evry: allow theme to set min size of thumb view icons
- cleanup list swallow functions... thought there was a bug


SVN revision: 62599
2011-08-19 22:11:09 +00:00
Hannes Janetzek 034e60d9d5 e17/evry:
- evry gadget now shows a window that works with illume for keyboard input
- added app menu browser
- evry_icon_get refactoring 


SVN revision: 62518
2011-08-16 23:26:07 +00:00
Hannes Janetzek 6a3e45a9d6 e17/evry: use 'extern' for evry_api to share with other modules. fix leak in calc
SVN revision: 62376
2011-08-12 10:58:44 +00:00
Hannes Janetzek aea6b1e70b e17/evry: ok this one fixes it
SVN revision: 62338
2011-08-11 09:47:16 +00:00
Hannes Janetzek 22aeed83c2 e17/evry: fix segv
SVN revision: 62337
2011-08-11 09:44:04 +00:00
Hannes Janetzek 470648cbfe e17/evry: allow actions to request to clear input and continue
SVN revision: 62329
2011-08-11 06:02:18 +00:00
Hannes Janetzek d1dd54ef90 e17/evry: allow plugins to provide their own view
SVN revision: 62327
2011-08-11 04:14:10 +00:00
Hannes Janetzek 1d7579b114 e17/evry: try switch to object sel (on enter) when action requires object
SVN revision: 62267
2011-08-09 23:33:57 +00:00
Hannes Janetzek 2ed6d1fbdd e17/evry: fix segv. disable handling of plugin keybingings while evry is active. for now
SVN revision: 60773
2011-06-28 18:59:04 +00:00
Hannes Janetzek 36937f2748 e17/evry: dont handle async updates of plugins when they dont belong to current state. fixes possible duplicates in aggregator when pop directories
SVN revision: 60583
2011-06-22 09:44:30 +00:00
Hannes Janetzek b72eb3d0df e17/evry: fix segv. pop object selector states when action changed
SVN revision: 60474
2011-06-18 13:04:08 +00:00
Hannes Janetzek 6a4573c7aa e17:evry: fix segv. delete update timer
SVN revision: 57896
2011-03-19 15:03:44 +00:00
Hannes Janetzek 91ded1893f e17/everything: identify evry window for compositor
SVN revision: 57464
2011-03-02 00:50:36 +00:00
Hannes Janetzek 9020265aad e17/everything: disable debug output
SVN revision: 57288
2011-02-24 03:48:41 +00:00
Hannes Janetzek 259e268f3c fix for showing plugins as icon in aggregator
- make plugin instances be proper evry items so that they are ref counted like everything else.
  now plugin->begin MUST always return a new instance, never the base class


SVN revision: 57206
2011-02-21 07:30:55 +00:00
Hannes Janetzek a3f7b6a507 evry: fix aspect of edj thumbnails
SVN revision: 56842
2011-02-09 14:59:44 +00:00
Hannes Janetzek e9e9c7a066 fix warning/unsued stuff
keep refs to .desktops of recently used apps


SVN revision: 56272
2011-01-23 22:34:28 +00:00
Mike Blumenkrantz 9ac82fead5 initialize variable to null for later FOREACH failures
SVN revision: 56146
2011-01-16 01:19:22 +00:00
Hannes Janetzek 06f74e6f45 fix warnings, remove unused variables
SVN revision: 53978
2010-10-28 23:07:59 +00:00
Hannes Janetzek 16a49ed8b8 - no need to delay showing the list.
fixes black area sometimes being visible with current theme
- remove unused functions
- smaller default geometry


SVN revision: 53904
2010-10-26 23:21:20 +00:00
Hannes Janetzek 6ca862968e evry: select first plugin on async update when the currently selected plugin has no items
- fixes browsing of folders from recent-files plugin


SVN revision: 53393
2010-10-14 11:44:30 +00:00