Enlightenment CVS committal Author : chaos Project : e17 Module : proto
Dir : e17/proto/entropy/src Modified Files: entropy_core.c entropy_gui_event_handlers.c main.c Log Message: * Record the current directory of each layout, in a JIT manner - i.e. when a folder change request is issued. This means each local plugin can keep track of what to display when it appears/disappears =================================================================== RCS file: /cvs/e/e17/proto/entropy/src/entropy_core.c,v retrieving revision 1.78 retrieving revision 1.79 diff -u -3 -r1.78 -r1.79 --- entropy_core.c 9 Apr 2006 13:25:50 -0000 1.78 +++ entropy_core.c 12 Apr 2006 11:47:04 -0000 1.79 @@ -1036,9 +1036,15 @@ ev->data = request; ev->return_struct = file_list; - /*Now get rid of the request, so we're left with a virginal list of files*/ ecore_list_remove_first(file_list); + + /*Register this folder as being the current for this layout*/ + if (((entropy_gui_component_instance*)request->requester)->layout_parent) { + ( (entropy_gui_component_instance_layout*) + ((entropy_gui_component_instance*)request->requester)->layout_parent)->current_folder = + request->file; + } /*Call the requestors*/ ecore_list_goto_first(el); =================================================================== RCS file: /cvs/e/e17/proto/entropy/src/entropy_gui_event_handlers.c,v retrieving revision 1.9 retrieving revision 1.10 diff -u -3 -r1.9 -r1.10 --- entropy_gui_event_handlers.c 11 Apr 2006 10:51:29 -0000 1.9 +++ entropy_gui_event_handlers.c 12 Apr 2006 11:47:04 -0000 1.10 @@ -307,27 +307,35 @@ { Entropy_Gui_Event_Handler_Instance_Data* data = entropy_malloc(sizeof(Entropy_Gui_Event_Handler_Instance_Data)); + entropy_gui_component_instance* requestor_parent = NULL; entropy_notify_event *ev = entropy_notify_event_new(); Ecore_List* res; entropy_file_request* request = entropy_malloc(sizeof(entropy_file_request)); - ev->event_type = ENTROPY_NOTIFY_FILELIST_REQUEST; ev->processed = 1; + /*FIXME - here we make the assumption, that if a requestor has no layout parent, + * then it must be a layout parent itself - this may not always true*/ + if (!requestor->layout_parent) { + requestor_parent = requestor; + } else { + requestor_parent = requestor->layout_parent; + } + /*Check if we need to put a slash between the path/file*/ if (((entropy_file_request*)event->data)->drill_down) { printf("Request for drill down\n"); } /*Register this folder as being the current for this layout*/ - if (requestor->layout_parent) { - ((entropy_gui_component_instance_layout*)requestor->layout_parent)->current_folder = + if (requestor_parent) { + ((entropy_gui_component_instance_layout*)requestor_parent)->current_folder = ((entropy_file_request*)event->data)->file; } request->file = ((entropy_file_request*)event->data)->file; - request->requester = requestor->layout_parent; /*Requester is the layout parent - after all - one dir per layout at one time*/ + request->requester = requestor_parent; /*Requester is the layout parent - after all - one dir per layout at one time*/ request->core = entropy_core_get_core(); request->file_type = FILE_ALL; request->drill_down = ((entropy_file_request*)event->data)->drill_down; =================================================================== RCS file: /cvs/e/e17/proto/entropy/src/main.c,v retrieving revision 1.8 retrieving revision 1.9 diff -u -3 -r1.8 -r1.9 --- main.c 11 Apr 2006 10:02:23 -0000 1.8 +++ main.c 12 Apr 2006 11:47:04 -0000 1.9 @@ -56,6 +56,12 @@ sigemptyset(&action.sa_mask); sigaction(SIGSEGV, &action, NULL); + action.sa_sigaction = entropy_sigseg_act; + action.sa_flags = SA_ONSTACK | SA_NODEFER | SA_RESETHAND | SA_SIGINFO; + sigemptyset(&action.sa_mask); + sigaction(SIGABRT, &action, NULL); + + entropy_core_init(argc,argv); ------------------------------------------------------- This SF.Net email is sponsored by xPML, a groundbreaking scripting language that extends applications into web and mobile media. Attend the live webcast and join the prime developer group breaking into this new coding territory! http://sel.as-us.falkag.net/sel?cmd=lnk&kid=110944&bid=241720&dat=121642 _______________________________________________ enlightenment-cvs mailing list enlightenment-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs