This is something I’m working on.

This is something I’m working on.

1) they are folders, each one have a panel and a shortcut without icon (the title)

2) it need to ‘commit’ the position/size values of the folder, that’s why it is very laggy, and the reason this won’t be a final script.

3) moving the folder from the title will move the whole window

4) pinch to zoom will change the size of the folder, both dimensions simultaneously (I tried separately, but I couldn’t find a good way)

5) clicking the folder title will close it

6) I’m not going to post the script yet I have some ideas to try and few time, but I’ll do so others can test and maybe discover faster ways of do it (aka, less lag)

7) but hey! It looks good, doesn’t it? ;)

Oh, I almost forget. The idea was from Danbar’s suggestion

#LLXperiments

]]>
« (Previous Post)

19 Commentsto This is something I’m working on.

  1. Anonymous says:

    < ![CDATA[

    “This is the Coolest thing I have ever seen”

    ]]>

  2. Anonymous says:

    < ![CDATA[

    Wow! Good job… I hope this can be smoothed out.

    ]]>

  3. Anonymous says:

    < ![CDATA[

    Nice, I like it! Speed needs to be improved!


    Can’t wait to see the code.

    ]]>

  4. Anonymous says:

    < ![CDATA[

    …but …how?

    ]]>

  5. Anonymous says:

    < ![CDATA[

    Wow. Are you catching the scale of that folder and then reset it to 1 and instead change it’s size? But which event so you use? Is positionchanged triggered on scale changing or what?

    ]]>

  6. Anonymous says:

    < ![CDATA[

    Sorry, busy this week. (I’ll try to post the code in a few hours, but can’t promise)


    The idea is to catch the position change of the folder (because catching the one of a panel in the folder works once, I mean, only one swipe) if the scale didn’t change, it is 1, then the position change is applied to the position. But if the scale changed, the position/2 is applied to the size of the folder. That’s why both change together.


    Then just reset the position of the folder as container and let the launcher repeat the process. Tricky but effective. (The panel and the title are pinned)

    ]]>

  7. Anonymous says:

    < ![CDATA[

    Lukas Morawietz yes, it is triggered but because the position change too.

    ]]>

  8. Anonymous says:

    < ![CDATA[

    Ok things you need:


    a folder with:


    a panel, detached. scrolling set to both ( to avoid ‘jump’ to the folder)


    a shortcut, the title, detached


    all the borders/margins of the folder to 0 (recommended)


    the scrolling of the folder set to free, and not snapping



    maybe something more, I can’t remember now (ask if neccesary)




    To improve the velocity we need to find how to take the values faster. But remeber thay commit is slow, we can’t be faster than that.

    ]]>

  9. Anonymous says:

    < ![CDATA[

    /* Config*/


    var minWidth = 100; //minimum width of the window/container


    var titleHeight = 50; //heigh of the title


    var minHeight = 100; //minimum height of the container






    //click to close


    if(LL.getEvent().getItem()!=null)LL.getEvent().getContainer().getOpener().close();




    //vars


    var cont = LL.getEvent().getContainer();


    var container,title;


    var fol = cont.getOpener().getProperties();


    var screen = LL.getCurrentDesktop();



    var it = cont.getItems();


    if(it.getLength()!=2){alert(“oops”);return}


    for(var i=0;i<2;++i){


    var ite=it.getAt(i);


    if(ite.getType()==”Panel”)container=ite;


    else if(ite.getType()==”Shortcut”)title=ite;


    else {alert(“oops”);return;}


    }



    //to run once, but just in case


    container.setPosition(0,minHeight/2);


    title.setPosition(0,0);



    //data


    fx = fol.getInteger(“f.wX”);


    fy = fol.getInteger(“f.wY”);


    fw = fol.getInteger(“f.wW”);


    fh = fol.getInteger(“f.wH”);






    if( cont.getPositionScale()==1 ){


    //position


    fx-= cont.getPositionX() ;


    if(fx<0)fx=0;


    if(fx>screen.getWidth()-fw) fx = screen.getWidth()-fw;



    fy-= cont.getPositionY();


    if(fy<0)fy=0;


    if(fy>screen.getHeight()-fh) fy = screen.getHeight()-fh;



    }else{


    //scale


    fw+= cont.getPositionX()/2;


    if(fw


    if(fw>screen.getWidth()-fx) fw = screen.getWidth()-fx;



    fh+= cont.getPositionY()/2;


    if(fh


    if(fh>screen.getHeight()-fy) fh = screen.getHeight()-fy;



    container.setSize(fw , fh-titleHeight );


    title.setSize(fw,titleHeight);


    }




    //apply data


    fol.edit().


    setInteger(“f.wX”,fx).


    setInteger(“f.wY”,fy).


    setInteger(“f.wW”,fw).


    setInteger(“f.wH”,fh).


    commit();




    // reset


    cont.setPosition(0,0,1,false);

    ]]>

  10. Anonymous says:

    < ![CDATA[

    This next script is the first I wrote.


    It just move the folder position. WARNING you can move it out of the screen.


    This is the fast it can be, it is good, not very much but better than the long one.






    var fol = LL.getEvent().getContainer();




    var prop=fol.getOpener().getProperties();



    var pos = [ prop.getInteger(“f.wX”)-fol.getPositionX() , prop.getInteger(“f.wY”)-fol.getPositionY() ];



    if(pos[0]>=0 && pos[1]>=0)


    prop.edit().setInteger(“f.wX”,pos[0]).setInteger(“f.wY”,pos[1]).commit();



    fol.setPosition(0,0,1,false);

    ]]>

  11. Anonymous says:

    < ![CDATA[

    Nullpointerexception in resize script at line 29.

    ]]>

  12. Anonymous says:

    < ![CDATA[

    Lukas Morawietz uhm, it seems that the panel is not found… did you placed a panel and a shortcut? Did you set the script to the positionchange of the folder? (Not the panel)

    ]]>

  13. Anonymous says:

    < ![CDATA[

    Yes, I did that all. I just tried around a bit and it’s solved.. I don’t know what helped. BTW: I like that “oops” 😀

    ]]>

  14. Anonymous says:

    < ![CDATA[

    Oops, I forget to change them XD


    I can edit it…but let’s leave them 😉

    ]]>

  15. Anonymous says:

    < ![CDATA[

    Not trying to sound like a jerk… But how does stuff like this make your phone easy to access things or even work better? Also how does this end up looking nice? What would be the reason to apply this to your home screen?



    Panels in panels… Seems to complex to quickly get to something.

    ]]>

  16. Anonymous says:

    < ![CDATA[

    Don’t get me wrong I love LL ex. But for modding to make easy access and for it to look nice.

    ]]>

  17. Anonymous says:

    < ![CDATA[

    How did you this?

    ]]>

  18. Anonymous says:

    < ![CDATA[

    Tyler Buckner the reason for this script is just for fun, it is too slow to be be ready for the final user.


    But scripting is a powerful tool that lets you do awesome things, some helpless, but others really helpful. Hey, look at tasker 🙂


    And for panels in panels, they can be complex, but once you understand them can be extremely useful (of course you are free to use them or not)



    Masaoka Taro check the script of you want, but the idea is to catch the container movement and apply it to the folder window

    ]]>

  19. Anonymous says:

    < ![CDATA[

    Oh I definitely use Tasker. Took time to set up at first but then it runs in the background and I forget about it.

    ]]>

Leave a Reply

Your email address will not be published. Required fields are marked *