Release Panorama


bzar

A Commando
Joined
Sep 22, 2008
Messages
4,500
Location
Finland
Website
Visit site
Disclaimer: This is a quick sample build of Panorama's current state. It's not yet suitable for use as a primary launcher. The state of the software is "alpha", so some features may not be implemented, and everything may not work. Use at your own risk.


Panorama is a UI engine based on Qt Quick. It enables creating rich and visually pleasing UI's easily using QML and JavaScript.


This build contains five UI's, four of them in a working state for you to try. After launching Panorama for the first time, it starts the "Test" UI. It takes a bit to load, so wait until the clock hands start to move before trying to interact with it.


Use the "settings.cfg" file generated into appdata to change the UI. The currently working bundled UI's are "Test", "Simplicity" "Colors" (PMenu emulation example) and "Tabbed". The fifth UI "Magma" is not working due to using special particle effects not in the base Qt libraries. Use the fullscreen variable to set Panorama start fullscreen.


Global hotkeys:


Ctrl-F fullscreen


Ctrl-Q quit


There are bugs and missing features.


That being said, the PND is available here.


For the time being it's a bit slow to start, and not as smooth as it can be. There's several potential reasons for both, but I haven't had the time yet to take a better look. Panorama runs silky-smooth on N900, so the hardware is capable. It's just a matter of getting the build right. For now I think the best course of action is to get this version to run as well as possible before adding any new features.


For future plans, I'm planning on implementing a plugin-based architecture. To put it simply, the plugins would interact with the system, the UI's would use the plugins (optionally through generic widgets), and the panorama core would mediate between the plugins and the UI's and provide a running environment for both. For example, there could be a CPU speed that reports changes in and allows changing of CPU clock speed. Then a UI could use this plugin to add (for example) a small textfield that shows the current cpu speed, and when activated presents a slider for setting a new speed. This kind of integration would be trivial with a plugin system like this, and I think it could lead to very well integrated UIs.


Thanks to dflemstr for starting the project!
 
Last edited by a moderator:
What would it take to get Magma to work?


Sorry, I have not yet set-up the project on my PC due to lots of other stuff happening, but I will try to this weekend, maybe I can take a look at Magma or some other stuff like optimizing the load times.


foxblock out
 
It depends on a Qt Labs "Particles" plugin. Other than that it should work peaches.
 
Last edited by a moderator:
Uploaded a slightly improved package: took out all Qt modules that are not required (PND size 20MiB -> 14MiB), fixed startup script, possibly fixed the sound device hoarding bug didn't :( .


EDIT: uploadING. still going.
 
Last edited by a moderator:
wow, great work getting this running again. looks better than minimenu even at this stage :)
 
Uploaded new version of the PND. Remove your existing appdata before using. The PND now copies the provided interfaces to appdata so you can mess around with them :) . This makes the first launch take a bit longer than the subsequent ones. A whole bunch of small improvements behind the scenes, but nothing too visible. Tab switching in Tabbed currently works only through touch screen, but this will hopefully be dealt with shortly (depending on when I or dflemstr find time to look into why the trigger buttons won't work). Overall stuff is progressing at a steady pace.
 
Last edited by a moderator:
Awesome!


The first thing I'm going to try once I get my pandora back is panorama, definitly.
 
Uploading new PND now. Highlights include plugin support for popular QML plugins such as Webkit and particles, working Magma UI and better buttons for Tabbed.


To make magma show in full effects, start Panorama with magma set as the UI from settings.cfg. Then edit said settings file to set the newly appeared "magmaStream" variable to "true". This should get the juices flowing.
 
At earliest in Yars. Panorama requires Qt 4.7, which is currently packed in the PND (which makes the PND huge). Also We'd need someone to make a polished UI to go with the engine (me and dflemstr do UIs from time to time, but much of our time is spent working on the engine), and I'd really like to get OpenGL rendering working first.
 
Wow, looks great.


Perhaps you should change the install button to a run button for installed applications.
 
^ That's my test UI for trying out stuff in the package management plugin, but for an actual UI that's one possibility. I'll probably incorporate this one slightly modified to Tabbed at some point (when the plugin is ready) as a separate view though. I like to have my launcher and package manager separate :) . Anyway, when the package manager plugin is ready, it'll be quite easy to do launcher UIs with integrated package management, or even dedicated package management UIs :) . Panorama is versatile by design.
 
Here's another, per request. I started working on a preview pic browser. Didn't have more than two hours to implement support in the backend and start on the UI part, but I think it got off to a nice start.


A couple of things I at least intend to add: placeholder elements for the pictures still loading and some acceleration tuning for the image list. My WLAN was a bit slow when I did the video :)

https://www.youtube.com/embed/j2QQvip7w2A?feature=oembed
 
Last edited by a moderator:
Thanks a lot for still working on it, it's highly appreciated :)


Would it be complciated for someone with no javascript but c/c++/c# knowledge to integrate your "milky-wrapper" in simplcity ?
 
The required javascript experience would be kinda minimal. Anyone who knows c/c++/c# would have no problems in that department. Some QML knowledge would however be required, but it's a simple language.


How do you think it should be integrated? A separate view? A unified application/package search?
 
Today I added a couple of small things to the backend (like support for multiple install/remove/upgrade operations at once), and worked a bit on MilkyTest. Did a few usability tweaks, like ensuring the details box is visible when a package is selected, worked a bit on the preview browser and added free text search. Video below.

https://www.youtube.com/embed/_DIEbxzRqIg?feature=oembed
 
Thank you for your hard work, this is one of the projects I'm really interested in. I'm just waiting for it to go at least beta state, but I wanted to let you know this is quite appreciated!
 
How do you think it should be integrated? A separate view? A unified application/package search?
Funny, I thought about adding this to my previous post, but decided against it, because you already wrote that you like your things seperated.


I'm not quite sure if it would be practical (especially when there are few pnds installed and the repo has 200+ apps), as I fear that the installed pnds will perish among the not installed.


So the "all time right" solution would be to make it optional.


A basic question that came to my mind:


Is it possible (with a reasonable amount of "sweat") to implement a "dashboard" like user interface? It does not need to be very fancy, just something where you can arrange several "smart panels", like a clock, a weather indicator, system info indicators, etc (they don't have to be movable, arranging them via qml -or a configuration file would be enough). Or would that require some reworking of the basic structure of panorama ? While I'm at it :p : How about more than one "desktop" - like modern cellphones have - to which you can easily switch by pressing the shoulder button / swiping with the finger / moving the mousecursor to a screenborder ?


Last but not least: As I'm belonging to the minority that isn't really comfortable with using nubs as mouse, and rarely uses the styles - please keep it all keyboard - managable :unsure:
 
Back
Top