Commit 8e34c2e
authored
feat: revamp infoview options and actions (#606)
This PR revamps the option and action UX of the InfoView. This work is
motivated by several reports from users that they never knew that
certain InfoView functionality existed, and intends to make these
features more discoverable. Closes #592.
Specifically, the following adjustments are made:
- The filter menu was difficult to discover and users had trouble
finding the 'reverse tactic state' functionality. To improve this, all
goal state settings have been moved into a single 'Settings' menu that
uses a standard cog icon, which should hopefully be much more
recognizable.
- All goal state settings are now also available in the 'Settings'
submenu of the InfoView context menu.
- The 'Unselect All' context menu entry is now only visible when there
is something to be unselected, as is the case for other context menu
entries.
- All goal state settings can be persisted to the VS Code user settings
with a context menu action or a button in the settings menu. Clients
that do not support this functionality can hide the button in the
settings menu by hiding the elements with `saveConfigButton` and
`saveConfigLineBreak` classes.
- The `reverseTacticState`, `showGoalNames` and `emphasizeFirstGoal`
settings have been made available in the InfoView goal state settings
menu.
- All InfoView actions have been made available in the context menu.
- The 'Copy to comment' and 'Copy to clipboard' actions have been
removed. As of
[vscode#206529](microsoft/vscode#206529),
copying from VS Code webviews should work correctly out-of-the-box, so
there is no need for these additional buttons that may unnecessarily
complicate the UI anymore.
- The 'Refresh' action has been adjusted so that it is only displayed
when the InfoView is paused to explicitly hint at the fact that it can
be used to refresh the goal state while the InfoView is paused. Many
users used to think that this was just the "Retry if InfoView is broken"
button, which is practically never necessary.
- The tooltips of all InfoView icons have been adjusted to be a bit more
descriptive.
- The `lean4.infoview.showExpectedType` setting has been deprecated in
favor of the new `lean4.infoview.expectedTypeVisibility` setting, which
allows hiding the expected type section entirely, as this section was
reported to be confusing for students in a teaching environment.
<details>
<summary>Adjusted InfoView UI (Click to open)</summary>

</details>
<details>
<summary>New settings menu (Click to open)</summary>

</details>
<details>
<summary>New InfoView context menu (Click to open)</summary>

</details>1 parent d310b9c commit 8e34c2e
File tree
14 files changed
+950
-185
lines changed- lean4-infoview-api
- src
- lean4-infoview
- src/infoview
- vscode-lean4
- src
- test/suite
- info
- simple
14 files changed
+950
-185
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | 1 | | |
2 | 2 | | |
3 | | - | |
| 3 | + | |
4 | 4 | | |
5 | 5 | | |
6 | 6 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
7 | 7 | | |
8 | 8 | | |
9 | 9 | | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
| 22 | + | |
| 23 | + | |
| 24 | + | |
| 25 | + | |
| 26 | + | |
10 | 27 | | |
11 | 28 | | |
12 | 29 | | |
| |||
15 | 32 | | |
16 | 33 | | |
17 | 34 | | |
| 35 | + | |
| 36 | + | |
18 | 37 | | |
19 | 38 | | |
20 | 39 | | |
| |||
77 | 96 | | |
78 | 97 | | |
79 | 98 | | |
80 | | - | |
81 | | - | |
82 | | - | |
83 | | - | |
84 | | - | |
85 | | - | |
86 | | - | |
87 | | - | |
88 | | - | |
89 | | - | |
90 | | - | |
91 | 99 | | |
92 | 100 | | |
93 | 101 | | |
94 | 102 | | |
95 | | - | |
| 103 | + | |
96 | 104 | | |
97 | 105 | | |
98 | 106 | | |
| 107 | + | |
| 108 | + | |
| 109 | + | |
| 110 | + | |
99 | 111 | | |
100 | 112 | | |
101 | 113 | | |
| |||
108 | 120 | | |
109 | 121 | | |
110 | 122 | | |
111 | | - | |
| 123 | + | |
| 124 | + | |
| 125 | + | |
| 126 | + | |
| 127 | + | |
| 128 | + | |
| 129 | + | |
| 130 | + | |
| 131 | + | |
| 132 | + | |
| 133 | + | |
| 134 | + | |
| 135 | + | |
| 136 | + | |
| 137 | + | |
| 138 | + | |
| 139 | + | |
| 140 | + | |
| 141 | + | |
| 142 | + | |
| 143 | + | |
| 144 | + | |
| 145 | + | |
| 146 | + | |
| 147 | + | |
| 148 | + | |
| 149 | + | |
| 150 | + | |
| 151 | + | |
112 | 152 | | |
113 | 153 | | |
114 | 154 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | 1 | | |
2 | 2 | | |
3 | | - | |
| 3 | + | |
4 | 4 | | |
5 | 5 | | |
6 | 6 | | |
| |||
49 | 49 | | |
50 | 50 | | |
51 | 51 | | |
52 | | - | |
| 52 | + | |
53 | 53 | | |
54 | 54 | | |
55 | 55 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
26 | 26 | | |
27 | 27 | | |
28 | 28 | | |
29 | | - | |
| 29 | + | |
30 | 30 | | |
31 | 31 | | |
32 | 32 | | |
33 | 33 | | |
34 | 34 | | |
35 | 35 | | |
36 | 36 | | |
37 | | - | |
| 37 | + | |
| 38 | + | |
| 39 | + | |
| 40 | + | |
| 41 | + | |
| 42 | + | |
38 | 43 | | |
39 | 44 | | |
40 | 45 | | |
41 | | - | |
| 46 | + | |
42 | 47 | | |
43 | 48 | | |
44 | 49 | | |
| |||
0 commit comments