* Dialogs: HTML forms for repo settings
This moves the repo settings to HTML forms. The settings are split into three pages:
- Repository settings (ie abapgit.xml)
- Local settings
- Infos
* Lint
* Infos > Stats
* Infos > Stats
* Infos > Stats
Co-authored-by: Lars Hvam <larshp@hotmail.com>
* UI: Refactor form css class
- Move styles to CSS
- Provide default for form class
- Remove form class from render calls
* Update css
* Condense textarea
Co-authored-by: Lars Hvam <larshp@hotmail.com>
* Dialogs: HTML forms - follow-up
Follow-up to #4264:
- Split `zcl_abapgit_html_form` class
Processing form data has been moved to `zcl_abapgit_html_form_utils`
- `iv_is_main` refactored to `iv_cmd_type`
- In case of unsaved data, form exit will now prompt for confirmation (`zcl_abapgit_html_form_utils`)
* dot space
* lint
* Remove const
Co-authored-by: Lars Hvam <larshp@hotmail.com>
* Set branch name with commit
* Can't stage when commit is checked out
* Add missing variable
* Remove passing a parameter, since set relies on IS SUPPLIED
* Undo last commit
* Intelligent create branch when commit is checked o
ut
* lint
* Fix cancel buttons (missing commit)
* Code review
* Remove unused variables
* Add extra line
* Remove unused variable
* Add back new branch pop-up. Considers tag.
Co-authored-by: Lars Hvam <larshp@hotmail.com>
* New Repo: Check package existence before showing p
* fix lint errors
* fix linter
* add more unit tests
* refactor unit tests
Co-authored-by: Lars Hvam <larshp@hotmail.com>
* Dialogs: HTML form tweaks
- Minor increase of contrast for background, input- and readonly fields
- Add read-only option for columns of table control
* Add is_empty
* Add init and hidden
* Render
* Remove init
Co-authored-by: Lars Hvam <larshp@hotmail.com>
* UI: Clear progress bar
Clears status/progress bar at end of process and removes leftover messages.
Closes#3505
* Lint
Co-authored-by: Lars Hvam <larshp@hotmail.com>
* 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>
* User interface, "Advanced" menu
Added tooltips to the "Remove" and "Uninstall" options in the advanced menu. As a new user, I would revisit the [documentation](https://docs.abapgit.org/guide-online-uninstall.html) to distinguish between the two.
The tooltips are passed as "iv_title" parameters to ZCL_ABAPGIT_HTML_TOOLBAR->add
* Update src/ui/zcl_abapgit_gui_page_repo_view.clas.abap
Adjustments from review
* Update src/ui/zcl_abapgit_gui_page_repo_view.clas.abap
Adjustments from review
* Update zcl_abapgit_gui_page_repo_view.clas.abap
Comply with abaplint line length of 120
* Update zcl_abapgit_gui_page_repo_view.clas.abap
Comply with abaplint's no whitespaces at EOL
Co-authored-by: Lars Hvam <larshp@hotmail.com>
* show log, remove title parameter
the log objec already have the title as part of the object, another input is not required
this aligns the code to always use the title from the object
closes#4223
* zif_abapgit_log, change title to csequence input
* Dialogs: Enhance HTML form with table control
- Adds option to maintain data using a table control
- Extends UTs with several cases that were include in #4172
- Table control to be used by "repo settings" #4171
* Border
* Lint
Co-authored-by: Lars Hvam <larshp@hotmail.com>
* log, purge() now returns the log
For each action, the log should be returned, then it is up to the UI how or if to show or persist it in the session.
First step of #2821
* li_log not needed anymore
This adds shorthand methods for the SHA1 calculation of the different git artifacts.
More logic in ZCL_ABAPGIT_HASH, but easier to read and less application logic.
When repeatedly navigating "back" to the main screen via the "Repository List" [o] button:
If somewhere in this navigation sequence you Remove a repository,
then continue on via "Repository List",
but later you use the GUI's actual "BACK" button, until you have returned to the main screen where that repository still existed,
a short dump occurs as the exception raised by zcl_abapgit_repo_srv=>get in zcl_abapgit_gui_page_repo_view->render_content propagates unhandled
Co-authored-by: Lars Hvam <larshp@hotmail.com>
* 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>
* 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>
* Refactor XSTRING_TO_INT
this will use the built-in type conversion, its less code and most likely also runs faster
* delete METHOD alpha_output
it is only used in one place, and its a simple NUMC that is converted
* Dialogs: HTML form enhancements
In preparation for https://github.com/abapGit/abapGit/issues/4171, HTML forms were enhanced as follows:
- New integer fields (type "number") with min/max, https://github.com/abapGit/abapGit/issues/3559
- Added support for minlength/maxlength for text fields
- Added support for read-only fields
- Added support for password fields
- New option for adding a help button to the form (with URL link)
- Moved HTML snippets to render method
- Changed parameters to csequence to also accept char variables (like abap_true)
- Minor adjustments to styles
* Lint and fix ul/fieldgroup
* Min/max validation, textarea
* Close textarea tag
Co-authored-by: Lars Hvam <larshp@hotmail.com>
* ZCL_ABAPGIT_CONVERT refactor
this removes calls to function modules, replacing with class based equivalents, or all custom ABAP implementations
* rename local variables
* move merge types to merge class
this will make the God interface defintions smaller
also reducing INTF -> CLAS references
and making it easier to add an interface for the merge class in the future
* add interface ZIF_ABAPGIT_MERGE
* Terminology: Inclusive Language - Part 2
Change "Master Language" to "Main Language" in UI and comments (documentation and variables next)
* Docs
* Docs
Co-authored-by: Lars Hvam <larshp@hotmail.com>
* Move git url repo methods
This moves methods GET_COMMIT_DISPLAY_URL and GET_DEFAULT_COMMIT_DISPLAY_URL from the repo class to new class in new package GIT_PLATFORM.
we want to keep the repo class small, as its quite complex and central
#4085
* fix line length
* Triggers main command when pressing enter in form
Adds hidden button that triggers main command when pressing the enter key
* Lint
Co-authored-by: Lars Hvam <larshp@hotmail.com>
* Backup and restore for abapGit persistency
Backup complete content of abapGit persistency to a ZIP file and restore when necessary.
* Messages
* 702
Co-authored-by: Lars Hvam <larshp@hotmail.com>
- Added icon for user
- Changed icon for transport to truck
- Adapted "staging" page
- Renamed CSS-classes because of conflict with classes used on staging page
Screenshots #4097Closes#4098
Co-authored-by: Lars Hvam <larshp@hotmail.com>
* 702: Downport
No chaining with CHANGING
* 702: Downport
* Syntax check variant
* Too many fields warning
Co-authored-by: Lars Hvam <larshp@hotmail.com>
* UI: Unify rendering of branch, package, user names
Branch name was already rendered "boxed with a leading icon". The same is now done for package and user names.
See `zcl_abapgit_gui_chunk_lib->render_branch_name, render_package_name, render_user_name`.
Closes#4059
* Lint %26 transport
* Unknown user
* Transport css
Co-authored-by: Lars Hvam <larshp@hotmail.com>
Some files that existed locally didn't have a link. After #4084, the state can be evaluated properly to determine if local object exists.
Co-authored-by: Lars Hvam <larshp@hotmail.com>
* Replace LEAVE with CALL SCREEN
* Add new option iv_show_commit
Add new option iv_show_commit to GUI_CHUNK_LIB to be able to suppress showing commit hash on GUI_PAGE_CODE_INSP page
* abapLint: Replace 'EQ' by '='
Co-authored-by: abaplint[bot] <24845621+abaplint[bot]@users.noreply.github.com>
* Hide commit hash on other pages too
Hide commit hash on ZCL_ABAPGIT_GUI_PAGE_REPO_SETT and ZCL_ABAPGIT_GUI_PAGE_SYNTAX pages
Co-authored-by: abaplint[bot] <24845621+abaplint[bot]@users.noreply.github.com>
Co-authored-by: Lars Hvam <larshp@hotmail.com>
* refactor validation in html_form + UT
* minor UT tweak
* subtle form bugfix (boolc return space string)
* cleanup add forms
Co-authored-by: Lars Hvam <larshp@hotmail.com>
* 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
* 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>
* Dialogs: add offline repo HTML form
* Dialogs: add offline repo HTML form
* Dialogs: add offline repo HTML form
* Lint
* Lint
* Chaining
* Set required attribute
* Check for empty display name
* Change validation
Co-authored-by: Lars Hvam <larshp@hotmail.com>
* Add button to launch IEChooser.exe on Windows
* Fix CASE statement
* Determine iechooser.exe path using system directory
Co-authored-by: Lars Hvam <larshp@hotmail.com>
* Split settings and dev utils menu
* Fix missing settings hotkey on repo view
* Revert "Fix missing settings hotkey on repo view"
This reverts commit 1444744a5f.
Co-authored-by: Lars Hvam <larshp@hotmail.com>
* 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
pretty print class ZCL_ABAPGIT_HTML_FORM, and change two static methods to instance, this will make future possible changes to the class easier to see in the history
Follow-up to #3717:
- Proper display of public, protected, and private sections
- Add CLAS prefix to be inline with other object types
Co-authored-by: Lars Hvam <larshp@hotmail.com>
* popup_to_select_from_list can handle element tabs
popup_to_select_from_list can now handle element-based non-structured tables like a table of url strings
Therefore related to #3639
* Update zcl_abapgit_popups.clas.abap
* Fixed wrong value assigning and added assert
* Add performance test
* Fix some linter errors
* Refactor free selections to reduce method length
* Performance test add title to result ALV
* Attempt downport
* Downport
* Pretty Printer VS abaplint
* Undo more changes done by pretty printer
* Adjust performance popup title and ALV layout
* Move free sel dialog to global for abapmerge
* Move some type definitions for abapmerge
Co-authored-by: Lars Hvam <larshp@hotmail.com>
* navigate to repo after ZIP import
* add zip import/export action for offline repos
* rename action labels
* change new state to be dependent on current page
change replacing -> new page if action called from repo list
rerender if in repo view
* add some TODOs, see PR discussion
Co-authored-by: Lars Hvam <larshp@hotmail.com>
* Update error msg
* Fix login popup errors and cancelation
* Remove validate/reset methods
* Lint
* Rename iv_repo_online to io_repo_online
* Change to error in status bar
Co-authored-by: Lars Hvam <larshp@hotmail.com>
* 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
* background pull: always overwrite all objects
always choose to overwrite all objects when using the pull in background feature. If the decision is not set the job will fail with a "undecided" error
#3800
* fix page title typo
* Improve display when there are no changes in repo view
* Update view and remove empty_package method
* Empty package msg
Co-authored-by: Lars Hvam <larshp@hotmail.com>
* Validate if branch exists when displaying repo
* Validate if branch exists when displaying repo
* Lint
* Lint and 702
* Lint
* Rename validate_branch to validate
* Fix msg and branch display name
* Move msg to UI layer
* Lint
Co-authored-by: Lars Hvam <larshp@hotmail.com>
Co-authored-by: Frederik Hudák <frederik.hudak@sap.com>
* 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>
* Use title case for page titles
Other minor changes:
- patch page is no longer called diff
- "code inspector" in main page action menu renamed to "check"
* Two more
* Update zcl_abapgit_gui_page_db_dis.clas.abap
* Update zcl_abapgit_gui_page_repo_sett.clas.abap
* Repo advanced menu
* Commit form labels
* Repo setting lables
* Settings, repo
* Final ones?
* Database util
* Column name in stage page
* abaplint
* Update zcl_abapgit_gui_page_stage.clas.abap
* Hover texts for stage column, commit settings
* lint
Turning on "Details" in Repo Overview will now hide the "Action" column to improve display on smaller screens.
Co-authored-by: Lars Hvam <larshp@hotmail.com>
* show last commit hash w/ link if possible
link to commit is supported for github.com and bitbucket.org
* remove inline data declaration
* add gitlab link support with UT
* add commit icon for non supported provider
* remove inline declaration
* remove new for CRETE OBJECT
Co-authored-by: Lars Hvam <larshp@hotmail.com>
* Enhance result view of Code Inspector/Syntax Check
* Enhance result view of Code Inspector/Syntax Check
* Enhance result view of Code Inspector/Syntax Check
* Lint
* Move sort
* Downport: Fix syntax error in 702
Method "ASSERT_TRUE" does not exist in 702
* Downport: Fix syntax error in 702
Co-authored-by: Lars Hvam <larshp@hotmail.com>
After this fix is applied the menu "advanced > open in master language" opens the repo directly and doesn't open the repo list.
Co-authored-by: Lars Hvam <larshp@hotmail.com>
* Remember repo list filter
resolves#3552
Changes:
- store filter in local storage instead of session storage, so it is remembered on abapgit restart
- filter is saved whenever it is changed instead of page unload
- removed debug output, it doesn't need to clutter the main page
* Don't resave on page load
* Add semicolons
Co-authored-by: Lars Hvam <larshp@hotmail.com>
* Improved staging robustness
- Skipped any objects in the changelist that are not marked for staging prior to processing them , to avoid that they keep other objects without errors from being staged if the user wants to stage parts of the changes
* Reduced line length
* Removed missed whitespace
* Update abaplint.json
* Update abaplint.json
Co-authored-by: Lars Hvam <larshp@hotmail.com>
* Fixed faulty translation of post data to parsable string
- Added method TRANSLATE_POSTDATA to ZCL_ABAPGIT_UTILS as a centralized place to translate post data to a string
- Replaced all post data string concatenations with the translation helper method to correctly parse spaces that fall to the end of a table line (this should solve #3073 as well as any other random crash caused by accidental misalignment of the post data)
* Backport ABAP statement to 7.02
* Code cleanup for linter checks
* Code cleanup for linter checks
* Fixed a possible error in parsing
If it_postdata contains an empty last line, the staging fails, because the string may contain a lot of soaces at the end of the previous to last line.
Co-authored-by: Lars Hvam <larshp@hotmail.com>
* 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
* CI Update
* Raise exception when no .abapgit.xml is found (#3512)
Update
Co-authored-by: Lars Hvam <larshp@hotmail.com>
* Updated documentation for repo settings & icons (#3499)
* Completed to-dos
- Updated abapgit.xml example
- Completed missing docu for local settings
* screenshots
* screenshots
* Delete repo_settings_local.png
* screenshots
* Delete repo_settings_local.png
* screenshots
* screenshots
* Combine write-protect setting
* Merged to repo settings
* screenshots
* screenshots
* merged to repo settings
* merged to repo settings
* Adding details
* Added links
* links
* icons
* icons
* icons
* icons
* icons
* icons
* icons
* Update ref-icons.md
* icons
* icons
* Update docs/ref-dot-abapgit.md
Co-authored-by: Lars Hvam <larshp@hotmail.com>
Co-authored-by: Lars Hvam <larshp@hotmail.com>
* Fix icon display in docs (#3517)
Icons showed on github.com but not on docs.abapgit.org
* +On/offline: If package already in other repo, nav to repo (#3525)
* New method to get repo from package
If package already exists in a repo and it returns the repo and reason why the package can't be used in a new repo
* UI: If package exists in repo, nav to repo
+Online, +Offline - if repo is already versioned, navigate to repo and show message why package could not be used in new repo
Closes https://github.com/larshp/abapGit/issues/3452
Co-authored-by: Frederik Hudák <frederik.hudak@sap.com>
* Update eslint requirement from ^7.2.0 to ^7.3.0 (#3534)
* Update @abaplint/cli requirement from ^2.36.6 to ^2.36.9 (#3535)
* Fix syntax errors in 702 (#3548)
Caused by https://github.com/larshp/abapGit/pull/3525
* SCP1 Import Order (#3543)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
* Update .gitlab-ci.yml
* Update eslint requirement from ^7.3.0 to ^7.3.1 (#3556)
* Update @abaplint/cli requirement from ^2.36.9 to ^2.37.2 (#3557)
* Repo overview as main page (#3498)
* Add main menu, toggle favorites
* Make abapgit logo go to overview
* Remove favorite repo links
* Fix remember filter
* Separator between filters
* Remove unused code
* Repo overview to main page
* Fix errors
* Fix naming
* Downport js
* Add separator
* remove unrelated changes
* Fix spacing
* Add package link
* Fix orderby dumping
* Only show tutorial with no favorites
Still have to do something about empty table
* Move abapgit installation info to debug info
* Improve tutorial, resolves#3497
* Add branch switch link
* Reduce line length
* Revert temporary hack
* Working version of removing logo
* No longer show tutorial in repositories
* Code cleanup
* More cleanup, rename tutorial to page
* Fix
* Force order by favorite
* Add checkmark icons
* View repo to page, rework menu
* Fix build
* Return logo
* Fix hotkeys on repo page, rename to page
* Fix show last repo, cleanup
* Abaplint
* Rollback js reformat
* Fix tutorial title, hotkeys
* Try resolve strange situation with PR
Co-authored-by: Lars Hvam <larshp@hotmail.com>
* Remove unused method (#3554)
* Remove unused method
* whitespace
Co-authored-by: Lars Hvam <larshp@hotmail.com>
* 1.97.0 (#3561)
* 1.97.0
whitespace
* 1.97.0
* v1.97.0
* fix for apply_order_by (#3566)
* Update zcl_abapgit_repo.clas.abap (#3570)
* 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
* Fix user settings containing invalid repo key (#3569)
* Update zcl_abapgit_persistence_user.clas.abap
* Fix dump when last repo is invalid
Co-authored-by: Lars Hvam <larshp@hotmail.com>
* UI: Fixes for dark theme (#3540)
* Add logo for dark theme
* Dark theme fixes
* Dark theme fixes
* Solve conflict
* Remove logo changes
Co-authored-by: Lars Hvam <larshp@hotmail.com>
Co-authored-by: Frederik Hudák <frederik.hudak@sap.com>
* Missing objects in overwrite confirmation popup (#3558)
* Missing objects in overwrite confirmation popup
Closes https://github.com/larshp/abapGit/issues/3550
* Unit tests
Co-authored-by: Lars Hvam <larshp@hotmail.com>
* Fix open url in repo view (#3581)
* Fix open url in repo view
* Move call_browser to gui_router
* CSS and logo fixes (#3578)
* css cleanups
* orange logo
* Revert "orange logo"
This reverts commit b9aa45bbd0.
* update font
* css improvements
* remove logo png
* re-layout page title and footer
Co-authored-by: Lars Hvam <larshp@hotmail.com>
* Html form improvements and docs (#3582)
* auto id
* fix html validation (form in ul)
* form groups
* move colors to theme
* docs for html form component
Co-authored-by: Lars Hvam <larshp@hotmail.com>
* Generate news instance (#3585)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
* Update @abaplint/cli requirement from ^2.37.2 to ^2.37.5 (#3588)
* Update eslint requirement from ^7.3.1 to ^7.4.0 (#3589)
* Update .gitlab-ci.yml
* fix repo palette (#3580)
* fix repo palette
* fix page_view_repo after rebase
Co-authored-by: Lars Hvam <larshp@hotmail.com>
* Adjust new logo color for dark theme (#3592)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
* Add deleted objects to overwrite confirm popup (#3591)
* Add deleted objects to overwrite confirm popup
Closes https://github.com/larshp/abapGit/issues/2845
* Pretty print
Co-authored-by: Lars Hvam <larshp@hotmail.com>
* Top menu improvements (#3590)
* Use icons, add back menu to repo show page
* Event handling
* Abaplint
* Add menu to tutorial page
* Lint
* More icons
* Update tutorial, reorganize button code
* Move icon css
* Fix error
* Fix menu
* Update .gitlab-ci.yml
* Fix rebase issue
* Fix rebase mess up
* Raise exception when no .abapgit.xml is found (#3512)
Update
Co-authored-by: Lars Hvam <larshp@hotmail.com>
* Updated documentation for repo settings & icons (#3499)
* Completed to-dos
- Updated abapgit.xml example
- Completed missing docu for local settings
* screenshots
* screenshots
* Delete repo_settings_local.png
* screenshots
* Delete repo_settings_local.png
* screenshots
* screenshots
* Combine write-protect setting
* Merged to repo settings
* screenshots
* screenshots
* merged to repo settings
* merged to repo settings
* Adding details
* Added links
* links
* icons
* icons
* icons
* icons
* icons
* icons
* icons
* Update ref-icons.md
* icons
* icons
* Update docs/ref-dot-abapgit.md
Co-authored-by: Lars Hvam <larshp@hotmail.com>
Co-authored-by: Lars Hvam <larshp@hotmail.com>
* Fix icon display in docs (#3517)
Icons showed on github.com but not on docs.abapgit.org
* +On/offline: If package already in other repo, nav to repo (#3525)
* New method to get repo from package
If package already exists in a repo and it returns the repo and reason why the package can't be used in a new repo
* UI: If package exists in repo, nav to repo
+Online, +Offline - if repo is already versioned, navigate to repo and show message why package could not be used in new repo
Closes https://github.com/larshp/abapGit/issues/3452
Co-authored-by: Frederik Hudák <frederik.hudak@sap.com>
* Update eslint requirement from ^7.2.0 to ^7.3.0 (#3534)
* Update @abaplint/cli requirement from ^2.36.6 to ^2.36.9 (#3535)
* Fix syntax errors in 702 (#3548)
Caused by https://github.com/larshp/abapGit/pull/3525
* SCP1 Import Order (#3543)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
* Update .gitlab-ci.yml
* Update eslint requirement from ^7.3.0 to ^7.3.1 (#3556)
* Update @abaplint/cli requirement from ^2.36.9 to ^2.37.2 (#3557)
* Repo overview as main page (#3498)
* Add main menu, toggle favorites
* Make abapgit logo go to overview
* Remove favorite repo links
* Fix remember filter
* Separator between filters
* Remove unused code
* Repo overview to main page
* Fix errors
* Fix naming
* Downport js
* Add separator
* remove unrelated changes
* Fix spacing
* Add package link
* Fix orderby dumping
* Only show tutorial with no favorites
Still have to do something about empty table
* Move abapgit installation info to debug info
* Improve tutorial, resolves#3497
* Add branch switch link
* Reduce line length
* Revert temporary hack
* Working version of removing logo
* No longer show tutorial in repositories
* Code cleanup
* More cleanup, rename tutorial to page
* Fix
* Force order by favorite
* Add checkmark icons
* View repo to page, rework menu
* Fix build
* Return logo
* Fix hotkeys on repo page, rename to page
* Fix show last repo, cleanup
* Abaplint
* Rollback js reformat
* Fix tutorial title, hotkeys
* Try resolve strange situation with PR
Co-authored-by: Lars Hvam <larshp@hotmail.com>
* Remove unused method (#3554)
* Remove unused method
* whitespace
Co-authored-by: Lars Hvam <larshp@hotmail.com>
* 1.97.0 (#3561)
* 1.97.0
whitespace
* 1.97.0
* v1.97.0
* fix for apply_order_by (#3566)
* Update zcl_abapgit_repo.clas.abap (#3570)
* 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
* Fix user settings containing invalid repo key (#3569)
* Update zcl_abapgit_persistence_user.clas.abap
* Fix dump when last repo is invalid
Co-authored-by: Lars Hvam <larshp@hotmail.com>
* UI: Fixes for dark theme (#3540)
* Add logo for dark theme
* Dark theme fixes
* Dark theme fixes
* Solve conflict
* Remove logo changes
Co-authored-by: Lars Hvam <larshp@hotmail.com>
Co-authored-by: Frederik Hudák <frederik.hudak@sap.com>
* Missing objects in overwrite confirmation popup (#3558)
* Missing objects in overwrite confirmation popup
Closes https://github.com/larshp/abapGit/issues/3550
* Unit tests
Co-authored-by: Lars Hvam <larshp@hotmail.com>
* Fix open url in repo view (#3581)
* Fix open url in repo view
* Move call_browser to gui_router
* CSS and logo fixes (#3578)
* css cleanups
* orange logo
* Revert "orange logo"
This reverts commit b9aa45bbd0.
* update font
* css improvements
* remove logo png
* re-layout page title and footer
Co-authored-by: Lars Hvam <larshp@hotmail.com>
* Html form improvements and docs (#3582)
* auto id
* fix html validation (form in ul)
* form groups
* move colors to theme
* docs for html form component
Co-authored-by: Lars Hvam <larshp@hotmail.com>
* Generate news instance (#3585)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
* Update @abaplint/cli requirement from ^2.37.2 to ^2.37.5 (#3588)
* Update eslint requirement from ^7.3.1 to ^7.4.0 (#3589)
* Improve message when no branches selectable
* Update .gitlab-ci.yml
* Fix linter issues
* Fix rebase mess up
* Enhanced Error message
* Delete .gitlab-ci.yml
Co-authored-by: Ed Wenmakers <ed.wenmakers@redwood.com>
Co-authored-by: Christian Günter <christianguenter@googlemail.com>
Co-authored-by: Lars Hvam <larshp@hotmail.com>
Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
Co-authored-by: Frederik Hudák <frederik.hudak@sap.com>
Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
Co-authored-by: Rakshith Gore <58498218+goreraks@users.noreply.github.com>
Co-authored-by: Lukáš Novák <lthenovi@gmail.com>
Co-authored-by: Alexander Tsybulsky <sbcgua@users.noreply.github.com>
Co-authored-by: Jaime Rodriguez Capote <jrodriguez@resultoconsultoria.com>
* 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>
* Use icons, add back menu to repo show page
* Event handling
* Abaplint
* Add menu to tutorial page
* Lint
* More icons
* Update tutorial, reorganize button code
* Move icon css
* Fix error
* Fix menu
* auto id
* fix html validation (form in ul)
* form groups
* move colors to theme
* docs for html form component
Co-authored-by: Lars Hvam <larshp@hotmail.com>
* css cleanups
* orange logo
* Revert "orange logo"
This reverts commit b9aa45bbd0.
* update font
* css improvements
* remove logo png
* re-layout page title and footer
Co-authored-by: Lars Hvam <larshp@hotmail.com>
* Add logo for dark theme
* Dark theme fixes
* Dark theme fixes
* Solve conflict
* Remove logo changes
Co-authored-by: Lars Hvam <larshp@hotmail.com>
Co-authored-by: Frederik Hudák <frederik.hudak@sap.com>
Main and repo are no longer one page, so the `re_render` action does not make sense anymore. `new_page_replacing` is used instead of `new_page` so you cannot navigate back to the removed repo.
* Add main menu, toggle favorites
* Make abapgit logo go to overview
* Remove favorite repo links
* Fix remember filter
* Separator between filters
* Remove unused code
* Repo overview to main page
* Fix errors
* Fix naming
* Downport js
* Add separator
* remove unrelated changes
* Fix spacing
* Add package link
* Fix orderby dumping
* Only show tutorial with no favorites
Still have to do something about empty table
* Move abapgit installation info to debug info
* Improve tutorial, resolves#3497
* Add branch switch link
* Reduce line length
* Revert temporary hack
* Working version of removing logo
* No longer show tutorial in repositories
* Code cleanup
* More cleanup, rename tutorial to page
* Fix
* Force order by favorite
* Add checkmark icons
* View repo to page, rework menu
* Fix build
* Return logo
* Fix hotkeys on repo page, rename to page
* Fix show last repo, cleanup
* Abaplint
* Rollback js reformat
* Fix tutorial title, hotkeys
* Try resolve strange situation with PR
Co-authored-by: Lars Hvam <larshp@hotmail.com>
* New method to get repo from package
If package already exists in a repo and it returns the repo and reason why the package can't be used in a new repo
* UI: If package exists in repo, nav to repo
+Online, +Offline - if repo is already versioned, navigate to repo and show message why package could not be used in new repo
Closes https://github.com/larshp/abapGit/issues/3452
Co-authored-by: Frederik Hudák <frederik.hudak@sap.com>
* Minor improvement for icons in repo view
* Add Icon Legend in "Debug Info"
A place to see available icons (will copy it to documentation).
* Pretty print
* Reverse icons in debug info
Icons are now in docs. No need for this here
Co-authored-by: Lars Hvam <larshp@hotmail.com>
* Fix incorrect status of ignored filed in repo view
After update of repo settings, some ignored files showed as "-/A".
https://github.com/larshp/abapGit/pull/3415
* Whitespace
Co-authored-by: Lars Hvam <larshp@hotmail.com>
Old logic was failing if transaction ZABAPGIT already existed - typically because it was created manually for the merged version. Testing for program ZABAPGIT would not be any better since that might have been used for the merged version as well. It's more reliable to check a class.
Co-authored-by: Lars Hvam <larshp@hotmail.com>
* Add syntax-highlighters for CSS, JS, JSON
* Update W3MI ZABAPGIT_CSS_THEME_DEFAULT
* Fix line size and case statement
* Fix line size
* Update styles, removed operators
* Added highlight for comments in HTML/XML
* Fix menu hover background
This makes the selected menu more visible.
Also includes color fix for repo name and url in dark theme.
* Fix for W3xx objects with "." in name
* Reverse fix for W3xx
* Remove hover style changes
Co-authored-by: Lars Hvam <larshp@hotmail.com>
* 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>
* Update zcl_abapgit_gui_page_stage.clas.abap
* Change to exception
* add reference to issue as comment in code
* Update zcl_abapgit_gui_page_stage.clas.abap
Co-authored-by: Lars Hvam <larshp@hotmail.com>
* Set filter for file open and save dialogs
Set the file filter dropdown and default to *.ZIP in file open and save dialogs
* Add new setting for default commit comment
New abapGit setting to define a default for the comment used for commits. Object and/or filename can added to the comment automatically, which works similar to GitHub if a single file is changed. If multiple objects are changed, then object/file count is included in the default for the comment.
* Update CLAS ZCL_ABAPGIT_GUI_PAGE_COMMIT
* Fix text for $object
Fixed case when one object with multiple files was changed
* Pretty print
Co-authored-by: Lars Hvam <larshp@hotmail.com>
* 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>
* Create pull.yml
* Update zcl_abapgit_git_transport.clas.abap
* Update zcl_abapgit_git_transport.clas.abap
* Update pull.yml
* Update pull.yml
* Delete pull.yml
* Refactored popup logic
Related to #3040
Refactoring of popup logic/calling to be able to reuse it as commit list.
* Removed reset flag
Removed reset flag cause it doesn't belong to this PR (will be readded later)
Co-authored-by: pull[bot] <39814207+pull[bot]@users.noreply.github.com>
Co-authored-by: Lars Hvam <larshp@hotmail.com>
* Introduce zcl_abapgit_gui_page_patch as subclass of zcl_abapgit_gui_page_diff
introduce pop-method on GUI stack
fix linter + raising exception when gui stack emp
introduce zcl_abapgit_gui_page_patch
more
add
fix linter
remove go back to patch after commit
fix linter
remove bookmark for stage page
remove pop
src/ui/core/zcl_abapgit_gui.clas.abap
src/zcl_abapgit_repo_online.clas.abap
* refactor: move more logic to render_line_split_ro
* refactor move logic to render_diff_head_after_stat
* add logic to render_table_head_non_unified
* extract render_table_head_unified
* extract of is_patch_possible calculation
* fix linter
* move hotkey to patch
* refactor and rename to get_normalized_fname_with_p
Co-authored-by: Lars Hvam <larshp@hotmail.com>
* Patch: Refresh object first working version
* Patch: add refresh local and refresh repo + refact
* add missing stuff
* fix lint
* refactoring and cleanup
* add missing stuff
* refactor
* refactor
* refactor
* add title for menu bar
* Save and restore scroll position
* refactoring and cleanup
* refactor
* cleanup
* cleanup
* cleanup
* remove new hotkey
* disable object refresh for non-object files
* remove restore scrollposition
* cleanup
* refactor
* cleanup
* save scroll position
* Fix: refresh of deleted objects
* Fix dump: refresh new objects
* add hotkey support for refresh all local objects
Co-authored-by: Lars Hvam <larshp@hotmail.com>
* Resize stage list to full width
* Move patch button to the top menu
* Center stage list, increase line width in repo, stage
* Repo page - Increase line height for path column
* Stage list to full size
Co-authored-by: Lars Hvam <larshp@hotmail.com>
* add proxy bypass option in settings
* add proxy bypass popup and persist settings
* add proxy bypass to proxy config class
* Fix Proxy Bypass Button HTML
* Fix indentation
* Implement Method popup_proxy_bypass
* Fix behaviour in case of empty range tab
* Fix behaviour in case of empty range tab 2
* Code selection by column on DIFF screen
Fix of #3089
Two ways to select a text:
1. Position the mouse at the start of the text, press mouse left button, keep pressed, drag to the end of the text, release the button
2. Position the mouse at the start of the text, press mouse left button, release the button, position the mouse to the end of the text, press shift key + mouse left button.
Two ways to copy the selected text:
1. Press Ctrl + C or Ctrl + Ins
2. Mouse right button on the text to display the context menu and choose Copy
SPLIT VIEW (code at the left is the LOCAL code and code at the right is the REMOTE code):
- Text can be selected only at the left side, or only at the right side.
- The dummy empty lines which show the place of lines which exist only at the other side are not copied.
UNIFIED VIEW (LOCAL and REMOTE are mixed in the same column, "green plus" lines correspond to lines only in the LOCAL code, "red minus" lines correspond to lines only in the REMOTE code.
- Only the lines from the REMOTE code are copied
PATCH VIEW (split view + one extra column on the left)
- Same features as the SPLIT VIEW
* corrections lint javascript
* merge latest abapgit changes
* corrections lint javascript
* JS refactor functions to prototyped fns (classes)
* JS lint corrections + minor last minute changes
* conform current common.js standards
* LINT conform to common.js standards
* unused lines removed
* Create pull.yml
* Update zcl_abapgit_git_transport.clas.abap
* Update zcl_abapgit_git_transport.clas.abap
* Update pull.yml
* Delete pull.yml
* Improved time conversion
Preparation for #3040
> rename time%3D>get to time%3D>get_unix
> added time conversion from unix to real (get_real)
> added unit tests for time conversion
* abapLint
* Raise cx_static_check and removed exc handling
* added a picture for pull from zip
it can then be used in guide-import-zip.md
* Fix for Issue 2922
https://github.com/larshp/abapGit/issues/2922
Added a new test method find_head_closing_tag.
Implemented fix in method zcl_abapgit_gui_html_processor->find_head_offset.
* Removed dont needed Pull_from_zip.png
Removed dont needed Pull_from_zip.png
* Restored NewLines handling in patch_html
Restored NewLines handling in patch_html
* Fixed some abapLint Warnings
Fixed some abapLint Warnings
* Fixed some abapLint messages
Fixed some abapLint messages
* Order by on repo page
* move render_cols_pec to zcl_abapgit_gui_chunk_lib
* cleanup
* cleanup
* first new working version
* fix lint
* add OrderByHelper
* add new feature clear
* rename ICON to CLEAR
* cleanup
* refactor actions
* fix typo in method name
* remove duplication
* rename render_col_spec to render_order_by_table_he
* refactor type
* fix eslint warning
* isoltate repo_tab CSS
* fix non-code and metadata files at the top
* refactor
* cleanup
* new features "diffs first" + remove clear
* refactor
* take directories into account
* cleanup
* #2725
> Bottom logo is now clickable and links to the repository page on GitHub
> New menu item 'Changelog' under 'Help' which links to the changelog.txt
Special Notes:
> Link to documentation was already implemented
> Link for menu item 'Tutorials' isn't linked to anything. But that seems to be right, because there isn't a tutorial site separated from the documentation website
* abaplint: Normalization
* Update zcl_abapgit_services_abapgit.clas.abap
* Update zcl_abapgit_services_abapgit.clas.abap
* abaplint: fix max line length error
* abaplint
* Removed "|{}|"
* command palette
* support for Ctrl; case insensitive search
* some wip
* refactor KeyNavigation
* eslint
* commandPalette key navigation improved
* last backspace hides the palette
* minor cleanups and ids
JavaGUI does not pass values of options from forms generated via
JavaScript.
This commit adds enhances the base page class to render stub forms
(empty form elements), so the page's JavaScript does not need to create
the form element on its own.
It is an optional behavior and can be enabled by redefining the method
get_events which should return table of required events and the base
page object will add the empty form elements for them. Every table line
will be converted to a form with id = "form_" + the event's name.
On the action submit SAP event in the common JavaScript, the method
checks if there is the stub form and if so, the method uses it instead
of creating the dynamic one. Otherwise, it follows the old approach that
creates the form at run-time.
--- v2
Use 'null' instead of 'undefined' to check the form was not found in
the JavaScript code.
---
Issues: #1866, #2769
* draft rewrite hint to be dynamic
* linter fixes
* remove color setting
* remove backspace and esc handling
* close dropdowns
* return some comments in JS
* linter fixes
* Fix hint for dropdown first time + alw close drdwn
* Refactoring of ZCL_ABAPGIT_ENVIRONMENT #2810
* fixes saplint issues
* fixes saplint isues
* fixes saplint issues
* fixes issue based on review
* align zcl_abapgit_objects.clas.abap to master
* add the test class again
* UI Dark Theme #2610
Proposal - Right now, only the first obvious screens were checked, and there are still a few issues with them.
* CSS cleanup of unused elements
* Improve error information - follow up Part I
- Bug: remove errorenous regex
- Add tooltip for message id and message class
* Replace text of message link
* 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
* Pass log interface for de-serialization
Interface ZIF_ABAPGIT_LOG is now passed for deseriaization API.
This includes:
- Log messages for FUGR: Imported function modules and includes
- Improved error messages for TABL compare
- Log objects w/o changes
- Log is shown in the UI if available ("Log" entry appears if a log exists, no persistence!)
This PR enhances #2534 and #2694
Another important change: In case an object fails (or a single function module in a group fails), the import continues with the next object!
* small pretty printer changes
small pretty printer changes
* fix abaplint issues
reduce line sizes and ensure 7.02 compatibility
* show errors and warnings from pull
Errors and warnings after a pull are now part of the "message list" above the object list in the main screen and will be shown immediately. The new"Log" button shows errors, warnings and success messages on demand.
The log title is now part of the ZIF_ABAPGIT_LOG interface.
* fix abaplint issue
fix abaplint issue
* New Program : Mass Transport to local zip file
Create new program ZMASSGIT in order to convert multiple tranport request to local zip files ( by giving output folder ).
Timestamped subfolder will be created in the input folder.
* Add files via upload
* Update zmassgit.prog.abap
* Add files via upload
* Add files via upload
* Delete zmassgit.prog.xml
* Delete zmassgit.prog.abap
* Add files via upload
* Add files via upload
* Add files via upload
* Add files via upload
* Delete zabapgit_masstransp2zip.fugr.lzabapgit_masstransp2zipf01.abap
* Delete zabapgit_masstransp2zip.fugr.lzabapgit_masstransp2zipf01.xml
* Delete zabapgit_masstransp2zip.fugr.lzabapgit_masstransp2zipplc.abap
* Delete zabapgit_masstransp2zip.fugr.lzabapgit_masstransp2zipplc.xml
* Delete zabapgit_masstransp2zip.fugr.lzabapgit_masstransp2zipscr.abap
* Rename zabapgit_masstransp2zip.fugr.lzabapgit_masstransp2zipscr.xml to src/zabapgit_masstransp2zip.fugr.lzabapgit_masstransp2zipscr.xml
* Rename zabapgit_masstransp2zip.fugr.lzabapgit_masstransp2ziptop.abap to src/zabapgit_masstransp2zip.fugr.lzabapgit_masstransp2ziptop.abap
* Rename zabapgit_masstransp2zip.fugr.lzabapgit_masstransp2ziptop.xml to src/zabapgit_masstransp2zip.fugr.lzabapgit_masstransp2ziptop.xml
* Rename zabapgit_masstransp2zip.fugr.saplzabapgit_masstransp2zip.abap to src/zabapgit_masstransp2zip.fugr.saplzabapgit_masstransp2zip.abap
* Rename zabapgit_masstransp2zip.fugr.saplzabapgit_masstransp2zip.xml to src/zabapgit_masstransp2zip.fugr.saplzabapgit_masstransp2zip.xml
* Rename zabapgit_masstransp2zip.fugr.xml to src/zabapgit_masstransp2zip.fugr.xml
* Rename zabapgit_masstransp2zip.fugr.z_abapgit_transports_2_zip.abap to src/zabapgit_masstransp2zip.fugr.z_abapgit_transports_2_zip.abap
* Rename zcl_abapgit_transport_mass.clas.abap to src/zcl_abapgit_transport_mass.clas.abap
* Rename zcl_abapgit_transport_mass.clas.xml to src/zcl_abapgit_transport_mass.clas.xml
* Delete zcl_abapgit_zip.clas.abap
* Delete zcl_abapgit_zip.clas.xml
* Add files via upload
* Add files via upload
* Add files via upload
* Add files via upload
* Add files via upload
* Add files via upload
* Update zcl_abapgit_zip.clas.abap
* Update zabapgit_masstransp2zip.fugr.lzabapgit_masstransp2zipf01.abap
* Update zabapgit_masstransp2zip.fugr.lzabapgit_masstransp2zipf01.abap
* Update zabapgit_masstransp2zip.fugr.lzabapgit_masstransp2zipf01.abap
* Update zcl_abapgit_transport_mass.clas.xml
* Update zcl_abapgit_transport_mass.clas.abap
* Update zabapgit_masstransp2zip.fugr.saplzabapgit_masstransp2zip.abap
* Update zabapgit_masstransp2zip.fugr.lzabapgit_masstransp2zipplc.abap
* Update zabapgit_masstransp2zip.fugr.saplzabapgit_masstransp2zip.xml
* Update zabapgit_masstransp2zip.fugr.lzabapgit_masstransp2zipplc.abap
* Update zabapgit_masstransp2zip.fugr.lzabapgit_masstransp2zipplc.abap
* Update zabapgit_masstransp2zip.fugr.saplzabapgit_masstransp2zip.abap
* New version without function group
* Cleanup
* Abaplint
* AbapLint Fixes
* Remove plugins objects from master
* Skip log flag in ZIP export
* Popup to ask the Export logic ( FULL / PREFIX ..)
* line length for abaplint
* Refactoring of code
Avoid redundancy of code and remove unused constant.
* Reduce line 50 length for abaplint ( < 120 )
* Change by the review of code
Refactoring of code
* AbapLint Fix
* log: move show functions to new class
Enhance ZIF_ABAPGIT_LOG
- add IS_ITEM structure (object) to message adding functions
- add method "add_exception"
- add method "add_info"
- relocate methods "show", "to_html" and "write" to new class ZCL_ABAPGIT_LOG_VIEWER
Introduction of new log viewer class ZCL_ABAPGIT_LOG_VIEWER
Replacement of relocated methods where used
-> This is the next step providing a log for serialzation/de-serialization (see #2534)
* fix abaplint issues
fix abaplint issues
* fix abaplint issues (2)
fix abaplint issues
* 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
* Added client check
Check if repository objects are modifiable in client. If not make write_protected setting active for all repos and make this setting disabled in repo setting page.
* fix abaplint errors
fix for abaplint errors
* code changes as suggested in review
1) Remove zcl_abapgit_client_check class
2) Add is_repo_object_changes_allowed method to zcl_abapgit_environment class
* Delete zcl_abapgit_client_check class
Delete zcl_abapgit_client_check class
* fixed error when activating on ABAP 7.02
* implemented suggestion, direct assignment instead of casting
* implemented suggestion (now using the interface)
* changed lr_popups to li_popups
* 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
* Allow access to private repos when using ADT
In case of using a private repository in ADT (aka ABAP in Eclipse), username and password are passed to the backend system. The ADT backend coding currently handles this via class ZCL_ABAPGIT_DEFAULT_AUTH_INFO. To avoid sending a password dialog in the backend system, class CL_ABAPGIT_PASSWORD_DIALOG needs to be adjusted to take over user/pw from ZCL_ABAPGIT_DEFAULT_AUTH_INFO in a generic way. I know this is not nice and it would be better to have ZCL_ABAPGIT_DEFAULT_AUTH_INFO in ZABAPGIT. Even the best solution would be to re-use ZCL_ABAPGIT_LOGIN_MANAGER instead, but I would recommend to refactor this in a new pull request later on...
* Add comment
Add comment for temporary solution and link to PR#2635
#2498 Two unit tests in ZCL_ABAPGIT_GUI_PAGE_DIFF failing
It concerns two test methods which test zcl_abapgit_gui_page_diff%3D>get_patch_data. The parameter IV_PATCH is passed with an incorrect value.
This issue is due to commit 389512f690 on Feb 26, 2019
Correction of method get_patch_data_add:
- Before: |add_patch_zcl_test_git_add_p.clas.abap_19|
- After: |patch_line_add_zcl_test_git_add_p.clas.abap_0_19|
Correction of method get_patch_data_remove:
- Before: |remove_patch_ztest_patch.prog.abap_39|
- After: |patch_line_remove_ztest_patch.prog.abap_0_39|
* Handle calls to repository URL on all pages
Call super class' for unhandled events in all classes displaying repository (identified from where-used list for zcl_abapgit_gui_chunk_lib%3D>render_repo_top).
I suppose it should be safe to add the 'super' call everywhere, but for now this will solve the bug.
* Revert "Merge branch 'unknown-action-url' into 'master'"
This reverts merge request !1
* Handle calls to repository URL on all pages
Call super class' for unhandled events in all classes displaying repository to handle URL click.
Relevant classes were identified by the where-used list for method render_repo_top in class zcl_abapgit_gui_chunk_lib.
I suppose it should be safe to add the 'super' call everywhere, but for now this will solve the bug.
* repo: do not validate sub-packages when ignored
In our landscape, we often need to version a package which has
sub-packages and those sub-packages have own repositories - the super
package provides framework and the sub-packages provides production
functionality.
When adding a new repository for these "framework" super-packages,
we need want to configure "Ignore sub-packages" because they are
already versioned in standalone repositories.
We also need to turn of the sub-package repo package check which is done
by this patch.
Dependency of #2395
* repo: allow creating with folder logic and ignore package
I need to enable users to add a new online repo with ignored
sub-packages and PREFIX folder logic because we often deal with
framework + implementations packages hierarchies.
Dependency of #2395
* repo: add folder logic and ign. sub.pkg to the new repo popup
This patch adds the parameters Folder logic and Ignore subpackages to
the new online repo popup to help us deal with old package which do not
follow the prefix approach for subpackages and to allow us to version
superpackages (which are shared by many developers) in separate
repositories.
I am not sure how to add a check-box to the popup window. I think I need
to find the right table with the righ column of the type char(1).
Closes#2395
move file_download to ui package, part of #2510
the zip class should ideally work without frontend interaction, and just provide/parse the raw xstrings, this way it can be reused across different frontend technologies
* Adding HTML new elements to BOverview Page
* Adding gitGraph CSS propertires
* Adding gitGraph scroller function
* Set gitGraph Scroller css width dynamically
* Initialize Top Horizontal Scroller on GitGraph
* Adding setGitGraphScroller() to BOverview HTML
* Fixed HTML wrong TAG
* Adding some comments
* Fixing abaplint messages
* Refactoring Indentation for Travis
* Refactoring for Travis
* Removing trailing spaces for Travis
* 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
* delete method GET_INSPECTION
delete method GET_INSPECTION, not called from anywhere
* delete class ZCL_ABAPGIT_ABAP_UNIT_TESTS
* delete class ZCL_ABAPGIT_SYNTAX_CHECK
* delete class ZCL_ABAPGIT_ADHOC_CODE_INSP
* move VARIANT to importing in RUN
instead of in the constructor
* one variable containing the name
instaed of 2 with same contents
* linting
With this commit a new user setting called 'disable octicons' is
introduced. Octicons should be disabled when the client doesn't have
internet access or the abapGit UI hangs sometimes.
By default this option isn't active.
* Changed default text in branch popup
* Downgrade to Abap 7.02 syntax
* Reduce line length of commit (for abaplint)
* Ignore files that are not in local repo
Ignore files that are not in local repo when doing transport to branch
* Changed line indent
* More indentation fixes
* 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
* Implement facade for Change Transport System
* Render lock item in VIEW_REPO
* Add jump to SE01
* Display transport on stage page
* Optimize transport read on stage page
* Error handling CTS
* Fix indentation
* Disable transport column for local packages
* Code review changes
This commit adds an indirection for function module GUI_IS_AVAILABLE
via interface ZIF_ABAPGIT_GUI_FUNCTIONS and factory ZCL_ABAPGIT_UI_FACTORY.
For tests the implementation can be replaced with
ZCL_ABAPGIT_UI_INJECTOR=>SET_GUI_FUNCTIONS
* mark inactive objects in repo list
Inactive object are marked in the repo list
The sort order for changed files is not changed
unchanged inactive files come right after the changed files
* move acitve check to object interface
* add is_active for objects up to F
* add is_active for objects up to P
* add is_active for objects up to T
* add is_active for objects up to X
all core object implement (except SSFO) the standard active check via FM RS_INACTIVE_OBJECTS_WARNING now
* add is_active to plugins bridge - always active
* finish object interface implementation + objects
* add is_active for offline with object interface
* rename returning to RV_
* use returning for serialize
* cleanup, PP, UT
* pretty print
* definitions to top of routine
* space before .
* omit parameter names where possible
* double space after if
* remove pseudo comments where possible
* enable ADT jump from CI result
* enable ADT jump from CI result for all objects
* cleanup + PP
* cleanup + PP + save/activate in ADT
* remove commented code
* 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
* Insert initial line before bothsequence and action
* Change settings boolean read to support Java GUI
Standard netweaver and Java GUI netweaver parse differently the checkboxes on HTML pages. This commit consider the value on the checkbox aseither "on" or "X".
With this commit we are able to define global hotkeys. Which means
that the hotkey is active on all pages. The global hotkeys are
defined in ZCL_ABAPGIT_GUI_PAGE=>GET_HOTKEY_ACTIONS. The first
globally defined hotkey is the hotkey overview with the default
hotkey '?' assigned to it. This was previously hard coded in the 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
TADIR performance #1756
All usages of TADIR aligned to use the same structure.
DELFLAG added in the structure.
2 identical structure definitions deleted.
todo: test this PR works after abapmerge has run
* change merge and staging
always push to the top of the currently selected branch
* remove branch and sha1 from stage object #365
* REPO not longer part of GIT_PORCELAIN
SET_OBJECTS moved to private
* and remove fields from constructor