forgejo/templates/repo
Yarden Shoham 5ddf67a9c2
Make issue meta dropdown support Enter, confirm before reloading (#23014) (#23102)
Backport #23014

As the title. Label/assignee share the same code.

* Close #22607
* Close #20727

Also:

* partially fix for #21742, now the comment reaction and menu work with
keyboard.
* partially fix for #17705, in most cases the comment won't be lost.
* partially fix for #21539
* partially fix for #20347
* partially fix for #7329

### The `Enter` support

Before, if user presses Enter, the dropdown just disappears and nothing
happens or the window reloads.

After, Enter can be used to select/deselect labels, and press Esc to
hide the dropdown to update the labels (still no way to cancel ....
maybe you can do a Cmd+R or F5 to refresh the window to discard the
changes .....)


This is only a quick patch, the UX is still not perfect, but it's much
better than before.


### The `confirm` before reloading

And more fixes for the `reload` problem, the new behaviors:

* If nothing changes (just show/hide the dropdown), then the page won't
be reloaded.
* If there are draft comments, show a confirm dialog before reloading,
to avoid losing comments.

That's the best effect can be done at the moment, unless completely
refactor these dropdown related code.

Screenshot of the confirm dialog:

<details>


![image](https://user-images.githubusercontent.com/2114189/220538288-e2da8459-6a4e-43cb-8596-74057f8a03a2.png)

</details>

Co-authored-by: wxiaoguang <wxiaoguang@gmail.com>
Co-authored-by: Brecht Van Lommel <brecht@blender.org>
Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com>
2023-02-24 17:40:36 +08:00
..
actions Move helpers to be prefixed with gt- (#22879) 2023-02-13 17:59:59 +00:00
branch add margin top to the top of branches (#23002) 2023-02-21 13:03:44 +08:00
cite Copy citation file content, in APA and BibTex format, on repo home page (#19999) 2022-11-11 18:02:50 +01:00
diff Improve PR Review Box UI (#22986) 2023-02-21 21:36:53 +08:00
editor Fix commit name in Apply Patch page (#23086) (#23099) 2023-02-24 08:47:35 +08:00
find Refactor hiding-methods, remove jQuery show/hide, remove .hide class, remove inline style=display:none (#22950) 2023-02-19 12:06:14 +08:00
graph Add context cache as a request level cache (#22294) 2023-02-15 21:37:34 +08:00
issue Make issue meta dropdown support Enter, confirm before reloading (#23014) (#23102) 2023-02-24 17:40:36 +08:00
migrate Refactor hiding-methods, remove jQuery show/hide, remove .hide class, remove inline style=display:none (#22950) 2023-02-19 12:06:14 +08:00
projects Scoped labels (#22585) 2023-02-18 21:17:39 +02:00
pulls Always go full width in PR view (#22844) 2023-02-16 13:25:00 -06:00
release Add context cache as a request level cache (#22294) 2023-02-15 21:37:34 +08:00
settings Refactor hiding-methods, remove jQuery show/hide, remove .hide class, remove inline style=display:none (#22950) 2023-02-19 12:06:14 +08:00
wiki Refactor hiding-methods, remove jQuery show/hide, remove .hide class, remove inline style=display:none (#22950) 2023-02-19 12:06:14 +08:00
activity.tmpl Add main landmark to templates and adjust titles (#22670) 2023-02-01 22:56:10 +00:00
blame.tmpl Refactor hiding-methods, remove jQuery show/hide, remove .hide class, remove inline style=display:none (#22950) 2023-02-19 12:06:14 +08:00
branch_dropdown.tmpl Refactor hiding-methods, remove jQuery show/hide, remove .hide class, remove inline style=display:none (#22950) 2023-02-19 12:06:14 +08:00
clone_buttons.tmpl Move helpers to be prefixed with gt- (#22879) 2023-02-13 17:59:59 +00:00
clone_script.tmpl Make clone URL use current page's host (#22808) 2023-02-09 17:29:13 +08:00
commit_page.tmpl Use gt-relative class instead of the ambiguous gt-pr class (#23008) 2023-02-20 19:16:56 -05:00
commit_status.tmpl Change commit status icons to SVG (#20736) 2022-08-09 23:55:29 +02:00
commit_statuses.tmpl Fix hidden commit status on multiple checks (#22889) 2023-02-20 16:43:04 +08:00
commits.tmpl Move helpers to be prefixed with gt- (#22879) 2023-02-13 17:59:59 +00:00
commits_list.tmpl Refactor hiding-methods, remove jQuery show/hide, remove .hide class, remove inline style=display:none (#22950) 2023-02-19 12:06:14 +08:00
commits_list_small.tmpl Refactor hiding-methods, remove jQuery show/hide, remove .hide class, remove inline style=display:none (#22950) 2023-02-19 12:06:14 +08:00
commits_table.tmpl Move helpers to be prefixed with gt- (#22879) 2023-02-13 17:59:59 +00:00
create.tmpl Refactor hiding-methods, remove jQuery show/hide, remove .hide class, remove inline style=display:none (#22950) 2023-02-19 12:06:14 +08:00
create_helper.tmpl Add templates to customize text when creating and migrating repositories 2023-01-24 22:36:48 -05:00
empty.tmpl Add main landmark to templates and adjust titles (#22670) 2023-02-01 22:56:10 +00:00
file_info.tmpl Move helpers to be prefixed with gt- (#22879) 2023-02-13 17:59:59 +00:00
forks.tmpl Add context cache as a request level cache (#22294) 2023-02-15 21:37:34 +08:00
graph.tmpl Refactor hiding-methods, remove jQuery show/hide, remove .hide class, remove inline style=display:none (#22950) 2023-02-19 12:06:14 +08:00
header.tmpl Move helpers to be prefixed with gt- (#22879) 2023-02-13 17:59:59 +00:00
home.tmpl Improve PR Review Box UI (#22986) 2023-02-21 21:36:53 +08:00
icon.tmpl Move helpers to be prefixed with gt- (#22879) 2023-02-13 17:59:59 +00:00
packages.tmpl Add main landmark to templates and adjust titles (#22670) 2023-02-01 22:56:10 +00:00
search.tmpl Remove Fomantic-UI's .hidden CSS class for menu elements (#22895) 2023-02-14 19:53:54 +08:00
shabox_badge.tmpl Fix shabox regression (#22924) 2023-02-16 09:37:11 +08:00
sub_menu.tmpl Refactor hiding-methods, remove jQuery show/hide, remove .hide class, remove inline style=display:none (#22950) 2023-02-19 12:06:14 +08:00
unicode_escape_prompt.tmpl Move helpers to be prefixed with gt- (#22879) 2023-02-13 17:59:59 +00:00
upload.tmpl Refactor i18n to locale (#20153) 2022-06-27 15:58:46 -05:00
user_cards.tmpl Add context cache as a request level cache (#22294) 2023-02-15 21:37:34 +08:00
view_file.tmpl Refactor hiding-methods, remove jQuery show/hide, remove .hide class, remove inline style=display:none (#22950) 2023-02-19 12:06:14 +08:00
view_list.tmpl Add wrapper to author to avoid long name ui problem (#23030) (#23098) 2023-02-24 10:45:18 +08:00
watchers.tmpl Add main landmark to templates and adjust titles (#22670) 2023-02-01 22:56:10 +00:00