Commit Graph

85 Commits

Author SHA1 Message Date
Marc Bernard
a37cf58e01
Refactor: Jump to Object Logic (#5114)
* Refactor: Jump to Object Logic

The goal is to greatly simplify the code to jump to an object, and to separate UI and object layers some more.

This PR introduces GUI Jumper (`zcl/if_abapgit_gui_jumper`), which covers all generic options to show an object. It tries the following options in order:
- ADT (if enabled)
- Workbench with line number
- Workbench without line number
- Transport System (new)

Only if all fail, abapGit will call the object-specific handler. 

Next steps:

- Remove `jump_adt` and `jump_se11` from `zcl_abapgit_objects_super` and replace by GUI Jumper
- Remove almost all object-specific jump handler since they are covered by GUI Jumper now

* Add class

* Lint

* Misleading name
2021-11-07 08:15:08 +01:00
Marc Bernard
9f689e4e4f
Title case for hotkey descriptions (#5113)
Closes #5089
2021-11-05 17:22:37 +01:00
Christian Günter
53343a98d6
Files: Introduce secondary keys (#5101)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-11-05 05:32:39 +01:00
Lars Hvam
e45bdfc4e4
unit testing updates (#5080)
* wip, unit testing

* refactor popup

* update abaplint

* transpile additional classes

* all data classes

* all git

* update

* fix

* change type

* all gui

* all http

* ZCL_ABAPGIT_USER_RECORD

* all zlib

* all exceptions

* all xml

* all html

* all html zif

* all gui zif

* all xml zif

* all repo zif

* more generic

* star

* zif_abapgit_longtexts

* sort

* zcl_abapgit_news

* zcl_abapgit_adt_link

* ZCL_ABAPGIT_DIFF

* more

* add zcl_abapgit_services_git
2021-11-02 16:50:30 +01:00
Christian Günter
fea99f89ab
Page patch: fix mixed-up tooltips (#5065) 2021-10-27 17:11:44 +02:00
Marc Bernard
679f2050b0
Diff and Patch Pages Update (#5056)
* Diff and Patch Pages Update

- Fix refresh of a single file on diff page (it was displaying all diffs afterwards)
- Add some hotkey assignments
- Replace "Refresh" after filename with icon

normal:

hover:

* Local refresh on patch page

* Update zcl_abapgit_gui_page_patch.clas.abap

* Patch page: Add js for refresh all hotkey

Co-authored-by: Christian Günter <christianguenter@googlemail.com>
2021-10-27 07:28:17 +02:00
Christian Günter
a8e7518348
enable command palette for Diff/Patch/Stage (#5040)
* enable command palette for Diff/Patch

* enable command palette for Stage

Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
2021-10-18 15:06:34 -04:00
Christian Günter
bf5634d243
Diff/Patch: Split view - enable line hover (#5039)
* patch page: enable line hover

* improve CSS + enable for unified

* add more CSS classes to table rows
2021-10-18 15:00:25 -04:00
Christian Günter
4ce32ba7a6
Diff-page: enable refresh functions (#4992)
* Diff-page: Enable refresh functions

* cleanup

* Diff: add refresh local hotkey

* Rename 'Refresh' to 'Refresh All'

Co-authored-by: Alexander Tsybulsky <sbcgua@users.noreply.github.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>
2021-10-09 07:06:55 +02:00
Frederik Hudák
bd1ffd1f2e
Add pull and diff buttons to main page (#5021)
* Add more action buttons to main page

* Fix line length
2021-10-06 19:36:39 +02:00
Jacek W
8afae74228
Add "Only my changes" option (#4748)
New option "Only my changes" in "Filter" menu in "Diff" page for showing only changes for the current user.
2021-05-12 18:13:26 +02:00
Frederik Hudák
50bd3941e0
Change default width of abapgit (#4751)
* Change default width of abapgit

* Center settings forms
2021-05-12 18:10:33 +02:00
Christian Günter
d7e43fc0b9
Diff calculation: improve performance (#4603)
* Diff calculation improve performance

* optimize table access

Co-authored-by: Christian Günter <Christian.Guenter@zuerich.ch>
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-03-07 12:25:10 +01:00
Alexander Tsybulsky
17eac7b6c3
Strip XML details user exit (#4599)
* exit draft

* call exit

* linter fix

* PRE_CALCULATE_REPO_STATUS docs

* settings UI

* wire status calculation and repo settings

* uppercase

* diff rendering fix

* adjust docs

* adjust docs

* Remove settings

* more docs adjustments

* pass repo meta data into the exit

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-03-06 09:35:35 +01:00
Marc Bernard
07cdc0e0e8
Resolve circular reference in /syntax/ (#4292)
Closes #4258

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2020-12-07 09:13:58 +01:00
Marc Bernard
7f61ebd645
UI: Clear progress bar (#4249)
* 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>
2020-11-27 10:18:52 +01:00
Marc Bernard
5df956a37a
Toggle display of hidden characters on diff page (#4136)
* Toggle display of hidden characters on diff page

Time for something new...

I added a toggle switch to the diff page that allows you to show otherwise hidden characters.
- CR end-of-line 
- Spaces
- Tabs
- Byte-order-mark

Closes https://github.com/abapGit/abapGit/issues/2124
Closes https://github.com/abapGit/abapGit/issues/3676
Improves https://github.com/abapGit/abapGit/issues/2804

* Add ini

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2020-11-07 09:54:38 +01:00
Marc Bernard
666dfbda66
UI: Unify rendering of branch, package, transport, user names (#4097)
* 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>
2020-10-30 10:13:09 +01:00
Marc Bernard
5d480d8e8d
Fix jump links on diff page (#4096)
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>
2020-10-30 10:01:42 +01: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
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
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
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
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
Frederik Hudák
a824368a4e
Add top repo menu to more pages (#3764)
* Add top repo menu to more pages

- diff, patch
- syntax check, code inspector
- repo settings

* Add to syntax check page, add margin

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2020-08-22 09:53:35 +02:00
Frederik Hudák
f5052cf0b6
Use title case in page titles, menus, forms (#3765)
* 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
2020-08-22 09:50:10 +02:00
Christian Günter
dfc19fe718
Patch for staged files only (#3730)
* Allow Hotkeys on helper object

* Patch for staged files only

* cleanup

* fix linter

* Fix: refresh on page patch keeps sel. files

* Fix: Diff and Patch shd appear when only rem. Chg.

* fix linter

* clarify stage helper object in JS
2020-08-13 08:48:27 +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
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
Marc Bernard
aa204c1e8f
Map blank "last changed by" to "unknown" (#3387)
* Map blank "last changed by" to "unknown" 

Fix blank entry in filter dropdown

* Whitespace
2020-05-22 10:02:33 +02:00
Alexander Tsybulsky
8eae18c0f5
Gui refactoring part 4 (#3362)
* refactoring and remove get_events from gui_page

* cleanups

* more cleanups

* register_deferred_script

* refactor page_stage

* refactor page_diff

* refactor page_commit

* refactor page_debuginfo

* linter fixes

* refactor page_tag

* refactor rage_repo_over

* refactor page_patch

* make gui_page->scripts private
2020-05-20 17:50:00 +02:00
Christian Günter
48454c5922
fix page diff dump: use repo instead of repo_online (#3304)
* fix page diff dump: use repo instead of repo_onlin

* make repo online an attribute
2020-04-14 18:57:21 +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
Christian Günter
803ca23176
Refactor page diff: Introduce subclass for patch (#3283)
* 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>
2020-03-31 17:14:13 +02:00
Christian Günter
1e4560b32a
Patch: new refresh functions (#3271)
* 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>
2020-03-26 12:30:22 +01: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
larshp
e638e6065a ZCL_ABAPGIT_GUI_PAGE_DIFF propagate exception 2020-03-10 08:17:12 +01:00
Jaime Rodriguez Capote
543114963f
abapOpenCheck - Naming Conventions revision #3239 (#3240)
* abapOpenChecks config file

* Ignore SCI config folder

* checks revision

* Revert "checks revision"

This reverts commit 56a12289df.

* Renaming non-constants

Pending:

* Remove SCI configuration

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2020-03-09 17:34:26 +01:00
Christian Günter
cec926e954
Diff: Only add beacon at beginning while patching (#3218) 2020-02-20 16:43:02 +01:00
Christian Günter
a8d474fab4
Patch: add path to jump target (#3216)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2020-02-20 09:39:56 +01:00
Christian Günter
1668e670cf
Fix patch: multiple files with same name (#3213)
- unify id generation
- generate unique filenames

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2020-02-19 14:24:04 +01:00
Christian Günter
109c8c3be4
Patch: Remember patched lines when cancel Commit (#3212)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2020-02-19 13:55:19 +01:00
Christian Günter
5067e403b7
Patch: add beacon at beginning of objects (#3210)
* Patch: add beacon at beginning of objects

* extract constant + fix unit test
2020-02-19 12:48:26 +01:00
Christian Guenter
bae1e21c5b Refactoring: Delete unused variables 2020-01-13 18:41:52 +01:00
Lars Hvam
75812fb17b
less prefixes (#3144) 2020-01-11 09:24:36 +01:00
Lars Hvam
e201bf566f
remove class prefixes if its current class (#3137)
* remove class prefixes if its current class

* Update abaplint.json
2020-01-06 13:20:19 +01:00
Lars Hvam
b42f3bc485
Refactoring (#3134)
* fully type constants

* moving to single line

* move to single line

* enable keep_single_parameter_on_one_line
2019-12-28 12:11:32 +01:00
Frederik Hudák
c846801d19 Add adt link to objects on diff page (#3095)
* Add adt link to object name on diff page

* Fix abaplint, improve error handling

* abaplint

* Remove superflous method
2019-12-05 08:59:15 +01:00