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 15.0k 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

      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
      • tidus5T Offline
        tidus5
        last edited by tidus5

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

        K 1 Reply Last reply Reply Quote 0
        • K Offline
          kclemen @tidus5
          last edited by

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

          tidus5T 1 Reply Last reply Reply Quote 0
          • tidus5T Offline
            tidus5 @kclemen
            last edited by

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

            tidus5T 1 Reply Last reply Reply Quote 0
            • tidus5T Offline
              tidus5 @tidus5
              last edited by tidus5

              @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

                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?

                tidus5T 2 Replies Last reply Reply Quote 0
                • tidus5T Offline
                  tidus5 @kclemen
                  last edited by

                  @kclemen ok ok i understand now

                  1 Reply Last reply Reply Quote 0
                  • tidus5T Offline
                    tidus5 @kclemen
                    last edited by

                    @kclemen

                    if you try

                    module.hide(500, instead of 1000?

                    1 Reply Last reply Reply Quote 0
                    • K Offline
                      kclemen
                      last edited by

                      Needed to change it to the following:

                      hide: 100
                      show: 7000

                      This works for the first gesture “up”. If I repeat the same for going back to the first “page” the module flips for a second back to the lower position, before it fades away. Because the time is set to 7000 the fade becomes slow.

                      Should I put a wait between hide and show? How?

                      tidus5T 1 Reply Last reply Reply Quote 0
                      • tidus5T Offline
                        tidus5 @kclemen
                        last edited by

                        @kclemen
                        http://api.jquery.com/delay/

                        delay()?

                        1 Reply Last reply Reply Quote 0
                        • 1
                        • 2
                        • 3
                        • 1 / 3
                        • First post
                          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