Skip to content

Commit e343ebd

Browse files
committed
Send draft content on enhanced/unenhanced.
1 parent 525ab07 commit e343ebd

File tree

2 files changed

+17
-10
lines changed

2 files changed

+17
-10
lines changed

src/entrypoints/content.ts

Lines changed: 11 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -20,19 +20,26 @@ function detectLocation(): StrippedLocation {
2020
return result
2121
}
2222

23-
function sendEventToBackground(type: 'ENHANCED' | 'DESTROYED', spot: CommentSpot): void {
23+
function sendEventToBackground(
24+
type: 'ENHANCED' | 'DESTROYED',
25+
spot: CommentSpot,
26+
draft: string,
27+
): void {
2428
const message: CommentEvent = {
29+
draft,
2530
spot,
2631
type,
2732
}
2833
browser.runtime.sendMessage(message).catch((error) => {
29-
logger.debug('Failed to send event to background:', error)
34+
logger.error('Failed to send event to background:', error)
3035
})
3136
}
3237

3338
enhancedTextareas.setEventHandlers(
34-
(spot) => sendEventToBackground('ENHANCED', spot),
35-
(spot) => sendEventToBackground('DESTROYED', spot),
39+
(textareaInfo) =>
40+
sendEventToBackground('ENHANCED', textareaInfo.spot, textareaInfo.textarea.value),
41+
(textareaInfo) =>
42+
sendEventToBackground('DESTROYED', textareaInfo.spot, textareaInfo.textarea.value),
3643
)
3744

3845
export default defineContentScript({

src/lib/registries.ts

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -101,26 +101,26 @@ export class EnhancerRegistry {
101101

102102
export class TextareaRegistry {
103103
private textareas = new Map<HTMLTextAreaElement, EnhancedTextarea>()
104-
private onEnhanced?: (spot: CommentSpot) => void
105-
private onDestroyed?: (spot: CommentSpot) => void
104+
private onEnhanced?: (textareaInfo: EnhancedTextarea) => void
105+
private onDestroyed?: (textareaInfo: EnhancedTextarea) => void
106106

107107
setEventHandlers(
108-
onEnhanced: (spot: CommentSpot) => void,
109-
onDestroyed: (spot: CommentSpot) => void,
108+
onEnhanced: (textareaInfo: EnhancedTextarea) => void,
109+
onDestroyed: (textareaInfo: EnhancedTextarea) => void,
110110
): void {
111111
this.onEnhanced = onEnhanced
112112
this.onDestroyed = onDestroyed
113113
}
114114

115115
register<T extends CommentSpot>(textareaInfo: EnhancedTextarea<T>): void {
116116
this.textareas.set(textareaInfo.textarea, textareaInfo)
117-
this.onEnhanced?.(textareaInfo.spot)
117+
this.onEnhanced?.(textareaInfo)
118118
}
119119

120120
unregisterDueToModification(textarea: HTMLTextAreaElement): void {
121121
const textareaInfo = this.textareas.get(textarea)
122122
if (textareaInfo) {
123-
this.onDestroyed?.(textareaInfo.spot)
123+
this.onDestroyed?.(textareaInfo)
124124
this.textareas.delete(textarea)
125125
}
126126
}

0 commit comments

Comments
 (0)