Jump to a Movie from Container filled by Playlist
#1
Hi!

I'm using a container (wraplist) on my home menu which gets it content by a smart playlist. (<content target="video">special://....)
It's working fine and via the Container(id).ListItem.* InfoLabel, I can get alle necessary
information/graphics of the current selected item.

But I don't know how to set the <onclick> tag if I like to jump to the selected movie.

The best would be if I could jump straight to the movie info view. If that isn't possible, I would be
also happy if I could just jump to the specific movie in the movie list.


I appreciate any help I can get!

Thanks Big Grin
Reply
#2
If you're using <content target="video">...</content> then there isn't any <onclick>-</onclick> action needed.
Reply
#3
Hi Hitcher, thanks for your input!

But I don't want to play the video when pressing enter. I want to show the movie info view or if this isn't possible
the movie list with the concerned movie selected. But it's play that is the default option if I don't set an onclick tag. Undecided
Reply
#4
Non possible atm, there were discussions entering a custom info screen or even directly the info screen, don't know if this will be in helix or later.
Reply
#5
Ok, thanks for the enlightment. Wink

So one question again regarding the play event of <content target="video">...</content>:

Can I trigger it also without focussing the container itself?
I'm using a control wraplist element as container because it's a slideshow. If it's selected and I press arrow left/right
the items will slide, but I want to go to another element instead. That's why I don't want to focus the container itself.
I want to trigger the play event from another element via <onclick> or something.

I've already looked for some possible workarounds like forwarding the click via SendClick(), simulate key presses,
or also setting <onleft/onright> for the wraplist element - but none of them worked for me. Confused

It would be nice if someone could help me out or give a hint.
Reply
#6
Can you post the full code?
Reply
#7
PlayMedia(Container(id).ListItem.FilenameAndPath)
Image
Reply
#8
Thank you all for your attention!


Black's post did it. Setting the following worked out:

Code:
<onclick>PlayMedia($INFO[Container(id).ListItem.FileNameAndPath])</onclick>

Danke
Reply
#9
Hey again!

The PlayMedia() solution didn't satisfied me for a playlist with TV Shows as content.
So I created a workaround to get at least to the playlist with the TV Show already selected that was also selected in the wraplist.
It's working until I don't change the selection on the playlist view by my self. But I can deal with it. Wink

Code:
<onclick>ClearProperty(LastSeenTVShowsPos1)</onclick>
<onclick>ClearProperty(LastSeenTVShowsPos2)</onclick>
<onclick>ClearProperty(LastSeenTVShowsPos3)</onclick>
<onclick>ClearProperty(LastSeenTVShowsPos4)</onclick>
<onclick>ClearProperty(LastSeenTVShowsPos5)</onclick>

<onclick condition="!isEmpty(Container(3022).ListItemNoWrap(-1).Label) + isEmpty(Container(3022).ListItemNoWrap(-2).Label)">SetProperty(LastSeenTVShowsPos1, 1)</onclick>
<onclick condition="!isEmpty(Container(3022).ListItemNoWrap(-2).Label) + isEmpty(Container(3022).ListItemNoWrap(-3).Label)">SetProperty(LastSeenTVShowsPos2, 1)</onclick>
<onclick condition="!isEmpty(Container(3022).ListItemNoWrap(-3).Label) + isEmpty(Container(3022).ListItemNoWrap(-4).Label)">SetProperty(LastSeenTVShowsPos3, 1)</onclick>
<onclick condition="!isEmpty(Container(3022).ListItemNoWrap(-4).Label) + isEmpty(Container(3022).ListItemNoWrap(-5).Label)">SetProperty(LastSeenTVShowsPos4, 1)</onclick>
<onclick condition="!isEmpty(Container(3022).ListItemNoWrap(-5).Label)">SetProperty(LastSeenTVShowsPos5, 1)</onclick>

<onclick>ActivateWindow(video,special://profile/playlists/video/6LastSeenTVShows.xsp,return)</onclick>

<onclick condition="!IsEmpty(Window.Property(LastSeenTVShowsPos1))">Control.Move(60,-1)</onclick>
<onclick condition="!IsEmpty(Window.Property(LastSeenTVShowsPos2))">Control.Move(60,-2)</onclick>
<onclick condition="!IsEmpty(Window.Property(LastSeenTVShowsPos3))">Control.Move(60,-3)</onclick>
<onclick condition="!IsEmpty(Window.Property(LastSeenTVShowsPos4))">Control.Move(60,-4)</onclick>
<onclick condition="!IsEmpty(Window.Property(LastSeenTVShowsPos5))">Control.Move(60,-5)</onclick>

<onclick condition="!isEmpty(Container(3022).ListItemNoWrap(-1).Label) + isEmpty(Container(3022).ListItemNoWrap(-2).Label)">Control.Move(60,1)</onclick>    
<onclick condition="!isEmpty(Container(3022).ListItemNoWrap(-2).Label) + isEmpty(Container(3022).ListItemNoWrap(-3).Label)">Control.Move(60,2)</onclick>
<onclick condition="!isEmpty(Container(3022).ListItemNoWrap(-3).Label) + isEmpty(Container(3022).ListItemNoWrap(-4).Label)">Control.Move(60,3)</onclick>
<onclick condition="!isEmpty(Container(3022).ListItemNoWrap(-4).Label) + isEmpty(Container(3022).ListItemNoWrap(-5).Label)">Control.Move(60,4)</onclick>
<onclick condition="!isEmpty(Container(3022).ListItemNoWrap(-5).Label)">Control.Move(60,5)</onclick>


All what's now still missing, is the last 'click' or 'enter' to confirm the selection and open the item.

What about the SendClick() function? Isn't it possible to use it for my needs? I already tried it with <onclick>SendClick(60)</onclick> at the end but didn't succeeded.
Any hints?


greetings
josch
Reply
#10
As my workaround from my last post doesn't work for random playlists, I tried another alternative using the GlobalSearch script.
I modified it (see post #1732083) to allow passing the searchstring straight with the script call. Then I just use:

Code:
<onclick>RunScript(script.globalsearch,searchstring:$INFO[Container(5022).ListItem.Title])</onclick>

That way I get a straight "jump" to the movie where I can play it, play the trailer or get to the movie info page. That's all I wanted to achieve. Big Grin

So this is solved for me, this workaround is good enough.
Reply
#11
(2014-06-11, 20:13)josch Wrote: As my workaround from my last post doesn't work for random playlists, I tried another alternative using the GlobalSearch script.
I modified it (see post #1732083) to allow passing the searchstring straight with the script call. Then I just use:

Code:
<onclick>RunScript(script.globalsearch,searchstring:$INFO[Container(5022).ListItem.Title])</onclick>

That way I get a straight "jump" to the movie where I can play it, play the trailer or get to the movie info page. That's all I wanted to achieve. Big Grin

So this is solved for me, this workaround is good enough.

Hi Josch.. i have a similar situation..

http://forum.kodi.tv/showthread.php?tid=232586

I'm trying to get onclick trailer to work on Ace with dynamic listing...

Where exactly do i put this code after modifying the default.py?

Is it inside the fake button that uses Control.Move?
Code:
<onclick>RunScript(script.globalsearch,searchstring:$INFO[Container(5022).ListItem.Title])</onclick>

Also.. does this break normal searching function? And does it affect the performance? I have a gigantic library and i want to create multiple playlists.. so i want to keep the skin as light as possible..
Reply
#12
Hi denywinarto,

I will have a closer look at your issue/question later on and will answer in your thread if you still need help.
But to already answer some questions you asked right here:

(2015-07-20, 16:05)denywinarto Wrote: does this break normal searching function? And does it affect the performance?
No and no. The modification doesn't break the normal search function and it doesn't affect the general performance at all,
no matter how large your library is. I've also a big one, using the RPi1 and do care a lot about lightness/performance.


(2015-07-20, 16:05)denywinarto Wrote: Is it inside the fake button that uses Control.Move?
Exactly.
Reply

Logout Mark Read Team Forum Stats Members Help
Jump to a Movie from Container filled by Playlist1