Announcement

Collapse
No announcement yet.

Announce: Material Skin

Collapse
X
 
  • Time
  • Show
Clear All
new posts

  • Originally posted by cpd73
    That list is coming from LMS. It's a settings page - so its the "Classic" skin where Material has added some CSS tweaks to make it more material-like. Have you checked the order of this screen against the same screen with the 'Default' and 'Classic' skins?
    Default skin gives a choice by tapping on the column headers of Artist or Album but Classic skin doesn't and has the same random order as Material skin as expected I suppose.

    Sent from my Pixel 3a using Tapatalk
    Living Room: Touch or Squeezelite (Pi3B) > Topping E30 > Audiolab 8000A > Monitor Audio S5 + BK200-XLS DF
    Bedroom: Radio
    Bathroom: Radio

    Comment


    • There should be a new build of LMS 8.3 available now, which comes with a fix for this.
      Michael

      "It doesn't work - what shall I do?" - "Please check your server.log and/or scanner.log file!"
      (LMS: Settings/Information)

      Comment


      • Originally posted by slartibartfast
        Default skin gives a choice by tapping on the column headers of Artist or Album but Classic skin doesn't and has the same random order as Material skin as expected I suppose.
        But, if you try "Classic" (which is what Material uses) these don't appear to be clickable. I say appear, as I dont use this so have no entries...
        Material debug: 1. Launch via http: //SERVER:9000/material/?debug=json (Use http: //SERVER:9000/material/?debug=json,cometd to also see update messages, e.g. play queue) 2. Open browser's developer tools 3. Open console tab in developer tools 4. REQ/RESP messages sent to/from LMS will be logged here.

        Comment


        • Originally posted by cpd73
          But, if you try "Classic" (which is what Material uses) these don't appear to be clickable. I say appear, as I dont use this so have no entries...
          That's right but hopefully Michael has a fix in the latest 8.3 [emoji2]

          Sent from my Pixel 3a using Tapatalk
          Living Room: Touch or Squeezelite (Pi3B) > Topping E30 > Audiolab 8000A > Monitor Audio S5 + BK200-XLS DF
          Bedroom: Radio
          Bathroom: Radio

          Comment


          • Originally posted by slartibartfast
            That's right but hopefully Michael has a fix in the latest 8.3
            Just updated my lms git checkout, and headers are still not clickable. So, perhaps the items will be sorted but will not allow re-sorting by clicking on header.
            Material debug: 1. Launch via http: //SERVER:9000/material/?debug=json (Use http: //SERVER:9000/material/?debug=json,cometd to also see update messages, e.g. play queue) 2. Open browser's developer tools 3. Open console tab in developer tools 4. REQ/RESP messages sent to/from LMS will be logged here.

            Comment


            • Originally posted by cpd73
              Just updated my lms git checkout, and headers are still not clickable. So, perhaps the items will be sorted but will not allow re-sorting by clicking on header.
              I'll find out in a couple of hours.

              Sent from my Pixel 3a using Tapatalk
              Living Room: Touch or Squeezelite (Pi3B) > Topping E30 > Audiolab 8000A > Monitor Audio S5 + BK200-XLS DF
              Bedroom: Radio
              Bathroom: Radio

              Comment


              • Originally posted by mherger
                There should be a new build of LMS 8.3 available now, which comes with a fix for this.
                That's much better. Thank you [emoji106]

                Sent from my Pixel 3a using Tapatalk
                Living Room: Touch or Squeezelite (Pi3B) > Topping E30 > Audiolab 8000A > Monitor Audio S5 + BK200-XLS DF
                Bedroom: Radio
                Bathroom: Radio

                Comment


                • Announce: Material Skin

                  > Just updated my lms git checkout, and headers are still not clickable.
                  > So, perhaps the items will be sorted but will not allow re-sorting by
                  > clicking on header.

                  The sorting is a frontend thing, of course. As Classic really is bare
                  bones HTML with a minimum of JS there's no such feature. It's Default
                  only. But it could certainly be added somehow.

                  Michael

                  "It doesn't work - what shall I do?" - "Please check your server.log and/or scanner.log file!"
                  (LMS: Settings/Information)

                  Comment


                  • Originally posted by mherger
                    > Just updated my lms git checkout, and headers are still not clickable.
                    > So, perhaps the items will be sorted but will not allow re-sorting by
                    > clicking on header.

                    The sorting is a frontend thing, of course. As Classic really is bare
                    bones HTML with a minimum of JS there's no such feature. It's Default
                    only. But it could certainly be added somehow.
                    I could add a click handler onto the headers - as they have the "sortable" class - just not sure what the handler should call to activate the sort. I notice this also applies to the plugins pages, where the Default skin can change the sort coumn.
                    Material debug: 1. Launch via http: //SERVER:9000/material/?debug=json (Use http: //SERVER:9000/material/?debug=json,cometd to also see update messages, e.g. play queue) 2. Open browser's developer tools 3. Open console tab in developer tools 4. REQ/RESP messages sent to/from LMS will be logged here.

                    Comment


                    • From the now-playing screen in the MediaServer Alexa skill, tapping the cover-art image now launches the Material skin on an Echo Show.


                      As mentioned in the thread for the MediaServer skill, I've added the possibility to launch Material on Echo Show devices from my nowPlaying APL (Alexa Presentation Language) screen. Unfortunately, the Silk Browser opens with a large and ugly address bar which has to be manually swiped upwards to get full-screen Material (see demo video).

                      Craig, do you know of any way to forcefully launch Material in FullScreen mode (FWIW, Silk is WebKit based)?

                      If that were possible, the swipe would be unnecessary and I could e.g. pass a URL parameter along when opening Material to request fullscreen mode.

                      Comment


                      • Originally posted by philchillbill
                        Craig, do you know of any way to forcefully launch Material in FullScreen mode (FWIW, Silk is WebKit based)?
                        Sorry, no. Javascript can request fullscreen, but only in response to a user click. Which I guess makes sense, as most users would not want some random website opening a fullscreen page.
                        Material debug: 1. Launch via http: //SERVER:9000/material/?debug=json (Use http: //SERVER:9000/material/?debug=json,cometd to also see update messages, e.g. play queue) 2. Open browser's developer tools 3. Open console tab in developer tools 4. REQ/RESP messages sent to/from LMS will be logged here.

                        Comment


                        • Originally posted by cpd73
                          Sorry, no. Javascript can request fullscreen, but only in response to a user click. Which I guess makes sense, as most users would not want some random website opening a fullscreen page.
                          But a click can be synthesized 😎 e.g.

                          Code:
                          var item = document.querySelector("li.list-item[data-v-29761082]");
                          
                          if (item) {
                              item.dispatchEvent(new Event('click'));
                          }

                          Comment


                          • Originally posted by philchillbill
                            But a click can be synthesized 😎 e.g.
                            Doesn't work for me. Tried Firefox and Chromium. I add a 'click' handler to go fullscreen. The fake click does not invoke this, but if I then click on the view it goes fullscreen.

                            Edit:
                            Code:
                            elem.dispatchEvent(new MouseEvent('click', {view: window, bubbles: true,cancelable: true}));
                            did send an event, but the handler then complained:

                            Code:
                            Uncaught (in promise) TypeError: Fullscreen request denied
                            Last edited by cpd73; 2021-12-18, 17:45.
                            Material debug: 1. Launch via http: //SERVER:9000/material/?debug=json (Use http: //SERVER:9000/material/?debug=json,cometd to also see update messages, e.g. play queue) 2. Open browser's developer tools 3. Open console tab in developer tools 4. REQ/RESP messages sent to/from LMS will be logged here.

                            Comment


                            • Originally posted by cpd73
                              Doesn't work for me. Tried Firefox and Chromium. I add a 'click' handler to go fullscreen. The fake click does not invoke this, but if I then click on the view it goes fullscreen.
                              Ok. I’ve only ever used it (with success) from jQuery rather than pure js so maybe it actually does not work from js. I use it to automatically download excel sheets in a web app when a sport event completes without the user having to click on a download button. Normally browsers won’t allow automatic downloads but I’ve fudged it this way no problem. But that was of course jQuery. Thanks for trying!

                              Comment


                              • Originally posted by philchillbill
                                Ok. I’ve only ever used it (with success) from jQuery rather than pure js so maybe it actually does not work from js. I use it to automatically download excel sheets in a web app when a sport event completes without the user having to click on a download button. Normally browsers won’t allow automatic downloads but I’ve fudged it this way no problem. But that was of course jQuery. Thanks for trying!
                                As stated in my edit, I got the fake click to work - but the fullscreen request was then denied.

                                [Edit] Tried in chromium - "Failed to execute 'requestFullscreen' on 'Element': API can only be initiated by a user gesture"
                                Last edited by cpd73; 2021-12-18, 17:49.
                                Material debug: 1. Launch via http: //SERVER:9000/material/?debug=json (Use http: //SERVER:9000/material/?debug=json,cometd to also see update messages, e.g. play queue) 2. Open browser's developer tools 3. Open console tab in developer tools 4. REQ/RESP messages sent to/from LMS will be logged here.

                                Comment

                                Working...
                                X
                                😀
                                🥰
                                🤢
                                😎
                                😡
                                👍
                                👎