2007-08-28  Nagappan A  <anagappan@novell.com>

	* *.[ch]: Updated all the files for the new address in LGPL
	license.

2007-08-28  Nagappan A  <anagappan@novell.com>

	* calendar.c: Fixed compiler warnings.

	* client-handler.c: Fixed compiler warnings.

	* menu.c: Fixed compiler warnings.

2007-08-20  Nagappan A  <anagappan@novell.com>

	* list.c (select_item): If child is already selected, then don't
	try to select them, instead directly do the required operation.

	* ldtp-error.c (ldtp_error_get_message): Added new error
	condition, if we are unable to select a list item.

	* list.c (select_item): Select list item, from a list.

2007-08-17  Nagappan A  <anagappan@novell.com>

	* ldtp.c (report_window_event): Fixed the crasher in Solaris.
	Fixed few warnings.

	* ldtp-gui.c (trace_path_to_parent): Get the class of current
	object, can be used to verify whether we have traced the right
	object or not.
	(ldtp_gui_get_gui_handle): If the role type doesn't match between
	the current object to be selected and the one we have stored in
	appmap, then need to run remap.

	* ldtp-appmap.c (search_label_name): Commented this function as we
	no longer use them. Need to remove them at later point of time.

	* menu.c: Code alignment.

	* client-handler.c (is_cctxt_registered_callback): If the client
	disconnects, we have to destroy the client context stored.
	Fixed few warnings.

2007-08-14  Nagappan A  <anagappan@novell.com>

	* remap.c (get_object_info): Should not consider autocomplete role
	as text object.

2007-08-09  Nagappan A  <anagappan@novell.com>

	* panel.c (select_panel_name): Modified strstr to use
	g_pattern_match_simple.

	* tree-table.c (right_click): Fixed number of matches bug and
	also fixed using the x, y pixel info when generating right click
	event.

2007-06-26  Nagappan A  <anagappan@novell.com>

	* client-handler.c (handle_request): Added a case for
	SPI_ROLE_TREE.

	* remap.c (filter_appmap_data): If the class name is not in our
	pre-defined list, then just get the accessible role name and dump
	as it is.

2007-05-14  Nagappan A  <anagappan@novell.com>

	* remap.c (get_object_info): Added code for new control types like
	ENTRY, AUTOCOMPLETE, PARAGRAPH.

	* tree-table.c (tree_table_cb): Removed recording related code.

	* toggle-button.c (toggle_button_cb): Removed recording related code.

	* text.c (text_cb): Removed recording related code.

	* table.c (table_cb): Removed recording related code.

	* spin-button.c (spin_button_cb): Removed recording related code.

	* radio-button.c (radio_button_cb): Removed recording related code.

	* push-button.c (push_button_cb): Removed recording related code.

	* page-tab-list.c (page_tab_cb): Removed recording related code.

	* menu-item.c (menu_item_cb): Removed recording related code.

	* ldtp.c (is_window_in_cctxt): Added new function to check whether
	a window exist in the current context.
	(report_window_event): Added new code to remove the context
	entries, when a window is closed.
	(ldtp_server_thread): If client the count is 0 for more than 5
	minutes, then let us quit the current instance.

	* ldtp-request.c (ldtp_request_fill_request): Removed recording
	related code.

	* ldtp-gui.c (window_info_added_hashtable): Added new function.
	* ldtp-gui.c: Added more verbose debug info.

	* ldtp-appmap.c (get_unknown_obj_label): Removed function.

	* client-handler.c (generate_record_response_packet)
	(search_recording_handler, remove_recording_handler)
	(register_recording_handler, unregister_recording_handler):
	Removed recording related code.

	* device.c (generate_keyboard_sequence): Updated the function to
	be accessible only to local file.

	* combo-box.c (combo_box_cb): Removed recording related code.

	* check-box.c (check_box_cb): Removed recording related code.

2007-02-26  Nagappan A  <anagappan@novell.com>

	* combo-box.c (verify_set_text_value): Fixes verifyselect return
	value - Bug # 412173.

2007-02-21  Nagappan A  <anagappan@novell.com>

	* ldtp-logger.c (ldtp_log): Fix to TBFS (alpha): invalid operands
	to binary !=. Reported in debian build system -
	http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=411794

2007-02-15  Rodney Dawes  <dobey@novell.com>

	* ldtp-appmap.c (search_key_glob_based):
	* table.c:
	Fix a couple of minor compilation warnings

2007-02-14  Nagappan A  <anagappan@novell.com>

	* remap.c (add_appmap_data): Updated this function to handle
	remaping of specific controls inside a window.

	* table.c (get_row): If the table cells are not present, will wait
	max of 5 seconds.

	* ldtp.c: Added command line option obj-timeout and gui-timeout.

	* ldtp-gui.c (update_cur_context_appmap_handle): Added a new
	function to remap based on object too.
	(ldtp_gui_get_gui_handle): In few cases the controls are created
	but by default the SPI ROLE assigned to them is UNKNOWN. So, if we
	get during our run-time remap, then wait for nano seconds and
	rescan.

	* ldtp-command.h (guitimeout, objtimeout): Added function to
	change the default global timeout period for an object and a window.

	* ldtp-appmap.c (key_destroy_func, value_destroy_func): Added
	function to free the resources allocated by key and value.
	(is_remaped): Added a new function, which checks whether the
	component is remaped or not.
	(remove_remapped_entry): Remove only remaped entry from the
	component table.
	(search_key_glob_based): Updated the lookup logic.
	(search_title_based): Added a new function which checks for the
	window name.

	* client-handler.c (unregister_window_creation_event): Now uses
	g_hash_table_find instead of g_hash_table_lookup_extended.

	* ldtp-gui.c (wait_till_object_state_contains): Added new
	function, which will wait for the object state to be
	enabled. Modified all the callers of object_state_contains to use
	this function. So time.sleep may not be required to be included in
	the script.

2007-02-08  Raghu Dandin  <Raghu.Dandin@palmsource.com>

	* combo-box.c (hide_list, show_list): Handles menu item under a
	combo box.

2007-01-30  Nagappan A  <anagappan@novell.com>

	* combo-box.c (verify_select_item): Incorrect return value from
	verifyselect function. Fixes bug # 402371.

2007-01-25  Nagappan A  <anagappan@novell.com>

	* ldtp-gui.c (get_object_handle): Fixed a crash, due to two
	Accessible_unref on same handle.

2007-01-22  Nagappan A  <anagappan@novell.com>

	* ldtp.c (is_window_reg_for_events): Removed GHashTable argument
	as its already a globla variable.
	Added global pthread mutex to avoid a crash when the callback
	functions client connection disconnected.

	* text.c (append_text, set_cursor_position, text_main): Fixed
	crashers reported by Palm Source team.

	* menu.c (menu_main): Removed extra condtions that check for ';'.

	* ldtp-command.h: Added new command to the structure.

	* ldtp-error.[c,h] (ldtp_error_get_message): Added new error
	LDTP_ERROR_EVENT_NOTIFIER_NOT_ENABLED.

	* ldtp-appmap.c (get_property): Check the return value of
	g_hash_table_lookup_extended, apart from value.

	* client-handler.c (unregister_window_creation_event): Added new
	function to unregister the callback function, that use to listen
	for window creation events.
	Added global pthread mutex to avoid a crash when the callback
	functions client connection disconnected.

2007-01-18  Nagappan A  <anagappan@novell.com>

	* ldtp-gui.c (get_accessible_context_handle)
	(get_child_window_handle): Refined the object search algorithm.
	Recognize dialog with out any title, so it can accessed like dlg0,
	frm0 etc.
	You can access multiple windows with same title, so the first
	title will be same as the default one (example: frmNautilus), but
	the second title will be indexed from 1 (example: frmNautilus1).
	(get_accessible_component_handle): Modified function name from
	get_accessible_object_handle.
	(does_window_exist): Added new function to check whether a window
	exist or not.
	(remove_tmp_entries): Remove temporarily created hash table
	entries.

	* ldtp-appmap.c: Modified all g_hash_table_lookup to
	g_hash_table_lookup_extended. Because of this the appmap lookup
	now takes fast. Now we are not querying the accessible interface
	multiple times.

2007-01-10  Damien Carbery  <damien.carbery@sun.com>

	* ldtp-record.c (stop_record): AFAIK _fileno is not part of the
	FILE struct. Modified to use fileno ().

2006-12-20  Nagappan A  <anagappan@novell.com>

	* ldtp-response.c: Removed this file as we no longer use it.

2006-12-16  Nagappan A  <anagappan@novell.com>

	* remap.c (strip_delim): Fix, if only one '.' present in a label,
	then just consider it. Fixes bug # 348479.

	* device.c (get_keyval_id): Added HOME, END, UP, DOWN, LEFT,
	RIGHT, PAGEUP, PAGEDOWN, MENU, SPACE, INSERT, DELETE, F11, F12 key
	codes.
	(get_key_value): Modified condition of for loop to use
	NonPrint_Key_Synth_Vals[index].sym instead of NONPRINTING_KEYS as
	the number of key codes are hard coded.

2006-12-07  Nagappan A  <anagappan@novell.com>

	* client-handler.h: Modified the packet length type from size_t to
	uint32_t.

2006-12-05  Rodney Dawes  <dobey@novell.com>

	* ldtp-gui.c (get_accessible_object_handle): Revert Nagappan's previous
	commit as it isn't the proper fix
	(grab_focus): Don't unref the Accessible here as it is owned by another
	method and not grab_focus
	This properly fixes the memory corruption and crash

2006-12-05  Rodney Dawes  <dobey@novell.com>

	* ldtp-record.c (record_main):
	* menu.c (menu_main):
	Don't check if error is non-zero now, as zero is the SUCCESS case

	* text.c (get_text_property): Revert the commit of a g_print addition
	as it was a temporary debugging statement

2006-12-05  Nagappan A  <anagappan@novell.com>

	* ldtp-gui.c (get_accessible_app_handle): Fixed crash reported by
	lavi of Palm Source.

2006-12-05  Prashanth Mohan  <prashmohan@gmail.com>

	* text.c (text_main): gettextproperty was not returning the
	apropriate values. This was because the if condition checked for
	error. And the no error condition LDTP_ERROR_SUCCESS is equal to
	0. Removed the faulty condition checking.

2006-11-21  Rodney Dawes  <dobey@novell.com>

	* ldtp-error.[ch]: Get rid of the LDTPError struct
	(ldtp_error_get_error, ldtp_error_free): Remove these methods as we
	don't need them any more
	(ldtp_error_get_message): Make this a public method that returns a
	const char * of the error message for when we need to print it

	* *.[ch]: Update the error handling code to use LDTPErrorCode instead
	of LDTPError everywhere, so we only pass around an enum value
	Call ldtp_error_get_message whenever we need to print an error message

	* ldtp-gui.c (object_state_contains): Unref the AccessibleStateSet when
	we are done using it
	(get_accessible_object_handle): Don't free the head struct that isn't
	owned by this method
	(ldtp_gui_get_gui_handle): Free the head pointer when done using it
	(ldtp_gui_wait_till_gui_exist, ldtp_gui_wait_till_gui_not_exist):
	(ldtp_gui_gui_exist): Free the accessible pointer when done with it

2006-11-21  Rodney Dawes  <dobey@novell.com>

	* Makefile.am: We don't set LOCALIZATION_CFLAGS anywhere, so we don't
	need to add it to INCLUDES
	We can always include LOCALIZATION_LIB as we always AC_SUBST it now

	* ldtp-appmap.c (remove_context_entries, remove_appmap_entries): Add
	these back as we need to avoid destroying the hash tables until later,
	due to the potential of thread contention
	(ldtp_appmap_free): Add the _foreach back to destroy the hash table
	data that is stored in the appmap hash table

	* ldtp-gui.c (get_window_list): Don't create an extra variable to store
	the string in, and then assign that to another pointer, just assign
	the window_title string pointer directly
	Duplicate the string when inserting the key into the hash table
	Free the window_title string when done
	(get_accessible_context_handle): Print data before we free it
	(update_cur_window_appmap_handle): Don't create the hash table with
	_new_full and destructors, as there is potential thread contention

	* localizaiton.c (cleanup_hash_tables): Remove this unused method
	(ldtp_compare_with_locale): Free utf8_string before returning NULL

	* menu.c (menu_main): Free the accessible struct when done with it

	* remap.c (add_appmap_data, do_remap): Don't use _new_full to create
	the hash table with destructors, as there may be thread contention
	
2006-11-20  Rodney Dawes  <dobey@novell.com>

	* remap.c (get_keybinding): Duplicate the return value from the
	AccessibleAction_getKeyBinding call, so that we can safely free it
	Free binding and key_binding as appropriate before returning

2006-11-20  Rodney Dawes  <dobey@novell.com>

	* client-handler.c (handle_request): Just use g_strconcat instead of
	reallocing the size of rest_params and then using strcat

	* ldtp-appmap.c (search_label_based): Free the tmp pointer when we
	are done with it so we don't leak the memory
	(search_obj_after_stripping_space): Free the glob_str when we don't
	need it any more so we don't leak the memory
	glob_str will never be NULL as we're always duping at least "*", so
	we can simplify the code here by avoiding the check for non-NULL and
	stripping the else clause, since we were already validating the pattern
	match in the nested if statement anyway, and returning FALSE by default

2006-11-20  Rodney Dawes  <dobey@novell.com>

	* Makefile.am: Remove ldtp-command.c, ldtp-memory.[ch], ldtp-state.[ch]

	* client-handler.c: Don't need ldtp-state.h or ldtp-memory.h any more
	(has_state): Change state_id to a long int
	Use atol to get the state_id now instead of looking up in a hash table,
	as we pass the state id as an integer in the XML now
	(handle_request): Change command to a long int
	Use atol to get the command id now instead of looking it up in a hash
	table, as we pass the command id as an integer in the XML now

	* ldtp-command.c: Remove this file as we don't need the method calls
	any longer, as we pass the command id as an integer instead of a string
	
	* ldtp-command.h: Remove the LDTPCommand struct and the method
	prototypes as we don't use them any more

	* ldtp-gui.c: Don't include ldtp-state.h any longer
	Define the structure layout for state_list internally now

	* ldtp-memory.[ch]:
	* ldtp-state.[ch]:
	Remove these files as we don't need them any longer

2006-11-16  Rodney Dawes  <dobey@novell.com>

	* client-handler.c (has_state): Move the AccessibleStateSet_unref
	call below the error: label so that it always gets cleaned up properly
	(handle_client): Malloc packet_len + 1 for the packet buffer so that
	we have room for the NULL terminator to avoid an Invalid Read

	* ldtp-appmap.c (get_object_def, get_property):
	Don't use a static array size for the msg error message buffer
	Free the LDTPError objects after we finish using them
	Allocate and free the msg buffer as appropriate

	* ldtp-gui.c (ldtp_gui_get_gui_handle): Free ctxt_handle if we error

	* push-button.c (is_push_button_state_enabled): Add a boolean to store
	the return value and default it to FALSE
	Free the AccessibleStateSet before we return

	* remap.c (do_remap): Don't g_strdup name when passing it off to the
	accessible_object_handle method as it doesn't free the buffer

2006-11-15  Rodney Dawes  <dobey@novell.com>

	* client-handler.c (generate_response_packet):
	Set the err to LDTP_ERROR_SUCCESS when we are succeeding
	(has_state): Unref the state_set when we're done with it
	(handle_client): New integer for keeping track of how much of the
	packet was read in, if we have to read in chunks
	Remove prev_pckt_len as we don't need it any more
	Replace calloc calls when initializing cctxt with g_new0 calls
	Free LDTPErrors where appropriate
	Just always g_malloc0 packet instead of trying to realloc as we free
	the packet when finished anyway, and don't need to resize in a loop
	Use packet_read to keep track of how many bytes of the packet were
	read rather than using pointer math on the buffers
	Use g_new0 instead of calloc when allocating the pckt structure
	Don't do the g_slist_remove_all as the items in the list get freed
	inside the ldtp-request code anyway, and simply removing them doesn't
	get them freed here
	Allocate new LDTPErrors when we want to copy the error data to a new
	place such as in the cctxt->resp structure
	Check if there was an error sending the response and log it
	Free the cctxt and other items inside it

	* ldtp-appmap.c (remove_component_entries, remove_context_entries):
	(remove_appmap_entries): We don't need these methods any more as the
	destroy handlers are set properly when we create the hash tables
	(ldtp_appmap_free): Just return if there is no hash table, and
	remove the g_hash_table_foreach call as the data gets freed by the
	hash table destroy handlers

	* ldtp-gui.c (init_stack): Replace malloc with g_new0
	(get_accessible_app_handle): Free window_title when we're done with it
	(get_relation_name): We need the k variable method-wide
	Unref all the items in the relation array and free the array before
	we return a value or NULL
	(get_child_window_handle): Free the tmp value when we don't need it
	(update_cur_window_appmap_handle): Create the hash table with destroy
	handlers as appropriate for the data in the hash table
	Destroy new_hashtable if we aren't going to use it
	(ldtp_gui_get_gui_handle): Use g_new0 instead of calloc

	* ldtp-request.c (ldtp_request_free): Don't need to check if the
	values are non-NULL before calling g_free
	We never get called with finalize != 0 so don't need to free ourselves
	as we must free the LDTPRequest elsewhere anyway
	(ldtp_request_fill_request): Inserting a NULL into the slist doesn't
	do anything for us

	* remap.c (get_keybinding): Restructure the code to be a little more
	readable
	Return duplicated strings as we don't know if the string we are
	returning is already duplicated or not
	(add_appmap_data): Create hash_attributes with appropriate destructors
	Always free label_by when done with it
	(get_window_text_in_appmap_format): Create a return value char * to
	return a duplicate string with, so we can free our own copies
	(do_remap): Create current_context with appropriate destructors

2006-11-07  Rodney Dawes  <dobey@novell.com>

	* client-handler.c (generate_response_packet):
	Free the data_pckt buffer when we're doing with it

	* ldtp-error.c (ldtp_error_init): Remove this method, as we don't
	need to create a hash table to store the error data in
	(ldtp_error_get_error): Removed the _init method
	Just always malloc a new error structure to return with the right info
	(ldtp_error_free): Take an LDTPError * as an argument here
	Free the error structure and set the pointer to NULL

	* ldtp-error.h: Update the prototype for ldtp_error_free

	* ldtp.c (report_window_event): Allocate a new error in the cctxt->resp
	structure instead of assigning the value of the local err pointer
	Free the local err pointer where appropriate
	(accept_connection): Set the err to an LDTPError for success when we
	are within the code path that warrants a success
	(init_pollfd): Only create a new client_thraed_pool hash table if it
	has not already been initialized
	(ldtp_server_thread): Free local err structures where appropriate
	Check that err is valid memory before trying to test its members
	(main): Free the GError we get from the option context
	Exit with an exit code of 1 if option parsing failed
	Free the LDTPError we set when faliing to create the threads

2006-10-31  Rodney Dawes  <dobey@novell.com>

	* client-handler.c: Add an include for locale.h to fix warnings

	* ldtp-gui.c (get_accessible_object_handle): Too many args to g_print
	(ldtp_gui_get_gui_handle): Passing an int not a long int

	* ldtp-record.c (stop_record): Pass an int for the fd instead of a FILE
	pointer to g_print, and change the formatting to use int

	* table.c (double_click): Variable cell not used

	* tree-table.c (double_click): Variable cell not used

2006-10-27  Rodney Dawes  <dobey@novell.com>

	* ldtp-command.[ch]: Add new LDTP_CMD_PRESS command
	(ldtp_command_init_command_table): Set the destroy notify callback for
	the key value of the hash table, to be g_free
	
	* toggle-button.c (press): new method to tell the accessible to press
	itself
	(toggle_button_main): Call press if we get the press command

2006-10-25  Nagappan A  <anagappan@novell.com>

	* remap.c (get_object_info): Added embedded component object type
	* embedded-component.c (invoke_menu, click): Implemented two new
	functions to handle embedded component

2006-10-12  Nagappan A  <anagappan@novell.com>

	* client-handler.c (bind_text): Now checks for po file too
	(handle_request): Implemented new case SETLOCALE. In LAUNCHAPP If
	locale is set, then launch the application based on the given
	locale

2006-09-27  Myron Walker <myron.walker@gmail.com>

	* ldtp-command.h, ldtp-command.c, table.c: Added the singleclickrow
	API implemented by Puneet Mishra <punmish211@yahoo.com>.

2006-09-27  Nagappan A  <anagappan@novell.com>

	* client-handler.c (search_recording_handler,
	remove_recording_handler, register_recording_handler,
	unregister_recording_handler): Added new functions to handle
	recording client context handler.
	(generate_record_response_packet): Modified response tag from
	RECORD to RESPONSE.
	(handle_request): Added generatemouseevent, a function.
	
	* combo-box.c (select_item): Modified C str* functions to use
	g_utf8*.

	* device.c (generate_keyboard_sequence): Modified this function to
	be generic, so it can be called even with out accessible handle.

	* ldtp-appmap.c: Modified all the function names having regexp
	string to glob as the actual implementation is glob based.

	* ldtp-gui.c (grab_focus): Moved implementation from text.c to
	here.

	* ldtp-record.c: Removed all static variables and added all of
	them as a structure LdtpRecord.
	(caculate_time_elapsed): To find the time difference between the
	current operation and the previous operation. Will be useful for
	playback.

	* table.c (table_main): Now has the implementation of enterstring.

	* text.c (grab_focus): Moved implementation from here to
	ldtp-gui.c.

	* toggle-button.c (toggle): Fixed a crasher bug, when the object
	state does not match FALSE flag is set in LDTPError, which crashed
	the LDTP engine.

	* tree-table.c (tree_table_main): Now has the implementation of
	enterstring.

2006-09-26  Nagappan A  <anagappan@novell.com>

	* remap.c (accessible_object_handle): Fixes a performance issue
	reported by Palm Source team.

2006-09-20  Nagappan A  <anagappan@novell.com>

	* ldtp-appmap.c (search_key_regexp_based): Fixed a bug reported by
	Guofu Xu - Plam Source. Included * at end of pattern.

2006-09-19  Nagappan A  <anagappan@novell.com>

	* tree-table.c (double_click, double_click_row): Added two new
	functions

2006-09-14  Prashanth Mohan  <prashmohan@gmail.com>

	* tree-table.c (select_row): Added support for selecting Nth
	occurence of a value in a tree table row

2006-09-12  Nagappan A  <anagappan@novell.com>

	* client-handler.c (handle_request): launchapp can now take
	optional command line arguments

2006-09-11  Nagappan A  <anagappan@novell.com>

	* client-handler.c (handle_request): Moved launchapp from client
	side to server side, based on requirement from Palm Source.

2006-08-31  Nagappan A  <anagappan@novell.com>

	* ldtp-server.c (init_ldtp_server): Added functionality to ldtp to
	work from a remote location. Thanks to Punit Mishra of Palm Source
	for providing the patch.

2006-08-23  Nagappan A  <anagappan@novell.com>

	* tree-table.c (get_cell_value): Fixed, getting cell's value

2006-08-17  Nagappan A  <anagappan@novell.com>

	* client-handler.c (remove_app_list_table): Remove the app list
	table, when not required.

	* ldtp-gui.c (get_window_list): Implemented new function to get
	the list of accessibility application names that are currently
	opened.

	* ldtp-record.c (record_main): Fixed crash on solaris box, checked
	cctxt->req->application and command for NULL

2006-08-15  Prashanth Mohan  <prashmohan@gmail.com>

	* text.c (text_main): Checked for cctxt->req->arg_list->data to be
	NULL and replaced with "" in case of NULL

	* ldtp-request.c (ldtp_request_fill_request): Added NULL value to
	argument list in case of no arguments specified

2006-08-14  Rodney Dawes  <dobey@novell.com>

	* remap.c (add_appmap_data): Add support for the description property
	of the accessible objects, so that these properties can be checked
	for in testing

2006-08-14  Nagappan A  <anagappan@novell.com>

	* client-handler.c (handle_request): Grab focus based on window
	name.

	* ldtp-utils.c (ldtp_read_sizet): Fixed size_t bug, as its size in
	64bit is 8 and in 32 bit is 4. Now modified the type as uint32_t

2006-08-11  Nagappan A  <anagappan@novell.com>

	* ldtp-gui.c (trace_path_to_parent): Fixed critical warnings.

	* ldtp-appmap.c (search_key_regexp_based): Fixed critical
	warnings.

2006-08-10  Nagappan A  <anagappan@novell.com>

	* menu.c (menu_main): Fixed crash, when token is NULL, quiting
	with appropriate error message.

	* ldtp-appmap.c (search_label_regexp_based, search_label_based):
	Search window based on regexp.

2006-08-09  Nagappan A  <anagappan@novell.com>

	* ldtp-appmap.c (search_key_regexp_based): Search window based on
	regexp.

	* ldtp-gui.c (trace_path_to_parent): Trace parent based on regular
	expression too
	(get_child_window_handle): Trace child window handle based on
	regular epression too

2006-08-08  Nagappan A  <anagappan@novell.com>

	* ldtp-appmap.c (search_label_based): Fixed regular expression
	pattern matching bug.

2006-08-02  Nagappan A  <anagappan@novell.com>

	* ldtp-record.c (get_window_name): Fixed many SPI leaks.

2006-07-23  Nagappan A  <nagappan@gmail.com>

	* tool-bar.c (verify_visible_button_count, verify_button_count):
	Fixed implementations to work appropriately.

	* menu.c (list_child_menu_items): Returns all the sub menuitem of
	menu.

	* ldtp-gui.c (trace_path_to_parent): Fixed core dump, if
	child_index property is NULL, avoid calling atoi.

	* combo-box.c (capture_to_file): Fixed core dump, if filename is NULL.

2006-07-21  Prashanth Mohan  <prashmohan@gmail.com>

	* calendar-view.c (select_event): Modified to also select Meetings
	in evolution

2006-07-21  Nagappan A  <nagappan@gmail.com>

	* client-handler.c (has_state): Implemented new function.
	* *.[ch]: Code alignment.
	* states.h: Removed.
	* ldtp-state.[ch]: New files added.
	* ldtp-gui-cb.h: New file added.

2006-07-13  Prashanth Mohan  <prashmohan@gmail.com>

	* calendar-view.c (select_event): Generates a new string to match
	with the event summary.
	* client-handler.c (generate_notification_packet): Changing packet
	length since it is not correctly formed when special unicode
	characters are present.

2006-07-07 Harishankaran K <sp2hari@gmail.com>

	* ldtp-record.c: Main file recording which has all the event
	listeners. Added callbacks in all the corresponding objects.

2006-07-06 Harishankaran K <sp2hari@gmail.com>

	* push-button.c toggle-button.c (enterstring) Added
	LDTP_CMD_ENTERSTRING to the corresponding main functions

2006-07-05  Prashanth Mohan  <prashmohan@gmail.com>

	* table.c (select_row_partial_match): fixed Double freeing error
	* device.c (generate_keyboard_sequence): fixed the shift pressing
	issue to generate symbols

2006-07-03  Nagappan A  <nagappan@gmail.com>

	* client-handler.c (handle_request): getobjectlist,
	getobjectproperty, getobjectinfo functions will not call
	update_cur_window_appmap_handle function, unless the object
	information is found in the hash table.

2006-06-29  Prashanth Mohan  <prashmohan@gmail.com>

	* ldtp-logger.c (log_msg): Added escaping of XML special
	characters when writing to log file

	* text.c (get_text_property): Fixed bug #345858. The arguments
	given to AccessibleText_getAttributes was wrong

2006-06-27  Nagappan A  <nagappan@gmail.com>

	* ldtp-logger.c (log_msg): Added comment, testcaseid tag to
	logging based on Alex request Hao.Yu@palmsource.com

2006-06-23  Prashanth Mohan  <prashmohan@gmail.com>

	* client-handler.c (handle_request): fixed bug #342679
	getobjectlist () now updates the appmap if it is not done already
	(add_item_to_list): fixed bug #339901. illegal characters in XML
	files are properly parsed now.

2006-06-15  Nagappan A  <nagappan@gmail.com>

	* client-handler.c (handle_request): Added STOPSCRIPTSERVER
	functionality, required for using with tinderbox

2006-06-12  Nagappan A  <nagappan@gmail.com>

	* text.c (right_click): Added new function

2006-05-31  Nagappan A  <nagappan@gmail.com>

	* ldtp.c (ldtp_server_thread): Added code for ldtp record handler

2006-05-30  Nagappan A  <nagappan@gmail.com>

	* localization.c (ldtp_compare_with_locale): Regexp based search
	is implemented in localized object name too.

	* ldtp.c (ldtp_server_thread): Added a check in poll, whether the
	pollfd breaked due to ldtp script server thread or ldtp record
	server thread.

	* ldtp-server.c (init_ldtp_server): Removed LDTP_AUTH_SOCK
	environment variable setting, as its no longer been used.

	* ldtp-logger.c (close_log_file): NULL log file pointer after
	closing the file pointer.

	* ldtp-gui.c (get_accessible_context_handle): Fixed memory leak -
	freed the allocted string.

	* label.c (get_label_at_index): Implemented new function to get
	the label based on window, panel and index information.

	* client-handler.c (handle_client, handle_request): At end of
	stoplog, initialize log file pointer to NULL.

2006-05-26  Prashanth Mohan  <prashmohan@gmail.com>

	* text.c (insert_text): fixed bug #343006. Also cleared a TODO --
	Check if position of insertion is less than available text	

2006-05-13  Prashanth Mohan  <prashmohan@gmail.com>

	* page-tab-list.c (page_tab_list_main): added command
	LDTP_CMD_GET_TAB_COUNT to fix bug #341612

2006-05-11  Prashanth Mohan  <prashmohan@gmail.com>

	* text.c (get_cursor_position, set_cursor_position): Fixed bug
	#341391 and added some checks for return values

2006-05-08  Prashanth Mohan  <prashmohan@gmail.com>

	* device.c (generate_keyboard_sequence): fixed bug #340994

2006-05-07  Prashanth Mohan <prashmohan@gmail.com>

	* device.[ch]: Added registry events for keyboard and mouse
	events. Bug #340935
	* ldtp-error.[ch]: Added errors --
	LDTP_ERROR_UNABLE_TO_MOVE_MOUSE, LDTP_ERROR_INVALID_FORMAT,
	LDTP_ERROR_TOKEN_NOT_FOUND,	LDTP_ERROR_UNABLE_TO_ENTER_KEY
	* push-button.c: Added support for mouse move, mouse left click,
	mouse right click
	* text.c: Added support for mouse move, mouse left click, mouse
	right click, keyboard string entry

2006-05-02  Nagappan A <nagappan@gmail.com>

	* ldtp-gui.c (update_cur_window_appmap_handle): Added mutex lock /
	unlock to avoid corruption of application map

2006-04-27  Nagappan A <nagappan@gmail.com>

	* ldtp-logger.c (open_log_file): Modified the default option of
	opening file as overwrite - Bug # 339884

2006-04-25  Nagappan A <nagappan@gmail.com>

	* remap.c (get_object_info): Handles edit bar object type - Bug #
	339671

2006-04-17  Nagappan A <nagappan@gmail.com>

	* ldtp-gui.c (ldtp_gui_get_gui_handle): Handled multiple
	applications parallely - Bug # 338315

2006-04-14  Nagappan A <nagappan@gmail.com>

	* remap.c (strip_delim): Now this function is not static

2006-04-13  Nagappan A <nagappan@gmail.com>

	* ldtp-utils.c (read_line): Added new function to read data from
	given fd, line by line

2006-04-08  Nagappan A <nagappan@gmail.com>

	* ldtp-gui.c (get_relation_name, ldtp_gui_get_gui_handle):
	Valgrind and fixed memory leaks.

2006-04-07  Nagappan A <nagappan@gmail.com>

	* ldtp.c (main): Added command line options to ldtp engine

2006-04-06  Nagappan A <nagappan@gmail.com>

	* ldtp-appmap.c (search_label_based): Valgrind and fixed memory
	leaks.

2006-04-05  Nagappan A <nagappan@gmail.com>

	* client-handler.c (handle_request): Implemented reinitldtp

2006-04-04  Nagappan A <nagappan@gmail.com>

	* client-handler.c (createpo, deletepo, bind_text): Implemented
	new functions

2006-04-03  Nagappan A <nagappan@gmail.com>

	* calendar.c (select_calendar_date): Checked for NULL arguments to
	avoid crash
	* check-menu-item.c (uncheck_check_menu_item,
	verify_check_check_menu_item, verify_uncheck_check_menu_item):
	Removed functions

2006-04-01  Nagappan A <nagappan@gmail.com>

	* client-handler.h (_LDTPClientContext): Added individual log file
	for each new client connection

2006-03-29  Nagappan A <nagappan@gmail.com>

	* ldtp-logger.c (log_msg): Pass / fail report of a group are now
	logged in the XML.
	* ldtp-logger.h: Updated #define entries to use enum and appended
	all LOG_ variables to LDTP_LOG_ enum variables. This impact all
	the usage of LOG_ variables, which has to be replaced with
	LDTP_LOG_.

2006-03-28  Nagappan A <nagappan@gmail.com>

	* label.c (select_labels_panel_by_name): New functions implemented
	- bug # 336458.

2006-03-27  Nagappan A <nagappan@gmail.com>

	* text.c (select_text_by_name): New functions implemented - bug #
	316044.

2006-03-22  Nagappan A <nagappan@gmail.com>

	* Makefile.am: Updated GCC specific flags

2006-03-21  Nagappan <nagappan@gmail.com>

	* menu-item.c (is_menu_item_enabled): Implemented new function
	based on bug # 323530

2006-03-17  Nagappan <nagappan@gmail.com>

	* calendar-view.c (select_event): Checked for NULL arguments
	* combo-box.c (select_item): Replaced strip_white_space with
	escape_character
	* ldtp-appmap.c (search_key_regexp_based, search_label_based,
	search_label_regexp_based, search_obj_after_stripping_space):
	Checked for NULL arguments
	* ldtp-gui.c (trace_path_to_parent, get_accessible_context_handle,
	get_child_window_handle): Checked for NULL arguments
	* ldtp-logger.c (strip_white_space): Removed function as the
	implementation part of it is duplicate of escape_character
	function implemented in ldtp-utils.c
	* localization.c (ldtp_compare_with_locale, reverse_lookup):
	Checked for NULL arguments
	* remap.c (get_keybinding, insert_underscore, get_object_info,
	add_appmap_data, get_window_text_in_appmap_format): Checked for
	NULL arguments, which fixes the bug # 334521

2006-03-16  Nagappan <nagappan@gmail.com>

	* calendar-view.c (select_event): Updated with appropriate error
	message
	* menu.c (menu_main): Patch to fix bug # 334401
	* client-handler.c (handle_request): Patch to fix bug # 334386

2006-03-15  Nagappan <nagappan@gmail.com>

	* ldtp-response.h: Patch to fix bug # 333096 and bug # 334512
	* client-handler.c (handle_request): Patch to fix bug # 333096 and
	bug # 334512
	* remap.c (get_object_info): Patch to fix bug # 334520 and handles
	File Chooser object type
	* check-box.c (verify_check_check_box, verify_uncheck_check_box):
	Patch to fix bug # 334625, Now returns appropriate return value
	* ldtp-request.c (ldtp_request_fill_request): Patch to fix bug #
	333089 comment # 6
	* table.c (get_cell_value): Patch to fix bug # 333089 comment

2006-03-09  Nagappan <nagappan@gmail.com>

	* client-handler.c (add_item_to_list): A common function to
	generate XML object list.
	* client-handler.c (send_response):  If data sent in chunks from
	server to client, then the peek code in client was not able to
	continue reading the next chunk as the recv with peek option
	always returns the first chunk.
	* client-handler.c (handle_request): Implemented getwindowlist,
	getobjectlist, getobjectinfo, getobjectproperty. Modified
	initappmap to get the file name from gslist only once. Memory leak
	fixed - Freed memory resources when client disconnects.
	* ldtp.c (ldtp_print): Indentation
	* ldtp-appmap.c (remove_appmap_entries): Memory leak fixed - Freed
	memory resources when client disconnects.
	* ldtp-appmap.c (search_obj_after_stripping_space): Added new
	function to search for an object after stripping spaces.
	* ldtp-appmap.c (add_child_attributes): Modified it as static
	function.
	* ldtp-appmap.c (ldtp_appmap_free): If appmap is not NULL then
	only traverse the hash table. To avoid a critical warning.
	* ldtp-appmap.c (search_label_based): Modified the logic to check
	for label or label_by and also, if under score is in value, then
	remove it and then look for the match.
	* ldtp-command.c (ldtp_command_init_command_table): Added
	getwindowlist, getobjectlist, getobjectinfo, getobjectproperty
	commands to the list of commands.
	* ldtp-error.c (ldtp_error_get_error_message): Added new error
	messages.
	* ldtp-gui.c (ldtp_gui_get_gui_handle): If appmap is not
	initialized, then try to initialize it by updating the window
	handle.
	* ldtp-gui.c (update_cur_window_appmap_handle): Checked for
	argument NULL to avoid crash.
	* ldtp-logger.c (ldtp_log): vprintf also will be printed iff
	LDTP_DEBUG option is enabled.
	* ldtp-request.c (ldtp_request_fill_request): When XML packet is
	NULL don't process further, which avoids a crash.
	* ldtp-utils.c (escape_character): Modified function name
	escape_under_score to escape_character and also added one
	parameter to make this function a generic one. Check if argument
	is not NULL then continue else return immediately.
	* remap.c (get_keybinding, filter_appmap_data, get_object_info,
	add_appmap_data): Checked for NULL arguments to avoid crash.
	* remap.c (accessible_object_handle): Avoided memory fragmentation
	as the same data is allocated multiple times.

2006-02-24  Nagappan <nagappan@gmail.com>

	* tree-table.c (select_row): Fixed crash - bug #332346
	* text.c (select_text): Added new API selecttext - bug #323445
	* ldtp-request.c (ldtp_request_fill_request): Fixed crash - bug #332427

2006-02-20  Nagappan <nagappan@gmail.com>

	* ldtp-response.h: Added encoding type and it defaults to utf-8.
	
2006-02-15  Nagappan <nagappan@gmail.com>

	* page-tab-list.c (select_tab): Called
	AccessibleComponent_grabFocus function.

2006-02-09  Veerapuram Varadhan <v.varadhan@gmail.com>

	* ldtp-appmap.c: Screw-up fixes. ;-)

2006-02-09  Veerapuram Varadhan <v.varadhan@gmail.com>

	* combo-box.c:
	* ldtp-appmap.c:
	* localization.c:
	* menu.c:
	* table.c: Don't use g_strdup_printf for message-logging, it
	  defragments memory.  Static arrays should suffice.
	  Coding style fixes.

2006-02-08  Nagappan <nagappan@gmail.com>

	* ldtp.c, ldtp-logger.c, Makefile.am: Removed argp dependancy
	* ldtp.c: Generate core dump in case of crash
	* ldtp-logger.c: Fixed crasher bug, when fp is NULL, don't try to
	use the fp
	* ldtp-appmap.c: Fixed crasher bug, when argument is NULL, don't
	try to print its value

2006-02-01  Nagappan <nagappan@gmail.com>

	* Makefile.am: Moved localization.h from ENABLE_LOCALIZATION
	section to ldtp_SOURCES
	* ldtp-gui.c (send_response, handle_client): Checked error and
	packet_len for any invalid value
	* client-handler.c (handle_request): Handled startlog, stoplog and
	log client functions

2006-01-30  Nagappan <nagappan@gmail.com>

	* ldtp-gui.c (get_accessible_context_handle): Fixed finding
	objects based on window title in appmap format
	* ldtp-gui.c (ldtp_gui_get_gui_handle): Added code to avoid
	calling remap at runtime
	* combo-box.c (select_item): Fixed passing a wrong accessible
	handle to menu_item_main function
	* ldtp-error.c (ldtp_error_get_error_message): Fixed error message
	text
	* page-tab-list.c (page_tab_list_main): Checked selecttab argument
	for NULL to avoid a crash
	* client-handler.c (handle_request): Fixed caculation of packet
	size, to read packet sizeof >= 512

2006-01-27  Nagappan <nagappan@gmail.com>

	* *.[ch]: Updated Copyright license year
	* ldtp-utils.[ch]: Moved escape_under_score function from
	localization.[ch] to ldtp-utils.[ch]
	* client-handler.c (generate_response_packet)
	(generate_notification_packet): Implemented functions to generate
	response and notification packets
	* client-handler.c (send_response): Function code has been
	modified to have logic only for sending data to client
	* *.[ch]: Modified params variable to have g_slist where ever
	possible
	* *.c: Modified tab space according to GNOME standard
	* calendar-event.c (select_event): Implemented function to select
	an event based on event name
	* ldtp-command.c (ldtp_command_get_command_id): Validated if the
	command is NULL, which avoid a crash
	* ldtp-gui.c (update_cur_window_appmap_handle): Implemented
	function to update application map of a given window (context) at
	runtime
	* ldtp-gui.c (ldtp_gui_get_gui_handle): Function now tries to get
	the object (component) handle at runtime, if its missing
	* ldtp-request.c (ldtp_request_fill_request): If node is NULL,
	then break from for loop to avoid a crash, when there are no
	ARGUMENT tag present inside ARGUMENTS tag

2006-01-19  Veerapuram Varadhan <v.varadhan@gmail.com>
	
	* client-handler.c (send_response)
	(register_window_creation_event): Compiler warning fixes.

2006-01-19  Veerapuram Varadhan <v.varadhan@gmail.com>

	* Makefile.am: make distcheck fixes.

2006-01-19  Veerapuram Varadhan <v.varadhan@gmail.com>
	
	Committing for Nagappan A <nagappan@gmail.com>
	* client-handler.[ch]:
	* ldtp-command.[ch]:
	* ldtp-error.[ch]:
	* ldtp-gui.c:
	* ldtp-request.[ch]:
	* ldtp-response.h:
	* ldtp-utils.[ch]:
	* ldtp.c:
	Changes w.r.t dynamic-appmap-generation and notification.
	Nags will write a detailed changelog.  This commit is mostly to
	correct a *mid-air* collision of our CVS commits.

2006-01-19  Veerapuram Varadhan <v.varadhan@gmail.com>

	* [*.c, *.h]: Added "tabs-mode" line for emacs editor to
	properly indent the source file.  Also, indented all the files
	to 8 space tab.

	* ldtp-request.h: Added request_id member.
	* ldtp-request.c: Change in packet format. Every tag in XML is
	now within angular brackets.  No more "Props".
	* ldtp-response.h: Change the packet format to have every tag
	formated within angular brackets and not more "attributes".
	Move response-header definitions from ldtp-utils.h to here.
	* client-handler.c (send_response): Adhere to latest response format.
	(handle_client): Logic change in the while loop that reads the
	packet from the socket.

2006-01-16 Nagappan A <nagappan@gmail.com>
	* ldtp-appmap.c (print_context): Function is now a global function
	* ldtp-gui.c (ldtp_gui_get_gui_handle): Function uses
	print_context function after creating the appmap at runtime
	* ldtp-gui.c (ldtp_gui_get_gui_handle): Implemented dynamic
	handling of windows
	* ldtp-gui.c (get_child_window_handle): Handled window title with
	actual label, with regexp, with old appmap format
	* ldtp.c (register_window_event): Implemented initial version for
	listening callback events
	* ldtp-appmap.c (get_component_def): Removed function
	
2006-01-13 Nagappan A <nagappan@gmail.com>
	* ldtp.c (main): Added SPI_event_main, which is required to handle
	unexpected windows
	* ldtp-gui.c (ldtp_gui_get_gui_handle): Implemented
	get_window_handle, get_client_window_handle to handle situations
	where appmap is not found for the given context
	* ldtp.c (cleanup): Gracefully shutdown the LDTP server and also
	remove the named socket file
	* remap.c (get_window_text_in_appmap_format): Implemented to
	generate the window title text in appmap format, so that it wont
	break the existing logic
	
2006-01-12 Nagappan A <nagappan@gmail.com>
	* ldtp-gui.c (guiexist, waittillguiexist, waittillguinotexist)
	functions added
	* client-handler.c (handle_client) Removed code for disconnecting
	the client connection for any error
	
2006-01-11 Nagappan A <nagappan@gmail.com>
	* Removed appmap entry in LDTPRequest structure
	* Implemented regular expression based object and label search
	* Implemented label base search
	* Commented pthread_detach code
	
2006-01-10 Nagappan A <nagappan@gmail.com>
	* Compilation error fixed in calendar.c
	* Fixed SPI leak
	* Removed typdef Appmap
	
2006-01-05 Veerapuram Varadhan <v.varadhan@gmail.com>
	* ldtp-request.c (ldtp_request_fill_request): Xml parsing fixes.
	
2006-01-03 Veerapuram Varadhan <v.varadhan@gmail.com>
	* client-handler.c (handle_request): Error handling fixes.
	* (send_response): Encode the response packet appropriately.
	
2006-01-02 Veerapuram Varadhan <v.varadhan@gmail.com>
	* Fixed response packet creation/sending
	
2005-12-23 Veerapuram Varadhan <v.varadhan@gmail.com>
	* Cleanups and other misc changes
	
2005-12-23 Nagappan <nagappan@gmail.com>
	* Added label.c, compilation warning
	
2005-12-05 Veerapuram Varadhan <v.varadhan@gmail.com>
	* Merging my LDTP_CMD* and ldtp-command.[ch] related changes
	* Initial version of new LDTP arch
