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