MagicMirror² v2.13.0 is available! For more information about this release, check out this topic.

Module shown few minute after hiding it



  • Hi
    These days I have trying to make my own MM2.
    However there is one issue, I can’t fixed it up.

    I made MM2 with MMM-backgroudSlideshow then I’ll implement with some of sensor.
    If there is person presence in front of MM, background will be disapper.
    and if there is no person in front of MM, show background then hide all of information likes weather, weatherforcast, clock and so one.
    FYI I used background image in my NAS server and connected it by network file system(NFS).

    so problem is that few minutes later hiding all of module except background, only weather and weatherforcast shown automatically.
    other modules still in hiding mode.

    did you experience this kinds of issue?
    one more thing is that all of module hiding method called when MMM-backgroundSlideshow get DOM_CREATED_OBJECT notification.

    many thank for your help 🙂



  • @ricky I use hiding in my MMM-SleepWake module for sleeping, as my TV’s do not support cec commands to turn off.

    I don’t see the behavior u mention.

    what module does the hiding/showing for your solution?



  • Hi Sam.

    it’s weather and MMM-weatherforecast. I think when it’s updated, it shows up.

    I just hide it when motion sensor not detected person 5 minutes.

    then show up it’s detected.

    other modules works well for example email, calendar and so on.



  • @ricky same thing my MMM-SleepWake module does. module.hide ()

    nothing shows until module.show()
    I do not use lockstrings

    welcome to look at my code, all in MMM-SleepWake.js

    I hide the background module too
    MMM-ImagesPhotos for me



  • Hey guys,

    got a similar Probem with the Weatherforecast Module working with Pages Module.
    Weatherforecast is configurated on just one Page and shows up on every Page after update.

    I guess found a solutiion on that:
    On Weatherforcast.js on line 377

    this.show(this.config.animationSpeed, { lockString: this.identifier });
    

    is called. I guess this has to be done, when Module is shown up to update UI, but not if Module is hidden.
    So

    if (!this.hidden)
        this.show(this.config.animationSpeed, { lockString: this.identifier });
    

    does the trick.


Log in to reply