Commit Graph

22 Commits

Author SHA1 Message Date
Chris Michael 0a94e8ba71 enlightenment: Make E build again with EFL from git
sed -i 's/EAPI/E_API/g'

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-05-07 15:13:10 -04:00
Mike Blumenkrantz 471dcb24cb __UNUSED__ -> EINA_UNUSED
this has been bugging me forever. __UNUSED__ is no longer a valid macro here.
2015-03-18 18:09:09 -04:00
Mike Blumenkrantz 99589eb5af remove E_Win+e_canvas, convert all internal wins to use elm_win
known issues:

* keybindings for efm windows (eg. ctrl+w) are broken until the rest of the conversion is completed
2014-11-20 15:26:21 -05:00
Mike Blumenkrantz 1285ba4196 check import config dialog unlink() return value
CID 1039964
2014-04-04 15:04:28 -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
Cedric Bail 46ee3c3226 e: fix generation of the wallpapper from a picture.
NOTE; eina_mkstemp doesn't alter it's parameter, you need to ask the
filename if you want it.
2013-11-21 16:52:48 +09:00
Stefan Schmidt 0afd8e8910 Avoid umask problem with mkstemp by using eina_file_mkstemp
Instead of handling umask in every mkstemp case we can simply use
eina_file_mkstemp for this.

CID: 1039806
2013-11-15 16:34:55 +01:00
Iván Briano 39ea5b4e3d Look for edje_cc in the right place when importing wallpapers
Some of us do funky things like not having a proper PATH set when E
starts, so let's not rely on such black magics when we have better methods.
2013-07-12 15:14:48 -03:00
Carsten Haitzler e28be382a2 stop adding max: to bg edj's being generated on import. 2013-04-23 15:50:49 +09:00
Mike Blumenkrantz 543b85aa2a fix small leaks in efm and e_import_config_dialog
SVN revision: 83137
2013-01-23 09:59:14 +00:00
Mike Blumenkrantz 9e8e755cdf formatting: all at once
SVN revision: 82625
2013-01-11 10:34:29 +00:00
Carsten Haitzler 1f745881d9 series of dialogs that were not resizable but should be, are now.
SVN revision: 81434
2012-12-20 10:07:30 +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
Mike Blumenkrantz 362531b082 Dear all,
I'm attaching a patch for some minor bugs in the e17.
 Please take a look at attached patch.

 01. missing E_FREE(inst)
     File: src/bin/e_exec.c: 347
     Function: _e_exec_cb_exec

 02. missing null check
     File: src/bin/e_fm.c: 10173
     Function: _e_fm_error_dialog
     I'm not sure, but all other codes always check the return
     value of e_fm2_op_registry_entry_get except here.

 03. missing free(slave)
     File: src/bin/e_fm_ipc.c: 804
     Function: _e_fm_ipc_slave_run

 04. eina_list_remove after free
     File: src/bin/e_fm/e_fm_ipc.c :1325
     Function: _e_fm_ipc_cb_fop_trash_idler

 05. invalid check for _udisks_del, it might be _udisks_chg.
     File: src/bin/e_fm/e_fm_main_udisks.c : 162
     Function: _e_fm_main_udisks_test

 06. uninitialized gx and gy values
     File: src/bin/e_gadcon_popup.c: 172
     Function: _e_gadcon_popup_position
     These could be changed in e_gadcon_client_geometry_get
     if gcc->o_base is null.

 07. unnecessary code 'evas = e_win_evas_get(dia->win)'
     File: src/bin/e_import_config_dialog.c: 456
     Function: e_import_config_dialog_show

 08. missing free(sizes)
     src/bin/e_randr_11_serialization.c: 136
     Function: _11_try_restore_configuration()

 09. unnecessary variable output_info
     File: src/bin/e_randr_12.c: 560
     Function: _output_property_change_event_cb

 10. eina_list_remove after free
     File: src/bin/e_randr_12_serialization.c : 357
     Function: _12_serialized_setup_update

 11. no check of the return value of symlink.
     File: src/bin/e_widget_fsel.c: 84
     Function: _e_wid_fsel_favorites_add

 12. no evr->var check before comparing string values
     File: src/modules/conf_applications/e_int_config_defapps.c: 432
     Function: _basic_apply

 13. missing error message or check return value of edje_file_group_exists
     File: src/modules/conf_theme/e_int_config_theme.c: 333
     Function: _open_test_cb
     Anyway, I've added e_util_dialog_show if failed. Is it okay?

 14. missing index range check
     File: src/modules/gadman/e_mod_config.c: 153
     Function: _cb_config
     It could read negative array index, because return value of
     e_widget_ilist_selected_get might be negative.

 BR,
 Gwanglim


SVN revision: 80020
2012-12-03 07:54:07 +00:00
Carsten Haitzler b1b5f7c09d less offensive import dialog layout. :)
SVN revision: 79742
2012-11-27 10:45:09 +00:00
Thomas Gstädtner 5349d22d16 wallpaper: more sane dialog title
Signed-off-by: Thomas Gstädtner <thomas@gstaedtner.net>

SVN revision: 79221
2012-11-13 10:58:04 +00:00
Mike Blumenkrantz 63fcb74610 move animation hint into bg group so we can use a better codepath to check it
SVN revision: 75093
2012-08-10 10:49:56 +00:00
Mike Blumenkrantz f697879b23 add a hint in import config edj creation for disabling animation
SVN revision: 75092
2012-08-10 10:42:43 +00:00
Mike Blumenkrantz 163f21d4b5 don't need to close and reopen a file in import config dialog
SVN revision: 75087
2012-08-10 10:34:19 +00:00
Mike Blumenkrantz b4fdb00c96 use strdupa in import config dialog
SVN revision: 75085
2012-08-10 10:29:44 +00:00
Mike Blumenkrantz ffac12a5e1 forgot to hook dialog deletes in new import dialogs which led to a crash when keybinds were used. fix!
SVN revision: 75078
2012-08-10 09:53:11 +00:00
Mike Blumenkrantz 5e1e915578 break out wallpaper import dialog and import settings dialog into separate dialogs usable outside the wallpaper widget, also clean up this code
SVN revision: 75047
2012-08-09 12:57:06 +00:00