Commit Graph

294 Commits

Author SHA1 Message Date
Mike Blumenkrantz 166ed0d234 feature: new focus option "raise on revert focus"
this option provides the functionality which was intended by the old and broken "raise on focus" option. it raises windows ONLY when reverting focus in cases not directly triggered by the user or any application
2014-01-14 20:28:59 -05:00
Mike Blumenkrantz c081cee34d remove e-specific theme config members 2014-01-14 20:28:59 -05:00
discomfitor 3b15315764 feature: add PIN-style desklock for lokker module
accessible from the normal screen lock dialog
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
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 63f9ddcbb0 improve upgrade path for removal of raise on focus option 2013-12-01 10:19:59 -05:00
Carsten Haitzler a1d1e40559 elm integration improvement - copy themes over, fix includes and null config
provide a config upgrade path to version 13 which nulls/frees out
theme config (save memory - but more housekeeping), and that also
copeis ofer all files in ~/.e/e/themes to ~/.elementary/themes so you
don't lose themes you personally have and deletes the old e theme dir
if this succeeds.

also remove all #includes of Elementary.h and Emotion.h from single c
files as they are requirements now and in e.h

also remove theme path vars and code as theme path is no longer used.
2013-11-01 15:53:05 +09:00
Mike Blumenkrantz f1a65ee922 remove "border_raise_on_focus" config option
buckle up. for the first time in history, a config option is getting removed instead of added.

the reasons for this removal are many, but let's go way back to the beginning and see why it was added:
oh wait, we can't because the commit message (from 2006) is

>>    patches that i said were in - commit. (see my reply emails)

>>    also finish off a TODO item or 2

reading through the TODO items which were also crossed off in that commit, I'm assuming that this was the "option to NOT raise on focus in click to focus" item.

== REASON 1 ==

the problem here is that there's another, BETTER option called "click raises window" (always_click_to_raise) which does the same thing, except it doesn't totally fuck you when you get a random X focus event, which happens more often than you might think.

this means that, to avoid broken behavior which might cause your windows to spastically raise for a few frames in common cases (using winlist...) with click-to-focus, you have to know that this is the default-enabled option that's fucking you, and you have to remember to manually disable it every time. if you DON'T know that this is the option that's fucking you, and you just see windows randomly raising on their own, you'll probably either ignore it or file a bug, when this is supposed to be a "feature" that actually worked in reverse, since it was intended only for disabling.

== REASON 2 ==

there's also auto-raise, which can be set to 0.0s, which is effectively the same thing since it also triggers on focus but can be configured not to fuck your window stack

== REASON 3 ==

aaand finally, this option makes any sort of pointer focus model impossible to use, since your windows will constantly be raising all over as you move the mouse

tl;dr: I'm removing it, e-dealwithit.gif
2013-10-07 06:49:33 +01:00
Mike Blumenkrantz 9a615c1438 new user-requested option for moving the winlist-selected window to the current desk 2013-05-30 14:23:13 +01:00
Mike Blumenkrantz ad89c33535 remove unused "modal_windows" option which was breaking dialog focus in some cases 2013-05-10 13:08:52 +01:00
Mike Blumenkrantz 718dfef61d giant comp rejiggering commit #6:
* border->fx REMOVED, related border api REMOVED

* comp edc has new class of groups: e/comp/effects[/auto]
** these are effects which can be applied to any compositor object through the e_comp_win_effect* api and are written in embryo
*** two types - base and auto - base = manual, for use with animators; auto are "trigger and forget", for use as actual effects

* desk flip transition animations moved to comp effects and FIXED(ish)

* "zoom" effect renamed to "diagonal" for slightly less misleading name since it never did any zooming

* actual "zoom" effect added

* border hierarchy now as follows: cw->effect_obj swallows cw->shobj, cw->shobj swallows cw->bd->bg_object ?: cw->obj, if (cw->bd->bg_object) cw->bd->bg_object swallows cw->obj
** cw->effect_obj now used for all positioning and comp logic
** cw->effect_obj ONLY used for object transformation effects (moving, zooming, fading, etc)
** cw->shobj ONLY for comp visual/non-movement effects (focus effect, unfocus opacity, legacy shadows); this is a candidate for removal/rewrite in E19

* even more comp shape rewrites

* desk flip animation time now controlled by theme since edje doesn't support setting transition time in C; related config value removed

* desk flip transitions (in e_desk.c) rewritten

* various modules (evry/illume2) updated to use comp effects instead of fx offset

* desk flip configuration BROKEN(ish)
2013-04-15 08:39:16 +01:00
Christopher Michael e33fe5ac71 Remove all references to the old randr config.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 84120
2013-02-19 10:55:17 +00:00
Mike Blumenkrantz df0920e3a7 patch by Deon Thomas which implements efreet menu caching for e_int_menus
SVN revision: 83939
2013-02-15 08:16:06 +00:00
Mike Blumenkrantz a4ef12329e add config option for remembering filemanager windows globally instead of per-directory
ticket #1982


SVN revision: 83718
2013-02-07 08:20:42 +00:00
Mike Blumenkrantz 893b867070 add option for disabling all keyboard layout changes
SVN revision: 83674
2013-02-06 10:51:54 +00:00
Mike Blumenkrantz fcd92901fc winlist_warp_speed->pointer_warp_speed
pointer warp options consolidated into their own tab in focus settings


SVN revision: 83633
2013-02-05 14:22:54 +00:00
Mike Blumenkrantz d7c52deb98 merge all bindings dialogs into single module: conf_bindings
configs have been updated to load correct module and modapi version has been bumped to invalidate old modules


SVN revision: 83632
2013-02-05 14:03:11 +00:00
Mike Blumenkrantz ec87e69908 add yet another pointer warp option: disable all warps
ticket #asdfuser


SVN revision: 83629
2013-02-05 13:33:49 +00:00
Mike Blumenkrantz 41759238cd a much requested feature: drag-only edge bindings
ticket #281


SVN revision: 83628
2013-02-05 13:13:33 +00:00
Mike Blumenkrantz d1be1fc8bb add profile types to config so it will be possible to determine what type of config the user started with
SVN revision: 83588
2013-02-04 10:45:51 +00:00
Mike Blumenkrantz ac9d6f6027 a really horrendous commit to fix a typo in the xkb changes last week which caused config to be saved wrong
no configs were harmed in the making of this


SVN revision: 83586
2013-02-04 10:14:57 +00:00
Mike Blumenkrantz 4ad2b363ed add functions for freeing binding config structs
SVN revision: 83545
2013-02-01 10:35:33 +00: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
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 21dbe23b1a bump config generation for removal of use_composite
SVN revision: 82437
2013-01-09 07:55:39 +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
Mike Blumenkrantz 31e2299a67 add config option for disabling pointer warp when performing directional focus change in winlist, patch by David H. Bronke
ticket #2098


SVN revision: 82409
2013-01-08 11:51:56 +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 4a01ee16a0 add option for disabling icons in menus
ticket #2168


SVN revision: 82333
2013-01-07 09:35:30 +00:00
Mike Blumenkrantz 9e207e6f92 conf2
SVN revision: 82078
2013-01-03 14:47:21 +00:00
Mike Blumenkrantz 6112e1285c flag config option as GUI
SVN revision: 81737
2012-12-27 09:06:11 +00:00
Mike Blumenkrantz 0f01a6b279 in a move which will make me tremendously unpopular, config versioning has been changed from hex to dec across the whole tree, including helper functions and modules
PS. HAHAHAHAHAHAHAHA


SVN revision: 81624
2012-12-21 23:57:05 +00:00
Gwanglim Lee 499b88748b From: Gwanglim Lee <gl77.lee@samsung.com>
Subject: Re: Re: Re: [E-devel] [RFC] Virtual desktop window profile

I've attached 4th patch. May the 4th be with you.

ecore patch has been merged with efl and all files are based on r80123.

Thanks & Regards,
Gwanglim

------- Original Message -------
Sender : Daniel Juyung Seo<seojuyung2@gmail.com>
Date : 2012-12-04 01:55 (GMT+09:00)
Title : Re: Re: [E-devel] [RFC] Virtual desktop window profile

It looks ok to me.
Sorry but can you re-generate the patch according to the recent ecore
merge to efl single tree?

Daniel Juyung Seo (SeoZ)


On Thu, Nov 29, 2012 at 12:29 AM, Gwanglim Lee <gl77.lee@samsung.com>
wrote:

Dear Raster and Daniel Juyung Seo,

I've attached 3rd patches and test_config according to your reviews.
These are based on r79782.

[elementary & ecore]
1. "profile,set" -> "profile,changed" - done
2. spaces after EINA_LIST_FOREACH - done
3. variable type - keep
4. author - done
5. removing deprecated marking in patch - done
6. add elm_win_available_profiles_get to test_config for the debugging
purpose - done

7. check whether a given profile is present in an available profiles.
otherwise window profile will be one of the item
    in available profiles. - newly added thing to the elm_win
        8. merge with EO - done. :(
        
        
            Any comments would be appreciated.
            


SVN revision: 80216
2012-12-05 06:51:16 +00:00
Mike Blumenkrantz 64fc140c78 patch from Deon Thomas to fix lost window warp behavior
ticket #1680


SVN revision: 78693
2012-10-31 08:44:50 +00:00
Mike Blumenkrantz 3fc68c6c43 fix old FIXME regarding handling of NET_ACTIVE_WINDOW hint: new window focus option allows ignoring, animating, activating (current behavior is activating) on hint
right now this uses the "urgent" signal for the animate state, may want to change it to something else if separate theming is desired
ticket #1642


SVN revision: 78647
2012-10-30 11:57:35 +00:00
Cedric BAIL 0c356af7e2 e: make it less anoying. Now E17 also remember you tainted it.
SVN revision: 78148
2012-10-18 06:26:57 +00:00
Mike Blumenkrantz c094541aef patch from PrinceAMD which adds config options to warp lost windows back to center screen when enabled
video: http://dl.dropbox.com/u/7371269/lost_window_feature_2.ogv


SVN revision: 77878
2012-10-11 12:53:15 +00:00
Carsten Haitzler 35773a3241 add config for disabling delayed modules. this actually drastically
speeds up e startup - but this i mean the shelf comes up instantly
populated rather than taking 2 or 3 seconds to figure its life out.



SVN revision: 77558
2012-10-07 10:01:14 +00:00
Mike Blumenkrantz c310836bb3 add gui option for secure deletion in efm
SVN revision: 77434
2012-10-04 12:58:18 +00:00
Mike Blumenkrantz bdd879e7fc add new flag for preventing a window from being opened on restart by its remember, apply this to both the desktop editor and shelf config dialogs
SVN revision: 77407
2012-10-04 08:11:51 +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 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
Carsten Haitzler e574adfed7 add single-instance launching infra support for e17 as well as launch
tracking for ibar.



SVN revision: 76793
2012-09-18 10:00:37 +00:00
Carsten Haitzler 6669ca71a3 provide a way to select backlight device or output and then use it.
SVN revision: 76709
2012-09-16 10:43:17 +00:00
Mike Blumenkrantz 542501a85a e_config has a new option that can be enabled to switch file moving to use the old behavior of cp->rm instead of the new mv behavior
SVN revision: 76675
2012-09-14 15:13:51 +00:00
Carsten Haitzler 887dfcf3d9 e17 xkb patch building on ecore new event api. patch from:
http://trac.enlightenment.org/e/ticket/1306

but modified formatting and no theme changes.



SVN revision: 75410
2012-08-18 11:41:23 +00:00
Mike Blumenkrantz 62dc4cf2b2 add internal config entry for current netwm theme whenever we set it
SVN revision: 74375
2012-07-25 09:01:05 +00:00
Mike Blumenkrantz 11b99c6513 fileman's "Use Single Click" option now toggles a global config option which is picked up by fileselector widgets, also added a menu item to the right click efm menu to toggle this on a case-by-case basis
ticket #663


SVN revision: 74230
2012-07-20 10:25:02 +00:00