Showing posts from July, 2018

GSoC work report - Week 9

At first, I worked on the keylogging issue. Key presses are now logged according to DSL inside the dialogs too (in ComboBoxes and SpinFields). The patch is here -

Then I worked on logging more events ( These are the events which this patch logs -
WriterGoto PageSet ZoomCalcLaunch AutofilterSelect Cell/Range/TableImpressSet Zoom In addition to this, I realized that we might also need to log the arguments sent with a UNO command, in addition to the UNO command itself. The patch has also done some work in that direction.

GSoC work report - Week 8

This week, I first worked on improving the log interpreter. It can now open existing files (in addition to starting with blank documents).

I then moved the logAction function from ImplCallEventListenersAndHandler to CallEventListeners. Events from down in the class hierarchy which directly called CallEventListeners from vcl::Window (or ImplCallEventListenersAndHandler from Control) will now get interrupted by the new function, register a log statement, and then go to the class Window. This also allowed to log SpinFieldUp and SpinFieldDown.

According to the feedback from Raal, I worked on resolving the ID conflicts of UI elements in the same dialog. The patch can be seen here.

For week 9, I will keep working on improving UI testing, including the key input inside dialogs as suggested by Markus.

GSoC work report - Week 7

During the 7th week, I sent 3 patches.

1) Gerrit change #56776

This change adds more features to the log interpreter. UNO commands, closing dialogs through buttons, sending UNO commands to open dialogs via keycode is now supported.

2) Gerrit change #56777

This change makes command-line argument parsing of interpreter more standard.

3) Gerrit change #56789

This change adds support for starting any of the 6 apps of LibreOffice through the create_doc_in_start_center() function.

Let's also have a look at a log file and the generated test file. 

Log File -

ButtonUIObject Action:CLICK Id:writer_all Parent: CommandSent ModalDialogExecuted Id:CharacterPropertiesDialog RadioButtonUIObject Action:CLICK Id:90deg Parent:CharacterPropertiesDialog ListBoxUIObject Action:SELECT Id:linestylelb Parent:CharacterPropertiesDialog {"POS": "6"} ButtonUIObject Action:CLICK Id:ok Parent:CharacterPropertiesDialog DialogClosed

Test File -

1 2 3 4 5 6 7 8 9 10 11 12 1…