Commit Graph

77 Commits

Author SHA1 Message Date
Marc Bernard
060abb8635
Make exceptions compatible with 702 (#5116)
* Make exceptions compatible with 702

702 does not deserialize exception classes correctly that have a constructor in a super class (see #1273). Adding an explicit constructor that calls the super-constructor, the issue is avoided.

* Pretty

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-11-14 07:28:38 +01:00
Marc Bernard
ef8f830734
Refactor hotkey controller (#4990)
- Removed "class analysis logic" from hotkey collection
- Hotkeys are now registered directly in the hotkey controller (similar to asset manager)
- `zif_abapgit_hotkeys->get_hotkey_actions` was changed to instance method and can therefore be redefined in subclasses
- Renamed the controller class to match the interface name

Co-authored-by: Christian Günter <christianguenter@googlemail.com>
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-10-01 08:43:25 +02:00
Lars Hvam
e7e8af832e
align package descripions (#4939)
prefix all package descriptions with "abapGit - "
2021-09-10 10:58:36 -04:00
Lars Hvam
9675ad6007
Replace use of type W3URL with string (#4874)
* replace W3URL with string

* fixes

* ASSERT strlen( iv_url ) <= 250.
2021-07-21 11:41:56 +02:00
Frederik Hudák
d4cbf7059e
Repo overview - rework action buttons + cosmetic changes (#4771)
* Repo overview - cosmetic changes

* extract logic to method

* Update src/ui/zcl_abapgit_gui_page_repo_over.clas.abap

Co-authored-by: abaplint[bot] <24845621+abaplint[bot]@users.noreply.github.com>

* fix if in if

* unshorten remote, move package, improve wrapping

* Add max width for columns

* Mostly working now

* add prefixes

* Remove checkbox, move package where it was

* Keyboard navigation

< > to navigate in list (arrow keys don't seem to trigger), enter to open selected

* Ellipsis for repo url, use css variable

* Fix css, js persistence

* Fix invalid function name

* add back !important to override hover color

* abaplint

* Don't use const in js

* more eslint

* Remove unused field symbol

* eslint

* Bring back repo lock icon, styling improvements

Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
2021-06-14 14:44:38 +02:00
Christian Günter
6f8e3f45fa
Set focus: fix code inspector warning + improve error handling (#4843)
* Set Focus: fix code inspector warning 

+ improve error handling

* fix method signature
2021-06-14 10:58:01 +02:00
Marc Bernard
f857194037
Focus HTML control on abapGit startup (#4817)
* Focus HTML control on abapGit startup 

`cl_gui_control=>set_focus` must be called during PBO. Maybe there's a nicer way to pass the HTML control to the PBO.

* Move to output form

* Set focus

* Add autofocus
2021-06-09 17:24:59 +02:00
Alexander Tsybulsky
e5e558a312
Log refactoring, part 1 (#4676)
* log: new features

* log in exception

* log via gui_services

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-03-27 10:57:57 +01:00
Lars Hvam
16ca0fef77
ZCL_ABAPGIT_GUI delete unused GO_PAGE (#4640) 2021-03-15 15:30:21 +01:00
Lars Hvam
4a30f00a7e
HTML, minor performance? (#4553)
* HTML, minor performance?

@FreHu can you try this, to see if the performance is a few ms better?

* upd
2021-02-22 06:51:24 +01:00
Lars Hvam
da53a04abb
zif_abapgit_html_viewer: refactor CNHT_POST_DATA_TAB & CNHT_QUERY_TABLE (#4499)
* zif_abapgit_html_viewer

* fix syntax
2021-02-12 11:05:46 +01:00
Marc Bernard
40331ee80f
Follow-up HTML viewer exceptions (#4404)
* Follow-up HTML viewer exceptions

Properly catch HTML viewer exceptions (follow-up #4396) to avoid dumps

* Add exception

* Add exception

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-01-12 08:54:03 +01:00
Lars Hvam
89c77d9e6b
zif_abapgit_html_viewer, change to class based exc (#4396)
* zif_abapgit_html_viewer, change to class based exc

#4381, part A

* catch
2021-01-11 09:59:26 +01:00
Lars Hvam
704198f521
unit testing test (#4345)
* update deps

* update deps

* remove CHAR01 usages

* update deps

* update deps

* update deps

* all unit tests in syntax now running!

* update deps

* update deps

* update deps

* enable additional exception unit tests

* zcl_abapgit_string_map running

* upd

* login manager running

* update deps, add progress clas

* upd

* update deps

* fix whitespace

* update deps

* upd

* update deps

* update deps

* update deps

* use cl_abap newline

* upd

* run more

* sort

* update deps

* add intf

* update deps

* upd

* add zcl_abapgit_exit

* some xml interfaces

* zcl_abapgit_version running
2020-12-27 18:00:59 +01:00
Lars Hvam
4b2309f952
zif_abapgit_html, remove uses of char1 (#4351) 2020-12-24 08:36:58 +01:00
Marc Bernard
552024ac3f
UI: Improvements for setting pages (#4229)
* UI: Improvements for setting pages

- Better navigation between settings pages
After jumping between setting pages, the back button will go to last page before navigating to the settings (ie "back with bookmark")
- Add commit work

* Lint + router

* Jump repo view to settings

* Lint

* Conflict

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2020-11-26 11:54:49 +01:00
Marc Bernard
82668de47b
UI: New pages for global and personal settings (#4192)
* Dialogs: New pages for global and personal setting

Redesign of abapGit settings using HTML forms. Two functional changes to old settings page:
- "Development Internal Settings" are only visible when using the developer version (not in standalone program)
- "User-specific hotkey settings" are not available anymore. The default hotkeys continue to work as before.

Global/Personal settings can be reached using hotkeys "x" and "y".

* Lint

* Hide button

* Change to top menu

* Remove old page

* Remove old page

* fix links

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2020-11-23 08:24:17 +01:00
Marc Bernard
9e385c264e
UI: Add help buttons to "New Online/Offline" (#4189)
* UI: Add help buttons to "New Online/Offline"

- Add help button to both dialogs linking to docs.abapgit.org
- Clicking the button brings up the documentation inside the GUI HTML viewer
- Enhancement to `zcl_abapgit_gui` and `zcl_abapgit_html_viewer_gui` to properly handle 'Back' when navigating through Internet pages

* Open help in external browser

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2020-11-18 07:33:00 +01:00
Lars Hvam
c4f75fc5a8
ZCL_ABAPGIT_CONVERT refactor (#4161)
* ZCL_ABAPGIT_CONVERT  refactor

this removes calls to function modules, replacing with class based equivalents, or all custom ABAP implementations

* rename local variables
2020-11-12 09:00:32 +01:00
Lars Hvam
df652f0436
delete various unused local variables (#4126) 2020-11-03 08:43:04 +01:00
Marc Bernard
bdc44f7476
Remove self-references (#4115)
* Remove self-references

Remove unnecessary self-references (me->)

https://github.com/SAP/styleguides/blob/master/clean-abap/CleanABAP.md#omit-the-self-reference-me-when-calling-an-instance-method

* 702: Fix syntax error

No chaining with EXPORTING & CHANGING

* remove addiontal me, update abaplint config

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2020-11-02 09:25:27 +01:00
Alexander Tsybulsky
4b6c424465
html event abstraction, phase 5 - case insensitive query and form_data (#4007)
* case-insensitive string map

* refactor gui_event and its UTs

* remove query uppercased in pages

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2020-10-11 10:47:37 +02:00
Marc Bernard
9672f5b030
Adjust name prefix for types (#3991)
* Part 1

* Part 2

* Part 3

* Lint

* Part 5

* Part 6

* Part 7

* Part 8

* Part 9

* Enforce type naming prefix

All types need to start with TY_...

* Fix local types
2020-10-07 08:54:15 +02:00
Alexander Tsybulsky
6941d9824a
html event abstraction, phase 4 - form_data (#3975)
* event->post_data logic

* part of pages, commit test

this is also long text
to test

* string_map: port strict() feature

* pages refactoring part 2

* linter

* docs

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2020-10-05 09:33:01 +02:00
Alexander Tsybulsky
e95b6f7806
html event abstraction, phase 3 - query (#3903)
* event->query

* page db refactoring

* linter fix

* linter fix

* address repo via key= param

* linter

* mv_getdata WIP

* mv_getdata - finish

* cleanup action utils

* linter fix

* another linter fix

* docs for event->query
2020-09-28 16:41:59 +02:00
Lars Hvam
015800b45b
Less DDIC references (#3905)
* remove uses of CHAR30

* Update abaplint.json

* add basic unit test for ZCL_ABAPGIT_MESSAGE_HELPER

* replace uses of char50

* fix name

* Update abaplint.json

* use sy-uname instead of uname

in ZCL_ABAPGIT_USER_MASTER_RECORD
2020-09-21 07:39:22 +02:00
Alexander Tsybulsky
555f2f3d0b
html event abstraction, phase 1 (#3900)
* event class, interface and gui

* router adaptation

* rest of the pages

* linter fixes

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2020-09-19 07:57:39 +02:00
Marc Bernard
475f67d1d8
Remove trailing spaces in HTML output (#3893)
* Remove trailing spaces from html

* Return string size
2020-09-17 17:07:46 +02:00
Lars Hvam
9f396366cd
gui refactoring, for web edition (#3890)
* put cl_gui_html_viewer behind an interface

* cleanup

* injectable html viewer

* method_parameter_names, exclude zif_abapgit_html_viewer

* fix whitespace

* public get_asset_manager

* Update abaplint.json

* add prefixes
2020-09-16 12:39:23 +02:00
Lars Hvam
f0208ae883
html, use interfaces (#3871)
* html, use interfaces

#3460

* fix syntax, remove alias

* last one 🎉
2020-09-12 05:16:21 +02:00
Lars Hvam
6739b768e9
html refactoring (#3843)
* html refactoring

change A() to instance method
remove ADD_CHECKBOX alias

* removes ICON alias

* more
2020-09-06 09:45:51 +02:00
Lars Hvam
9c41a2b7d8
remove text pragmas and pseudo comments (#3827)
* remove text pragmas and pseudo comments

* fix whitespace

* fix carriage return

* test

* test

* Update zcl_abapgit_repo.clas.abap
2020-09-03 09:13:47 +02:00
Lars Hvam
86657cc691
HTML refactoring (#3813)
* HTML refactoring

* removes the ADD_ICON alias

#3460

* remove IS_EMPTY alias

* more

* refactoring
2020-08-31 09:37:36 +02:00
Lars Hvam
271e365f06
html, use interfaces (#3811)
* html, use interfaces

* more

* more

* more

* this removes the ADD_A alias
2020-08-29 08:00:56 +02:00
Lars Hvam
84c80a761c
refactoring, use interface for html (#3793)
* refactoring, use interface for html

replace uses of zcl_abapgit_html with zif_abapgit_html

#3460

* replace additional uses of the A alias

* This removes the A alias from the HTML class

This removes the following alias,
"a FOR zif_abapgit_html~a ."

* fix syntax error
2020-08-27 07:51:51 +02:00
Marc Bernard
fe95dc7e5f
abapGit Emergency Mode (#3756)
* abapGit Emergency Mode

On rare occasions, it is necessary to edit the abapGit settings to overcome an issue (example: https://github.com/larshp/abapGit/issues/3701). 

This enhancement allows you to start abapGit in "emergency mode", which directly shows the "Database Utility" for you to view or edit any setting. 

How to start abapGit in "Emergency Mode":

1. Go to transaction SU3 to maintain your user profile
2. Maintain parameter DBT with value "ZABAPGIT" (all-caps).
3. Start abapGit
4. After exiting abapGit, go back to SU3 and remove parameter DBT

* Update ref-database-util.md

* Add files via upload

* Update ref-database-util.md

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2020-08-22 09:55:33 +02:00
Lars Hvam
d5e5baa7d8
delete method ZCL_ABAPGIT_HTML=>CREATE (#3736) 2020-08-18 06:54:20 +02:00
Lars Hvam
f878f3b4c3
remove some double spaces (#3740) 2020-08-16 08:24:12 +02:00
Lars Hvam
867c74701f
remove some unused variables (#3719)
* remove some unused variables

* more unused
2020-08-09 08:44:54 +02:00
Lars Hvam
cd9ea97a63
HTML: move add_icon to interface (#3608)
* HTML: move add_icon to interface

* ZCL_ABAPGIT_HTML_TOOLBAR use interface

* ZCL_ABAPGIT_GUI_REPO_OVER use interface

* ZCL_ABAPGIT_GUI_PAGE_VIEW_REPO  use intf
2020-07-12 08:37:15 +02:00
Shai
15f55276e1
Fix issue 3597 (#2 try) (#3601)
* Fix issue 3597 (#2 try)

When abapGit is being executed on SAP GUI for HTML, all the links don't work (don't do anything because SAPEVENT isn't being passed back to the application server).

* Fix build errors of previous commit

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2020-07-11 08:28:41 +02:00
Alexander Tsybulsky
f5dfd328f5
Dialogs: add online repo HTML form (#3533)
* first draft

* progress ...

* html->create()

* more progress

* and more

* getting closer

* wiring

* refactor popup_search_help

* refactor create_package to services

* fix services->new_online after rebase

* linter fixes

* more linter fixes

* straing map util

* error handling

* submits for side actions (ugly ... but ...)

* cleanups

* linter fixes

* refactor form values logic

* linter fix

* review fixes

* remove unused var after rebase

* review fixes, better side action layout

* linter fix

* minor css tweaks
2020-07-01 08:16:52 +02:00
Lars Hvam
420e6f5964
replace HTML with interface (#3490)
* replace HTML with interface

part of #3460

* pretty print
2020-06-13 09:39:46 +02:00
Lars Hvam
d36b43defe
line break parameters (#3444)
* line break parameters

* Update zcl_abapgit_gui_page_repo_sett.clas.abap

* Update zcl_abapgit_gui_page_repo_sett.clas.abap

* fix
2020-06-04 15:10:35 +02:00
Lars Hvam
aec7468aad
Type Hunting (#3414)
* Type Hunting

* update

* update

* flag
2020-05-26 05:55:28 +02:00
Alexander Tsybulsky
5c4c0b882e
Gui refactoring - part 5 (#3403)
* refactor mi_gui_services to getter

* zif_html->set_title (for debug of postponed parts)

* add set_title to all postponed parts

* gui optional rollback on error

* forgotten gui_services call

* docs

* remove gui_page redirect #3404

* forgotten html~set_title in hotkey class

also renamed render_js_part into render_scripts for unification and reuse register_deferred_script - this is why I lost it int the first place

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2020-05-24 10:42:06 +02:00
Alexander Tsybulsky
310d8673dd
Gui refactoring, chapter 3 (#3355)
* zcl_abapgit_html_parts primitive

* integrate parts in GUI

* bughunting and renames

* scripts collection, move hotkeys js to parts

* linter fixes

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2020-05-13 12:58:43 +02:00
Alexander Tsybulsky
c056076170
Gui refactoring 2 (#3338)
* hotkeys refactoring: draft logic

- new interfaces
- gui services binding
- move render to zcl_hotkeys
- move global hotkeys to hotkeys class
- remove unnecessary stuff from gui_page

* implement zif_abapgit_gui_hotkeys in rel.pages

* settings page draft

* remove zif_abapgit_gui_page_hotkey

* linter fixes

* finalize rendering logic

* finalize settings

* linter fix

* sorting tweak

* fix abapgit_full work

Co-authored-by: Christian Günter <christianguenter@googlemail.com>
Co-authored-by: Lars Hvam <larshp@hotmail.com>
Co-authored-by: Frederik Hudák <frederik.hudak@sap.com>
2020-05-08 10:26:54 +02:00
Alexander Tsybulsky
0eb22a0c87
Gui refactor, part 1 (#3289)
* gui component and event registering

* remove iv_prev_page from event_handler if

* constructors raising zcx_abapgit_exception

* get_gui_services - UT friendly

* linter fixes

* more linter fixes

* zif_gui_services stub all methods

* linter fix

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2020-04-07 10:30:43 +02:00
Eduardo Ferrari Copat
e74d40516c
Diff - Add option to collapse files (#3248)
* Update zcl_abapgit_gui_page_diff.clas.abap

* Update zcl_abapgit_gui_page_diff.clas.abap

* Update zabapgit_css_common.w3mi.data.css

* Update zabapgit_css_common.w3mi.data.css

* test

* Update zabapgit_css_theme_default.w3mi.data.css

* Add collapse to css

* Add user select

* onDiffCollapse

* show source

* src

* Tries text

* hide/show

* uses nodisplay instead of hidden

* good hide

* ===

* Add button

* lint

* lint

* set function as global

* lint

* Exclude gui page diff

* remove extra space

* chevron

* pointer

* class

* Icons

* lint

* lint

* hide

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2020-03-12 17:09:00 +01:00