{"id":4946,"date":"2011-07-31T10:38:00","date_gmt":"2011-07-31T10:38:00","guid":{"rendered":"http:\/\/www.notmart.org\/index.php\/Software\/Instant_apps"},"modified":"2011-07-31T10:38:00","modified_gmt":"2011-07-31T10:38:00","slug":"instant_apps","status":"publish","type":"post","link":"https:\/\/notmart.org\/blog\/2011\/07\/instant_apps\/","title":{"rendered":"Instant apps"},"content":{"rendered":"<p>Recently the Plasma library just got a new neat feature: the support for packages of files the are pretty generic, not bounded to being a &#8220;plasmoid&#8221;.<\/p>\n<p>Is something, that even tough seemingly small, has some pretty interesting applications:<\/p>\n<ul>\n<li>Shipping parts of bigger QML user interfaces as Packages, avoiding making most of it &#8220;public api&#8221; as the imports do<\/li>\n<li>distributing applications plugins or extra sets such as graphics and sound via get hot new stuff or keep it updated via <a href=\"http:\/\/aseigo.blogspot.com\/2011\/01\/synchrotron-update.html\">synchrotron<\/a><\/li>\n<li>use the plasma package file loading mechanism to have qml files loaded only in a specific hardware profile, to be able to do a <a href=\"http:\/\/www.notmart.org\/index.php\/Software\/One_plasmoid_3_platforms\">multi device package<\/a>.<\/li>\n<li>Ship the entire user interface of a mobile application in a single, well structured package<\/li>\n<\/ul>\n<p>How those are used? for the main part of the Plasma active Contour UI home screen, besides from that i decided to give it a go for doing partly C++, partly QML stand alone applications.<\/p>\n<p>The two examples below represent not more than 4-ish hours of work each and are a web browser and an image viewer. What is interesting is that they got almost for free some contour specific features, like:<\/p>\n<ul>\n<li>The browser uses nepomuk for its bookmarks, so they are available system wide and they can be connected to an activity<\/li>\n<li>The bookmarks are added with the system-wide SLC menu (more on that next post \ud83d\ude09<\/li>\n<li>all the addresses visited with the browser will end up in the statistics used to generate the Contour recommendations<\/li>\n<li>The image viewer completely ignores the concept of file system, it just uses nepomuk<\/li>\n<li>Same considerations for bookmarks, SLC and recommendations hold for the image viewer too<\/li>\n<\/ul>\n<p>Here we go with brief showcase videos:<\/p>\n<p><iframe loading=\"lazy\" width=\"560\" height=\"349\" src=\"http:\/\/www.youtube.com\/embed\/2fwolxIykIc\" frameborder=\"0\" allowfullscreen><\/iframe><\/p>\n<p><a href=\"http:\/\/blip.tv\/file\/get\/Notmart-PlasmaActiveWebBrowser309.ogv\">OGG version<\/a><\/p>\n<p><iframe loading=\"lazy\" width=\"560\" height=\"349\" src=\"http:\/\/www.youtube.com\/embed\/1apWw37ENqM\" frameborder=\"0\" allowfullscreen><\/iframe><\/p>\n<p><a href=\"http:\/\/blip.tv\/file\/get\/Notmart-PlasmaActiveImageViewer998.ogv\">OGG version<\/a><\/p>\n<p>Of course those are just at the beginning and at proof of concept level, but they show the potentiality of this framework to build QML based &#8220;active apps&#8221; very, very quickly.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Recently the Plasma library just got a new neat feature: the support for packages of files the are pretty generic, not bounded to being a &#8220;plasmoid&#8221;. Is something, that even tough seemingly small, has some pretty interesting applications: Shipping parts of bigger QML user interfaces as Packages, avoiding making most of it &#8220;public api&#8221; as [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[16],"tags":[9,31,2,10,11,7,19],"class_list":["post-4946","post","type-post","status-publish","format-standard","hentry","category-software","tag-active","tag-contour","tag-kde","tag-kde4","tag-mobile","tag-plasma","tag-tablet"],"_links":{"self":[{"href":"https:\/\/notmart.org\/blog\/wp-json\/wp\/v2\/posts\/4946","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/notmart.org\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/notmart.org\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/notmart.org\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/notmart.org\/blog\/wp-json\/wp\/v2\/comments?post=4946"}],"version-history":[{"count":0,"href":"https:\/\/notmart.org\/blog\/wp-json\/wp\/v2\/posts\/4946\/revisions"}],"wp:attachment":[{"href":"https:\/\/notmart.org\/blog\/wp-json\/wp\/v2\/media?parent=4946"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/notmart.org\/blog\/wp-json\/wp\/v2\/categories?post=4946"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/notmart.org\/blog\/wp-json\/wp\/v2\/tags?post=4946"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}