=== jhodapp|afk is now known as jhodapp === jhodapp is now known as jhodapp|afk [08:28] mzanetti, some things to fix on right edgehttps://code.launchpad.net/~unity-team/unity8/right-edge-2/+merge/213172/comments/504191 [08:28] https://code.launchpad.net/~unity-team/unity8/right-edge-2/+merge/213172/comments/504191 [08:57] Saviq, ping [08:57] davidcalle, hey [08:58] Saviq, hi ! I have three bugfix branches for a silo+landing, will you have time for it today ? I still need to write the testplans. [08:59] davidcalle, yeah, I can tackle the silo, if you don't have testplans I'll have to rely on you to do the testing, though [09:01] Saviq, np, I'll still write the plans to future-proof these scopes, even if you rely on me for the testing (you won't like having to install all the latex packages in the world to test one of these :) ) [09:05] Saviq, I've attached the three branches to https://bugs.launchpad.net/unity-scope-devhelp/+bug/1274669 (texdoc, calculator, devhelp scopes), will ping you when I have testplans [09:05] Ubuntu bug 1274669 in libunity (Ubuntu) "scope-runner-dbus.py crashed with signal 5 in g_variant_new_va()" [High,Confirmed] [09:06] davidcalle, those are desktop-only are they? [09:06] Saviq, yes [09:07] ok [09:07] davidcalle, we might need to wait a little, we're low on silos [09:08] Saviq, np [09:11] Saviq, tsdgeos you mind if I arrive later on monday and start working from home? It's a week I'm waiting a parcel to arrive and I just received the notification it will be delivered Monday. I cannot reschedule it :\ [09:12] Cimi, there's no clear plan for the sprint, so I think it's ok [09:12] you'll get a slap on the back, but you'll survive [09:12] Saviq, aha thanks :) I'll arrive asap [09:13] Saviq, I might work a lil today even if I booked holiday to compensate (I'm actually stubborn and I want to finish a branch) [09:13] Saviq, tsdgeos I have questions for bindings [09:14] davidcalle, building in silo 013 [09:14] when we work with properties that are set by a backend somewhere and async [09:14] for example indicators [09:14] Saviq, thanks ! :) [09:15] firse of all, I didn't really understand what Binding is [09:16] Cimi, you didn't, or you don't [09:16] ? [09:16] Saviq, don't [09:16] Saviq, apparently Binding is for C++, right? [09:16] Cimi, http://qt-project.org/doc/qt-5/qtqml-syntax-propertybinding.html [09:16] http://qt-project.org/doc/qt-5/qml-qtqml-binding.html [09:17] Saviq, I looked already at those [09:17] Cimi, no, the Binding component is just as any other binding, only explicit [09:17] Cimi, and you get the additional when: property [09:17] so [09:17] property var foo: someOtherProperty [09:17] is the same as [09:18] Binding { target: something; property: "foo"; value: someOtherProperty } [09:18] Saviq, I was wondering when we need binding and when just (looking at the example) app.enteredText = myfield.text [09:18] ah ok [09:18] Cimi, when myfield.text can change, and you want it to update [09:19] Saviq, yes, but why using Binding and not the opposite? [09:19] Cimi, the above will set (value assignment) app.enteredText to the value myfield.text had at the time of the assignment [09:19] sorry, the other way [09:19] Cimi, when not to use a Binding? [09:19] when you don't need it [09:19] that was pretty zen :D [09:19] ;D [09:19] but ture [09:19] true [09:20] Cimi, you need to think what you want to achieve [09:20] hah [09:20] Cimi, think when that javascript will execute, and whether it's the only place where you want the two values to be updated [09:20] Saviq, so Binding is two ways? [09:20] Cimi, no [09:21] Saviq, is it possible to have something two ways? [09:21] Cimi, bindings are one-way only, if you want two ways, you need to handle onChanged on both and do assignment [09:21] ouch [09:21] Cimi, dednick told you 5 times already [09:21] Saviq, I needed a 6th time [09:21] Cimi, that he planned for a bidirectional "sync" component, just didn't get to it [09:21] Cimi, a Binding is exactly that [09:21] Cimi, it reacts to onChanged on the "source" property [09:22] Saviq, because yesterday I saw some code in system-settings that left me very confused [09:22] Cimi, and sets the value on the "target" property [09:22] Cimi, it's important also, that when you have a complex binding (or Binding, or Qt.binding, they're all the same) [09:22] say property var foo: one + two / three * four [09:23] if you move the thing to a function [09:23] function bar() { return one + two / three * four } [09:23] and var foo: bar() [09:23] that's not actually gonna work [09:23] foo will only get evaluated once on startup [09:24] things that are supposed to trigger the binding need to be explicitly called in the binding expression [09:25] Saviq, because I saw this http://bazaar.launchpad.net/~system-settings-touch/ubuntu-system-settings/trunk/view/head:/plugins/security-privacy/diagnostics/PageComponent.qml [09:25] Saviq, lines 66-68 [09:25] wtf [09:25] :) [09:26] Cimi, that's ad [09:26] bad [09:26] I wanted to rewrite this code better, but I didn't know where to start and if this code was correct at first [09:27] Cimi, first order of business would be ask the author about what they wanted to achieve [09:27] Saviq, connecting to DBUS says commit [09:27] Cimi, but yeah it looks like that's a poor man's sync [09:27] Saviq, evan wrote that [09:28] I guess he's not working on that anymore now, he's managing [09:28] Cimi, so yeah a Connections {} and onCheckedChanged would probably be better [09:28] Cimi, only problem there is feedback loop [09:29] again, that's what dednick wanted to solve [09:30] Cimi, feedback loop meaning: checkbox.checked = true → checkbox.onCheckedChanged: backend.checked = true → backend.onCheckedChanged: checkbox.changed = true → ... [09:30] in the case of true this would get stop quite quickly [09:30] yeah [09:30] s/true/bool/ [09:30] 'cause the values would sync rather quickly [09:31] it's more difficult with anything arbitrary like numbers (sliders) [09:31] by the time the backend responded with changed with the new value, another one could have been sent already [09:32] say slider is going from 0 to 0.3 [09:33] slider.value = 0.1 → slider.valueChanged: backend.value = 0.1 → backend.valueChanged: slider.value = 0.1; slider.value = 0.2 → slider.valueChanged: backend.value = 0.2 → backend.valueChanged: slider.value = 0.2 [09:33] etc. [09:34] but [09:34] slider.value = 0.1 → slider.valueChanged: backend.value = 0.1; slider.value = 0.2 → slider.valueChanged: backend.value = 0.2; backend.valueChanged: slider.value = 0.1; things break [09:34] if backend is late to the game [09:41] Saviq, and in qt there's no official solution to that? [09:41] Saviq, looks like a big issue, everywhere [09:42] Cimi, not everywhere, it's only a problem with remote backends where both sides can (often) change the same value [09:42] and ones that are slow to respond [09:42] Cimi, it will reconcile anyway, it's a corner case what I described [09:43] Saviq, can't we block the ui until we get the value from the backend? [09:43] Cimi, you can get fired for even saying "block the UI", if you want ;) [09:43] Saviq, or more, block the slider until it is sync [09:44] Cimi, but anyway, a proper two-way sync component could be useful to reduce the impact, by throttling the changes, timing out, there's plenty of things that can happen [09:44] +1 [09:44] :D [09:47] Cimi, +1 on the "fired" part? :P [09:47] ahah [09:48] Cimi, but just to explain why not: we'd have to apply timeouts for backend going away for some reason, otherwise we could end up blocking indefinitely etc. - it's not worth it for a corner case [09:48] Saviq, it's not easy though, loading the UI then seeing values changing looks bad as well to be honest [09:49] Saviq: hmm... strange. AP was passing fine. will fix stuff [09:49] Cimi, make the backends respond faster :) [09:49] ideally I'd have UI super snappy [09:49] and backend catching up [09:49] so when I tap a checkbox, it is immediately switched on [09:49] mzanetti, maybe something changed, if you say it's passing for you, I'll try again, but have seen really reliable failures on them [09:50] mzanetti, let me list the tests [09:51] mzanetti, hmm now that I look, it was always GenericScopeView not found... which is weird in its own right [09:51] \o/, me used "its" correct [09:51] Saviq: ah that one... yeah... sucks [09:51] Saviq: seems qml now *sometimes* optimizes it away and sometimes doesn't [09:52] haven't been able to figure when exactly [09:52] but I changed it to only search by objectName [09:52] but then Alberts merge came in which changed it back - but still working reliably for me so I left it [09:53] mzanetti, the 60 vs. 100 GUs for side stage caught you in cross fire - we changed it before MWC [09:54] heh, yeah [09:56] davidcalle, silo built, let me know what I should test [09:56] davidcalle, would be good to get reviews on the branches, too :) [09:58] Saviq, I might actualyl start writing this component today, to learn this stuff [09:58] I have enough! [09:59] Cimi, be sure to talk to Nick for that [09:59] ok [09:59] Saviq, he's off as well today [09:59] Saviq, we might all do next week [09:59] yup [10:00] Saviq, yep, just need to find a victim for that, finding one asap [10:26] Saviq, Testplans done (links on mp), tests done (works on my machine(tm)), reviews incoming... [10:27] davidcalle, cool, will do the testing soon [10:33] MacSlow, hey, any dice on the notification avatar bug? [10:35] davidcalle, hmm I'm only getting "see more scopes" for "latex:math" [10:35] davidcalle, ps doesn't show the scope running at all [10:35] why i don't get the keyboard when running unity8 manually on the phone? [10:35] i have the maliit-server running [10:36] tsdgeos, it stops with the unity8 job, you sure it doesn't get stopped? [10:37] well i stopped unity8 [10:37] and then started maliit-server [10:37] upstart says it's there [10:37] mhm [10:37] do you get it in apps? [10:37] might want to try to restart maliit when unity8 is already running [10:37] aha [10:38] Saviq, oh sorry, the test is assuming you have logged out/in, I should make that clear. Just kill unity-scope-home and reopen the Dash, that will reload scopes. [10:38] davidcalle, right [10:38] let's try thta [10:38] davidcalle, better [10:38] Saviq, :) [10:40] restarting did the trick :) [10:42] davidcalle, ok, let me know when they're ACK'ed, am +1 on testing [10:44] Saviq, thanks, pstolowski is reviewing [10:51] Saviq, not looked into it today.. still with the boot-anim for the moment... but I'll get to it today (afternoon) [10:52] Saviq, this is the latest state I'm at there https://bugs.launchpad.net/unity8/+bug/1296777/comments/9 [10:52] Ubuntu bug 1296777 in Unity 8 "avatar displayed incorrectly in notification" [High,Confirmed] [11:05] Saviq, branches reviewed [11:47] elopio: hey [11:47] elopio: can I tell AP to give me the first child of an object, regardless of anything? [12:10] Saviq: did you write this as a todo for me or just a general todo and the respective package owners are on it already? https://code.launchpad.net/~unity-team/unity8/right-edge-2/+merge/213172/comments/504199 [12:10] mzanetti, todo for you :) [12:10] Saviq: ack [12:11] finally got AP working again. [12:11] such a pain that thing [12:12] well, I hope so. still running the whole suite at once to make sure [12:21] mzanetti, http://bazaar.launchpad.net/~phablet-team/ubuntu-touch-session/trunk/revision/163/debian/changelog [12:21] heh [12:21] nice one [12:22] ugh, /me switched channels [12:22] mzanetti, sorry [12:22] np === jhodapp|afk is now known as jhodapp [12:47] davidcalle, apparently scopes landed [12:49] Saviq, seen that, thanks a lot :) [12:50] cheers === MacSlow is now known as MacSlow|lunch === _salem is now known as salem_ [13:29] mzanetti: like get_children()[0] ? [13:30] elopio, he did that, yeah [13:30] get_children_by_type is the method. [13:30] elopio, can we get your eyes on https://code.launchpad.net/~unity-team/unity8/right-edge-2/+merge/213172 for the autopilot changes please? [13:31] Saviq: yes, I'll take a look after my current meeting finishes. [13:31] elopio, thanks [13:46] when loading a themed icon, should I pass as an Image.source "image://theme/phone-app" or "//theme/phone-app" ? [13:46] dandrader, image:// [13:46] Saviq, ok, thanks [13:46] dandrader, //theme would be a local file path [13:51] Saviq, cool got my parcel delivered right now, so I'll be there on time monday morning! [13:53] happy happy Cimi :D [13:54] and now everyone tries to guess what's in the parcel Cimi was waiting on... [14:04] Saviq, pc stuff... [14:04] Cimi, of course, yes, we believe you :D [14:05] Saviq: I have some question about the changes. With mzanetti right? [14:06] elopio, yeah, he's afk for now, so maybe leave them on the MP === dandrader is now known as dandrader|afk === sil2100_ is now known as sil2100 === MacSlow|lunch is now known as MacSlow === dandrader|afk is now known as dandrader [14:46] elopio: hey [14:49] elopio: huhu! can you please fix your IRC hightlighting? [14:57] mzanetti: it works. I was walking the dog. [14:57] elopio: ah :) [14:57] but I'm about to start a meeting. mzanetti: will you be around in ~30 minutes? [14:58] elopio: ok then. let me know when you're back :) [14:58] yes [15:03] mzanetti, what do you mean "but its annoying to update this with every commit over and over again."? [15:03] :D [15:03] mzanetti, we need to maintain the emulators, and those tests are meant to verify we are [15:04] yeah. but it didn't look like that check being that import [15:04] adding it back [15:04] also I think this is not really the proper thing to do [15:05] we should rather see if the object we have can give us what we want [15:05] and not if its name matches something [15:05] Saviq: ^ [15:06] mzanetti, well, since we maintain the object, we know what it should return (and check what type it is, as well as what it gives) [15:06] Saviq: but there's a qml optimization in between which might change the name [15:07] that's what I mean. if I add/remove one property to DashApps, that optimization might change and it becomes a GenericScopeView [15:07] just as one example [15:07] mzanetti, ah I know what you mean [15:07] while it still would have everything we need, the test fails because the name doesn't match [15:07] mzanetti, basically recently if a sub-class doesn't have new props [15:08] mzanetti, it does not appear as the sub-class, but as the base class still [15:08] yeah. but since 5.2 I think this has become a bit more flexible [15:08] mhm [15:08] with < 5.2 yes, it was exactly how you said [15:08] now it can be optimized even if it adds properties. but I still haven't found what exactly is the measurement [15:10] which is exactly this back and forth between GenericScopeView and DashApps [15:10] every time I merge trunk it changes I have the feeling :D [15:11] mzanetti, then maybe your change is good indeed, but needs to be supplemented by something? like a check of objectName? [15:11] mzanetti, and we might actually need to force it be a DashApps emulator [15:11] yeah... maybe. I'll put in the old check for now and discuss with elopio on how to make this more robust [15:12] mzanetti, elopio will know more [15:14] Saviq: also, the one above (assert_scope_is_opened(scope_id) kinda implcitly checks if its the right scope already. another reason why I just dropped it [15:15] mzanetti, yeah, but it's not just that [15:15] boiko, any news on the compile issue ran into with telephony-service (https://bugs.launchpad.net/unity8/+bug/1296777/comments/9)? [15:15] Ubuntu bug 1296777 in Unity 8 "avatar displayed incorrectly in notification" [High,Confirmed] [15:15] mzanetti, the DashApps emulator has additional members, does it not [15:15] boiko, is there a fix for it or do I need to work around it somehow? [15:15] Saviq: yeah... [15:15] mzanetti, so if something expects the DashApps emulator, but gets the generic GenericScopeView, it will be a problem [15:16] mzanetti, that's why that check makes sense [15:22] Saviq: thanks for fixing flo in the meantime [15:22] mzanetti, no worries [15:32] Cimi, standup [15:32] josharenson, standup [15:33] MacSlow: well, it shouldn't be happening in the first place, but I unfortunately didn't have time to look into that yesterday [15:34] rsalveti, hey there... I'm just wondering if there's a library I could use (early in the boot-process, when $GRID_UNIT_PX isn't set yet by ubuntu-touch-session) to read it from /etc/ubuntu-touch-session.d/$(getprop ro.product.device).conf ... otherwise I do it manually with popen() and friends. [15:34] boiko, ok... I'll look into it myself later today again too [15:35] MacSlow: sorry, I can try to look into that later today, but I have some higher priority stuff to sort out [15:36] MacSlow: we only have a library to call property_get (the getprop thing), but you'd need to read the file [15:36] boiko, ok [15:36] rsalveti, ok [15:39] rsalveti, which library provides the property_get()? [15:39] MacSlow: libandroid-properties1 [15:40] there's a -dev package for it [15:40] rsalveti, thx [15:44] mzanetti: ready. Sorry. [15:44] elopio: hi :) [15:45] elopio: so... for now DashApps is a DashApps again but I'm confident that'll change again [15:45] elopio: so for the right edge branch I reverted my AP changes [15:45] elopio: but I think we need to make this more generic/robust against QML optimziations [15:46] mzanetti: I got that from the backlog. This is so weird for me, how can you tell if QML will name a class that extends other after the file name, or after the other class? [15:46] it seems undeterministic for me. I had a bad time with CheckBoxes and Switches. [15:47] elopio: with Qt 5.0 the criteria was if a class adds properties. However, that seems to have changed with 5.2 and I'm not exactly sure yet what's the trigger. would need some evaluation [15:48] elopio: but: can't we just make sure the object has a method get_apps() or whatever instead of forcing it to be called DashApps? [15:48] mzanetti: this is what we want: https://bugs.launchpad.net/autopilot/+bug/1210260 [15:48] Ubuntu bug 1210260 in Autopilot "forcing the emulator name to be the same as the qml type it's too restrictive" [High,Fix released] [15:48] it has just landed. [15:48] the problem is linking a QML object with the helper object that provides all the methods for tests to use. [15:49] yeah... without fully understanding what's going on internally, the description sounds about right [15:49] yep. I can imagine it might be a bit tricky... [15:50] elopio: another idea: [15:50] couldn't we add the get_apps() function to the class in QML, and then invoking that from AP directly? [15:50] mzanetti: I'll just need to ask them for documentation of how to use it :/ [15:50] but in theory, we could do what you want, just return the first children and if it matches objectName='bla', it will return the helper object we defined. [15:50] even if the class names don't match. [15:50] without the abstraction layer [15:52] mzanetti: I think this is the same that you did for another branch, wasn't it? [15:52] you moved the specific method to the base class, and then it would be on both. It doesn't matter which one autopilot finds. [15:52] elopio: that's exactly this [15:53] elopio: had to revert it because the QML name changed back after I merged trunk [15:53] right, now I understand the dejavu sense :) [15:53] and because it annoyed me quite a bit, I dropped that check for isInstanceOf [15:53] :D [15:53] thinking that it would be implicitly checked for having apps anyways [15:53] which it does. but still leaves a bit more room for breakage, I agree [15:54] mzanetti: let me get with nuclearbob to understand how to use it. I have been annoyed by this for 6 months since I reported the bug. [15:55] elopio: anyways, I think we're good for the right edge branch now. [15:55] I hope to be able to show you on monday a small branch that depends on the objectName, not the class name. [15:55] mzanetti, btw, it's ok to --overwrite sometimes ;D [15:55] :D [15:55] Saviq: I try to avoid that on shared branches [15:55] can break the other's working copy quite badly [15:55] mzanetti, I know, but when it's a case like this is ok [15:56] mzanetti, i.e. 3 mins after the other [15:56] yeah, true [15:56] I'll remember [15:57] * Saviq kicks another build [15:57] aye [15:58] mzanetti: one more detail [15:58] this is extremely unsafe: 2963 + return loader.get_children()[0] [15:58] ah, except that it won't work without the unity-mir thing... [15:58] mzanetti: what would you think of try to get one, and if an exception is raised, try to return the other. [15:58] * Saviq needs to wait for that with testing [15:59] elopio: not a fan of such things. but if it gets AP out of my way, feel free :D [15:59] kgunn, hey, any luck with that demo? [16:00] you are hurting my feelings... :) [16:00] mzanetti: well, at this point, I don't understand why that change is needed. Is it because you want to avoid having to revert again? [16:00] elopio: oh. ok... sorry for that [16:00] won't happen again [16:01] elopio: let me just fix something in unity-mir first [16:01] mzanetti: I'm joking. I don't like QtTest nor javascript, but I'll have to live with it just as you. [16:01] I'll get used to it, at some point [16:03] bschaefer: man...been busy on lots of arch discussions this morning hadn't had a chance [16:03] kgunn, no worries :) [16:03] kgunn, ill poke mhr3 about it [16:04] mhr3, would you happen to know how to get unity8 to read newly installed *.desktop files? [16:04] ....or any of the other guys here.... [16:04] http://bazaar.launchpad.net/~brandontschaefer/+junk/sdl2-demo-blocks/view/head:/data/blocks-demo.desktop.in [16:04] * bschaefer remembers mhr3 doing all that fun stuff in unity7 [16:04] mzanetti: tsdgeos ^ is that desktop file kosher [16:04] bschaefer, unity8 doesn't read .desktop files itself [16:04] bschaefer, it's unity-scope-click now [16:05] i see, so how does the dash pick up new *.desktop files? [16:05] kgunn: looks ok [16:05] i had it working on unity8 for the desktop [16:05] Saviq: note that it does still read .desktop files in ApplicationManager and Launcher [16:05] bschaefer, should be enough to just search, it doesn't monitor the dirs, htough [16:05] just its failing for the phone [16:05] bschaefer, both with new scopes? [16:05] +1 looks reasonable [16:05] mzanetti, yes, but on launch [16:05] mzanetti, or so [16:05] mzanetti, it does not "find" them [16:05] Saviq, hmm i tested it before the new qt5.2 [16:05] to display all [16:06] bschaefer, yeah, we switched to the complete new scopes now, new scope backends, new scope implementations [16:06] kgunn: note that files with .in are templates that will be filled in when cmake runs [16:06] the problem with the phone, is it doesn't show up at all under search [16:06] bschaefer, you'd have to check with a recent unity8 [16:06] kgunn: the {} stuff in there will be replaced by cmake and the .in at the end removed [16:06] Saviq, oo i see, well unity8 doesn't work atm on the deskop :) [16:06] bschaefer, right... you can use unity-scope-tool to check, though [16:06] Saviq, from the phone? [16:06] * bschaefer needs a phone [16:07] bschaefer, no, desktop [16:07] o desktop [16:07] bschaefer, if you install unity-scope-click, unity-scope-tool [16:07] sweet, let me test that out [16:07] bschaefer, start scope-registry, start smart-scopes-proxy [16:07] (or restart for good measure) [16:07] bschaefer, and then UNITY_SCOPE_LIST="clickscope" unity-scope-tool should give you exactly what you would get on the phone [16:08] Saviq, awesome! [16:08] Saviq: actually, where are we going to install Unity.Application to? qt5/qml/ ? [16:08] Saviq, thanks! Ill give that a go now [16:08] mzanetti, no [16:08] Saviq: or qt5/imports/ still, just dropping the Unity-Mir [16:08] mzanetti, the path from unity-api.pc [16:09] mzanetti, same as other shell-only modules === salem_ is now known as _salem [16:11] hmm empty, possibly i've not upgraded my machine in sometime [16:12] bschaefer, did you make sure to (re)start scope-registry and smart-scopes-proxy? [16:12] bschaefer, also, it's actually SCOPES, not SCOPE [16:12] Saviq, i had started them [16:12] UNITY_SCOPES_LIST="clickscope" unity-scope-tool [16:12] that could have been the issue :) [16:12] but regardless [16:12] bschaefer, it would've shown you all [16:13] Saviq, with the S i see 2 now [16:13] oo more now [16:13] huh, there should only be one :D [16:13] Saviq, cool, now to actually install my demo [16:13] Saviq, i see 100+ [16:13] ah, items :) [16:13] that's good [16:13] bschaefer, I meant would've shown you all scoeps [16:14] oo right sorry :) [16:14] cool, thats a useful testing method [16:14] so lets say I don't see the desktop file, what should be done to get it to be read by scopes click? [16:15] bschaefer, X-Ubuntu-Touch=True [16:16] capital T? [16:16] i have true [16:16] bschaefer, well, probably doesn't matter [16:16] yeah [16:16] * bschaefer was just hoping it was cap sensitive as i have =true haha [16:16] bschaefer, and if you search for it, doesn't come up? [16:17] Saviq, i've to update and add the mir staging ppa :) [16:17] soo i've yet to test it, but its not coming up for kgunn on the phone [16:17] Saviq: pushed unity-mir install path [16:17] mzanetti, same branch? [16:17] yeah [16:17] k [16:17] Saviq, possibly kgunn needs to upgrade to the new scopes changes? (Not sure what version hes on) [16:17] https://launchpad.net/~mir-team/+archive/staging/+packages [16:18] bschaefer: i used latest image devel-proposed [16:18] sorry distracted otp [16:18] kgunn, well that looks up to date to me :) [16:18] kgunn, no worries at all! [16:18] * bschaefer is just waiting for upgrading to happen... [16:20] hmm interesting [16:20] Saviq, i would assume its my desktop file, or how im installing it, but i was putting it in the same place as the other *.desktop files I saw [16:21] bschaefer, not really [16:21] Saviq, http://bazaar.launchpad.net/~brandontschaefer/+junk/sdl2-demo-blocks/view/head:/data/CMakeLists.txt [16:21] the installing [16:21] bschaefer, I just copied one and changed its name [16:21] bschaefer, should show up, but doesn't [16:21] Saviq, o strange! Scopes *uses* to have to be opened first [16:21] not scopes [16:21] but files [16:21] but thats an application, and thats my old unity7 understanding :) [16:21] pstolowski, do you have an idea about the new click scope reading .desktop files (non-click)? [16:22] pstolowski, seems searching for a newly added one or restarting the scope registry doesn't help [16:23] mzanetti, FYI, I'd rather you have used a separate branch for that, but it's ok === gatox is now known as gatox_lunch [16:23] interesting, thanks for testing Saviq! [16:23] Saviq: I can revert and do that if you want [16:23] * Saviq reboots the phone [16:23] mzanetti, nah it's ok [16:24] thought it would make it easier if its in here [16:24] Saviq: what's the reason you'd prefer another branch? [16:24] mzanetti, separate commit in history [16:25] Saviq, all I know is click scope has a hardcoded list of non-click .desktop files for a dozen of apps [16:25] mzanetti, hmm why SHELL_PLUGINDIR and SHELL_INSTALL_QML? [16:25] mzanetti, don't they need to be in the same place? [16:26] * Saviq checks unity-scopes-shell how it does it [16:26] Saviq, http://bazaar.launchpad.net/~ubuntuone-hackers/unity-scope-click/trunk/view/head:/scope/click/interface.cpp#L53 [16:26] pstolowski, ouch [16:26] bschaefer, ↑ [16:26] Saviq: I've stolen this from unity-notifications [16:26] let me check if I copied something wrong [16:27] no... looks ok. [16:27] Saviq, i see, hmm how do new ones get added? :) [16:27] Saviq, no idea if there's anything else. checking [16:27] Saviq: yeah, I throught the same, why 2 dirs. but have used it as is because we have it like this in unity-notifications too [16:27] one thing i dont have in my desktop file is: [16:27] mzanetti, one of the vars is absolute, the other is relative [16:27] static const std::string DESKTOP_FILE_KEY_APP_ID("X-Ubuntu-Application-ID"); [16:27] not sure if thats 100% needed, but it looks like its checked for [16:28] mzanetti, notifications is using it wrong, bug #1273617 [16:28] bug 1273617 in unity-notifications (Ubuntu) "Client plugin should be installed into defailt import dir" [Undecided,New] https://launchpad.net/bugs/1273617 [16:28] aha [16:28] ok, fixing [16:28] mzanetti, check unity-scopes-shell instead [16:28] ack [16:28] mzanetti, http://bazaar.launchpad.net/~unity-team/unity-scopes-shell/trunk/view/head:/CMakeLists.txt#L55 [16:28] bschaefer, the new scope has a hardcoded list of non-click .desktop files it looks at... [16:28] kgunn, well if you realllly want to test the sdl2 demo out, edit a working desktop file :) [16:29] bschaefer, doesn't matter what the kontents are... === _salem is now known as salem_ [16:29] kontents... [16:29] Saviq, i see, well i just see more then those *.desktop files [16:29] cool... [16:29] Saviq, its ok i understood [16:29] haha [16:29] bschaefer, the rest are click apps [16:29] bschaefer, and taken from the web [16:29] bschaefer, not local [16:29] Saviq, o i see! [16:29] * bschaefer now understands what scope clicks are [16:30] * Saviq works too much with KDE people... c → k [16:30] :) [16:30] bschaefer, there are no "scope clicks" :D [16:30] bschaefer, scope is a backend for displaying data in dash [16:30] bschaefer, as in current unity [16:30] bschaefer, click are the new package format we use for apps on the phone [16:30] bschaefer, so "click scope" is a scope (like in a lens) onto click apps :) [16:31] Saviq, i think i meshed those 2 words together when i shouldn't have :) [16:31] i see [16:31] Saviq, so, there will be plans later on to incorporate non-click apps? [16:31] or is the switch to use, click apps only, besides the hard coded? [16:32] bschaefer, can't see how we can not support standard .desktop files [16:32] yeah [16:32] bschaefer, it's a shortcut, I'm sure [16:32] bschaefer, fwiw it was working before [16:32] bschaefer, it just wasn't ported to the new scope infra [16:32] Saviq, bschaefer ok, I think that was it, there is nothing more to it. if app is not on that hardcoded list, it needs to provide X-Ubuntu-Application-ID etc. [16:32] Saviq, yeah i had it working on unity8 desktop [16:33] pstolowski, yeah, it needs to be a click, basically :) [16:33] pstolowski, does the X-Ubuntu-Application-Id need to be unique? [16:33] * bschaefer imagines that being hard to guarantee a hard coded ID to be unique between different projects desktop files [16:34] bschaefer, that's why they're mangled on installation [16:34] bschaefer, it's the installation process that puts that in there [16:34] ooo i see, so thats not my job to put it in the desktop file :) [16:34] nope [16:34] cool, well at lease that issue i known :) [16:35] bschaefer, dunno about that id [16:35] Saviq, for now ill get kgunn to write over a hardcoded *.desktop file to point to the demo to test it out [16:35] bschaefer, yeah [16:35] Saviq, pstolowski thanks for all the help! [16:35] bschaefer, one of them should actually be free by now [16:35] yeah [16:35] bschaefer, like gallery, for example [16:35] i think thats what i tested on before haha [16:36] bschaefer, so just put it in as gallery for now [16:36] bschaefer, or well, package it into a .click! :) [16:36] join the cool boys :D [16:36] Saviq, is there documentation to do such a thing haha? [16:36] (only you'll have to bring SDL with you ;) [16:36] yeah haha [16:36] it's all BYOD [16:36] haha [16:37] at least until we make SDL part of the framework [16:37] well if i get sometime (there needs to be more time in a day...) [16:37] yeah [16:37] Saviq, i suppose I can for my SDL demo to overrides the gallery, but it could also be manually edited (overriding seems mean) [16:38] bschaefer, yup [16:38] bschaefer, to install .debs you need to be writable anyway [16:38] kgunn, ill get a nice diff for you, to change your gallery*.desktop file [16:38] Saviq, yeah, but doesn't the gallery app still work and is used? [16:39] bschaefer, fyi, you can also launch stuff from the console, you need to pass --desktop_file_hint=/path/to/a/.desktop/file [16:39] Saviq, i could also look at patching that hardcoded list for now [16:39] Saviq, o really?! [16:39] bschaefer, gallery has been converted to click [16:39] Saviq, oo cool, so yeah i can do that then [16:40] * Saviq 's plan to prep for sprint next week didn't work out it seems... [16:40] Saviq, so if you pass the --desktop_file_hint, unity8 starts it up and ill get access to the precious mir server/socket? [16:40] bschaefer, yeah, one thing, though [16:41] bschaefer, if launching from console [16:41] bschaefer, you need to get the correct mir socket [16:41] bschaefer, initctl get-env --global MIR_SOCKET [16:41] ok Saviq, now hopefully I got it right [16:41] and export that [16:41] its in $XDG_RUNTIME_DIR? [16:41] o [16:41] thats even better [16:41] bschaefer, yeah, that's the user's socket, the /tmp one is for the system compositor [16:42] to which unity8 connects as the session compositor [16:42] cool, i thought i looked in /tmp and didn't find a socket [16:42] then saw mir checked XDG_RUNTIME_DIR now, but that makes sense [16:42] Saviq, thanks again! [16:43] mzanetti, yeah, looks better [16:44] mzanetti, checked debian/*install ? ;) === dandrader is now known as dandrader|lunch [16:44] Saviq: looks ok :) [16:45] k [16:45] ah... not so sure. [16:45] let me verify [16:45] mzanetti, nope [16:45] mzanetti, usr/lib/*/qt5/* is wrong [16:45] yeah [16:45] just saw it [16:47] usr/lib/*/Unity/Application/* should do [16:49] Saviq: can it be that the libunity-api-dev has the wrong arch? [16:49] shouldn't it be all? [16:50] mzanetti, it installs the .la [16:50] mzanetti, I think [16:50] * Saviq checks [16:51] mzanetti, it actually ships the libunity-api.so [16:51] link [16:51] oh [16:51] mzanetti, we could probably get rid of it [16:52] mzanetti, in general -dev packages are arch-specific [16:52] mzanetti, we could potentially make it all, but I'm thinking we'll rather make it into a library sooner than later [16:52] to allow sharing between things between plugins, like enums and such [16:53] mhm... I c [16:55] Saviq: ok. I think the install path works now too [16:55] mzanetti, k [16:55] mzanetti, nope [16:55] mzanetti, you're missing a /unity8/ [16:56] /unity8/qml/ actually [16:56] where [16:56] ? [16:56] mzanetti, just execute the pkg-config line [16:57] pkg-config --variable=plugindir unity-shell-api [16:57] you'll see where it's meant to be installed [16:57] and then you'll see that the installation path needs to be [16:57] /usr/lib/*/unity8/qml/* [16:57] * isn't recursive [16:57] Saviq: ok, yes. but shouldn't that be caught by my line too? [16:58] mzanetti, no [16:58] ahhh [16:58] wb :) [16:58] grr ^W [16:58] aah, so * matches only 1 dir? [16:58] mzanetti, yeah, it's a standard glob [16:59] as in usr/*/*/*/Unity/Application would work then? [16:59] mzanetti, yes [16:59] ok [16:59] mzanetti, but it's better to be explicit [16:59] sure [17:01] ok, now then :D [17:02] Saviq: i just pushed a fix for the polishItems thing, if you have time to try to reproduce the crash it'd be cool to have someone else try it [17:02] i'm going eow now [17:03] see you on london [17:03] tsdgeos, o/ [17:03] DAMN that guy :D [17:04] what's the polishItems? the ones written by Saviq? :D [17:04] pfft! [17:05] mzanetti, you wanna join #ubuntu-devel === salem_ is now known as _salem === _salem is now known as salem_ [17:41] * greyback eow === gatox_lunch is now known as gatox === dandrader_ is now known as dandrader === salem_ is now known as _salem [18:32] Anybody know why running a QtTest on a target device results in it trying to connect to Mir? I have this backtrace: http://pastebin.ubuntu.com/7169856/ [18:33] what am I missing (I am running Mir) [18:33] it hangs trying to connect to Mir === _salem is now known as salem_ === dandrader_ is now known as dandrader|afk === gatox_ultra is now known as gatox === salem_ is now known as _salem === dandrader|afk is now known as dandrader === _salem is now known as salem_ === dandrader is now known as dandrader|afk === dandrader|afk is now known as dandrader === salem_ is now known as _salem [22:21] jhodapp, you need to pass minimal as the platform iirc [22:22] QT_QPA_PLATFORM=minimal [22:29] mhr3, thanks, I also discovered QTEST_GUILESS_MAIN [22:32] ah, maybe i should have been using that in the first place [22:32] jhodapp, so thx :) [22:39] mhr3, hehe, np :)