|  | @@ -4,15 +4,15 @@
 | 
	
		
			
				|  |  |    Drupal.behaviors.boussole = {
 | 
	
		
			
				|  |  |      attach: function (context, settings) {
 | 
	
		
			
				|  |  |        console.log("Drupal Boussole behavior", context);
 | 
	
		
			
				|  |  | -      let $boussole_wrapper = document.querySelector('#boussole-layout');
 | 
	
		
			
				|  |  | +      let $boussole_layout = document.querySelector('#boussole-layout');
 | 
	
		
			
				|  |  |        once('boussole-class-behaviour', '#boussole-layout', context).forEach(element => {
 | 
	
		
			
				|  |  |          // let tabs = 
 | 
	
		
			
				|  |  |          // div.field-group-tabs-wrapper
 | 
	
		
			
				|  |  |          // input.horizontal-tabs-active-tab
 | 
	
		
			
				|  |  | -        _boussole = new Boussole($boussole_wrapper);
 | 
	
		
			
				|  |  | +        _boussole = new Boussole($boussole_layout);
 | 
	
		
			
				|  |  |        });
 | 
	
		
			
				|  |  |        
 | 
	
		
			
				|  |  | -      let $form = $boussole_wrapper.querySelector(':scope>.form-item');
 | 
	
		
			
				|  |  | +      let $form = $boussole_layout.querySelector(':scope>.form-item');
 | 
	
		
			
				|  |  |        console.log($form);
 | 
	
		
			
				|  |  |        let $tabledrag = $form.querySelector('table.field-multiple-table');
 | 
	
		
			
				|  |  |        console.log($tabledrag);
 | 
	
	
		
			
				|  | @@ -74,18 +74,33 @@
 | 
	
		
			
				|  |  |    };
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |    class Boussole {
 | 
	
		
			
				|  |  | -    constructor($boussole_wrapper) {
 | 
	
		
			
				|  |  | -      this.$boussole_wrapper = $boussole_wrapper;
 | 
	
		
			
				|  |  | +    constructor($boussole_layout) {
 | 
	
		
			
				|  |  | +      this.$boussole_layout = $boussole_layout;
 | 
	
		
			
				|  |  | +      this.$boussole_wrapper = document.querySelector('#boussole-layout>.boussole-wrapper');
 | 
	
		
			
				|  |  |        this.$boussole = document.querySelector('#boussole-layout>.boussole-wrapper>.boussole');
 | 
	
		
			
				|  |  |        this.entities = {}
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | +      this.initBoussoleSize();
 | 
	
		
			
				|  |  |        this.initTabChecking();
 | 
	
		
			
				|  |  | -      this.enableDragArea()
 | 
	
		
			
				|  |  | +      this.enableDragArea();
 | 
	
		
			
				|  |  | +    }
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +    initBoussoleSize(){
 | 
	
		
			
				|  |  | +      this.setBoussoleSize();
 | 
	
		
			
				|  |  | +      // todo window resize event
 | 
	
		
			
				|  |  | +    }
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +    setBoussoleSize(){
 | 
	
		
			
				|  |  | +      let w = this.$boussole_wrapper.clientWidth;
 | 
	
		
			
				|  |  | +      let h = this.$boussole_wrapper.clientHeight;
 | 
	
		
			
				|  |  | +      console.log(`w=${w}, h=${h}`);
 | 
	
		
			
				|  |  | +      this.$boussole.style.width = `${w}px`;
 | 
	
		
			
				|  |  | +      this.$boussole.style.height = `${w}px`;
 | 
	
		
			
				|  |  |      }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |      initTabChecking(){
 | 
	
		
			
				|  |  |        // debugger
 | 
	
		
			
				|  |  | -      this.$field_group_tab = this.$boussole_wrapper.closest('details.field-group-tab');
 | 
	
		
			
				|  |  | +      this.$field_group_tab = this.$boussole_layout.closest('details.field-group-tab');
 | 
	
		
			
				|  |  |        // watch for tabs opening and closing
 | 
	
		
			
				|  |  |        // hidden input do not triggers events
 | 
	
		
			
				|  |  |        // so we have to use mutationObserver tomake it trigger the change event
 |