Skip to content

Commit d325dd1

Browse files
committed
added VIew locaiton context #29 #22
1 parent eac383e commit d325dd1

1 file changed

Lines changed: 95 additions & 0 deletions

File tree

.context/features/issue-29.md

Lines changed: 95 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -48,6 +48,101 @@ The codebase is well-structured with all necessary foundations in place.
4848
- L No `reveal()` method available on built-in Outline view
4949
- L No event listeners for cursor position tracking
5050

51+
---
52+
53+
## View Location Strategy: Three Approaches
54+
55+
### Approach A: Built-in Outline View (Original - Limited)
56+
57+
**What it is:**
58+
- Uses `DocumentSymbolProvider` API
59+
- Appears in VS Code's built-in "Outline" panel (bottom of Explorer sidebar)
60+
61+
**Pros:**
62+
- ✅ Standard location, integrates with breadcrumbs
63+
- ✅ Minimal code required
64+
65+
**Cons:**
66+
-**Cannot programmatically highlight current section**
67+
- ❌ No `reveal()` method to auto-scroll
68+
69+
**Status:** Already in codebase, lacks highlighting.
70+
71+
---
72+
73+
### Approach B: Explorer View Section (Current ✅)
74+
75+
**What it is:**
76+
- Custom `TreeView` section within Explorer sidebar
77+
- Appears in EXPLORER tab alongside file tree, Outline, Timeline
78+
79+
**Visual:**
80+
```
81+
EXPLORER (📁 tab)
82+
├─ OPEN EDITORS
83+
├─ OUTLINE (built-in)
84+
├─ CODE ORGANIZER ← Your section
85+
```
86+
87+
**Pros:**
88+
-**Full highlighting with `treeView.reveal()`**
89+
- ✅ Auto-scroll to current section
90+
- ✅ Familiar location, minimal UI footprint
91+
92+
**Cons:**
93+
- ⚠️ Shares space with other extensions
94+
95+
**Examples:** Todo Tree, GitLens, Bookmarks
96+
97+
**Status:****Currently implemented**.
98+
99+
---
100+
101+
### Approach C: Custom Activity Bar Tab
102+
103+
**What it is:**
104+
- Own top-level tab with dedicated icon
105+
- Like "TODOS" tab from Todo Tree
106+
107+
**Visual:**
108+
```
109+
Activity Bar:
110+
├─ 📁 EXPLORER
111+
├─ 🔍 SEARCH
112+
├─ 🗂️ CODE ORGANIZER ← Your own tab
113+
```
114+
115+
**Pros:**
116+
- ✅ Dedicated, prominent location
117+
- ✅ No competition for space
118+
- ✅ Room to grow (settings, stats, etc.)
119+
120+
**Cons:**
121+
- ❌ Takes activity bar slot
122+
- ❌ Less discoverable
123+
124+
**Examples:** Todo Tree ("TODOS" tab), GitLens
125+
126+
**Status:** Not implemented.
127+
128+
---
129+
130+
### Decision Matrix
131+
132+
| Criteria | Outline (A) | Explorer (B) | Custom Tab (C) |
133+
|----------|-------------|--------------|----------------|
134+
| Highlighting | ❌ No | ✅ Yes | ✅ Yes |
135+
| Auto-scroll | ❌ No | ✅ Yes | ✅ Yes |
136+
| Discoverability | ✅ High | ✅ High | ⚠️ Medium |
137+
| UI Footprint | ✅ Minimal | ✅ Minimal | ⚠️ Medium |
138+
| Separation | ⚠️ Shared | ⚠️ Shared | ✅ Separate |
139+
| Complexity | ✅ Simple | ✅ Simple | ⚠️ Moderate |
140+
| Current Status | Exists |**Active** | Not impl. |
141+
142+
**Current: Approach B (Explorer Section)** - Provides highlighting, minimal footprint, can upgrade later.
143+
144+
---
145+
51146
## Approach: Hybrid (Custom TreeView + Editor Decorations)
52147

53148
Add custom TreeView with full highlighting control alongside existing DocumentSymbolProvider.

0 commit comments

Comments
 (0)