Commit Graph

42 Commits

Author SHA1 Message Date
Christian Günter
e4b29954a4
Show implicit form hotkeys (#5132)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-11-14 07:45:44 +01:00
g-back
289f22d79d
Add Feature: Create New Branch for Commit (#5123)
* add feature: create new branch for commit

* add clarifying comments

* add check for empty branch name

* remove check box, add condense to new branch name

* add duplicate check for branch name

Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
2021-11-10 09:19:47 -05:00
Christian Günter
663320cfee
Commit page: limit comment input length (#5100)
As comment length is limited, we should only allow inputs up to that limit.
2021-11-04 06:40:19 +01:00
Marc Bernard
9fa3579739
Commit Page: Repo Header and Summary (#5087)
* Commit Page: Repo Header and Summary

- Added repo header back
- Changed summary as suggested by @sbcgua
- Adjusted display of details accordingly

* Remove var

* Revert color on details

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-11-02 14:12:53 +01:00
Marc Bernard
aa60faa299
Commit Page Update (#5048)
* Commit Page Update

Here's the redesigned commit page moving to the HTML forms you know form other dialogs (goes together with #5047 for best look).

New features:
- check of mandatory entries
- validation of email address format
- link to docs (t.b..d.)
- summary of changes on top, list of changed filed on bottom
- placeholder for body

Closes #5029

* rm > remove

* Create guide-stage-commit.md

* Add files via upload

* Update guide-stage-commit.md

* Delete commit_done.png

* Add files via upload

* Update guide-moving-package.md

* Add files via upload

* Add files via upload

* Update zcl_abapgit_gui_page_patch.clas.xml

* Update zcl_abapgit_gui_page_stage.clas.xml

* Update zcl_abapgit_gui_page_merge.clas.xml

* Update zcl_abapgit_gui_page_commit.clas.xml

* Update zcl_abapgit_gui_page_code_insp.clas.xml

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-10-25 16:12:06 +02:00
Alexander Tsybulsky
372a2ab7ae
SCI result at stage and commit pages (#5002)
* sci result at stage and commit pages

* improvements

Co-authored-by: Lars Hvam <larshp@hotmail.com>
Co-authored-by: Christian Günter <christianguenter@googlemail.com>
2021-10-09 07:04:57 +02:00
Lars Hvam
329fd9dc0e
interface and factory for ZCL_ABAPGIT_PERSIST_SETTINGS (#4882)
the old get_instance() method in ZCL_ABAPGIT_PERSIST_SETTINGS has been moved to a method in zcl_abapgit_persist_factory, plus interface added. Added to persist injector
2021-08-03 15:13:16 +02:00
Marc Bernard
1d98688be5
Dialogs: Set autofocus on first form element (#4853)
* Dialogs: Set autofocus on first form element

Improves usability. 

Closes #4816

* Autofocus for commit page

- Works in case JS is not an option

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2021-07-06 11:41:34 +02:00
Marc Bernard
b5ba5092bf
Terminology: Inclusive Language - Part 1 (#4158)
Changing "User Master Record" to "User Record"
2020-11-10 15:16:41 +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
mariusraht2
69b6c3c38a
Implementation (#4086) 2020-10-28 10:41:22 +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
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
9574dca828
html event abstraction, phase 2 (action utils usage unification) (#3902)
* action utils improvements

* page unifications

* linter
2020-09-19 11:02:01 +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
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
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
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
larshp
2d168e170b move stage structures to interface #3377 2020-05-21 07:25:54 +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
Marc Bernard
aa71ed52ae
Set filter for file open and save dialogs / Add new setting for default commit comment (#3371)
* 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>
2020-05-20 12:37:58 +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
Italo N
be9b57a0f2 Commit form should not be cleared on error (#3015)
* Commit form should not be cleared on error

* move the type definition to ZIF_ABAPGIT_DEFINITION

* Move type definition to new interface
2019-11-04 11:48:53 +01:00
Alexander Tsybulsky
1af5648e5f Diff state at stage and commit pages (#3003)
* state at stage and commit pages

* review fix
2019-10-27 11:26:59 +01:00
David Scheiklies
f4e33039d6 Add commit success message (#2979)
* New version of #2973

* Update zcl_abapgit_gui_page_commit.clas.abap
2019-10-16 21:40:17 -07:00
Lars Hvam
f88237f411
remove double spaces (#2770)
* remove double spaces

* whitespace
2019-07-02 20:54:35 -07:00
Alexander Tsybulsky
f8347636a0 GUI remove zif_abapgit_gui_page (#2582)
* remove usage of zif_abapgit_gui_page

* reorderings

* delete zif_abapgit_gui_page
2019-03-28 23:08:04 -07:00
Kjetil Kilhavn
c7f21c2a5b Unknown action url -- fix for issue #2566 (#2567)
* 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.
2019-03-27 00:03:29 -07:00
Alexander Tsybulsky
9b38d79cce GUI CORE, move constants (#2526)
* zcl_abapgit_gui constants

* renames in all classes

* zif_abapgit_html

* zif_abapgit_html related renames

* remove gui->free for now
2019-03-15 02:22:08 -07:00
Lars Hvam
f8075e77d7
add missing spaces (#1984)
* add missing spaces

* plus change the approach for this unit test
2018-10-02 16:08:43 +02:00
Johannes Konings
d25bfaf725 fix some naming conventions
https://github.com/larshp/abapGit/issues/1132
2018-08-17 09:24:22 +02:00
Christian Günter
fc1df4b9ee Introduce customizable hotkeys #1728 (#1820)
* 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
2018-08-16 06:32:03 +02:00
larshp
6044d3e7b2 move PERSIST_USER behind interface
move PERSIST_USER behind interface

will be moved to instantiate via factory in follow up PR
2018-08-13 18:34:28 +02:00
Johannes Konings
6ddd20e2b5 fix some naming convention #1132 (#1771)
* fix some naming convention

https://github.com/larshp/abapGit/issues/1132

* fix abaplint Reduce line length

https://github.com/larshp/abapGit/pull/1771
2018-08-06 13:10:03 +02:00
Lars Hvam
18573089e2
Refactor staging + git + online repo (#1769)
* 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
2018-08-06 12:55:13 +02:00
Christian Günter
ff4d126856 Vimium like link hint navigation #1706 (#1729)
* 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
2018-08-04 07:36:28 +02:00
Lars Hvam
4180373b46
Refactoring, HTML_ACTION_UTILS #1710 (#1720)
* DBCONTENT_DECODE to ZCL_ABAPGIT_GUI_PAGE_DB_EDIT

* PARSE_COMMIT_REQUEST to ZCL_ABAPGIT_GUI_PAGE_COMMI
2018-07-30 16:33:52 +02:00
Christian Günter
e4c1de4732 Default committer name and e-mail from SU01 (#1310)
* Default committer name and e-mail from SU01

* Refactoring: introduce get_name and get_email meth
2018-04-18 19:57:24 +02:00
Lars Hvam
68d0571516
More classes to global (#1209)
* 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
2018-02-17 12:40:54 +01:00