/srv/irclogs.ubuntu.com/2014/02/05/#ubuntu-app-devel.txt

=== chriadam|away is now known as chriadam
dupingpinghow to contigure window reponse timeout?01:49
=== Ursinha is now known as Ursinha-afk
=== chriadam is now known as chriadam|away
=== Guest38143 is now known as JamesTait
=== JamesTait is now known as Guest22694
=== Guest22694 is now known as JamesTait
JamesTaitGood morning all; happy Digital Learning Day! :-D09:13
mzanetti_WebbyIT: o/09:17
=== lool- is now known as lool
=== timppa_ is now known as timppa
WebbyITmzanetti_, welcome back o/10:16
mzanetti_WebbyIT: hey. thanks10:17
=== MacSlow is now known as MacSlow|lunch
nik90aquarius: Would you have an idea on how to remove duplicate entries in a u1db listview?12:07
nik90aquarius: or even better, when I use putDoc() I like to first check if a duplicate entry first exists.12:07
aquariusnik90, that depends on why you're getting duplicate entries12:30
nik90aquarius: let me explain the use case :)12:30
nik90aquarius: a user adds a world location. I need to detect if the user has already added it before. If he has, then it shouldn't be saved to u1db again12:31
nik90aquarius: that said, I may have found a solution. Can I run it by you quick?12:31
aquariusnik90, for that, I'd specify the docId as being the location.12:31
aquariusif you *have* a genuinely unique key for your data, and you want to not have dupes, then use the unique key as the docId.12:32
nik90aquarius: ah, so you want to set the docId during the putDoc() functio12:32
aquarius*nod*12:32
nik90aquarius: and then how do I check for duplicates in that case?12:32
aquariusif you do not care about uniqueness, or you don't have a way of ensuring it, then let u1db choose docids for you.12:32
nik90aquarius: or does u1db automatically prevent duplicate docId by showing an error12:33
aquariuschecking for dupes: if you try and putDoc with a docId that's already in the DB, it'll throw an error.12:33
ahayzennik90, can u not just check how many results are returned from a query?12:33
aquariusIf you want to *overwrite* that old doc with the new one, then trap that error, fetch the old doc again, and call putDoc with the new contents and the revision.12:33
nik90ahayzen: I could, but I got to create a query just for that. I was wondering if there was a easier way.12:34
aquariusahayzen, you could do that, but that means that every putDoc has to have a getDoc before it, which is inefficient :)12:34
nik90exactly12:34
aquariuslet U1DB take the strain.12:34
ahayzenah i see it errors :)12:34
* ahayzen takes note for his prototypes12:34
nik90aquarius: thanks a lot.. that makes more sense12:34
* nik90 is delighted...finally got rid of LocalStorage throughout the clock app :)12:35
ahayzen\o/12:35
aquariuser!!12:36
aquariusputDoc doesn't take a revision id12:36
aquariusthat's not right.12:36
aquariuskalikiana_, ping. Why doesn't putDoc take a revision? That's critical to making it work.12:36
aquariuskalikiana_, I should not be able to putDoc to an existing docId without knowing the existing doc's revision12:37
aquariusotherwise I'll blithely overwrite changes, conflicts can't happen, and syncs won't work.12:37
nik90but then http://developer.ubuntu.com/api/qml/sdk-1.0/U1DB.Database/#putDoc says it will return -1 if there is a failure12:38
nik90aquarius: on testing your solution, it works. On trying to add a duplicate entry (docId) it doesn't add it to U1db.12:41
nik90aquarius: I did isDuplicateCheck = db.putDoc({ "worldlocation": { "rawOffSet": diff, "longitude": longitude, "latitude": latitude }}, cityName)12:41
nik90        console.log(isDuplicateCheck)12:41
aquariusnik90, yeah, but you should be able to overwrite a document *if* you know its revision ID12:42
aquariusbut u1db-qt doesn't seem to expose that, nor does it allow you to supply it to putDoc12:42
aquariusthat's a pretty serious bug :(12:42
nik90aquarius: ok, for now I can do getDoc() and then manually update it. correct?12:42
nik90as a workaround12:42
aquariusat the moment you can work around it by doing things the inefficient ahayzen way, yeah :)12:42
aquariusbut this will be terrible when syncing works, because without revision IDs you will lose data when writing after a sync12:43
nik90ahayzen: what errors do you see when you added a duplicate entry?12:51
=== beuno_ is now known as beuno
nik90ahayzen: for me I dont see errors but u1db nonetheless does not allow duplicate entries12:52
nik90ahayzen: but I still like to detect the error and display a useful console message then12:53
=== Ursinha-afk is now known as Ursinha
kalikiana_aquarius: nik90: I tend to think putDoc really is for new documents, if you want to read changes or edit you'd have a Document13:25
=== MacSlow|lunch is now known as MacSlow
kalikiana_this is QML, you're not expected to call tons of javascript13:25
mzanetti_WebbyIT: hey, you approved this one: https://code.launchpad.net/~bobo-324/reminders-app/fix-1273110/+merge/20438313:29
mzanetti_WebbyIT: 2 things: it doesn't follow the coding style and doesn't listen to the signal properly13:29
mzanetti_WebbyIT: it doesn't check if the noteChanged signal is actually from the note we're expecting it to be13:29
mzanetti_WebbyIT: I've fixed stuff in here: https://code.launchpad.net/~mzanetti/reminders-app/prefetch-notes/+merge/20490513:30
mzanetti_please review when you have some time13:30
=== mardy_ is now known as mardy
aquariuskalikiana_, that means that if I want to add a document and I do not know whether it's already in the database, I *have* to getDoc first. Always. For every single putDoc I ever do.13:46
aquariuskalikiana_, otherwise I may unknowingly overwrite data in the DB.13:46
mzanetti_dpm: hey. is the reminders meeting happening today?13:47
dpmhey mzanetti_, I'm sitting next to popey in Orlando, let us have a look at the calendar...13:48
mzanetti_popey: o/13:48
* popey waves13:49
dpmmzanetti_, let's do the meeting, but on IRC14:00
mzanetti_ok14:00
nik90kalikiana_: I concur with aquarius that it is difficult to know while using putDoc() if the document is new or an existing one.14:02
nik90kalikiana_: in which case, we will have to use getDoc() everytime we use putDoc() just to check if it is an actual new document14:03
ybonpopey: I've pushed a new version of POI management, if you have some time to test :) (ref: https://bugs.launchpad.net/osmtouch/+bug/1272789 )14:04
ubot2`Launchpad bug 1272789 in OSMTouch "Use bbox instead of "radius around center" for POIs" [Undecided,New]14:04
aquariuskalikiana_, this is what revision IDs are *for*. And they are critical when syncs happen; you may putDoc thinking "I'm sure nothing has changed about that document" when actually it has changed on another machine and been synced. The U1DB putdoc API requires a revision ID for a reason :)14:04
ybonBasically, we are using bbox now, and automatically fetch new POIs when you zoom or pan the map14:04
=== mzanetti_ is now known as mzanetti
popeyybon: nice14:13
WebbyITmzanetti, done. I'll be more careful next time!14:53
mzanettiWebbyIT: thanks :)14:53
m-b-ohi dpm, any news on twc?15:00
dpmhi m-b-o, not yet, TWC are reviewing our proposal to publish the docs for the API calls that we need, but believe me you'll be the first one to know when we get an answer from them15:02
dpmm-b-o, and then I'll be dancing on the table :)15:02
m-b-odpm: :)15:02
* dpm hugs m-b-o :)15:02
m-b-odpm: no problem, but Ill start add new features branches on top of the twc branch15:03
dpmm-b-o, I'd like to keep that branch clean in case we need to do any changes after twc comes back to us. Do you think it'd be possible to base the new features on trunk instead?15:05
dpmmzanetti, do you want to join #ubuntu-touch-meeting for a quick meeting on Reminders?15:05
m-b-odpm: ok, should work too. You know that we're using only one specific api method for twc?15:08
m-b-odpm: the one with aggregated data for mobile (if it's possible)15:09
dpmm-b-o, yeah, I looked at the code and the docs.15:09
m-b-odpm: fine :)15:09
dpmm-b-o, I like the way you abstracted the backends, very neat job :)15:10
m-b-odpm: thanks :) Somewhere on my hard drive there is some (not finished) code for yr.no, btw...15:12
mzanettiWebbyIT: may I ask you to do another review for me?15:35
WebbyITmzanetti, yes, sure. I've just finished a lesson on coursera and I'm going to review all reminders-app MR :-)15:35
mzanettiWebbyIT: awesome :) what lessons are you taking?15:36
WebbyITmzanetti, Cryptography I by Dan Boneh15:36
=== gatox is now known as gatox_lunch
nik90Requesting review of https://code.launchpad.net/~nik90/ubuntu-clock-app/transition-worldclock-u1db/+merge/20496715:44
kalikiana_aquarius: I'm not disagreeing with that. just I would use putDoc for new documents, and later set its id on a Document which handles the revisioning transparently15:47
aquariuskalikiana_, then you provide no way to add a doc which *might* exist, without checking first.15:48
kalikiana_aquarius: it cannot exist if I just do putDoc({contents})15:48
aquariuskalikiana_, ya, but then you get duplicates.15:48
kalikiana_if I have say "new recipe"15:48
aquariuskalikiana_, see nik90's use case15:48
kalikiana_well, it's up to me anyway to know what the same recipe is15:48
kalikiana_aquarius: nik90 so what's the specific use case here?15:49
nik90kalikiana_: Alright so the clock app allows users to add world locations. I need to prevent them from adding the same one again.15:50
kalikiana_nik90: how do you know it's the same if it's custom locations?15:50
nik90kalikiana_, aquarius: As of now, I do not check if there is a duplicate or not since putDoc() automatically does not allowing adding documents with the same docId15:50
nik90kalikiana_: by the city name15:51
kalikiana_nik90: so the user types "berlin" and that becomes the docId?15:51
nik90kalikiana_: I compare the city name the user entered with their list of saved city names15:51
nik90kalikiana_: yup that's what I did now15:51
nik90kalikiana_: I used docId to store the type "berlin" to avoid duplicate documents (cities)15:51
kalikiana_nik90: that sounds wrong to me. I wouldn't expect you to specify a docId at all for arbitrary user input15:52
kalikiana_nik90: though to clarify, does the user define the timezone?15:52
nik90kalikiana_: at the begining, I didnt do that. I allowed u1db to choose its own docId. However I couldnt find a way to detect duplicates then15:52
nik90kalikiana_: no they just choose the city, the rest (timezone, latitude and longitude) is done by the clock app15:53
kalikiana_nik90: so if the data is all constant, why not just save a list of cities?15:53
nik90kalikiana_: because each city has its own lat, long and timezoneID15:54
kalikiana_you might not want to store documents since they will get out of date15:54
aquariuskalikiana_, the user adds a doc for each city they enter. They shouldn't add the same city twice. The best way to model this in U1DB is to use the unique data (here, the city) *as* the docId. However, u1db-qt doesn't properly support that proper way of doing it because putDoc doesn't take revisions. This is what revisions are for.15:54
nik90kalikiana_: so right now I have each document of the strcuture { worldclock: { lat: 200, lng: 200, timezoneID: "something" } }15:55
kalikiana_nik90: I mean: if the user merely picks from a list of preset data, and they cannot edit it, you probably shouldn't store that15:55
kalikiana_on the ther hand if they could edit the data, it would no longer be trivial what a dupe actually is15:55
kalikiana_to me those are very different use cases15:56
nik90kalikiana_: I use u1db to store the cities that the user has saved (chosen) and not the preset list. The preset list is in itself a xml model15:56
nik90kalikiana_: the user cannot change/edit the data (lat, lng) but they can delete the cities they saved15:57
nik90kalikiana_: here is the MP which does the transition -> https://code.launchpad.net/~nik90/ubuntu-clock-app/transition-worldclock-u1db/+merge/20496715:57
nik90kalikiana_: try it out for yourself to see what I mean15:58
kalikiana_so there is no risk of conflict, it doesn't even matter if putDoc were to ignore a duplicate document15:58
nik90kalikiana_: yup15:58
nik90kalikiana_: my aim is to avoid users adding berlin twice or thrice15:59
aquariusno. If the document exists, putDoc should require you to provide its revision ID and barf if you get it wrong.15:59
kalikiana_aquarius: I'm saying the data is constant, there is no revision - the only thing can be updated data, but the xml won't have revision numbers, only new data16:01
aquariuskalikiana_, in this specific use case, yes.16:01
kalikiana_yes. I'd like to get this before hopping to another :-)16:01
kalikiana_nik90: so do you handle new xml coming in at all currently?16:02
kalikiana_would GeoIPModel notify you in some way?16:02
aquariuskalikiana_, so, there is a list of cities with associated data. How do *you* propose that nik90 stores the list of "cities that I have added to my personal list"?16:02
nik90kalikiana_: the xml list model will not change since well citie's lat and lng dont change. That's the only data that the xml file provides.16:03
nik90kalikiana_: the timezone info on the other hand is grabbed from the online API and then appended to the data saved in u1db16:03
kalikiana_borders do change from time to time. there was a woman who had to move her house entrance to stay in her home country ;-)16:04
kalikiana_anyway16:04
kalikiana_nik90: so I see now why you save the data, it's constant but from the different apis and perhaps online sources. that makes sense16:05
nik90kalikiana_: I havent taken that consideration to account yet ;)16:05
nik90kalikiana_: this whole world clock thing is still messy until qt 5.2 lands providing native timezone ID infos.16:06
nik90kalikiana_: but I have to use the tools that I have in my disposal to implement something16:06
aquariusdoesn't matter whether that data is saved or whether we just save a list of cities they've tagged. We either save that they've tagged Berlin and London, or we save that they tagged Berlin (which has long=15,lat=48) and London (which has long=0,lat=52). We still have to save that list.16:07
kalikiana_nik90: so right now, encodeURIComponent(cityName) is unique, and the name comes from the list, so it should just work?16:08
nik90kalikiana_: yup16:08
kalikiana_aquarius: yes, though I might have considered a list in another document if the data was constant and not pulled from elsewhere16:08
aquariusI propose having one u1db document per city (for ease of display in a listview, for avoiding sync conflicts, and ease of expansion). Having one doc per city makes the best way to do that to create a doc with docId of <unique city info>. (That might be cityName, or it might be cityName+cityLong+cityLat).16:09
aquariuskalikiana_, if you have a list in one doc then you massively increase your potential rate of sync conflicts, once there's syncing.16:09
aquariuskalikiana_, because *any* two changes on different devices will create a conflict. That doesn't happen if you use separate docs.16:09
kalikiana_aquarius: hmm good point in fact16:10
nik90kalikiana_, aquarius: I had to use encodeURIComponent(cityname) as docId since there were cities with space like "Abu Dhabi" and u1db started complaining about that :)16:11
aquariusI've done a fair amount of thinking about how to model data in u1db; I'm not just recommending this approach to annoy you :)16:11
kalikiana_I suppose one thing we could do is allow a third argument on putDoc which is the revision16:11
aquariusnik90, yeah. Might wanna throw long and lat or countryName on the end there, to avoid there being two Birminghams.16:11
kalikiana_if you have it, use it, otherwise you get the first-wins as now16:11
aquariuskalikiana_, look at the Python API for putdoc and see how it works.16:12
aquariuskalikiana_, if you putdoc to a docid that doesn't exist, no problem. If you putdoc to a docid that does exist, you must specify its existing revision, to prove that you've looked at the latest revision and are happy to overwrite it.16:12
nik90aquarius: why would there be two Birminghams? since they would have the same docid which is restricted by putDoc()16:12
aquariusnik90, there's one in the UK and one in Alabama, USA, for a start :)16:13
kalikiana_aquarius: yeah so it would work the same way16:13
nik90aquarius: oh16:13
nik90how hard is it for people to come up with dfifferent names across the world!16:13
aquariuskalikiana_, seriously, I'd look at the python code before implementing, here. Getting revision IDs correct is critical for syncing, and you have to do revision IDs the same way other u1db implementations do16:13
kalikiana_nik90: I'm afraid to mention that this is not a unique instance of a city name being re-used16:13
aquariusnik90, there are loads of Londons, too. :)16:14
kalikiana_you definitely need the state or country16:14
nik90kalikiana_: +116:14
nik90kalikiana_: I will append that to the docId16:14
aquariusnik90, so you want more than just cityname. State/Country would be fine, but if you *have* lat and lon, they'll also be unique.16:14
aquariusand lat and lon are definitely unique (because of physics). It is not impossible that there are two towns with the same name in the UK, for example :)16:15
nik90aquarius: agreed16:15
nik90aquarius: I will do encodeURIComponent(cityname)+lat+lng as the docId16:15
nik90and then decodeURIComponent(model.docId).split etc etc to retrieve the cityname in the listview16:16
aquariusno no no16:16
aquariusdon't decode the docid16:16
aquariusstore the cityname in the doc16:16
aquariusdocids are an opaque cookie, once you've created them16:16
nik90that makes the listview more easier16:17
nik90okay16:17
kalikiana_https://bugs.launchpad.net/u1db-qt/+bug/1276680 ^^16:17
ubot2`Launchpad bug 1276680 in U1DB Qt/ QML "putDoc should optionally take a revision" [High,Confirmed]16:17
aquariusso docid: "London,51,0", doc contents: { city: "London", latitude: 51, longitude: 0 }16:17
nik90yup16:18
aquariusmay still want a country in there, and optionally a sub-country (state/county/etc)16:18
aquariusbut that's up to you and your data :016:18
kalikiana_what about localized city names?16:18
kalikiana_nik90: btw I saw the onItemRemoved bug mentioned in your code, I didn't have time to investigate that yet. is your work-around okay for now?16:19
nik90kalikiana_: the online API does not provide localized city names in all languages. as a result I haven't added it16:20
nik90kalikiana_: yeah its fine..it just spits a console error when one deletes the listitem16:20
nik90kalikiana_: I reported it at UITK16:20
kalikiana_yeah I saw the bug. just pondering how urgent that is16:21
* kalikiana_ currently on a sprint with plenty new tasks :-P16:21
nik90kalikiana_: btw I might propose a small MP for u1db-qt to add an easier way of testing u1db MPs :)16:22
nik90using the export QML2 path option16:22
nik90this way I dont need to install your MP everytime to test it16:22
nik90kalikiana_: yup noticed the new bug reports from the sprint..excited!16:22
WebbyITmzanetti, about https://code.launchpad.net/~mzanetti/reminders-app/reminders/+merge/20352216:23
WebbyITI'm not able to change reminders time16:23
kalikiana_nik90: I tend to have miscellanous variables in my command history to make that work… I would be open to making that a little easier16:23
mzanettiWebbyIT: did you read the description of the merge?16:24
kalikiana_(and if you're one step closer to becoming a u1db-qt dev all the better *muhahaha*)16:24
nik90kalikiana_: lol16:24
WebbyITmzanetti, yap, I had open the note before16:24
mzanettiWebbyIT: hmm, ok. then its a bug.16:24
mzanettiWebbyIT: please paste the output along with a description how to reproduce it at the merge and mark it as needs fixing16:25
WebbyITmzanetti, maybe I don't understand how modify it: I have a note, I open it, I set is as reminder, go back, go to reminder tab and then? Where I have to click to modify it?16:26
mzanettiWebbyIT: ah... the clock icon at the right16:26
* WebbyIT going to hide in a corner crying lol16:27
mzanetti:D16:27
WebbyITmzanetti, ops, it works :D16:27
mzanettiWebbyIT: so maybe you should file a bug for the design :D16:28
mzanettiWebbyIT: also, I'm not sure what should happen if you tap the title16:28
WebbyITmzanetti, ahahaha yeah, I think to press on reminder title, to expand it, but I not think to press the clock16:28
mzanettiWebbyIT: so the thing is, a reminder is actually a standard note16:28
mzanettiWebbyIT: so it probably would make sense to open the note when pressing on the title, and keep the time changes when pressing on the alarm clock16:29
mzanettiadditionally, providing a way to edit the timer in the edit note page16:29
mzanettiI'll ask Dani on his opinion on that16:30
WebbyITmzanetti, yes, sounds good. BTW, you have to fix something for Jenkins in this branch!16:30
mzanettihmpf16:30
mzanettihmm. not sure what went wrong16:33
nik90aquarius: suprisingly u1db: Invalid docID Abu%20Dhabi,54.36667,24.46667 is an invalid doc ID16:34
aquariusbah, might not like the commas.16:35
kalikiana_nik90: ^[a-zA-Z0-9.%_-]+$16:35
nik90nevermind I got it to work16:35
aquariusencodeuricomponent the whole lot16:35
aquariusbetter, docid = (cityname + lat + long).replace(/[^A-Za-z0-9./g,'_') so it'll be "Abu_Dhabi_54.36667_24.46667" which is nice and readable in debug output :)16:36
nik90aquarius: instead of the encode, I should use replace?16:39
=== gatox_lunch is now known as gatox
aquariusnik90, encodeuricomponent is easier, but your docids will be less clear in debug output (mine look like "Abu_Dhabi_54.36667_24.46667" and yours will look like "Abu%20Dhabi%2C54.3666%2C24.46667"). It is not a big deal :016:41
mzanettiWebbyIT: jenkins passed. seems it just had a bad day when it first tested this branch16:46
kalikiana_+1000 on readable debug output16:46
WebbyITnice to hear16:46
WebbyITSomeone has same issue of bug 1276711? I haven't it...17:46
ubot2`Launchpad bug 1276711 in Ubuntu Calculator App "contrast/optical illusions" [Undecided,New] https://launchpad.net/bugs/127671117:46
ogra_you probably take the wrong drugs then :)17:47
ogra_(funny bugtitle)17:47
WebbyITlol17:48
Laneyhey17:50
LaneyWe have a design which involves 'highlighting' when clicking on some elements17:50
Laneyis there a standard appearance for such a thing?17:51
ahayzenHi, who is best to talk to about the header component in the SDK?18:07
popeyahayzen: do you have specific questions?18:17
ahayzenpopey, trying to fix https://bugs.launchpad.net/music-app/+bug/123910618:17
ubot2`Launchpad bug 1239106 in Ubuntu Music App "Empty tab header obscures the queue's close button" [Medium,Triaged]18:17
ahayzenpopey, although i think via a hacky route i have just solved it18:17
ahayzenpopey, basically i listen to the header movements and force it to be offscreen if the queue is visible...18:18
ahayzenpopey, but we call header.hide() upon showing the queue but for some reason certain chains of events cause it to be visible again, causing tht bug :/18:19
popeyahayzen: brb, someone is borrowing my laptop18:20
ahayzenpopey, no worries18:20
ahayzenpopey, i may try and land my slightly hacky route so at least it is fixed for MWC18:20
WebbyITThere is a way to modify a property of a dynamically created component?18:23
nik90WebbyIT: you mean a loader?18:28
WebbyITnik90, I create a component with Qt.createComponent, in this component I create an object with component.createObject, this object as a proprerty. When I push this component on pagestack I want to modify the proprety of the objct18:30
WebbyIT*object18:30
nik90wow no idea18:31
WebbyITnik90, only way I found is to destory the component everytime I need to change it, but it uses too resources IMO18:31
WebbyITmzanetti, mhh, I'm working on change account after the login for reminders-app, but I'm not able to find a way to disconnet from actual account. Do you know if there is way?18:33
mzanettiWebbyIT: just unset the token in NotesStore18:34
WebbyITwow, so simple! Thanks!18:37
ahayzenpopey, damn it solves 2 of the 3 use cases for causing tht bug :( so close lol18:38
popeyahayzen: i just triggered it via playlists on #16118:39
popeyahayzen: do you need more data or a video or something?18:40
ahayzenpopey, basically there are two different things happening.... one of the cases header.hide() doesn't move the header...and another is that it decides to move the header.y on its own (this is the one i fixed by listening)18:40
=== boiko_ is now known as boiko
ahayzenpopey, i'm not sure, i think it is something in the SDK going wrong, but because the app is quite complex i haven't been able to create a small test app that causes the issue18:42
* popey waves his phone at an sdk person18:44
ahayzenpopey, do we know who is responsible for this component/someone with more insight to how it works - that could help me investigate further?18:44
ahayzenpopey, FYI this branch has some tweaks which solves some of the cases and extra debugging trying to figure out the others lp:~andrew-hayzen/+junk/music-app-header-fix18:47
popeyahayzen: just spoke to tim, he asked if you could make a small reproducible code snippet and file a bug against ubuntu-ui-toolkit ?18:50
ahayzenpopey, i've tried before with no success :/ but i'll try again as i've got more knowledge of the issue now18:52
* ahayzen waves at tim18:52
popeyheh18:52
* ahayzen pokes tim with https://code.launchpad.net/~andrew-hayzen/ubuntu-ui-toolkit/fix-swipe-delete-002/+merge/20217118:53
ahayzenpopey, also on the desktop if the window loses and regains focus the header reappears, it is like we need a way of locking the header to be hidden19:01
kalikiana_WebbyIT: PageStack.push(page,properties) does take properties19:18
ahayzenpopey, no luck as of yet creating an example :/, just going to shops brb19:34
dpmmzanetti, it seems that that bug whereby on editing a note the cursor was offset has been fixed somewhere else :)19:37
aquariusHow can I programmatically find what's currently on my Launcher? dpm or mhall119, you might know this :)19:37
mzanettidpm: huh?19:37
mzanettiits working now?19:37
dpmyeah, just tested it. I wanted to show it to Zoltan, and I've just realised it works now19:38
mhall119aquarius: I think it's stored in dconf19:38
mzanettiaquarius: on the phone?19:38
mhall119aquarius: pinned ones anyway19:38
mhall119running ones you might need to query something like BAMF19:39
aquariusmzanetti, well, I am assuming that right now I can't do this on the phone because app confinement will prevent me from doing it.19:39
dpmaquarius, no idea, I've just forwarded the question to Mike sitting next to me :)19:39
aquariusmhall119, ah, cool, dconf sounds OK. Is it exposed at a higher level? I can't find anything in libunity which looks at it.19:39
mzanettiyeah, its in dconf for unity719:39
mzanettifor unity8 it's in accounts-service19:40
mzanettigdbus call --system --dest org.freedesktop.Accounts --object-path /org/freedesktop/Accounts/User32011 --method org.freedesktop.DBus.Properties.Get com.canonical.unity.AccountsService launcher-items19:40
mhall119aquarius: I doubt it19:40
mhall119it's not exactly something we've had a want or need to promote the use of19:40
aquariusmzanetti, ah, nice. That'd be useful if app confinement would let me call it. Looks like I'll hit dconf for now and then talk about how to do this from a confined app later. :)19:41
aquariusmhall119, yeah, understandable, I suppose :)19:43
aquariushm, interacting with desktop features, which means that I get to write a gtk app, since I can't do C++ :(19:44
kalikiana_you can do QML on the desktop :-]19:45
aquariuskalikiana_, sure, but I can't, for example, resolve the URL "application://nautilus.desktop" into the contents of the corresponding desktop file from QML. I'd need to write proper Qt for that, which means C++.19:47
kalikiana_aquarius: what do you do with those contents?19:47
aquariuskalikiana_, I want to get a list of all the apps pinned to my launcher, and look them up to get the name, icon, and package name for each app19:48
aquariuswithout writing any C++.19:48
aquariusThat, I think, means a python+gtk app.19:48
kalikiana_hmm I think there was api for that, trying to recall19:49
aquariusreally? do tell!19:50
aquariusif there is some I'd love to use it and write an SDK app19:51
kalikiana_I don't find it, maybe it was just a branch that wasn't ready - but there were qml bindings for it19:54
kalikiana_I'd say write a short email and somebody surely would remember it19:54
aquariuskalikiana_, qml bindings for all that? gsettings and desktop file lookup and icon theme lookup?19:58
kalikiana_bindings for gsettings exist, as does image://theme/ICONNAME20:00
kalikiana_so the thing missing here is getting launchers from the shell20:00
WebbyITmzanetti, mhh, I have some problems with change account. So, I modify the token, EvernoteConnection::setToken emits a signal, tokenChanged(), and NotesStore::refreshNotes is evoked, but in the ListView there are old notes, so when I change account I have all notes, both  from old and new account.  I don't understand how to modify code to remove old notes...20:18
mzanettiWebbyIT: hmm... right... let me look at the code for a minute20:19
balloonsping nik9020:25
nik90balloons: pong20:25
balloonsnik90: how's alarm tests going?20:25
balloonsnik90: do you think it's going to require you to have a look, or ?20:26
nik90balloons: the tests *definitely* require a look since the UI changed quite a bit20:26
nik90balloons: I was busy with u1db stuff today20:26
balloonsnik90: I was going to ask if you think someone else can make the changes or not.20:27
nik90balloons: I will have a look at it tomorrow since I need to first install the latest EDS packages first20:27
nik90balloons: that is also possible20:27
nik90renato: ping20:28
renatonik90, pong20:28
nik90balloons: do you mind if I have a go at it tomorrow20:28
nik90renato: the latest qtorganizer5-eds package is only updated on trusty. anyway to push it to the core apps PPA for 13.10 and earlier?20:29
nik90renato: or should I go about manually installing the .deb file on my 13.10?20:30
balloonsnik90: not at all.. I was just checking :-) You are probably the correct person to have at it20:30
* balloons excitied about it landing20:30
renatonik90, I am not sure, maybe popey nows about that20:30
nik90balloons: awesome :-)20:30
nik90renato: alrite I will check with him20:30
nik90popey: ^^20:31
nik90balloons: one question..20:31
nik90balloons: so the alarm tests, do I assert them by checking with EDS or just check with alarm manager if adding an alarm worked?20:31
nik90balloons: also it takes few seconds for the alarm to be saved. Would wait_single_select() be alright for that?20:32
popeynik90: upgrade to 14.04 ☻20:32
nik90popey: hehe20:33
nik90popey: but are the jenkins machines running 14.04? since the autopilot tests require them as well :)20:33
popeyap tests are run on 14.0420:34
nik90popey: but should I seriously upgrade to 14.04 though? since there are so many new contributors who made their bug patches from 12.04-13.1020:36
popeyup to you. 13.10 is supported, and sure, we can look at putting things in PPAs of they're not going to get backported formally20:37
mzanettiWebbyIT: https://code.launchpad.net/~mzanetti/reminders-app/clear-on-logout/+merge/20504320:38
WebbyITmzanetti, thanks, I test it now20:38
nik90popey: hmm okay. I think I will stay in 13.10 for a bit more time. On checking the core apps ppa, I noticed that an older version of EDS is already there in the PPA. So I assume that adding the newer build shouldn't be difficult. Does dpm usually do the package push into the PPA? It would be nice if this can be done.20:41
nik90popey: its not urgent, since I will just manually install the package for now.20:41
nik90https://launchpad.net/~ubuntu-touch-coreapps-drivers/+archive/daily?field.series_filter=saucy20:42
popeydpm: i think that package is manually pushed by anyone with access20:43
dpmnik90, I push some external dependency packages when we need them to the PPA every now and then, but I don't know much about how backportable the EDS plugin is20:43
dpmI'll ask renato20:43
nik90dpm: thnx20:44
dpmrenato, if we wanted to copy or backport the latest EDS plugin package to 13.10, is there a PPA that we could get the EDS plugin from?20:44
nik90dpm: renato asked me to ask popey :)20:45
dpmnik90, we'll all have a chat when we've finished this meeting, we happen to be in the same room now20:45
dpm:)20:45
dpmsorry for the ping-ponging20:45
nik90dpm: ok20:46
aquariusgnaaaah. How do I get the actual icon for Nautilus, given only its name (system-file-manager)? Gtk.IconTheme().choose_icon("system-file-manager") doesn't find it, but clearly it's findable otherwise Unity wouldn't be able to display it either :(21:00
mzanettiWebbyIT: does it work?21:01
WebbyITmzanetti, mhh, I'm not sure, it seems not, but I don't want to have done a wrong implementation21:01
mzanettihmm... you just need to call EvernoteConnection.token = "";21:02
mzanettithe rest should happen automagically21:02
aquariusahaha! I need the *default* icon theme. How very unclear. :)21:03
kalikiana_aquarius: why do you use such low-level apin instead of ie Gtk.Image?21:05
aquariuskalikiana_, because I have a list of desktop files, which I use Gio.DesktopAppInfo to read, and that gives me only icon names; I want to get the data for those icon names. That means looking them up in the theme, I think21:06
kalikiana_aquarius: what data is that other than displaying them?21:06
aquariuskalikiana_, getting the data from them and bundling that up into an HTTP POST.21:07
kalikiana_oh21:07
kalikiana_that makes sense then. you'll need to serialize the pixbuf21:07
* kalikiana_ should've known aquarius would not do anything boring normal :-]21:08
aquariusya. :)21:09
WebbyITmzanetti, my error, works as expected! Now I have only to find a way to save favourite account...21:25
mzanettiWebbyIT: right... let me see21:25
mzanettiWebbyIT: I'd say you create a Settings class, just like the CameraHelper and set that into the context in main.cpp. same as cameraHelper21:27
mzanettiWebbyIT: in the Settings class use QSettings21:27
WebbyITmzanetti, right, I look at your code and try to implement it, thanks :-)21:27
mzanettiWebbyIT: here's an example: https://github.com/mzanetti/shine/blob/master/apps/ubuntu/keystore.cpp21:28
mzanettiWebbyIT: actually the KeyStore class here does *exactly* what you want: https://github.com/mzanetti/shine/tree/master/apps/ubuntu21:29
WebbyITmzanetti, wow, thanks \o/21:29
dpmmzanetti, still around?22:40
mzanettidpm: sort of, yeah22:40
dpmmzanetti, quick question: can we create a new click package and upload it to the store, or after the account plugin merges do we need to land a new account plugin in the image first?22:41
dpmfor Reminders, that is22:41
mzanettidpm: yeah. I'd say we need to drop the other plugin from the image and seed this one22:43
mzanettibut I'm not exactly sure what needs to be done22:43
mzanettiI think sergio set that up22:43
dpmmzanetti, ok, we'll get a landing slot for the account plugin first and then we'll upload a new .click to the store after the plugin has landed in the image22:44
dpmthanks!22:44
WebbyITmzanetti, mmh, after a fight with C++ and CMake I add all files to save credentials: I save account userName, but I don't know how to do the login with accountservice. I red the documentation and some codes, but I don't understand what use, if username is ok or if I have to save another credential...23:00
mzanettiWebbyIT: you need to get to the Account you need and call authenticate() on it.23:00
mzanettithat will return you the new token which you then set to EvernoteConnection.token and store to the config23:01
mzanettibrb23:01
WebbyITok, I look at the code23:01
=== chriadam|away is now known as chriadam

Generated by irclog2html.py 2.7 by Marius Gedminas - find it at mg.pov.lt!