* Improve error information
With this commit errors that are raised with zcx_abapgit_exception=>raise
and issued with message are enriched with two additional functions.
1) Go to source
Navigates to the source code position where zcx_abapgit_exception=>raise
is called
2) Callstack
Shows a popup with the full callstack and the possibility to navigate to
the source of each line with double click
This feature requires the full abapGit repository. Without nothing
changes.
* issue messages directly
* zcx_abapgit_exception: adapt callstack handling
- callstack as attribute
- export callstack to ABAP memory only when SAPGui is available
* rename memory id
* Add comment why we don't delete callstack from MEM
* cleanup
* first try html error display
* add some comments
* add longtext
* goto_source and callstack implemented
* part 2
* remove
* fix
* add close button
* fix long classname
* fix linter
* add jump to SE91
* fix lintmr
* fix and cleanup
* fix linter
* fix linter
* fix eslint
* fix linter
* remove message class
* remove superfluous constant
* add missing method implementation
* refactor
* add hotkey for message longtext toggling
* hotkey 2
* refactor + resize callstack popup
* Refactoring: simplify control flow
* fix goto callstack for merged abapGit
* refactor: simplify control flow
* Refactoring: introduce message helper
* fix linter
* remove TODO pragmas
* ren. render meth + move zcl_abapgit_gui_chunk_lib
* refactoring: simplify control flow
* simplify exception handling
* refactor
* refactor
* refactor
* remove duplication
* Rename method
* rename method
* remove superfluous constant
* call ZCL_ABAPGIT_MESSAGE_HELPER dynamically
* cleanup
* Improve UX
* fix linter
* remove hotkey
* font
* css fix and icon rendering
* assets and font link in html head
* more icons
* more css fixes
* replace icon names
* dev docs
* Fonts update
* icons rename
* doc update
* linter fixes
* fix for abapmerge
* Introduce customizable hotkeys
With this commit customizable hotkeys are introduced. They can
be defined in the user specific settings. Currently we support
only one letter keybindigs e.g. 's', 't' or 'x' and no modifiers.
Every page in the UI can decide which actions it offers for the
hotkeys. Therefore we introduce the interface ZIF_ABAPGIT_GUI_PAGE_HOTKEY
with the method GET_HOTKEY_ACTIONS. At this point in time only
the main page offers actions for hotkeys, but the mechanism works
already for all pages. New actions for hotkeys can be defined
easily.
Hotkeys are only available for installed abapGit repositories.
Because we need to detect the classes which implement the above
mentioned interface and it seems that there is no easy way to do
that for local classes. Maybe we can add it later when we know more.
We don't supply default key bindings. So it is totally up to the
user to define them.
* provide default hotkeys
* lcl_background to global
* lcl_branch_overview to global
* lcl_services_git to global
* lcl_services_repo and lcl_services_db to global
* lcl_services_abapgit to global
* lcl_gui_chunk_lib to global
* lcl_gui_view_tutorial to global
* lif_auth to global
* lcl_auth and lcl_gui_view_repo to global
* lcl_view_repo
* lcl_gui_page_syntax to global
* 2 pages to global
* refactor router, less dynamic references
* background pages to global
* branch overview to global
* settings page to global
* repo settings page to global
* explore page to global
* diff page to global
* debug info to global
* main page to global
* refactor router, no dynamic references
* db pages to global
* router to global
* gui to global
* clean up includes
* move type definnition to interface
to avoid syntax error after abapmerge
* move types to interface
* move types to interface
* rename tyep
* move type
* move types
* move type