• 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.

[MMM-OnScreenMenu] Simple On-Screen Menu for controlling the MagicMirror²

Scheduled Pinned Locked Moved Utilities
25 Posts 15 Posters 20.0k Views 19 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.
  • S Offline
    shbatm Module Developer
    last edited by shbatm Feb 10, 2018, 6:20 PM Jun 24, 2017, 1:35 AM

    Description

    The MMM-OnScreenMenu Module provides a small, customizable, material-style floating action button menu for controlling the MagicMirror².

    Basic Functions:

    1. Control the power to the screen (On/Off/Toggle).
    2. Manage the Mirror (Shutdown/Reboot/Restart MM²/Refresh Window).
    3. Module Visibility (Show/Hide/Toggle).
    4. Send Notifications to Other Modules:
      • Switch Profiles in MMM-ProfileSwitcher
      • Perform other module functions from a button in the menu.

    The menu is designed to be controllable from multiple devices:

    • Mouse Control
    • Touchscreen Control
    • Keyboard Control
    • Bluetooth Remote via MMM-KeyBindings
    • Module Notifications from other modules

    Screenshots

    SEE LIVE DEMO/MOCKUP HERE: https://codepen.io/shbatm/pen/OggMbr/



    First: Touch Mode; Middle: Hidden/Mouseover Mode; Last: Demo

    Download:

    [card:shbatm/MMM-OnScreenMenu]


    Version 0.1.3

    • Added menu options for minimizing, toggle fullscreen mode, opening DevTools, stopping MM via PM2,
    • Added delayed menu items (e.g. call a function after a certain timeout–like to turn off the mirror after X seconds)
    • Added external control of the menu/functions from other modules via notifications–includes the ability to call any function the module knows how to handle, even if it’s not in the menu. This lets you use modules like MMM-Buttons or MMM-MPR121 to control the menu.

    Version 0.0.9

    • Initial Public Release for Testing – please let me know via this thread or GitHub Issues if you find any bugs or have any feature requests; always open to feedback!
    1 Reply Last reply Reply Quote 5
    • C Offline
      cowboysdude Module Developer
      last edited by Jun 24, 2017, 1:41 AM

      I’ll have to test that on my touch screen ;)
      Looks great!

      A 1 Reply Last reply Aug 23, 2018, 6:06 AM Reply Quote 0
      • S Offline
        shbatm Module Developer
        last edited by shbatm Feb 10, 2018, 6:23 PM Feb 10, 2018, 6:21 PM

        New version posted with expanded options:

        Version 0.1.3

        • Added menu options for minimizing, toggle fullscreen mode, opening DevTools, stopping MM via PM2,
        • Added delayed menu items (e.g. call a function after a certain timeout–like to turn off the mirror after X seconds)
        • Added external control of the menu/functions from other modules via notifications–includes the ability to call any function the module knows how to handle, even if it’s not in the menu. This lets you use modules like MMM-Buttons or MMM-MPR121 to control the menu.

        See the full details of everything the menu can do on the GitHub README:

        [card:shbatm/MMM-OnScreenMenu]

        Remember to re-run npm install after updating:

        cd ~/MagicMirror/modules/MMM-OnScreenMenu
        git pull
        npm install
        
        M 1 Reply Last reply Feb 10, 2018, 9:30 PM Reply Quote 3
        • C Offline
          cruunnerr
          last edited by Feb 10, 2018, 8:30 PM

          Thats pretty cool. Now i could install a button for each menu option :)

          I like buttons. so i like this module. lol ^^

          Impressive work. Thank you very much.

          1 Reply Last reply Reply Quote 0
          • M Offline
            Mykle1 Project Sponsor Module Developer @shbatm
            last edited by Feb 10, 2018, 9:30 PM

            @shbatm

            Don’t know how I missed this one. Excellent work, sir! :-)

            Create a working config
            How to add modules

            1 Reply Last reply Reply Quote 0
            • M Offline
              M1K3rSz
              last edited by Feb 11, 2018, 11:07 AM

              Really cool module , i’ve installed it, looks great!
              But ummzzzh i’ve touched on the button Turn off Display, but after a restart mirror shows no display , maybe a stupid question but how can i turn it on again?

              1 Reply Last reply Reply Quote 0
              • S Offline
                shbatm Module Developer
                last edited by Feb 11, 2018, 5:43 PM

                @M1K3rSz – Glad you tried it! Sorry you ran into some trouble.

                To get the monitor back on:

                1. Via ssh: tvservice --preferred && sudo chvt 6 && sudo chvt 7
                  • Sets the HDMI output back on to preferred settings, then changes the virtual terminal off of then back on to the desktop channel. This is the same command that most modules that turn on the monitor uses.
                2. Via notification sent from another module, such as MMM-Remote-Control:
                  • Notification: ‘ONSCREENMENU_PROCESS_ACTION’,
                    Payload: { actionName:‘monitorOn’ }

                The Monitor Off menu item is best used when you have another module that wakes up the mirror (PIR sensor, button, etc.).

                M 1 Reply Last reply Feb 12, 2018, 12:20 PM Reply Quote 0
                • M Offline
                  M1K3rSz @shbatm
                  last edited by Feb 12, 2018, 12:20 PM

                  @shbatm thanks for the quick reply, ive got it work again ;)

                  1 Reply Last reply Reply Quote 0
                  • S Offline
                    sharmstr Project Sponsor
                    last edited by May 3, 2018, 5:58 PM

                    Is there a way to disable hovering all together? I’m using an IR frame and while it does work, the issue is with hovering and closing the menu. Clicking the close (X) icon doesnt work because the cursor is still hovering over the menu, therefore keeping the menu open. You need to click somewhere else on the screen to get it to close. I looked for a way to disable hovering all together since I think that will solve the issue, but couldnt find a way.

                    1 Reply Last reply Reply Quote 0
                    • D Offline
                      dylan
                      last edited by Aug 20, 2018, 8:51 AM

                      Hi, is there any way to register multiple items in a single button?

                      Something such as (and I’ve tried this ;) )…

                      moduleToggle1: {
                          title: "TL> Clock etc",              
                          icon: "eye-slash", 
                          names: { 
                                   name: "clock", 
                                  name: "calendar"
                          } 
                      },
                      

                      Sorry if this is obvious, just a noob here!! Either way - this is an amazing plugin!!!

                      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