* Patch: replace links with checkboxes
With this commit we replace the links on the patch page
with checkboxes.
This has several advantages:
- better performance
- simplified and less cluttered UI
- less and easier to understand code
* refactor
* refactoring: introduce new method add_checkbox
* fix linter
* enable link hint navigation
* Refactoring: remove duplication
* refactor: remove duplication
* fix: link hint activate section/lines
* Hotkeys no longer depend on abapGit installation
When this commit is applied hotkeys also work with
the single abapGit report. Limitation is still that users
only can override hotkeys with the installed abapGit repo.
* Fix hotkey display when no user def. hotkeys
* New: Override hotkeys within one file abapGit report
When this commit is applied it's possible to override the default
shortcut also in the one file abapGit report. It's no longer necessary
to installe the full abapGit repo to use this feature
* Extract is_merged + check in hotkey logic
* interface for progress class
* adjust branch overview
* adjust git pack
* adjust diff page
* adjust objects class
* adjust activation class
* adjust repo online class
* adjust serialize class
few methods moved
* adjust tadir class
* pretty print
* definitions to top of routine
* space before .
* omit parameter names where possible
* double space after if
* remove pseudo comments where possible
* Staging smaller chunks of code like git add -p
With this commit a new feature which works similar to git add -p
is added. We are now able to patch, which means that we can
commit on line basis. And are not restricted anymore to commit
only on file basis.
* move get_page_patch to stage page
* Refactor JS
* Refactor JS
* 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
* Vimium like link hint navigation
After this commit is applied, the link hint navigation can be used.
The feature can be activated and configured in the user settings.
Role model is the link hint navigation in the Google Chrome plugin
Vimium.
* refactoring: introduce KeyNavigation prototype
* refactoring: introduce LinkHints prototype
* 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