Commit Graph

277 Commits

Author SHA1 Message Date
Tom Hacohen f7f204353d Tiling2: Handle more delete cases. 2014-02-21 09:15:06 +00:00
Tom Hacohen 38e13e2648 Tiling2: Fixed a few bugs. 2014-02-21 09:15:06 +00:00
Tom Hacohen 21ac77185b Tiling2: Get rid of split_type, use levels instead and bug fixes. 2014-02-21 09:15:06 +00:00
Tom Hacohen f64763ab6e Tiling2: Fixed tree update bugs. 2014-02-21 09:15:05 +00:00
Tom Hacohen aac439698b Tiling2: Removed more code. 2014-02-21 09:15:05 +00:00
Tom Hacohen da4212680a Tiling2: Completely get rid of the stacks concept. 2014-02-21 09:15:05 +00:00
Tom Hacohen 9831904a88 Tiling2: Fixed a bug in tree-walker. 2014-02-21 09:15:05 +00:00
Tom Hacohen dd7c25b506 Tiling2: Moved fullscreen check into 'is_tilable'. 2014-02-21 09:15:05 +00:00
Tom Hacohen 091eeb2df4 Tiling2: Removed more redundant code. 2014-02-21 09:15:05 +00:00
Tom Hacohen af06d8db25 Tiling2: More code cleanups. 2014-02-21 09:15:05 +00:00
Tom Hacohen 29693d93b3 Tiling2: Cleaned up some more code. 2014-02-21 09:15:05 +00:00
Tom Hacohen ea19439b72 Tiling2: Removed more redundant code. 2014-02-21 09:15:05 +00:00
Tom Hacohen 81eb74ca92 Tiling2: Make it possible to toggle split type from key bindings. 2014-02-21 09:15:05 +00:00
Tom Hacohen 76c4fb85d9 Tiling2: Moved more redundant code. 2014-02-21 09:15:05 +00:00
Tom Hacohen 96645931bd Tiling2: Added a mode toggle action. 2014-02-21 09:15:05 +00:00
Tom Hacohen fad33bde8d Tiling2: Removed some more code I don't need. 2014-02-21 09:15:05 +00:00
Tom Hacohen 4c590afe7e Tiling2: Allow not finding a parent if it's the first window. 2014-02-21 09:15:01 +00:00
Tom Hacohen 5ad0edeb84 Tiling2: Added a function to test if we should tile. 2014-02-21 09:15:01 +00:00
Tom Hacohen f1068feed3 Tiling2: Remove more stack related code.
For now, you can't resize windows.
2014-02-21 09:15:00 +00:00
Tom Hacohen d81034ac36 Tiling2: Start using window tree. 2014-02-21 09:14:56 +00:00
Tom Hacohen 9060fa64b9 Tiling2: Fixed bugs and improve the window tree implementation. 2014-02-21 09:14:56 +00:00
Tom Hacohen cfd4ea4f9f tiling2: Added window_tree. 2014-02-21 09:14:56 +00:00
Tom Hacohen 6b68b99491 Tiling2: Initial commit. 2014-02-21 09:14:44 +00:00
Mike Blumenkrantz 29cd45142a remove E_EVENT_CLIENT_(UN)STICK, use E_EVENT_CLIENT_PROPERTY & E_CLIENT_PROPERTY_STICKY 2014-02-10 20:10:38 -05:00
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
Boris Faure 3155115bc5 fix tiling configuration screen 2013-12-14 17:50:47 +01: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
Igor Murzov 519c4de7f6 Revert "updating desktop files"
This reverts commit 22f7a34e23.
2013-09-04 04:11:13 +04:00
maxerba 22f7a34e23 updating desktop files 2013-07-31 12:08:42 +02:00
maxerba b7ba1dea64 Adding serbian localization in desktop files 2013-07-08 13:33:29 +02:00
maxerba 26303bbe1f Fixed sorting in desktop files 2013-07-05 19:02:53 +02:00
Eduardo Lima (Etrunko) d4ee6be578 Split .gitignore into multiple files
Signed-off-by: Eduardo Lima (Etrunko) <eduardo.lima@intel.com>
2013-06-11 18:19:12 -03:00
maxerba 5deed35ac2 adding catalan translation and sorting lines alphabetically 2013-06-05 00:16:38 +02:00
Boris Faure de187284fc tiling: fix segv when adding a stack without config 2013-04-20 18:27:06 +02: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 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
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 326a7c4bde add gettext to E_CONFIGURE_OPTION_ADD usage, hassling by garik
SVN revision: 82304
2013-01-06 15:12:31 +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
Boris Faure 0cda661565 e:tiling: fix toggle_rows_count
SVN revision: 81680
2012-12-24 12:40:28 +00:00
Boris Faure 2948af6ebb e:tiling: factorize code about moving windows
SVN revision: 81678
2012-12-24 11:13:19 +00:00
Boris Faure 69165855cd e:tiling: Corrected off-by-one error that was causing a SIGFPE when moving the last window in a stack to the left.
SVN revision: 81677
2012-12-24 11:12:56 +00:00
Boris Faure d93209d339 e:tiling: fix resizing/moving windows with a step <= 0
Should close #1996

SVN revision: 81192
2012-12-17 22:20:56 +00:00
Boris Faure 782898f630 e:tiling: fix some possible overflow issues
SVN revision: 81191
2012-12-17 22:20:44 +00:00
Boris Faure 34906754b8 e:tiling: fix moving/resizing tiled windows
Refs: #1996

SVN revision: 81054
2012-12-16 19:43:32 +00:00
Massimo Maiurana 9f1d6e067e Store and handle action names correctly. (patch from Igor Murzov)
SVN revision: 81049
2012-12-16 16:58:17 +00:00
Boris Faure 114eb6d6ae e:tiling: tiled windows shouldn't get maximised by users
Refs: #1996

SVN revision: 81027
2012-12-15 18:06:39 +00:00
Boris Faure 4e35962cb1 e:tiling: fix some overflows and add a bunch of asserts
SVN revision: 80892
2012-12-13 20:55:54 +00:00
Boris Faure 504ba6fcd1 e:tiling: add stack when moving on top/left side
SVN revision: 80535
2012-12-08 21:34:08 +00:00
Boris Faure 104761a441 e:tiling: do nothing on desk_show/hide
SVN revision: 80393
2012-12-06 21:22:50 +00:00
Mike Blumenkrantz 503d7305db Dear all,
As I've said before, I'm attached a patch for minor bugs in the e17 again.
 Please take a look at attached patch.

 01. missing E_FREE(wev) if zone is null
     File: src/bin/e_actions.c: 1467
     Function: ACT_FN_GO_EDGE macro function
     null check of zone and wev, it would be better to separate them.

 02. dead code
     File: src/bin/e_configure.c: 338
     Function: _e_configure_efreet_desktop_update

 03. array buf might be overwritten by "buf[i] = '\0'"
     File: src/bin/e_eap_editor.c: 412
     Function: _e_desktop_edit_user_local_desktop_filename_generate

 04. missing null check
     File: src/bin/e_fm.c
     Function: e_fm2_icon_get: 2196
     It would be better to check ic->info.file in e_fm2_icon_get
     before passing to _e_fm2_file_is_edje because it doesn't check
     null pointer.

 05. array 'path' might be overwritten by "path[i + 1] = XXX"
     File: src/bin/e_fm.c: 4299
     Function: _e_fm2_uri_parse

 06. missing null check
     File: src/bin/e_fm_device.c: 468
     Function: e_fm2_device_mount_find
     If the null pointer is passed to e_fm2_device_mount_find,
     then it attempt to compare string using strncmp without null
     check.
     e.g., e_fm2_path_set
           -> real_path = _e_fm2_dev_path_map: this function could return null.
           -> sd->realpath = real_path;
           -> e_fm2_device_mount_find(sd->realpath)

 07. missing free(fstrip)
     File: src/bin/e_import_config_dialog.c: 34
     Function: _import_edj_gen

 08. missing _module_free(cfm)
     File: src/bin/e_int_config_modules.c: 530
     Function: _load_modules

 09. missing free(class) in for loop
     File: src/bin/e_int_menus.c: 1187
     Function: _e_int_menus_clients_add_by_class

 10. missing free(roots)
     File: src/bin/e_main.c: 1646
     Function: _e_main_screens_init
     Actually only e_win_init function could return 0.
     But I've added free to other codes for the consistency.

 11. missing null check of 'es->cfg'
     File: src/bin/e_shelf.c: 2583
     Function: _e_shelf_bindings_add
     'es->cfg' might be null. please look at e_shelf_position_calc.

 12. no ect->category check before comparing string values
     File: src/bin/e_theme.c: 387
     Function: e_theme_config_remove
     I'm not sure, but inner if block checks ect->category before
     deleting a string.

 13. missing E_FREE(wcb) in while loop
     File: src/bin/e_widget_ilist.c: 146
     Function: _queue_timer

 14. dereferencing freed pointer 'entry'
     File: src/modules/quickaccess/e_mod_quickaccess.c: 583
     Function: _e_qa_event_border_remove_cb

 15. missing E_FREE(trov)
     File: src/modules/tiling/e_mod_tiling.c: 3106
     Function: _do_transition_overlay

 Thanks & Regards,
 Gwanglim


SVN revision: 80231
2012-12-05 11:13:09 +00:00
Boris Faure aaf43c0bad e:tiling: disabling module restores original borders and sizes
SVN revision: 79965
2012-12-01 13:53:51 +00:00
Carsten Haitzler 50f83c3db9 chlog isnt being used :)
SVN revision: 79710
2012-11-26 12:41:29 +00:00
Carsten Haitzler 4dcc47508e merge authors in from tiling.
SVN revision: 79709
2012-11-26 12:41:09 +00:00
Massimo Maiurana 8314c3b95c updating various translations
SVN revision: 79519
2012-11-21 19:45:32 +00:00
Carsten Haitzler f534e30089 put lucas's makefiles back.. but what do you do to make it not break
between builds from older vs newer makefile setup?



SVN revision: 79024
2012-11-09 14:49:05 +00:00
Carsten Haitzler 5fa813e1cc lucas... u're going to hate me... but i'm reverting this whole lot of
module build chnages because its fundamentally broken. it DOES NOT
PRODUCE .SO FILES. just .la and .a files. the only reason u dont
notice is.. you ALREADY had .so's installed. i just got in from the
airport... synced and updated.. rebuilt and was met with all modules
not loading... literally - no .so's are installed int he module dirs.
try rm -rf the instaleld module tree.

regardless... this has to be reverted be3cause it's a major break. the
idea is right/nice. the implementation is causing... problems.



SVN revision: 79015
2012-11-09 10:45:35 +00:00
Lucas De Marchi 0000e87ffc e/modules: delete old Makefile.am's
SVN revision: 78983
2012-11-07 21:50:53 +00:00
Lucas De Marchi 92eee9068a e: use AM_CPPFLAGS instead of INCLUDES
Get rid of warnings like below with recent automake (1.11 and newer):
src/bin/Makefile.am:6: warning: 'INCLUDES' is the old name for 'AM_CPPFLAGS' (or '*_CPPFLAGS')
src/bin/Makefile.am: installing './depcomp'
src/modules/access/Makefile.am:11: warning: 'INCLUDES' is the old name for 'AM_CPPFLAGS' (or '*_CPPFLAGS')



SVN revision: 78720
2012-10-31 20:40:40 +00:00
Massimo Maiurana 6f4591eed2 updating russian translation
SVN revision: 78648
2012-10-30 12:10:17 +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
Mike Blumenkrantz ea61755d98 fix a bunch of questionably valid null derefs from clang
SVN revision: 76807
2012-09-18 11:42:44 +00:00
Boris Faure 40adabe9ad e: tiling: add "send to corner" actions
As requested in #1457.

SVN revision: 76714
2012-09-16 19:59:08 +00:00
Boris Faure 3e71401d2d e: tiling: add keybindings to move windows directly
Feature request by Jeff Hoogland

SVN revision: 75931
2012-09-01 17:15:27 +00:00
Boris Faure 3c7398d683 e: tiling: fix configuration being sometimes lost
Because it was freed…

SVN revision: 75164
2012-08-12 16:19:54 +00:00
Boris Faure 9baedbe54f e: tiling: remove window from floating list when changing desktop
SVN revision: 72574
2012-06-21 08:31:01 +00:00
Boris Faure 1ecdcebfc5 e: tiling: add to floating list when a window is floating...
SVN revision: 72573
2012-06-21 08:30:51 +00:00
Mike Blumenkrantz f666f1d28e more #undefs
SVN revision: 72106
2012-06-14 07:37:09 +00:00
Stefan Schmidt e147d690fa tiling: Remove part of the README that refers to an up to date e17
Being merged into core we are up to date in any case.

SVN revision: 71998
2012-06-12 09:12:45 +00:00
Boris Faure 9432f762d0 e: tiling: fix use of unused var
SVN revision: 71444
2012-05-26 22:13:42 +00:00
Boris Faure 404b5a9c84 e: tiling: fix restoring old border
SVN revision: 71427
2012-05-25 13:40:56 +00:00
Daniel Juyung Seo 1d79eb47f9 e tiling: Use c89 style for 'for' statement. Fixed build breaks with some options. Special thanks to vtorri.
SVN revision: 70899
2012-05-10 05:06:48 +00:00
Cedric BAIL b49a5e4205 e: fix build of tiling module on bsd.
SVN revision: 70891
2012-05-09 09:57:15 +00:00
Cedric BAIL c2a29811d5 e: massiv warning cleanup !
SVN revision: 70756
2012-05-04 09:38:52 +00:00
Massimo Maiurana bce6efef04 updating french and italian translations
SVN revision: 70697
2012-05-03 17:39:23 +00:00
Cedric BAIL 55415c6df0 e: move e-tiling in e17.
SVN revision: 70614
2012-05-02 08:20:53 +00:00