Commit Graph

820 Commits

Author SHA1 Message Date
Mike Blumenkrantz b63e490a33 remove e_util_comp_current_get() usage 2015-03-13 16:28:08 -04:00
Mike Blumenkrantz f130aeafce remove e_comp_evas_find() usage 2015-03-13 16:23:37 -04:00
Mike Blumenkrantz bacf638d73 remove E_Drag->comp and E_Comp param from e_drag_new() 2015-03-13 16:21:15 -04:00
Carsten Haitzler c28e58284a efm - make dir listing far faster - no file magic content and dont sync
this speed sup dir listing in efm drastically. first the e fm back end
uses an io thread that just spools through everything fast and sends
it over the mainloop to then send by ipc to e.

and on the e side we no longer use the heavy file internal magic using
api calls that wander all over a file for magic numbers - this is
insanely slow and brings listing to a crawl.
2015-02-24 18:36:31 +09:00
Mike Blumenkrantz c978a045e6 e_entry -> elm_entry conversion
another dice roll in the board game of enlightenment development. next, I will attempt to roll doubles to get out of jail.

 #teamborker

fix T1906
2015-01-11 12:20:46 -05:00
Mike Blumenkrantz 207a125904 simplify comp usage in e_fm 2015-01-11 12:20:46 -05:00
Mike Blumenkrantz 6be71a64f9 fix efm dnd crash
fix T1880
2014-11-29 12:22:25 -05: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
Wonguk Jeong 2da663a001 efm: clarify function name which is getting selected icons
_e_fm2_uri_icon_list_get() ->  _e_fm2_uri_selected_icon_list_get()
2014-08-17 23:35:41 +02:00
Wonguk Jeong b481c124c8 efm: bug fix in source icons finding logic on dnd
Summary:
There were a few crash cases during drag and drop.
- move file in Desktop using efm,
- move file in same directory using differnt efm

The root cause is icon finding logic. efm finds icons based on URI string.
But, the found icon could be different with selected one since there could be multiple efm in same directory.

Therefore, this patch filter out icon which is not selected icon.

Fixes T1364

Test Plan:
case 1. open efm -> goto desktop -> move file from ~/Desktop to ~/Desktop/folder
case 2. open two efm -> goto same directory in two efm -> move file to {currentdirectory}/folder in any efm

Reviewers: raster, zmike

Subscribers: cedric, seoz

Maniphest Tasks: T1364

Differential Revision: https://phab.enlightenment.org/D1331
2014-08-17 17:04:15 -04:00
Mike Blumenkrantz 8233bf8c25 clear efm file buffer after cut+paste operation
fix T1455
2014-07-27 15:47:48 -04:00
wonguk.jeong e2bf6f4427 e_fm: fix symlink access bug
Summary:
There was no checking about absolute path of symbolic link
In case of symbolic link, use real link (absolute path) and set sd->dev as "/"

Fixes T1365

Reviewers: raster, zmike

CC: seoz, cedric

Maniphest Tasks: T1365

Differential Revision: https://phab.enlightenment.org/D1147
2014-07-08 13:37:15 -04:00
Mike Blumenkrantz a0790eefff put back efm icon edje type check 2014-07-03 10:48:32 -04:00
Carsten Haitzler 7fe18a6954 unbreak enlightenment compile due to eo usage
so e is using eo... and something in eo changes... and e fails to
compile entirely.... there are hacks to use eo... and this is not good.

eo is still in a beta state. that means any usage of it  can (and
will) break. this is a problem for e. if e uses eo, then eo breaks in
an efl upgrade, e breaks. we can't really have that. we already hit
this problem in terminology with the app server code in elm. so let's
just not use eo in e until it's stable.

this removes eo usage in all places, with the e_menu code having a
small isedje() func due to some of its code paths doing special things
based on if the obj is an edje one or not as opposed to just a simple
"only emit if its an edje obj".
2014-07-01 08:37:33 +09:00
Mike Blumenkrantz 23392c9d78 don't unset icon dnd during dnd pre-end cb
this prevents smart callbacks from emitting as expected
2014-06-25 16:05:26 -04:00
Mike Blumenkrantz 90b268e377 fix another eo error 2014-06-25 16:05:26 -04:00
Cedric BAIL 3f9af38da2 edje: remove use of deprecated functions. 2014-06-07 21:10:55 +02:00
Chidambar Zinnoury 4db7e467c7 e fileman: Remove unused parameter.
Thanks Mike!
2014-05-09 16:49:43 +02:00
Mike Blumenkrantz 58a2dfc94e reset efm icon image/text/state after applying even/odd
fix T1222
2014-05-07 19:39:44 -04:00
Mike Blumenkrantz 452a23019c reset scanners/sorters and decrement busy state on efm path set
no more arbitrarily loading file icons from other directories into the current view, mmk?
2014-05-07 17:58:34 -04:00
Mike Blumenkrantz 22c8d5ca77 fix auto unmounting of volumes if mount occurred due to auto_mount option 2014-05-07 17:43:12 -04:00
Mike Blumenkrantz 810f44d25f do show removable media on first sighting (wtf?)
fix T1227
2014-05-07 17:06:49 -04:00
Mike Blumenkrantz 2cc4ae1fb8 fix more eo edje emit errors 2014-05-07 16:52:44 -04:00
Mike Blumenkrantz 0202c19d49 add efm op to notify of device backend changes 2014-05-07 16:46:56 -04:00
Mike Blumenkrantz 787ca774de return all fm objects matching a path
fix T1191
2014-05-07 14:11:20 -04:00
Jérémy Zurcher 3679550b5c e_fm: add missing EINA_UNUSED 2014-05-07 12:16:10 +02:00
Chidambar Zinnoury b4a58ad874 Bugfix: e fileman: Correct automagic window size computation.
When available width is less than minimum width, the height was computed according to the available width, but the window width was effectively the minimum width: its height was thus more than needed.

 The function now takes the minimum dimensions so that correct height and width are computed.
2014-04-21 21:54:15 +02:00
Wonguk Jeong c5c7b4733a efm: fix bugs during renaming multiple files and copying file into same directory
Summary:
Since E_FM_OP_OVERWRITE_RESPONSE_NO was sent before file renaming, src had been changed as next file.
->send E_FM_OP_OVERWRITE_RESPONSE_NO after file renaming.

File became empty if I copy a file into same directory
--> first of all, prevent move, rename, symlink into same directory. in case of copy, attach " (copy)" postfix after file name automatically. (need to decide postfix policy)

fixes T739

Reviewers: zmike, raster

CC: seoz, cedric

Maniphest Tasks: T739

Differential Revision: https://phab.enlightenment.org/D707
2014-04-10 11:09:36 +09:00
Mike Blumenkrantz a291211b13 bugfix: efm current .desktop fetching now returns the right .desktop
fix T792
2014-03-28 12:23:18 -04:00
Mike Blumenkrantz daa98e867d fix lots of edje emits on non-edje objects 2014-03-27 16:47:18 -04:00
Sebastian Dransfeld 68719520e6 fm: Check return of strrchr
strrchr can return NULL, so we need to check the return value.

CID 1039861
2014-03-24 13:23:39 +01:00
Sebastian Dransfeld 2d9f5764a3 fm: Fix weird test
ic is always true for this function, else dereference would fail. So the
only valid thing to check is whether we already have a drop_icon.

CID 1039829
2014-03-24 13:20:25 +01:00
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 6dd98df0d6 remove all remaining efl version check defines 2014-03-13 11:55:29 -04:00
Mike Blumenkrantz 6555daf56d correctly set keygrab flag on renaming efm icon to not permanently break input 2014-02-27 20:51:02 -05:00
Mike Blumenkrantz 6abcb5f946 save efm rename focus hook pointer 2014-02-27 20:26:16 -05:00
Mike Blumenkrantz bf47dcdb79 cancel efm rename operation on focus change
T987
2014-02-21 16:44:12 -05:00
Mike Blumenkrantz 25907a9f60 use comp grab functions consistently for efm grabs 2014-02-21 16:44:12 -05:00
Mike Blumenkrantz 96092f5f04 efm shouldn't accept file renames when selecting another file 2014-02-21 16:44:12 -05:00
Carsten Haitzler ed5f83ab0b fix probably NULL ic segv cause in efm
this SHOULD fix T933 if i could ever reproduce it...
2014-02-11 14:49:23 +09:00
Carsten Haitzler 15abb86bea efm - emit signal to icon when rename starts/ends
this, along with theme updates in elm should fix T799
2014-01-22 18:31:49 +09:00
Mike Blumenkrantz 68201a8d99 remove old hacks to work around back efm icon eventarea 2014-01-16 10:37:32 -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 d4fe53e2ce check smart data on efm rename dialog delete 2013-12-19 13:56:38 -05:00
Mike Blumenkrantz d985b01aa9 check efm queued icons when trying to live delete a file to ensure the icon is deleted
T633
2013-12-10 12:19:20 -05:00
Mike Blumenkrantz da931928e1 Revert "improve efm mouse move detection (no more tooltips when cursor is in separate window)"
This reverts commit db72a84e58.

this whole idea was broken. I blame the british food/water/oxygen/etc. it broke click renaming and all kinds of other things. changing the edc (in latest elm/1.8) is a much better and more effective solution
2013-12-10 10:16:27 -05:00
Mike Blumenkrantz a61786b7a7 Revert "restack event rect for efm...always"
This reverts commit 5bacb5dfc3.
2013-12-10 09:23:18 -05:00
Mike Blumenkrantz ef1b4e3d9d Revert "clip efm icon event rect"
This reverts commit cee520ff75.
2013-12-10 09:22:35 -05:00
Mike Blumenkrantz 3c514097ae Revert "unify efm icon positioning code"
This reverts commit 479bb201e3.
2013-12-10 09:22:22 -05:00
Mike Blumenkrantz a366561336 Revert "ensmallen efm icon event area"
This reverts commit b7fb8e7f8d.
2013-12-10 09:22:11 -05:00
Carsten Haitzler b6f25509b0 efm - pass events on icons. just say NO. it breaks them. 2013-12-10 20:59:06 +09:00
Mike Blumenkrantz ec156f71aa set pass events on efm icon objects
we don't get events from the theme any more, so ensure that edje isn't grabbing events randomly

T377
2013-12-09 17:38:01 -05:00
Mike Blumenkrantz b7fb8e7f8d ensmallen efm icon event area
previously it was impossible to click between icons. now it is.

T377
2013-12-02 16:18:05 -05:00
Mike Blumenkrantz 479bb201e3 unify efm icon positioning code 2013-12-02 16:14:22 -05:00
Mike Blumenkrantz cfcb80dbcb select previously renaming efm icon after rename ends 2013-11-26 13:26:53 -05:00
Mike Blumenkrantz d007a390c7 call "changed" smart callback immediately on efm refresh
fixes fileman popup race condition crashes
2013-11-26 13:26:25 -05:00
Mike Blumenkrantz 90d6defeea refresh efm after new file thread completes
T540
2013-11-26 13:15:35 -05:00
Mike Blumenkrantz 2e8adbe9ca run new file check on efm icons always, not just when rendering new icons 2013-11-26 13:15:04 -05:00
Mike Blumenkrantz b3fc8aba03 always generate efm directory actions in menu 2013-11-26 12:31:30 -05:00
Sebastian Dransfeld 4bc81e47c0 fm: really strip out multiple slashes
Fixes T161, T328, T412
2013-11-21 13:56:59 +01:00
Mike Blumenkrantz cee520ff75 clip efm icon event rect
this should fix all the weird fileselector behavior that people were getting
2013-10-14 06:11:17 +01:00
Yossi Kantor 437114651d efm selection cleanups
1) efm fix: last_selection resets when icons are freed

2) When no icon is selected select first on Right/Down press or last on Left/Up keypress

3) Maintain order in range selection from first to last.
2013-10-09 13:28:19 +01:00
Yossi Kantor 1ac50f65b5 e_fm custom moode (Desktop) icon navigation improved and simplified 2013-10-01 13:19:55 +01:00
Yossi Kantor 38e3969e72 e_fm custom and regular mode icon selection 2013-09-30 14:54:49 +01:00
Mike Blumenkrantz 9f652a6a86 Revert "File manager file selection improved to fit the standart"
This reverts commit c0d2c08e90.

note to self: check and make sure test patches are not committed when pushing
2013-09-24 10:13:28 +01:00
Yossi Kantor c0d2c08e90 File manager file selection improved to fit the standart 2013-09-23 03:07:29 +01:00
discomfitor 9aea17a978 improvement: clicking filemanager during rename cancels rename 2013-09-19 20:09:40 +01:00
discomfitor 3fb3b3520b bugfix: efm now allows repeated creation of new files from menus 2013-09-19 20:09:40 +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
Chris Michael 30225fa74e Fix uninitialized variable warning
Signed-off-by: Chris Michael <devilhorns@comcast.net>
2013-06-15 21:32:29 +01:00
Mike Blumenkrantz 092c7e2ba5 efm dnd operations involving multiple files will now show all files during the drag 2013-06-13 09:37:47 +01:00
Mike Blumenkrantz 7ee867e1ac use binbuf when creating efm dnd buffer 2013-06-13 08:27:09 +01:00
Mike Blumenkrantz 1bae7bbf38 selection rectangles in efm no longer sometimes turn into drag operations 2013-06-11 14:20:27 +01:00
Mike Blumenkrantz b781e4caa4 set efm icon thumb failure when icon generates at 0x0 2013-06-11 09:25:13 +01:00
Mike Blumenkrantz 65e4442f1c block repeated mozilla url drags which would overwrite an existing link 2013-05-29 14:38:53 +01:00
Mike Blumenkrantz bc86c5a8b5 efm now supports text/x-moz-url dnd operations when using efl 1.8 2013-05-29 13:45:48 +01:00
Mike Blumenkrantz e8f63e0bee handle dragging urls to efm: create new file with url as contents 2013-05-28 15:05:32 +01:00
Mike Blumenkrantz 5d6b139f35 make new dir creation more clear for error conditions 2013-05-28 15:05:32 +01:00
Carsten Haitzler 317968efa8 fix efm segv on single click due to out callbacks being called while deleting objects etc. 2013-05-28 21:03:07 +09:00
Mike Blumenkrantz 35866ab02b block access to efm icons after possible deletion 2013-05-21 14:54:01 +01:00
Mike Blumenkrantz 529d58a410 e_fm2_optimal_size_calc now returns a bool to indicate whether the returned size can be used 2013-05-08 08:27:54 +01:00
Mike Blumenkrantz 5bacb5dfc3 restack event rect for efm...always 2013-04-25 12:02:36 +01:00
Mike Blumenkrantz db72a84e58 improve efm mouse move detection (no more tooltips when cursor is in separate window) 2013-04-25 11:45:53 +01:00
Mike Blumenkrantz 0b844d36eb block efm key actions while menu is active
https://phab.enlightenment.org/T12
2013-04-25 09:23:33 +01:00
Carsten Haitzler 174a5fab15 fix efm link resolving.. again. new case. 2013-03-12 15:47:41 +09:00
discomfitor 7d0c1182c8 if a menu is active, ensure efm does not send icon_mouse_in smart callbacks 2013-03-11 05:20:28 +00: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
Carsten Haitzler bedf4969a4 fix relative path opening in efm... if link is relative it was broken. 2013-02-24 12:57:59 +09:00
Mike Blumenkrantz 70d68a30e0 giant comp rejiggering commit #4
* dnd canvas removed, dnd objects now drawn directly on compositor canvas

* dnd now correctly picks the top-most dnd-receiver location as its drop target instead of just using the first one in the list

* various other small changes to go along with this
2013-02-22 13:18:30 +00:00
Mike Blumenkrantz bf9933a336 E_FN_DEL macro renamed to E_FREE_FUNC with param order swapped for consistency 2013-02-22 13:18:30 +00:00
Mike Blumenkrantz 8b28b2f2f1 revert previous few commits related to e_menu, not meant to go in yet
SVN revision: 84083
2013-02-19 08:22:46 +00:00
Mike Blumenkrantz d2952d98e0 if a menu is active, ensure efm does not send icon_mouse_in smart callbacks
SVN revision: 84077
2013-02-19 08:09:01 +00:00
Mike McCormack 63aef25ad1 e: Fix uninitialized variable warning
SVN revision: 83800
2013-02-10 03:00:00 +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 16e1ac105e hmmm small update to previous commit which preserves functionality of related efm API call while still providing fix for icon cache update event
SVN revision: 83686
2013-02-06 15:02:27 +00:00
Mike Blumenkrantz 714611a0da fix efm cache listener to only activate (once) on icon update instead of desktop update since this is the only one which will matter, also only update the icon image instead of the entire thing
SVN revision: 83684
2013-02-06 14:54:23 +00:00
Mike Blumenkrantz 01257a8acc optimize use of edje_file_collection_list in various e things, also remove erroneous changelog/news entries
SVN revision: 83584
2013-02-04 08:38:46 +00:00
Mike Blumenkrantz aa0e82dda6 fix behavior of up/down keys in efm when typebuf is visible
SVN revision: 83560
2013-02-01 12:39:39 +00:00
Mike Blumenkrantz 1b6904e063 efm now ignores .part file changes
ticket #2120


SVN revision: 83524
2013-01-31 15:26:11 +00:00