@@ -6,7 +6,13 @@ import { useGeneralStatus } from '../../lib/generalStatus'
6
6
import { getFolderItemId } from '../../lib/nav'
7
7
import { getTransferrableNoteData } from '../../lib/dnd'
8
8
import { useTranslation } from 'react-i18next'
9
- import { mdiFolderOpen , mdiFolder , mdiDotsVertical , mdiPlus } from '@mdi/js'
9
+ import {
10
+ mdiFolderOpen ,
11
+ mdiFolder ,
12
+ mdiDotsVertical ,
13
+ mdiTextBoxPlusOutline ,
14
+ mdiFolderMultiplePlusOutline ,
15
+ } from '@mdi/js'
10
16
import NavigatorButton from '../atoms/NavigatorButton'
11
17
import { useRouter } from '../../lib/router'
12
18
import { openContextMenu } from '../../lib/electronOnly'
@@ -75,6 +81,14 @@ const FolderNavigatorItem = ({
75
81
)
76
82
} , [ storageId , folderPathname , push ] )
77
83
84
+ const createNoteInFolder = useCallback ( ( ) => {
85
+ createNoteInFolderAndRedirect ( folderPathname )
86
+ } , [ createNoteInFolderAndRedirect , folderPathname ] )
87
+
88
+ const createSubFolder = useCallback ( ( ) => {
89
+ showPromptToCreateFolder ( folderPathname )
90
+ } , [ showPromptToCreateFolder , folderPathname ] )
91
+
78
92
const showFolderRemoveMessageBox = useCallback ( ( ) => {
79
93
messageBox ( {
80
94
title : `Remove "${ folderPathname } " folder` ,
@@ -103,16 +117,12 @@ const FolderNavigatorItem = ({
103
117
{
104
118
type : 'normal' ,
105
119
label : 'New Note' ,
106
- click : async ( ) => {
107
- createNoteInFolderAndRedirect ( folderPathname )
108
- } ,
120
+ click : createNoteInFolder ,
109
121
} ,
110
122
{
111
123
type : 'normal' ,
112
124
label : 'New Subfolder' ,
113
- click : async ( ) => {
114
- showPromptToCreateFolder ( folderPathname )
115
- } ,
125
+ click : createSubFolder ,
116
126
} ,
117
127
{
118
128
type : 'separator' ,
@@ -135,38 +145,13 @@ const FolderNavigatorItem = ({
135
145
[
136
146
folderPathname ,
137
147
t ,
138
- createNoteInFolderAndRedirect ,
139
- showPromptToCreateFolder ,
148
+ createNoteInFolder ,
149
+ createSubFolder ,
140
150
showRenamePrompt ,
141
151
showFolderRemoveMessageBox ,
142
152
]
143
153
)
144
154
145
- const openPlusContextMenu = useCallback (
146
- ( event : React . MouseEvent ) => {
147
- event . preventDefault ( )
148
- openContextMenu ( {
149
- menuItems : [
150
- {
151
- type : 'normal' ,
152
- label : 'New Note' ,
153
- click : async ( ) => {
154
- createNoteInFolderAndRedirect ( folderPathname )
155
- } ,
156
- } ,
157
- {
158
- type : 'normal' ,
159
- label : 'New Subfolder' ,
160
- click : async ( ) => {
161
- showPromptToCreateFolder ( folderPathname )
162
- } ,
163
- } ,
164
- ] ,
165
- } )
166
- } ,
167
- [ folderPathname , createNoteInFolderAndRedirect , showPromptToCreateFolder ]
168
- )
169
-
170
155
const openMoreContextMenu = useCallback (
171
156
( event : React . MouseEvent ) => {
172
157
event . preventDefault ( )
@@ -251,7 +236,16 @@ const FolderNavigatorItem = ({
251
236
onFoldButtonClick = { toggleFolded }
252
237
control = {
253
238
< >
254
- < NavigatorButton onClick = { openPlusContextMenu } iconPath = { mdiPlus } />
239
+ < NavigatorButton
240
+ title = 'New Note'
241
+ onClick = { createNoteInFolder }
242
+ iconPath = { mdiTextBoxPlusOutline }
243
+ />
244
+ < NavigatorButton
245
+ title = 'New Subfolder'
246
+ onClick = { createSubFolder }
247
+ iconPath = { mdiFolderMultiplePlusOutline }
248
+ />
255
249
< NavigatorButton
256
250
onClick = { openMoreContextMenu }
257
251
iconPath = { mdiDotsVertical }
0 commit comments