Commit Graph

145 Commits

Author SHA1 Message Date
Chris Michael 915f8f0613 @bugfix: Fix building for WAYLAND_ONLY by using the proper define
sed -i 's/WAYLAND_ONLY/HAVE_WAYLAND_ONLY/g'

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2014-03-18 07:43:04 +00:00
Mike Blumenkrantz 4b58fa9a4e replace ev->keyname with ev->key
see efl 5ae4cfd1923e502731f4d8fc2bf67b1f536a9216
2014-03-13 13:03:34 -04:00
Mike Blumenkrantz 8491ceebc0 try locking new desklock interfaces on append if state == locked 2014-01-15 01:01:41 -05:00
Mike Blumenkrantz 235c369adf feature: make desklock hookable, break out current desklock into module, move pam stuff to separate file
after this commit, the new-but-invisible module "lokker" (or other custom loaded module) is in charge of creating all graphics for the lock screen, and it will be added to the user's config. failure to load a lockscreen module will just result in a black screen

desklock subsystem now handles all the pre/post lock stuff while the modules themselves are responsible for creating visuals and calling auth functions to determine whether to unlock the screen
2014-01-14 20:28:59 -05:00
discomfitor cb956069d5 feature: revive personal desklock passwords
these were previously disabled because hashing a password was too much work (I guess?), but now they're back. config dialog has changed accordingly
2014-01-14 20:28:59 -05:00
discomfitor bf7a2e8c47 add blocker rects for desklock
add a black rect to cover the screen during desklock
2014-01-14 20:28:59 -05:00
discomfitor a31e8a70fb break out desklock into display server-able hooks
if we're running in a non-X environment, we can't very well expect that using X calls to hide/show windows for desklock is going to work as expected. now a compositor backend can add a pre or post desklock hook to hide/show its clients as necessary
2014-01-14 20:28:59 -05: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 cc9c130c24 clean up desklock showing on startup, add env var for checking unlocked state
desklock's layer is below the start splash layer, so this can just be shown any time regardless of whether it's enabled. security++

previously the fact that e was restarting could break out of desklocked startup due to how the env variables were set. now there is a new variable which only gets set when the screen is locked which will force lock on startup even during restarts

T681
2013-12-19 10:55:56 -05:00
Mike Blumenkrantz e4e6b0d0fd force comp reshape after desklock hide
should fix T440
2013-11-27 10:38:21 -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 6703cb2bf3 nocomp mode now dynamically enables/disables based on the state and stacking of fullscreen windows and comp objects
SVN revision: 84062
2013-02-18 13:43:55 +00:00
Mike Blumenkrantz f36ecd9d3d giant comp rejiggering commit #2: popups are now objects drawn directly onto the compositor canvas with no xwindows of their own
* added a number of new e_comp functions and macros

* options for disabling effects on objects: this option does not currently have any effect

* all modules which used gadcon popups have been adjusted

* all modules which used input windows to detect close events for gadcon popups have been adjusted to use new popup autoclose functionality

* shelves are now always drawn on the compositor canvas, meaning objects will never get clipped by the shelf (ticket #1810)

* shelves no longer have an event object

SVN revision: 84060
2013-02-18 13:43:47 +00:00
Mike Blumenkrantz 55f5ff17bd desklock now uses comp canvas
SVN revision: 84052
2013-02-18 13:43:14 +00:00
Mike Blumenkrantz cba7f88f2f use handler list append macro for desklock handlers
SVN revision: 84050
2013-02-18 13:43:05 +00:00
Mike Blumenkrantz 57933c9d02 giant rollup commit fixing all xkb issues
tickets #1799, #2082


SVN revision: 83531
2013-01-31 17:50:45 +00:00
Miculcy Brian 9d781fa8ac Backlight, screenlock and screensaver don't check for fullscreen windows - we have presentation mode for that.
SVN revision: 82772
2013-01-14 17:26:13 +00:00
Mike Blumenkrantz 9e8e755cdf formatting: all at once
SVN revision: 82625
2013-01-11 10:34:29 +00:00
Miculcy Brian 4034a15345 Added option for doing desklock, blanking or dimming even when showing fullscreen windows.
SVN revision: 82358
2013-01-07 19:46:38 +00:00
Mike Blumenkrantz 1bbcf1abb0 added function to hide all active menus, always hide menus when desklocking
SVN revision: 81925
2012-12-31 07:47:51 +00:00
Mike Blumenkrantz 381425f538 improper E_FREE usage
SVN revision: 80939
2012-12-14 13:04:32 +00:00
Mike Blumenkrantz acdc863299 fix magic fail when deleting desklock popup: popup already hidden, so don't need to delay delete
SVN revision: 80938
2012-12-14 13:04:16 +00:00
Mike Blumenkrantz 1eda0a3417 some text fixes from thomasg
SVN revision: 79910
2012-11-30 15:39:17 +00:00
Carsten Haitzler 3a20ce737f fix inconsistent signal src for desklock.
SVN revision: 79324
2012-11-15 09:11:49 +00:00
Mike Blumenkrantz ce6d2534cc desklock popup now sets its own title and class
ticket #1653


SVN revision: 78423
2012-10-25 07:54:51 +00:00
Mike Blumenkrantz b8677593fc remove all LD_LIBRARY_PATH shenanigans from e17
ticket #1542


SVN revision: 77735
2012-10-10 09:27:24 +00:00
Mike Blumenkrantz 7a3eb421ff spellcheck hooooooooooooooooooooooo
SVN revision: 77562
2012-10-08 06:59:58 +00:00
Mike Blumenkrantz b247496406 ton of xkb fixes:
* e will no longer lose your currently selected layout on restart
* desklock layout switching now works real güd
* new e_config values to determine current and current user-selected kbd layout
* wasted my entire morning doing this

ticket #1538



SVN revision: 77356
2012-10-03 09:00:12 +00:00
Mike Blumenkrantz bec99c1d87 straggler from last commit
SVN revision: 77325
2012-10-02 14:04:38 +00:00
Mike Blumenkrantz 7aaa4e554c add another tab in desklock config to allow changing keyboard layout on desklock. EXPERIMENTAL!
ticket #1538


SVN revision: 77324
2012-10-02 14:04:04 +00:00
Mike Blumenkrantz bb5380c3da add new language config dialog for setting a desklock language (NOT keyboard layout)
part of ticket #1538


SVN revision: 77321
2012-10-02 13:00:25 +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
Vincent Torri 4a9dce6477 E17: gettext translation ++
patch by Maxime Villard


SVN revision: 76994
2012-09-21 19:00:28 +00:00
Mike Blumenkrantz 4c7010aba0 switch order of desklock wallpaper finding when desklock is set to use "current desktop's wallpaper" so that it uses the default wallpaper AFTER checking if there's a custom one set for the current desk
SVN revision: 76885
2012-09-20 06:57:33 +00:00
Mike Blumenkrantz 19566b810f fix bug where desklock background would not be correctly set when using "current desk's wallpaper" setting
SVN revision: 76867
2012-09-19 13:51:19 +00:00
Mike Blumenkrantz 913e0493f7 register and unregister desklock backgrounds on init/shutdown
SVN revision: 76864
2012-09-19 13:31:35 +00:00
Carsten Haitzler 9737c38fb8 oops forgot to return ret.
SVN revision: 75553
2012-08-22 14:10:53 +00:00
Carsten Haitzler f88ad21893 only found 1 place we dont zero out desklock pw asap after its not
needed anymore.



SVN revision: 75541
2012-08-22 11:41:08 +00:00
Mike Blumenkrantz a8beb0950c fix usage of PATH_MAX when not working with files
SVN revision: 75518
2012-08-22 07:02:41 +00:00
Mike Blumenkrantz db0049e248 desklock now properly supports ctrl+a for those times when you know you mistyped your password
SVN revision: 74246
2012-07-20 13:30:58 +00:00
Cedric BAIL eccf13058a e: add scripting feature to lock/unlock require some tests.
SVN revision: 73979
2012-07-17 13:33:21 +00:00
Mike Blumenkrantz 09be22e12f only track mouse movement when zones > 1, fix login box show/hide for multizone+current
SVN revision: 73937
2012-07-16 13:21:31 +00:00
Mike Blumenkrantz b098439495 handle desklock current_zone change better
SVN revision: 73936
2012-07-16 13:01:21 +00:00
Mike Blumenkrantz 404ce33b87 whoops, actually show desklock
SVN revision: 73935
2012-07-16 12:38:17 +00:00
Mike Blumenkrantz f2d25d9937 don't bother creating desklock login box at all if we aren't even going to show it
SVN revision: 73934
2012-07-16 12:30:31 +00:00
Mike Blumenkrantz 2b62451284 rewrite desklock to be more dynamic, removed relock jobs, properly handle add/del of zones
fixes ticket #1165


SVN revision: 73933
2012-07-16 12:23:37 +00:00
Mike Blumenkrantz 283fcc32df resize desklock bg object too
SVN revision: 73921
2012-07-16 10:45:08 +00:00
Mike Blumenkrantz 69b8aa3ae7 more sane handling of desklock when zone move/resize happens
part of ticket #1165


SVN revision: 73920
2012-07-16 10:43:23 +00:00
Mike Blumenkrantz 3966f8f797 add e_desklock_state_get() to provide an api for determining the current state of desklock
SVN revision: 73487
2012-07-09 08:03:58 +00:00
Mike Blumenkrantz 6e0ddd773a my last commit was a failure. this commit is somewhat less of a failure.
SVN revision: 73486
2012-07-09 07:47:54 +00:00