• Recent
  • Tags
  • Unsolved
  • Solved
  • MagicMirror² Repository
  • Documentation
  • 3rd-Party-Modules
  • Donate
  • Discord
  • Register
  • Login
MagicMirror Forum
  • Recent
  • Tags
  • Unsolved
  • Solved
  • MagicMirror² Repository
  • Documentation
  • 3rd-Party-Modules
  • Donate
  • Discord
  • Register
  • Login
A New Chapter for MagicMirror: The Community Takes the Lead
Read the statement by Michael Teeuw here.

jumping of modules

Scheduled Pinned Locked Moved Troubleshooting
23 Posts 3 Posters 13.5k Views 3 Watching
Loading More Posts
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • K Offline
    kclemen
    last edited by kclemen Dec 13, 2016, 7:30 PM Dec 13, 2016, 7:27 PM

    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…

    Youtube, jumping of modules.

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

    T 1 Reply Last reply Dec 13, 2016, 8:15 PM Reply Quote 0
    • T Offline
      tidus5 @kclemen
      last edited by Dec 13, 2016, 8:15 PM

      @kclemen not sure im right

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

      1 Reply Last reply Reply Quote 0
      • K Offline
        kclemen
        last edited by Dec 13, 2016, 8:16 PM

        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);
        	}
        	
        });
        
        1 Reply Last reply Reply Quote 0
        • T Offline
          tidus5
          last edited by tidus5 Dec 13, 2016, 8:30 PM Dec 13, 2016, 8:28 PM

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

          K 1 Reply Last reply Dec 13, 2016, 8:31 PM Reply Quote 0
          • K Offline
            kclemen @tidus5
            last edited by Dec 13, 2016, 8:31 PM

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

            T 1 Reply Last reply Dec 13, 2016, 8:34 PM Reply Quote 0
            • T Offline
              tidus5 @kclemen
              last edited by Dec 13, 2016, 8:34 PM

              @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 ?

              T 1 Reply Last reply Dec 13, 2016, 8:43 PM Reply Quote 0
              • T Offline
                tidus5 @tidus5
                last edited by tidus5 Dec 13, 2016, 8:43 PM Dec 13, 2016, 8:43 PM

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

                1 Reply Last reply Reply Quote 0
                • K Offline
                  kclemen
                  last edited by Dec 13, 2016, 8:47 PM

                  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?

                  T 2 Replies Last reply Dec 13, 2016, 8:48 PM Reply Quote 0
                  • T Offline
                    tidus5 @kclemen
                    last edited by Dec 13, 2016, 8:48 PM

                    @kclemen ok ok i understand now

                    1 Reply Last reply Reply Quote 0
                    • T Offline
                      tidus5 @kclemen
                      last edited by Dec 13, 2016, 8:50 PM

                      @kclemen

                      if you try

                      module.hide(500, instead of 1000?

                      1 Reply Last reply Reply Quote 0
                      • 1
                      • 2
                      • 3
                      • 1 / 3
                      1 / 3
                      • First post
                        4/23
                        Last post
                      Enjoying MagicMirror? Please consider a donation!
                      MagicMirror created by Michael Teeuw.
                      Forum managed by Sam, technical setup by Karsten.
                      This forum is using NodeBB as its core | Contributors
                      Contact | Privacy Policy