Просмотр исходного кода

click event calls multiselect function

CroogQT 3 лет назад
Родитель
Сommit
3effa37fa7

Разница между файлами не показана из-за своего большого размера
+ 0 - 0
netbox/project-static/dist/netbox.js


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
netbox/project-static/dist/netbox.js.map


+ 7 - 2
netbox/project-static/src/buttons/selectMultiple.ts

@@ -9,7 +9,6 @@ function preventTextHighlight(): void {
 }
 
 function updatePreviousPkCheckState(eventTargetElement: HTMLInputElement, state: StateManager<PreviousPkCheckState>): void {
-  console.log(state)
   state.set('element', eventTargetElement);
 }
 
@@ -55,8 +54,14 @@ export function initSelectMultiple(): void {
   const checkboxElements = getElements<HTMLInputElement>('input[type="checkbox"][name="pk"]');
   for (const element of checkboxElements) {
     element.addEventListener('click', (event) => {
+      //Prevents shift+click from selecting table text
+      document.addEventListener('selectstart', preventTextHighlight)
+      //Stop propogation to avoid event firing multiple times
       event.stopPropagation();
-      updatePreviousPkCheckState(event.target as HTMLInputElement, previousPkCheckState);
+      //Main logic for multi select
+      handlePkCheck(event, previousPkCheckState);
+      //Re-enables user's ability to select table text
+      document.removeEventListener('selectstart', preventTextHighlight)
     });
   }
 }

Некоторые файлы не были показаны из-за большого количества измененных файлов