@@ -41,48 +41,69 @@ function handleWarcFileAction(node) {
4141}
4242
4343// Event handler for "open" button clicks
44- Curate . eventDelegator . addEventListener ( ".action-open" , "click" , ( e ) => {
45- const nodes = pydio . _dataModel . _selectedNodes ;
46- if ( nodes . length === 1 ) {
47- const handled = handleWarcFileAction ( nodes [ 0 ] ) ;
48- if ( handled ) {
49- e . preventDefault ( ) ; // Prevent default open action
50- e . stopPropagation ( ) ;
51- }
52- }
53- } ) ;
54-
55- // Event handler for double-click in main files list
56- Curate . eventDelegator . addEventListener ( ".main-files-list" , "dblclick" , ( e ) => {
57- console . log ( "Double-click in main files list:" , e ) ;
58- if ( e . target . closest ( ".material-list-entry" ) ) {
44+ Curate . eventDelegator . addEventListener (
45+ ".action-open" ,
46+ "click" ,
47+ ( e ) => {
5948 const nodes = pydio . _dataModel . _selectedNodes ;
6049 if ( nodes . length === 1 ) {
61- console . log ( "Single node double clicked:" , nodes [ 0 ] ) ;
6250 const handled = handleWarcFileAction ( nodes [ 0 ] ) ;
6351 if ( handled ) {
64- e . preventDefault ( ) ; // Prevent default double-click action
52+ e . preventDefault ( ) ;
6553 e . stopPropagation ( ) ;
54+ e . stopImmediatePropagation ( ) ;
55+ return false ;
6656 }
6757 }
68- }
69- } ) ;
58+ } ,
59+ true
60+ ) ; // Use capture phase
61+
62+ // Event handler for double-click in main files list
63+ Curate . eventDelegator . addEventListener (
64+ ".main-files-list" ,
65+ "dblclick" ,
66+ ( e ) => {
67+ console . log ( "Double-click in main files list:" , e ) ;
68+ if ( e . target . closest ( ".material-list-entry" ) ) {
69+ const nodes = pydio . _dataModel . _selectedNodes ;
70+ if ( nodes . length === 1 ) {
71+ console . log ( "Single node double clicked:" , nodes [ 0 ] ) ;
72+ const handled = handleWarcFileAction ( nodes [ 0 ] ) ;
73+ if ( handled ) {
74+ e . preventDefault ( ) ;
75+ e . stopPropagation ( ) ;
76+ e . stopImmediatePropagation ( ) ;
77+ return false ;
78+ }
79+ }
80+ }
81+ } ,
82+ true
83+ ) ; // Use capture phase
7084
7185// Event handler for double-click in image gallery (masonry grid)
72- Curate . eventDelegator . addEventListener ( ".masonry-grid" , "dblclick" , ( e ) => {
73- console . log ( "Double-click in masonry grid:" , e ) ;
74- if ( e . target . closest ( ".masonry-card" ) ) {
75- const nodes = pydio . _dataModel . _selectedNodes ;
76- if ( nodes . length === 1 ) {
77- console . log ( "Single node double clicked:" , nodes [ 0 ] ) ;
78- const handled = handleWarcFileAction ( nodes [ 0 ] ) ;
79- if ( handled ) {
80- e . preventDefault ( ) ; // Prevent default double-click action
81- e . stopPropagation ( ) ;
86+ Curate . eventDelegator . addEventListener (
87+ ".masonry-grid" ,
88+ "dblclick" ,
89+ ( e ) => {
90+ console . log ( "Double-click in masonry grid:" , e ) ;
91+ if ( e . target . closest ( ".masonry-card" ) ) {
92+ const nodes = pydio . _dataModel . _selectedNodes ;
93+ if ( nodes . length === 1 ) {
94+ console . log ( "Single node double clicked:" , nodes [ 0 ] ) ;
95+ const handled = handleWarcFileAction ( nodes [ 0 ] ) ;
96+ if ( handled ) {
97+ e . preventDefault ( ) ;
98+ e . stopPropagation ( ) ;
99+ e . stopImmediatePropagation ( ) ;
100+ return false ;
101+ }
82102 }
83103 }
84- }
85- } ) ;
104+ } ,
105+ true
106+ ) ; // Use capture phase
86107
87108// Event handler for context menu "Open" clicks
88109Curate . eventDelegator . addEventListener (
@@ -96,10 +117,13 @@ Curate.eventDelegator.addEventListener(
96117 console . log ( "Single node from context menu:" , nodes [ 0 ] ) ;
97118 const handled = handleWarcFileAction ( nodes [ 0 ] ) ;
98119 if ( handled ) {
99- e . preventDefault ( ) ; // Prevent default context menu action
120+ e . preventDefault ( ) ;
100121 e . stopPropagation ( ) ;
122+ e . stopImmediatePropagation ( ) ;
123+ return false ;
101124 }
102125 }
103126 }
104- }
105- ) ;
127+ } ,
128+ true
129+ ) ; // Use capture phase
0 commit comments