@@ -2,7 +2,11 @@ import React, { useState, useRef, useCallback, useEffect } from 'react'
2
2
import { getBoostHubTeamPageUrl } from '../../lib/boosthub'
3
3
import styled from '../../lib/styled'
4
4
import { DidNavigateInPageEvent , DidNavigateEvent } from 'electron'
5
- import { openContextMenu } from '../../lib/electronOnly'
5
+ import {
6
+ openContextMenu ,
7
+ addIpcListener ,
8
+ removeIpcListener ,
9
+ } from '../../lib/electronOnly'
6
10
import { usePreferences } from '../../lib/preferences'
7
11
import { osName } from '../../lib/platform'
8
12
import {
@@ -92,12 +96,64 @@ const BoostHubTeamsShowPage = ({
92
96
return
93
97
}
94
98
95
- const handler = ( ) => {
99
+ const toggleSettingsHandler = ( ) => {
96
100
webviewControlRef . current ! . sendMessage ( 'toggle-settings' )
97
101
}
98
- boostHubToggleSettingsEventEmitter . listen ( handler )
102
+ boostHubToggleSettingsEventEmitter . listen ( toggleSettingsHandler )
103
+
104
+ const newNoteHandler = ( ) => {
105
+ webviewControlRef . current ! . sendMessage ( 'new-note' )
106
+ }
107
+ const newFolderHandler = ( ) => {
108
+ webviewControlRef . current ! . sendMessage ( 'new-folder' )
109
+ }
110
+ const saveAsHandler = ( ) => {
111
+ webviewControlRef . current ! . sendMessage ( 'save-as' )
112
+ }
113
+ const searchHandler = ( ) => {
114
+ webviewControlRef . current ! . sendMessage ( 'search' )
115
+ }
116
+ const focusSideNavigatorHandler = ( ) => {
117
+ webviewControlRef . current ! . sendMessage ( 'focus-side-navigator' )
118
+ }
119
+ const toggleSideNavigatorHandler = ( ) => {
120
+ webviewControlRef . current ! . sendMessage ( 'toggle-side-navigator' )
121
+ }
122
+ const focusEditorHandler = ( ) => {
123
+ webviewControlRef . current ! . sendMessage ( 'focus-editor' )
124
+ }
125
+ const focusTitle = ( ) => {
126
+ webviewControlRef . current ! . sendMessage ( 'focus-title' )
127
+ }
128
+ const togglePreviewMode = ( ) => {
129
+ webviewControlRef . current ! . sendMessage ( 'toggle-preview-mode' )
130
+ }
131
+ const toggleSplitEditMode = ( ) => {
132
+ webviewControlRef . current ! . sendMessage ( 'toggle-split-edit-mode' )
133
+ }
134
+ addIpcListener ( 'new-note' , newNoteHandler )
135
+ addIpcListener ( 'new-folder' , newFolderHandler )
136
+ addIpcListener ( 'save-as' , saveAsHandler )
137
+ addIpcListener ( 'search' , searchHandler )
138
+ addIpcListener ( 'focus-side-navigator' , focusSideNavigatorHandler )
139
+ addIpcListener ( 'toggle-side-navigator' , toggleSideNavigatorHandler )
140
+ addIpcListener ( 'focus-editor' , focusEditorHandler )
141
+ addIpcListener ( 'focus-title' , focusTitle )
142
+ addIpcListener ( 'toggle-preview-mode' , togglePreviewMode )
143
+ addIpcListener ( 'toggle-split-edit-mode' , toggleSplitEditMode )
144
+
99
145
return ( ) => {
100
- boostHubToggleSettingsEventEmitter . unlisten ( handler )
146
+ boostHubToggleSettingsEventEmitter . unlisten ( toggleSettingsHandler )
147
+ removeIpcListener ( 'new-note' , newNoteHandler )
148
+ removeIpcListener ( 'new-folder' , newFolderHandler )
149
+ removeIpcListener ( 'save-as' , saveAsHandler )
150
+ removeIpcListener ( 'search' , searchHandler )
151
+ removeIpcListener ( 'focus-side-navigator' , focusSideNavigatorHandler )
152
+ removeIpcListener ( 'toggle-side-navigator' , toggleSideNavigatorHandler )
153
+ removeIpcListener ( 'focus-editor' , focusEditorHandler )
154
+ removeIpcListener ( 'focus-title' , focusTitle )
155
+ removeIpcListener ( 'toggle-preview-mode' , togglePreviewMode )
156
+ removeIpcListener ( 'toggle-split-edit-mode' , toggleSplitEditMode )
101
157
}
102
158
} , [ active ] )
103
159
0 commit comments