Commit Graph

469 Commits

Author SHA1 Message Date
Mike Blumenkrantz a9627e84f5 remove a bunch of unnecessary ecore-x calls from modules 2014-01-14 20:28:57 -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 7824d31942 dear $EDITOR, thanks for removing that newline in the includes.
I didn't need it, and it didn't break anything.

no wait, fuck you.

sincerely,
zmike
2014-01-01 14:32:56 -05:00
Mike Blumenkrantz 8462090f3d bugfix: no more crashes when being a jerk with Navigate menu scrolling
this really only happens if you're TRYING to break things, but don't assume parent menu item is active item since it might not be
2014-01-01 14:25:27 -05:00
Mike Blumenkrantz 400f966b70 improve efm popup display with multiple monitors
previously we'd clamp to the current screen, but that's not really necessary. also e_popup sucks, so trying to create zone-relative coords is not going to work -> just use first zone always
2013-12-09 07:26:33 -05:00
Mike Blumenkrantz 526578941f only force custom icon view for efm desktops when creating a fileman path for the first time
T98
2013-12-02 16:02:42 -05:00
Mike Blumenkrantz 80b3dc4830 alter fileman Open Terminal Here test/execution to activate when a regular file is passed
T34
2013-11-26 12:32:00 -05:00
Mike Blumenkrantz 5d4e2aa074 refresh efm after changing fileman settings
T549
2013-11-25 20:48:36 -05:00
Mike Blumenkrantz abff6f1427 conf2 and related subsystems were a fun and useful experiment, but this is not their time. removed.
see econf.git
2013-11-25 16:04:01 -05:00
Sebastian Dransfeld df4b3baf30 fm: Use string value directly 2013-11-21 13:57:58 +01:00
Mike Blumenkrantz bedf56c457 add back/forward mouse button support for efm when a toolbar is present
button numbers untested because I don't have a mouse, so if they're wrong someone should post the results of clicking those buttons from xev

T67
2013-11-20 15:32:31 -05:00
Mike Blumenkrantz fbe015de2e bugfix: fileman spring window closing on desktop when dnd ends 2013-10-03 09:45:26 +01:00
discomfitor 0b4528f3a4 this job struct member is a job, not a timer 2013-08-31 15:06:39 +01:00
Mike Blumenkrantz 34019ff85a feature: Navigate menu item now opens $HOME 2013-08-30 14:58:17 +01:00
Mike Blumenkrantz d236e2acec bugfix: fileman double click auto-resizing now accounts for toolbar/sidebar and accounts for maximized state
T208
2013-07-26 12:52:57 +01:00
Carsten Haitzler 3dc555a7cf fix warnings in build so new ones turn up and get fixed. 2013-07-15 11:45:19 +09:00
maxerba 26303bbe1f Fixed sorting in desktop files 2013-07-05 19:02:53 +02:00
Mike Blumenkrantz f92b638061 fix path setting when opening fileman windows from "No listable items" 2013-06-24 05:59:59 +01:00
Mike Blumenkrantz a41c50632c udisks2 support 2013-06-20 16:36:33 +01:00
Igor Murzov 315dbf8409 Let's drop meaningless empty translations from .desktop files 2013-06-17 13:43:34 +04:00
Mike Blumenkrantz a394a20ee6 fix fileman double slash in path setting
phab T161
2013-06-17 10:08:46 +01:00
Mike Blumenkrantz 5e7fe56024 don't null fwin popup icon when deleting popup 2013-06-11 09:10:20 +01:00
Mike Blumenkrantz 38615a27d4 fix a crazy fileman bug where calculating the size of the tooltip would cause a mouse out event on the icon, deleting the tooltip while it was being created 2013-06-10 13:36:03 +01:00
maxerba 5deed35ac2 adding catalan translation and sorting lines alphabetically 2013-06-05 00:16:38 +02:00
Mike Blumenkrantz abfed64b8a don't set dnd aware twice on comp canvas 2013-05-29 13:45:48 +01:00
Mike Blumenkrantz 14b50dca6b set delete callback on fileman toolbars to prevent double free 2013-05-28 15:05:32 +01:00
Carsten Haitzler 738b5d417d fix segv in applyig fileman config to all fwins while walking fwin list (deleting an fwin while walking) 2013-05-28 19:43:51 +09:00
Igor Murzov b48114152a Better gettext usage for conf2 module 2013-05-11 12:15:01 +04:00
Mike Blumenkrantz d8c603ae87 filemanager windows no longer resize to 0x0 when double clicked with no icons present
T78
2013-05-08 08:28:53 +01:00
maxerba 8d7c40c622 updating serbian translation 2013-05-04 20:40:16 +02:00
Lucas De Marchi f8a2dd4d95 Rename edbus->eldbus 2013-04-23 12:37:43 -03:00
Mike Blumenkrantz ed7b29d50f all comp wins now have zoomaps, zooming effect lovers rejoice 2013-04-16 13:51:50 +01: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
Daniel Juyung Seo 10ad3b23a8 efm now knows about KP_Enter. Patch by godfath3r.
KP_Enter key is added in enlightenments file manager.
2013-03-05 18:52:19 +09: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 aa6a2d173d giant comp rejiggering commit because anything smaller would have broken something:
* remove xwin for container canvas: now drawn directly on the compositor canvas

* added SHAPE_DEBUG define for bored developers

* bindings now use new e struct for mouse/wheel events

* container+zone now get mouse events from smart callbacks instead of x events

* rename comp api namespace

* change comp underlay theme to have a swallow for the wallpaper

* add names to all zone/container/comp objects to make debugging much easier

* some minor related updates to go along with this

SVN revision: 83752
2013-02-07 13:20:07 +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 b6359e9607 "No listable items" in Navigate menu is now clickable
SVN revision: 83564
2013-02-01 12:56:52 +00:00
Mike Blumenkrantz 43692b40ee fix weird crash which started happening when efm windows were deleted after shutdown somehow...probably e18 change-related
SVN revision: 83551
2013-02-01 11:39:19 +00:00
Mike Blumenkrantz be131c90fa fix array offset for conf2 option in fileman
SVN revision: 83132
2013-01-23 09:23:12 +00:00
Igor Murzov 2b2335fc0b Translate messages in configuration checker error dialog.
SVN revision: 82787
2013-01-14 23:42:40 +00:00
Mike Blumenkrantz 16062072e4 simplify/streamline configure option adding, also add option domains so modules can get lists of their own options or other module options
SVN revision: 82695
2013-01-12 12:28:48 +00:00
Mike Blumenkrantz af86f79e65 use new CUSTOM variant macro for conf2 options in modules
SVN revision: 82620
2013-01-11 08:28:46 +00:00
Mike Blumenkrantz 9543eb5c37 fix bug where slider could be changed while disabled
ticket #2169


SVN revision: 82403
2013-01-08 11:06:56 +00:00
Mike Blumenkrantz 326a7c4bde add gettext to E_CONFIGURE_OPTION_ADD usage, hassling by garik
SVN revision: 82304
2013-01-06 15:12:31 +00:00
Lucas De Marchi 5e0c91af3c e: fix bogus check on array, above its bounds
fileman/e_mod_main.c: In function '_cfg_toolbar_orient_cb_info_cb':
fileman/e_mod_main.c:272:18: warning: array subscript is above array bounds [-Warray-bounds]

Hopefully stack is not NULL there, that's why nobody caught this bug.

Patch by: Lucas De Marchi <lucas.de.marchi@gmail.com>



SVN revision: 82177
2013-01-04 13:47:07 +00:00
Mike Blumenkrantz a486201959 implement tag aliases for configure options, also add top-level files category when fileman is loaded
SVN revision: 82173
2013-01-04 13:30:09 +00:00
Mike Blumenkrantz 1b215e1cad add conf2 options for comp, tiling, notification, fileman, and quickaccess modules
SVN revision: 82079
2013-01-03 14:47:40 +00:00
Lucas De Marchi aba6a0090c e: sanitize edbus method table in fileman
SVN revision: 81979
2013-01-02 13:15:43 +00:00
José Roberto de Souza 5b714e3146 e: Port fileman to edbus
Patch by: José Roberto de Souza  <zehortigoza@profusion.mobi>



SVN revision: 81977
2013-01-02 13:14:54 +00:00