jumping of modules



  • Hi,

    When using the hide/show function the new function jumps from the bottom to the top.
    Rather difficult to explain, but I made a movie about it. Sorry for the moving around…

    What would be a solution to immediately show the new module on the top?



  • @kclemen not sure im right

    but are you using the hide() show() ?
    from your own module ?



  • The code I’m using is in my “skywriter” module:

    Module.register("MMM-skywriter",{
    	
    	// Default module config.
    	defaults: {
    		gesture_up: 0,
    		gesture_right: 0,
    		
    	},
    
    	// Override socket notification handler.
    	socketNotificationReceived: function(notification, payload) {
    		if (notification === "gesture_observed"){
    			
    			console.log ("socketnotificationreceived.");
    		
    			//self.sendNotification(notification, payload);
    			
    			if (payload === "up"){
    				if (this.config.gesture_up == 0) {
    						
    						MM.getModules().withClass(this.config.defaultClass).exceptWithClass(this.config.everyoneClass).enumerate(function(module) {
    							module.hide(1000, function() {
    								Log.log(module.name + ' is hidden.');
    							});
    						});
    				
    						MM.getModules().withClass("class_up_1_show").enumerate(function(module) {
    							module.show(1000, function() {
    								Log.log(module.name + ' is shown.');
    							});
    						});
    						
    						this.config.gesture_up = this.config.gesture_up+1;
    						console.log (this.config.gesture_up);
    
    						console.log("gesture_up is nu 1");
    				}
    				else if (this.config.gesture_up == 1) {
    						this.config.gesture_up = this.config.gesture_up+1;
    						console.log (this.config.gesture_up)
    						console.log("gesture_up is nu 2");
    				}
    			}
    			else if (payload === "left"){
    				console.log("test - left");
    			}
    			else if (payload === "down") {
    				console.log("test - down");
    				
    				if (this.config.gesture_up == 1){
    					this.config.gesture_up = this.config.gesture_up-1;
    					
    					MM.getModules().withClass("class_up_1_show").enumerate(function(module) {
    						module.hide(1000, function() {
    							Log.log(module.name + ' is hidden by gesture.');
    						});
    					});
    					
    					MM.getModules().withClass(this.config.defaultClass).exceptWithClass(this.config.everyoneClass).enumerate(function(module) {
    							module.show(1000, function() {
    								
    								
    								
    								Log.log(module.name + ' is hidden.');
    							});
    						});
    					
    				}
    				else if (this.config.gesture_up == 2){
    					this.config.gesture_up = this.config.gesture_up-1;
    					console.log("gesture up is terug 1");
    				}
    			}
    		}
    	},
    	
    	notificationReceived: function(notification, payload, sender) {
    		if (notification === 'DOM_OBJECTS_CREATED') {
    			MM.getModules().exceptWithClass("default").enumerate(function(module) {
    				module.hide(1000, function() {
    					Log.log('Module is hidden.');
    				});
    			});
    		}
    	},
    	
    	start: function() {
    		this.current_user = null;
    		this.sendSocketNotification('CONFIG', this.config);
    		Log.info('Starting module: ' + this.name);
    	}
    	
    });
    


  • @kclemen
    what’s the position of your module in the config?
    2 différents zone ?



  • @tidus5, No they have the same zone: position: ‘top_right’,



  • @kclemen so if i understand correctly the problem is because the second module move when you hide the first one ?

    as far as i understand the module - if you have 2 module in the same zone and you hide one the other take the free space

    maybe if you change the second one from “top_right” to an other zone ?



  • @kclemen or is it the small latency when your module is hide ?



  • The problem is that the second module comes in the screen before the first one is completely hided I geuss? Or what do you mean with the latency of the module?



  • @kclemen ok ok i understand now



  • @kclemen

    if you try

    module.hide(500, instead of 1000?


Log in to reply
 

Looks like your connection to MagicMirror Forum was lost, please wait while we try to reconnect.