From 81cf14d4d756793e2e1a7b9338fb0c71f4dfd18f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Christian=20G=C3=BCnter?= Date: Fri, 5 May 2023 13:20:08 +0200 Subject: [PATCH] Add warning banner if wrong browser control is used (#6260) --- src/ui/pages/zcl_abapgit_gui_page.clas.abap | 29 +++++++++++++++++++++ src/ui/zabapgit_css_common.w3mi.data.css | 5 ++++ src/ui/zabapgit_js_common.w3mi.data.js | 9 ++++++- 3 files changed, 42 insertions(+), 1 deletion(-) diff --git a/src/ui/pages/zcl_abapgit_gui_page.clas.abap b/src/ui/pages/zcl_abapgit_gui_page.clas.abap index 4f47eee3a..b4e50e3a3 100644 --- a/src/ui/pages/zcl_abapgit_gui_page.clas.abap +++ b/src/ui/pages/zcl_abapgit_gui_page.clas.abap @@ -74,6 +74,11 @@ CLASS zcl_abapgit_gui_page DEFINITION PUBLIC ABSTRACT !ii_html TYPE REF TO zif_abapgit_html RAISING zcx_abapgit_exception . + METHODS render_browser_control_warning + IMPORTING + !ii_html TYPE REF TO zif_abapgit_html + RAISING + zcx_abapgit_exception . METHODS render_command_palettes IMPORTING !ii_html TYPE REF TO zif_abapgit_html @@ -289,6 +294,27 @@ CLASS zcl_abapgit_gui_page IMPLEMENTATION. ENDMETHOD. + METHOD render_browser_control_warning. + + DATA li_documentation_link TYPE REF TO zif_abapgit_html. + + CREATE OBJECT li_documentation_link TYPE zcl_abapgit_html. + + li_documentation_link->add_a( + iv_txt = 'Documentation' + iv_typ = zif_abapgit_html=>c_action_type-url + iv_act = 'https://docs.abapgit.org/guide-sapgui.html#sap-gui-for-windows' ). + + ii_html->add( '
' ). + ii_html->add( zcl_abapgit_gui_chunk_lib=>render_warning_banner( + |Attention: You use Edge browser control. | + && |There are several known malfunctions. See | + && li_documentation_link->render( ) ) ). + ii_html->add( '
' ). + + ENDMETHOD. + + METHOD scripts. CREATE OBJECT ri_html TYPE zcl_abapgit_html. @@ -299,6 +325,7 @@ CLASS zcl_abapgit_gui_page IMPLEMENTATION. render_link_hints( ri_html ). render_command_palettes( ri_html ). + ri_html->add( |toggleBrowserControlWarning();| ). ENDMETHOD. @@ -339,6 +366,8 @@ CLASS zcl_abapgit_gui_page IMPLEMENTATION. ri_html->add( '' ). ENDIF. + render_browser_control_warning( ri_html ). + ri_html->add( '' ). ENDMETHOD. diff --git a/src/ui/zabapgit_css_common.w3mi.data.css b/src/ui/zabapgit_css_common.w3mi.data.css index f6270758d..9cddf4473 100644 --- a/src/ui/zabapgit_css_common.w3mi.data.css +++ b/src/ui/zabapgit_css_common.w3mi.data.css @@ -1498,3 +1498,8 @@ table.unit_tests { padding-left: 0; border-left: none; } + +/* Warning if wrong browser control is used */ +.browser-control-warning { + width: 100%; +} diff --git a/src/ui/zabapgit_js_common.w3mi.data.js b/src/ui/zabapgit_js_common.w3mi.data.js index 399ff334f..82db02e67 100644 --- a/src/ui/zabapgit_js_common.w3mi.data.js +++ b/src/ui/zabapgit_js_common.w3mi.data.js @@ -28,6 +28,7 @@ /* exported enumerateUiActions */ /* exported onDiffCollapse */ /* exported restoreScrollPosition */ +/* exported toggleBrowserControlWarning */ /********************************************************** * Polyfills @@ -2482,4 +2483,10 @@ function toggleSticky() { } else { header.classList.remove(stickyClass); } -} \ No newline at end of file +} + +function toggleBrowserControlWarning(){ + if (!navigator.userAgent.includes("Edg")){ + document.getElementById("browser-control-warning").style.display = "none"; + } +}