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

=== andrea is now known as Guest47584
rpadovanimzanetti, popey o/ :-) I'm looking at design spec for camera page in reminders-app. Is it equal to camera-app, right? But, if I understand well, there is no way to use directly the camera app. So, can I just merge camera-app with reminders-app and adapt it to our needs?12:13
popeyrpadovani: i thought you could use the camera from qml - i wouldn't look at camera-app, I dont think that would help12:28
rpadovanipopey, yap, I can use Camera element, but in design spec there are all buttons like the camera app12:29
rpadovanipopey, I have to implement them, and they are equal to camera-app buttons,...12:29
popeythe camera-app is C++ i think though..12:30
popeyoh, maybe not12:30
popeymzanetti may have better ideas on how to implement that..12:31
rpadovaniok, thanks, I'll wait mzanetti to do the best implementation possible :-)12:31
ybonpopey: hey, you there :)12:32
ybonRainy and windy Saturday here, so I will have some time to hack on calendar-app I think :)12:32
nik90popey: I wouldn't be able to complete the clock convergence work by MWC due to https://bugs.launchpad.net/ubuntu-ui-toolkit/+bug/128035912:53
ubot2`Launchpad bug 1280359 in Ubuntu UI Toolkit "Ubuntu Layouts causes application to crash while switching from one layout to the other" [Undecided,New]12:53
nik90popey: however I heard from bzoltan that the updated SDK package will land on the phone in image #184. This means that I will be able to finally push the performance patches to the phone.12:54
jdstrandhow do I change the background color or font color for things like the OptionSelector or TextArea13:37
jdstrandI've looked at the theming documentation (what I could find-- maybe I haven't found the good docs), but can't really make heads or tails of it13:38
rpadovanijdstrand, http://developer.ubuntu.com/api/qml/sdk-14.04/Ubuntu.Components.TextArea/#color-prop13:41
jdstrandrpadovani: ok, right, that is the fount color of the textarea, what about the background color? (I forgot I knew how to change the font color of that one)13:42
jdstrands/fount/font/13:43
ogra_jdstrand, properties work on nearly all elements13:43
jdstrandbasically, I'd like to override what the Ambiance theme is doing for a couple of components I am using, so I can have a 'light' theme in my app instead of only 'dark' themes13:44
ogra_use it for the Page or wahtever your app uses as top level UI element13:44
ogra_(or MainView)13:44
jdstrandogra_: backgroundColor isn't exposed to TextArea and color and backgroundCOlor aren't exposed in OptionSelector13:44
nik90jdstrand: I do not know for OptionSelector, but for TextField, I used style to change the background to my liking13:45
jdstrandnik90: how do you use 'style'?13:45
jdstrandthat is what I couldn't figure out13:45
rpadovaniAFAIK only from QT5.2 you can change background for TextArea with style13:45
* jdstrand thought he read that, fwiw13:46
nik90jdstrand: so basically you need to go to /usr/lib/x86-linux-gnu.../Ubuntu/Ambiance/ folder to check what styling properties have been exposed for a particular component.13:46
jdstrand(the 5.2 bit for textarea)13:46
nik90jdstrand: For the TextField for instance,13:46
nik90I did style: TextFieldStyle {13:46
nik90        background: Item {}13:46
nik90    }13:46
nik90This makes the textfield background transparent13:47
nik90jdstrand: although here is a warning..I talked to zsombi about this and he said that the styling API is not yet finished13:47
jdstrandI need to import Ubuntu.Components.Themes.Ambiance 0.1 to do that, correct?13:47
nik90meaning things could break at any point13:47
nik90jdstrand: that's right13:47
nik90you need to import that in the page where you do this13:48
jdstrandyeah, it seems its already changed from qmltheme with ItemStyle to this13:48
jdstrandnik90: so, to not be transparent, I would do: background: Item { color: "red" }?13:49
nik90I suppose yes.13:49
* nik90 tries it out now13:49
jdstrandthat is less than intuitive, but let me try13:49
nik90actually it will be Rectangle { color: "red" }13:49
nik90since Item doesn't have color property13:49
popeynik90: ooh, #184 is likely to arrive on monday13:50
jdstrandhmm, I think I tried that with OptionSelector, but it didn't work. let me try again13:50
popeynik90: oh, no.. #184 already built, my phone wants to go to 18513:50
popeyybon: windy days are coding days ☻13:50
nik90popey: in that case 185..but I am pretty sure that the SDK will be updated quite soon :)13:50
nik90popey: I have already finishing dynamically loading stopwatch and timer tab only when necessary13:51
ybonpopey: :)13:51
ybonpopey: I've two questions for you if you have two minutes13:51
rpadovaninik90, about bug 1272630: I did a lof of proof, but none of them works. Do you have an idea on how to fix it?13:52
ubot2`Launchpad bug 1272630 in Ubuntu Clock App "Certain editable fields should be in views that anchor to keyboard" [Medium,Triaged] https://launchpad.net/bugs/127263013:52
nik90rpadovani: did you try the method I mentioned in my blog about anchoring to the keyboard?13:53
rpadovanipopey, my phone wants to stay on 181 :/13:53
rpadovaninik90, yap13:53
nik90rpadovani: also did you enable anchorToKeyboard: true ?13:53
rpadovaninik90, yap13:53
rpadovaninik90, I changed a lot of anchor and always with anchorToKeyboard enabled13:53
* jdstrand just discovered anchorToKeyboard last night13:54
rpadovaninik90, or I'm become crazy (that is possible) or something is wrong somewhere13:54
popeyybon: sure13:54
nik90rpadovani: hmm that's weird. I will give it shot when I get some time this weekend13:54
jdstrandI <3 anchorToKeyboard13:54
jdstrand:)13:54
nik90rpadovani: although I am unable to test on phone yet due to the cmake transition :/13:54
nik90rpadovani: I am going to branch an old clock app rev and try hacking on that13:55
nik90jdstrand: yup it is so useful13:55
rpadovaninik90, I'm working on an old branch :)13:55
nik90rpadovani: can you push your branch, I will take a look13:55
nik90rpadovani: clever :)13:55
jdstrandyeah, I can't seem to change the background of the OptionSelector13:56
nik90jdstrand: did you check the optionSelector style file?13:56
jdstrandnik90: it is virtually empty13:56
nik90since it could be that the styling properties arent public13:56
nik90jdstrand: in that case you can't :/13:56
ybonpopey: first is: how do you run autopilot tests for calendar-app :)13:56
jdstrandnik90: but I could easily not understand what I am looking at13:56
popeyybon: on device?13:57
nik90jdstrand: the optionSelector is lacking a lot of things :/ unfortunately..I myself am waiting for a particular patch for about 2 months now13:57
ybonpopey: equal13:57
popeyybon: http://paste.ubuntu.com/6937298/13:57
jdstrandreally, I could live with just changing the font color13:57
popeythats script13:57
ybonbut it whould be helpful to be able to run them through qtcreator too13:57
popeyybon: ./testing lp:ubuntu-calendar-app calendar_app13:57
popeylike that13:57
ybonah, thanks13:58
popeyi dont know how via qtc13:58
ybonok13:58
popeynik90: do you ever run the ap tests via qtc?13:58
ybonso you put the script on the device, then ssh, then fiesta? :)13:58
nik90popey: is that even possible?13:58
nik90popey: for running AP tests on laptop, I use the terminal and run it manually13:59
popeydunno ☻13:59
popeyybon: no, run that script from pc13:59
ybonnik90: ah, with this same script?13:59
ybonah ok :)13:59
popeyybon: you have to make sure the screen is unlocked when the test begins13:59
ybonok13:59
yboncan I point to my local code instead of a lp branch?14:00
jdstrandoh!14:00
* ybon goes to chech the script14:00
nik90ybon: no .. on the desktop you don't need any script. The script is only for running the AP tests on the device14:00
popeyybon: pass, it's a script I got off balloons14:00
popeybut yeah, probably14:00
jdstrandOptionSelector {14:00
ybonnik90: so how do you do it on laptop? :)14:00
jdstrandstyle: TextAreaStyle { background: UbuntuShape { color: "red" } }14:01
jdstrandthat actually changed the color14:01
nik90ybon: navigate to ubuntu-calendar-app/tests/autopilot/14:01
jdstrand(yes, I use TextAreaStyle with OptionSelector14:01
jdstrandthat is surely going to break going forward14:01
andrea_is there a way to know if someone has installed my ubuntu-touch app?14:01
popeyjdstrand: i was playing blabble the other day to test a device.. nice app!14:01
nik90ybon: then run autopilot run ubuntu_calendar_app14:01
jdstrandthanks! :)14:01
nik90ybon: that should run all the AP tests14:02
ybonnik90: nice, that's what I was looking for :)14:02
rpadovaniybon, nik90 actually for calendar is "autopilot run calendar_app"  :-)14:02
jdstrandpopey: it was fun writing it. the big thing it needs now is alternate dictionaries (with alternate alphabets)14:03
nik90rpadovani: yeah just realised :)14:03
ybonrpadovani: yep, thanks, was about to say it that I needed remove ubuntu_ :)14:03
ybonthanks :)14:03
nik90ybon: btw, you can also do "autopilot list calendar_app" to list all the AP tests and run a particular one by "autopilot run ap-test-name"14:03
jdstrandI designed it with that in mind, but I want a large wordlist for for spanish, french, german, etc14:03
popeyjdstrand: how will you do that? in-app purchase ㋛14:03
nik90in case you are testing a particular one14:03
nik90jdstrand: oh btw I love your blabble app, didnt know it was yours :)14:04
jdstrandpopey: heh, 'no'. But, I thought I could use the download manager api with it14:04
popeyoh good, I was hoping you'd say that14:04
jdstrandyep! thanks :)14:04
popeyI can see that being useful for other apps14:04
ybonNo module named ubuntuuitoolkit => nik90 or rpadovani: do you know he name of the package to install from the top of your head, by chance?14:04
jdstrandyeah. it seems like the perfect use for it14:05
jdstrandbut I need a good word list. they are hard to find, especially since I don't speak those other languages14:05
nik90ybon: where do you get that error?14:05
jdstrandso I don't know how good a list is that I find14:05
ybonI guess this one: http://developer.ubuntu.com/api/devel/ubuntu-13.04/autopilot/ubuntuuitoolkit.html but not install info14:05
ybonnik90: runing autopilot14:05
rpadovaniybon, libautopilot-qt python-autopilot14:06
rpadovanifrom ppa:autopilot14:06
ybonthank you rpadovani! :)14:06
nik90rpadovani: I thought WebbyIt was cool14:06
jdstrandI am still rather shocked that OptionSelector { style: TextAreaStyle { background: UbuntuShape { color: "red" } } actually worked. that looks seriously wrong :P14:07
rpadovanirpadovani, me too, it's a bit weird change username, but I use WebbyIT only here (and on XboxLive) and it's bit confusing IMO14:07
rpadovaninik90, ^^14:07
nik90jdstrand: lol..yup..14:07
rpadovanijdstrand, yap, a bit crazy14:07
rpadovaniybon, mhh, maybe also ubuntu-ui-toolkit-autopilot if is not a dependecies of one of others two packages14:08
jdstrandnik90, rpadovani: thanks for your help. I may just use this for now, if it breaks, I'll disable my 'light' theme14:08
ybonok14:08
ybonapt-get updating at the moment14:08
ybon(slow harbour wifi...)14:08
popeyhehe14:09
jdstrandand I'll file a bug14:09
nik90rpadovani: did you figure how to use the analyse tab in qtcreator?14:10
nik90rpadovani: I have some upcoming performance patches for clock app and I really want to measure the difference14:10
rpadovaninik90, nope, I'm able only to use qmlprofiler, valgrind seems to work only with Cmake, I suppose, because with reminders-app works14:11
ybonpython-autopilot : Recommends: libautopilot-qt (>= 1.4) but 1.3+13.10.20130814bzr70saucy0 is to be installed :( Now lets play the apt game ;)14:12
rpadovaniybon, did you add ppa:autopilot ?14:13
ybonyep I14:13
ybonI have two versions in my apt-cache show, but both are 1.314:13
ybonI think I need to take and compile Trusty version14:15
rpadovaniybon, mhh, I have Version: 1.4+14.04.20131106.1bzr77saucy014:15
nik90ybon: no14:15
nik90ybon: add https://launchpad.net/~autopilot/+archive/experimental ppa14:16
nik90ybon: it definitely has the required 1.4 packages14:16
rpadovani1.4+14.04.20131106.1bzr77saucy0 014:16
rpadovani        500 http://ppa.launchpad.net/autopilot/1.4/ubuntu/ saucy/main amd64 Packages14:16
ybonaaah, nice, thanks :)14:16
nik90after which sudo apt-get install libautopilot-qt python-autopilot should be good14:16
rpadovaniybon, add-apt-repository lp:autopilot/1.4 I think is sufficent14:16
rpadovani*sufficient14:17
ybonah oops, too late :p14:17
ybonlets go back :)14:17
nik90the autopilot ppa does not have 1.4 autopilot-qt14:17
nik90so either you need the autopilot/1.4 ppa or the experimental ppa I mentioned above14:17
ybonso you mean experimental is the only whay to go?14:17
ybonah ok14:17
ybonlet's go on stable 1.4 has I'm not hacking on autopilot itself14:18
nik90ybon: it is not really experimental, it is more like the trunk package, but yes go for the stable 1.4 ppa14:18
ybongo wifi go, sudo apt-get update again :)14:20
popeyDo you have to pay for harbour wifi?14:24
ybonnope14:24
rpadovaninik90, when I enable anchorToKeyboard there is a strange artifact on the screen (I took a photo and not a screenshot because screenshot script doesn't work and I have not investigated yet on why fails). Do you see this strange purple line upon the keyboard? If I disable anchorsToKeyboardad there isn't14:25
rpadovanihttp://people.ubuntu.com/~rpadovani/touch/clockAnchorKeyboard.jpg14:25
nik90rpadovani: ah nice screenie :P14:25
popeywell at least that's something!14:25
nik90rpadovani: that is just the bottom margin14:26
rpadovaninik90, do you know how to fix it?14:26
ybonautopilot tests running \o/14:26
rpadovaniybon, \o/14:27
ybonFAILED (failures=17) oops14:27
ybonanyone able to run them just to check if they have same failure?14:28
=== Ursinha is now known as Ursinha-afk
andrea_is there a way to know if someone has installed my ubuntu-touch app?14:34
ybonpopey: next question is, who is the maintainer of calendar-app at the end? i.e. who I need to bug to get feedback on my pushes, or to know what to work in priority, etc. :)14:34
popeyybon: good question!14:38
popeyKunal is the main developer14:38
ybonokay14:39
popeyybon: right now the priority is to get calendar looking awesome on tablets for mwc demos, and making calendar events work brilliantly once you google calendar sync14:39
nik90ybon: I ran the AP tests...14 PASS and 6 FAIL14:39
ybonnik90: thanks14:39
ybonpopey: for example, if I want to know if it's worth working on failing test, I send an email to Kunal?14:40
ybonpopey: I can work on the tablet thing, do we have mockups?14:40
nik90rpadovani: I checked the timerPage, I dont seem to have set any margins specifically. so puzzled as to why that space is there.14:41
popeyybon: there's some suggestions at https://wiki.ubuntu.com/Touch/CoreApps/Convergence14:41
popeyybon: Andrea Del Sarto made those.14:41
ybonokay, nice14:42
popeyybon: you could drop kunal a mail and maybe also Andrea14:42
popeyybon:14:42
popeypm'ed you his email address14:42
ybonok, great, thanks :)14:42
ybonpopey: I was thinking of a flat "incoming events" to add to the app, and i see that it's more or less what's on the right side, which is great14:43
ybondo you think it's a good idea to add this view also on mobile, so?14:43
ybonobviously in a separate page14:43
rpadovaniOMG I ran AP tests and my computer exploded O.o compiz crashed and qmlscene used 5.1 GB of ram14:44
popeywell, also.. https://wiki.ubuntu.com/Touch/CoreApps/Calendar/Design14:44
rpadovaniI need to do a clean installation...14:44
rpadovaninik90, this is a good question!14:44
ybonpopey: ah, nice link, even if it's missing some "rocking design" ;)14:45
popeyyeah, page created yesterday ㋛14:45
* popey fixes formatting14:45
ybonaaaahhh :)14:46
nik90rpadovani: lol14:47
ybonso what do you think about the flat list of event? In tablet it would be: when I open the app, I have the list on the right, with only metadata (like date + location), I can flick down this list; and when I click on an element of the list, the clicked event takes all the height, and when I flick down/up I switch event14:47
ybonin mobile it would be the same, but in a dedicated page14:48
popeySorry, yes. I do think there should be some kind of event view14:48
ybon(maybe a new tab)14:48
popeyhow do other calendar apps do that?14:48
* ybon has broken is N9, so no other smartphone around to check :(14:48
popeyheh14:48
* popey checks a few phones14:48
nik90popey: you wouldn't believe it if I told you that I just decreased the clock app idle cpu usage from 2.2% to 0.3%!14:48
popey!14:48
ybonnik90: wow :)14:49
popeyThat's really impressive14:49
rpadovaninik90, \o/ congrats!14:49
popeyhow?14:49
popeyThis needs a blog post dude!14:49
ybon+1 for the post :)14:49
nik90At all times, I made sure that only tab is loaded to memory and running14:49
nik90only one tab*14:49
nik90so if you switch to timer tab, all other tabs are unloaded from memory. So no more constant animation per second running all the time in the background14:50
popeyybon: android has 4 views, day, week, month, and Agenda...14:50
ybonwhat's is agenda looking?14:50
* ybon yandexes for images14:50
* popey uploads screenshots14:51
ybonhttp://c1345842.cdn.cloudfiles.rackspacecloud.com/assets/cdn_files/assets/000/007/428/original.jpg ?14:51
popeyhttp://www.androideveryday.com/wp-content/uploads/2013/05/Screenshot_2013-05-25-17-27-21.png14:51
popeyno14:51
ybonokay14:52
ybonso date separator, then list of events of this date14:52
popeythat bit on the right expands in landscape14:53
ybonpopey: troll question: is the green color choice debatable? :)14:54
popeyI personally don't like the green.14:54
ybonsame for me, this is why I ask14:54
popeySo if someone comes up with a better colour scheme I will hug them.14:54
popeyI am not wedded to that colour.14:54
* ybon thinks that white and grey for structure is great, and colours for visuals elements (buttons...)14:55
popeyybon: http://imgur.com/SUxDYsm,P5xmtXm14:56
popeyignore the volume slider on the screen14:56
popeythats on my old 2012 nexus 714:56
ybonthat's fine14:57
ybonso basically, I would 1. add a new tab "Agenda", with this kind of display (date separator + list of event in the date) 2. in table view, makes that when you open the app, the next event is opened on the right?14:58
popeyYes.15:00
ybonok15:01
ybonpopey: do you agree that I should first finish my work on DatePicker, plus fix/add autopilot tests?15:04
ybon(DatePicker work: https://code.launchpad.net/~yohanboniface/ubuntu-calendar-app/DatePicker )15:05
dakerybon: maybe you need to run bzr lp-login yohanboniface15:06
ybonah, I thought I add, thanks15:07
daker:)15:08
ybonisn't that it's the email value that creates problem?15:08
ybonI don't where it comes from15:08
* ybon not yet friend with bazaar15:09
ybonnik90, do you have seen this kind of errors too when you have run autopilot tests: Class 'MainView' has no attribute 'wait_select_single' I wonder if I have another lib not up to date15:10
yboncc rpadovani maybe it will ring you some bell? :)15:10
rpadovaniybon, nope, this is an error in python test. What's the name of the test which fails?15:12
ybonmany :p15:12
yboncalendar_app.tests.test_monthview.TestMonthView.test_monthview_go_to_today_prev_year(with mouse) for example15:12
ybonbut what I meant is that it's possible that I'm just not heriting from the correct version of toolkit_emulators15:13
ybondaker: the strange thing (to my novice eyes) is that lp allowed me to push to ~yohanboniface, so I guess it considered me as logged in, nope?15:15
ybonah http://wiki.bazaar.canonical.com/BzrSettingEmail :)15:15
rpadovaniybon, sorry, dont't understand what wrong with AP and dunno how to fix it, my knowledge of python is near to 015:16
ybonI'm experienced with python, so maybe in two we can understand the situation :)15:16
ybonthe think is that I don't know where this function is supposed to come from "normally" (wait_select_single)15:17
ybonIt's comming from the emulator thing15:17
nik90ybon: wait_select_single is part of autopilot 1.4 itself15:17
ybonbut maybe at some version only or until some version only15:17
ybonthat's interesting15:18
nik90ybon: I use that in clock app as well15:18
nik90and it works as expected15:18
ybonbut doesn't explain why it's not found in my local install15:18
ybonautopilot --version15:18
ybonAutopilot Source Version: 1.3.1 Autopilot Package Version:15:18
ybon1.3.1+13.10.20131003.1-0ubuntu115:18
ybonok :/15:18
ybonmy bad15:18
nik90There you go15:20
ybongo wifi go :)15:22
popeyybon: yes.15:22
ybonok :)15:26
ybonarf, same for me rpadovani: running AP (now that I *really* have the 1.4) takes all RAM available or so plus more than one CPU15:37
ybonAnd all tests failing with DBusException: org.freedesktop.DBus.Error.NoReply: Did not receive a reply. Possible causes include: the remote application did not send a reply, the message bus security policy blocked the reply, the reply timeout expired, or the network connection was broken.15:38
nik90ah I have seen that error message on the Jenkins message..15:38
nik90it essentially means that the application is lagging while the test is running and it waited long enough for a reply which it did not receive15:39
ybonyes15:39
ybonthe app was frozen for every test15:40
ybonwhich seems linked to the fact that all the RAM was taken and big amount of CPU15:40
ybonthis wasn't the case with 1.3 version15:40
=== Ursinha-afk is now known as Ursinha
jdstrandhow do I make a TextField start receive input focus without tapping in it. I can set focus: true, and that indeed makes it active, but the cursor isn't there and I can't start typing immediately without tapping in it16:18
jdstrandsetting cursorPosition doesn't do it either16:19
jdstrand(that doesn't seem to work at all)16:20
ybonjdstrand: have you tried forceActiveFocus() ?16:20
jdstrandno, I as unaware of that16:20
* jdstrand tries16:20
ybonComponent.onCompleted for example16:21
jdstrandCannot assign to read-only property "forceActiveFocus"16:21
ybonno, it's a method :)16:21
ybonhere is an example16:21
ybon        Component.onCompleted: {16:21
ybon            searchLabel.forceActiveFocus();16:21
ybon        }16:21
jdstrandah, that worked16:22
jdstrandybon: thanks! :)16:22
ybon:)16:22
nik90hey guys how important is the seconds hands of a clock?16:28
nik90If I remove the seconds hand of the clock, I am able to get the idle cpu usage to 0%16:28
ybonnik90: a setting?16:30
nik90ybon: you want me to expose that as a setting?16:30
ybonyes :)16:30
ybonjust a suggestion16:30
ybondisplay seconds: yes|no16:31
ybonmy opinion is that seconds are generally useless, but sometimes useful :p16:31
nik90I will have to take this up with the community designers to see if they agree.16:32
ybonsure :)16:33
nik90but implementing this would be quite easy :)16:33
ybonit's just an opinion :)16:33
popeynik90: visibility of seconds on the desktop is a setting ☻16:45
nik90popey: true16:46
nik90popey: I will target this in the next MP after this...16:46
popeyk16:46
nik90popey: I am waiting to see how this all runs on the phone with the updated SDK16:46
ybongrml grml, I don't know what to do for this autopilot going crazy :(17:00
ybonand not being able to run tests is not a way to hack17:00
rpadovaniybon, maybe ask on #ubuntu-quality or #ubuntu-autopilot17:02
ybonnice suggestion rpadovani17:03
ybonI was not aware of #ubuntu-autopilot :)17:03
ybonso, still no AP tests :(20:01
ybonbut let's hack anyway20:01
ybonnik90: have you been able to solve the app not running through QtCreator at the end?20:01
ybonany idea why we are not using http://developer.ubuntu.com/api/qml/sdk-14.04/QtOrganizer.Event/ in the calendar-app?20:38
dakerybon: i believe it is20:43
ybonah :)20:47
ybonI see globalModel calling EventListModel, which seems to be an OrganizerModel20:48
ybonbut I'm certainly missing the point ;)20:48
nik90ybon: no I haven't still figured how to run the app through qtcreator21:26
nik90ybon: it is really stopping me from testing my performance patches :(21:27
ybon:(21:28
ybonIn a ListView, is there any way to customize the section.property formatting?21:29
nik90ybon: I am this close to reverting the patch since it isn't helping...the point of cmake transition was to help in building click packages..but it is not like a click package is being built everyday...contrary to me trying out qtcreator everyday!21:29
ybonnik90: I was about to ask you why not reverting21:29
ybonand click package for qml only app are really easy to do, no?21:29
nik90ybon: because it seemed important to others21:30
ybonI mean as soon as you don't have C++ around21:30
ybonothers should fix the bug so :p21:30
nik90ybon: yeah building a click package is like a 10 sec job using qtcreator!21:30
ybonI mean, this sound like what is called a "regression", no? Which a reason to revert before better handling of the solution, imho21:31
nik90ybon: true21:31
nik90ybon: I might ask the other person before doing it, otherwise might be rude of me21:32
ybonyes, for sure :)21:32
ybonnik90: do you know by chance if there is a way to take control of section labels of a ListView?21:32
nik90ybon: customise how?21:33
ybontaking control of the rendering21:33
ybonsection.property point to a Date value21:33
ybonand I want to display it the human readable way21:34
nik90Did you look at http://qt-project.org/doc/qt-5.0/qtquick/qml-qtquick2-listview.html#section.property-prop21:34
nik90you have to manipulate the section criteria21:34
ybonyes, but here http://developer.ubuntu.com/api/qml/sdk-14.04/QtQuick.ListView/#section.delegate-prop ;)21:34
ybonwell, it seems that section.criteria only allows two modes21:35
nik90true21:35
ybonmy other option is to add a property on the object that has the final rendering21:36
ybonbut it's not realy DRY nor memory efficient21:36
nik90what is it displaying now and what do you want it to display?21:37
ybonnow it's display a Date.toString()21:37
ybonand I want to display something like "Monday 12th"21:37
aquariusmhall119, ping about cordova. If I want to create a Cordova-based Ubuntu click package, am I best to do it all with the cordova command line utility, or with the Ubuntu SDK IDE?21:37
nik90aquarius: Hi stuart :)21:38
aquariusheya nik90 :)21:38
nik90ybon: couldn't you try changing it at the label itself rather than trying to fix the section property?21:38
nik90ybon: since the section property is getting its data from somewhere21:39
ybonyes, this is what I've called my other option21:39
ybonadding a property to the event object that stores the label21:39
ybonis it that you are talking about?21:39
nik90yup21:39
ybonok21:39
aquariusybon, what happens if you fill in section.property with  the name of a method on the object rather than a property? Does it call the method?21:39
aquariusactually, just define a property which is JS, no?21:40
aquariusthat's perfectly DRY :)21:40
ybonwell, startDateTime.toLocaleString for example doesn't work21:40
ybonaquarius: yeah, you're right, it's DRY as soon as we will be using this property instead of a method everywhere else :)21:41
aquariusybon, yeah, so I'd define a property but make it be a JS expression :)21:41
ybon(to be honest, at the moment, Date formatting is *not* DRY ;) )21:41
ybonah, yeah, I see21:42
aquariusJS's native date handling is not completely excellent, but there are a bunch of hlper libraries which are good. I like moment.js myself, but there are plenty21:42
yboncertainly the best approach at this point and with the knowledge we have, yes :)21:42
ybonthanks for the input21:42
ybonnot sure I will pull a third party lib for this though ;)21:42
ybonah, event I got are just out from some local storage, and with no modelisation for what I understand21:47
ybonMeeehhhh Error: Cannot assign to non-existent property "dateLabel"21:48
aquariushm21:54
aquariusI think you might be right, though; you can't point section.property at a method name, annoyingly21:54
nik90ybon: just sent a mail to the mailing list requesting permission to revert the cmake transiiton. Let's see what happens now.21:55
aquariusand you can't define ListElement properties with JavaScript: ListElement { date: new Date(); } throws an error.21:55
aquariusso I'd fix it in the section.delegate, I think.21:55
ybonaquarius: problem here is that the deledate get a string, not a Date object anymore21:58
aquariusthis is why the Lord Jesus brought you Date.parse, my friend :)21:58
ybonoh code21:58
ybonoops21:58
ybonoh God I meant21:58
ybonwhich in certain religions means the same21:58
ybonwell, let's go the Jesus.parse, yeah21:59
aquarius        section.delegate: Text { text: {21:59
aquarius            var dt = new Date(Date.parse(section));21:59
aquarius            return "Sunday,Monday,Tuesday,Wednesday,Thursday,Friday,Saturday".split(",")[dt.getDay()] + " " +21:59
aquarius                dt.getDate();21:59
aquarius        } }21:59
aquarius    }21:59
aquariusftw.21:59
ybonyeeeeaaahh :)22:00
ybonmamma mia22:00
aquariusif that's upsetting, make the property on the ListElement be someDateObject.getTime() and then you'll just get passed an integer of milliseconds, so you're at least not parsing a Date *string* :)22:00
ybonthat's a nice way to limit karma loosing points code :)22:02
ybonbut at the moment I cannot do that, given that I cannot change the incoming object methods/properties, and I can't pass a method nor path to section.property, or I'm missing the point?22:03
ybonoh you mean ListElement, and I'm using a ListModel22:03
aquariusoh, your ListElement definitely has a Date string as a property and you can't change that?22:04
ybonyes22:04
aquariusah, OK22:04
aquariusDate.parse it is, then22:04
ybonyeah22:04
ybon-100 karma points22:04
aquariusbut above you were saying that you wanted it to be a Date object?22:04
aquariusif QML supported having a Date object as a ListElement property, would you be able to change the code to use one?22:05
ybonit's a Date object22:05
ybonI'm not sure no22:05
ybonbecause I don't control the ListElement creation exactly22:05
ybonI pushing element from OrganizerModel.item() method22:05
ybonso one option can be to create a ListElement by hand from the object returned my OrganizerModel.item22:06
ybonmaybe it's only -99 karma points, I should thing about it22:06
aquariuswell... are you doing the listmodel.append() ? or does some other bit of code do that?22:07
ybonI'm the happy one who masters the listmodel.append :)22:07
aquariusah, then you're fine. instead of listmodel.append(thingy), do thingy.date = thingy.date.getTime(); listmodel.append(thingy) :-)22:08
ybonahah, one more nice22:10
ybonchanging the property type, -60 karma only, I take this one :)22:10
ybonah, it's not just a var22:12
ybonError: Cannot assign QString to QDateTime22:12
ybonit's a typed property22:12
ybonI'm done22:12
aquariusahahaha22:17
aquariusso it's actually a native Qt QDateTime but when you access it as a section you only get a string? That sucks.22:18
aquariusthat's gotta be a Qt bug, in my opinion. Although I bet they won't fix it.22:18
aquariusYou're sure it's actually a string? Not just being rendered as a string?22:18
aquariuswhat if you do: section.delegate: Text { text: typeof(section) } ? does it say "string" or "QDateTime"?22:19
ybonyeah, I'm sure it's a string22:19
ybonI've yet console.logged its type22:19
aquariusbah22:20
aquariusthen QML is taking a QDateTime and casting it to a string for you. That's really annoying.22:20
aquariusDate.parse it is, then22:20
ybon2014-02-16T00:00:00 string22:21
ybonoutput of console.log(section, typeof section)22:21
ybonyep, really annoying22:21
aquariusI'd file a bug about that, although I'm sure Qt people will say "we don't care" or "write your whole program in C++" or something ;)22:21
ybonwait22:21
ybonI'm using a ListItem.Header22:22
ybonwhich comes from Ubuntu TK if think22:22
ybonso maybe I should try with a more native item before22:22
ybonsame with Text22:24
nik90aquarius: hey I got a rather stupid question about u1db22:24
aquariusno such thing as a stupid question.22:24
nik90aquarius: I have a static document storing the clock app settings like { "timeformat": "12-hour" }. I want to add a new settings key to this. "seconds": "true". How would I go about this?22:25
aquariusha!22:25
nik90aquarius: I tried this, var setttings = appSettings.contents22:25
nik90settings.seconds = "false"22:26
aquariusI don't think you can do it declaratively; you need to do it from code.22:26
nik90appSettings.contents = settings22:26
aquariusah, that won't work because you're doing it by reference.22:26
nik90aquarius: do it from code?22:26
aquariusyou need to make a *copy* of the contents and then set that22:26
nik90yup that didnt work :P22:26
nik90but doesn't var settings = appSettings.contents do the copying?22:27
aquariusno.22:27
aquariusthat'll make "settings" a reference to the existing contents dict, not a copy of it.22:27
nik90ah22:27
nik90how do I go about doing this?22:27
aquariusvar settings = MAKEACOPYOF(appSettings.contents); settings.seconds = false; appSettings.contents = settings;22:27
aquariusyou will now say: how do I do MAKEACOPYOF ?22:27
nik90yup :P22:28
aquariusthe way *I* do it is: JSON.parse(JSON.stringify(appSettings.contents))22:28
aquariuswhich works fine if your contents are json-serialisable, which they always should be for a u1db documents.22:28
aquarius*document22:28
aquariusPython has copy.deepcopy(thingy), but JavaScript doesn't :)22:29
aquariusin practice almost everything you want to duplicate is JSON-serialisable, so round-tripping it through JSON works :)22:29
nik90so this method of copying is only necessary if the settings key does not exists already in the u1db document?22:30
nik90because I use my older method to do it before and it worked fiine for entries that already exist in the document22:30
aquariusthis is an irritating outcome of having to set the whole of doc.contents all at once22:32
aquariusbecause of Qt's poor handling of that situation22:32
aquariuswell, I *think* this will solve your problem :)22:32
jdstrandI have a TextField which I can add text to and it scrolls automatically when I type. this is all fine22:33
jdstrandproblem is, when I type and the text scrolls off to the left, I can't go back to the left with the OSK22:34
aquariushrm22:34
aquariusbecause it doesn't have arrow keys.22:34
jdstrandI can use the keyboard arrow keys fine, but the osk, I get stuck22:34
jdstrandyeah22:34
aquariuscan you not drag-select the text to bring it back into view?22:34
aquariusalthough basically no mobile platforms handle this situation very well, in my experience22:35
jdstranda natural move is to tap and drag, but it doesn't work22:35
jdstrandinteresting22:35
jdstrandnow, I can't tap and drag to scroll22:35
jdstrandI can with a textarea, but that is inconvient to format22:36
jdstrands/now/no/22:36
aquariusthe way I end up having to handle this on Android and iOS is to select some text and then drag the first text-selection-handle off to the left, which scrolls the text back into view as it selects it22:37
aquariusI don't know how you're meant to handle this situation22:37
aquariusiOS had this thing at one time where you could drag with two fingers and it'd scroll stuff around but no-one knew about it other than super-experts :)22:37
jdstrandheh22:38
aquariusjdstrand, sounds like it needs design team input, to me, and then a fix in the OS...22:38
jdstrandok, I'll take it up with them22:38
jdstrandthanks22:38
yboncan't I use i18n.tr() in i18n file?22:48
ybonsorry22:49
ybonin javascript* files22:49
ybonhumm, strange, I'm doing it on OSMTouch without error, but here in calendar-app, I got i18n is not defined22:52
nik90aquarius: nice bad voltage app.love it!23:07
aquariusnik90, cool. It's really, really simple, but was done to prove a point. :)23:08
nik90aquarius: is the app code on github or somewhere? I have a bug to report.23:09
nik90a really small one23:09
aquariusnik90, launchpad23:09
aquariusbut it's not its own project; it's in a junk branch of mine23:09
aquariusfeel free to report it just by telling me :)23:09
aquariusI am... in two minds about github. I use it for non-Ubuntu projects, but Ubuntu-specific stuff I tend to put in bzr23:09
nik90aquarius: when I press play, the button changes to "stop" which is good..however if I go back and change to another episode, the button still shows "stop" instead of "play"23:10
aquariusbut I never want to set up a whole Launchpad project for anything I do because that's a nightmare and it's way too heavy, so I just put things in junk branches which means that no-one can propose merges :)23:10
aquariushm23:10
aquariusthat sounds like a plausible bug, indeed23:10
aquariusI wonder how I should solve that?23:10
nik90omg, your source code is so small...in essence 2 qml files..23:11
nik90and yet a fully functional app!23:11
aquariusremember that it doesn't do all that much :)23:13
nik90aquarius: well enough to listen to all the episodes and control them :)23:14
aquariusbut it is testament to the power of the SDK that the actual app is 8886+755=9641 bytes and the icon PNG is 10,083 :)23:14
popeycan i fork it for uupc? ☻23:16
aquariuspopey, it is *designed* for that. read the blog post ;)23:16
* popey looks for said post23:16
aquariuspopey, you should be able to make a uupc app in *seconds*23:16
aquariushttp://www.kryogenix.org/days/2014/02/15/bad-voltage-apps-and-generic-components-for-ubuntu/23:16
aquariusit did occur to me that, relatively trivially, I ought to be able to make a little web app where you just feed it a podcast feed and it gives you a click package for download.23:19
aquariuscould probably actually do it entirely client-side in JS, too, so it could be a one-pager :)23:19
ybonaquarius: ah ah, the joke again!23:27
ybonWhen one uses a section in a ListView, so ListItem are grouped per section, according to same property value23:28
ybongiven that I'm formatting the value only in the delegate, so this means that two events in the same day will never be grouped23:28
ybon(unless hey have the same time too, but...)23:28
popeyaquarius: done23:31
aquariusybon, aah.23:32
aquariusybon, yeah, that's a problem.23:32
popey/home/alan/phablet/code/com.popey.ubuntu-podcast_1.1_all.click: pass23:32
popeyboom, passes tests first time ☻23:32
aquariusybon, in that case you have to construct your own listelements rather than handing the thing you get back directly to listmodel.append23:32
* popey submits to the store23:32
aquariuspopey, winn0r. That's how it's meant to work.23:32
ybonaquarius: yes, that what I'm looking at23:33
aquariuspopey, I'd also be interested in your thoughts on the "component store" idea :)23:33
ybonI will just create a js object I think23:33
nik90aquarius: How do I use your follow mouse screencast script at http://www.kryogenix.org/days/2014/02/07/follow-the-pointer-mini-screencast-python-app-for-ubuntu/ ?23:33
aquariusnik90, I'm not sure I wholly understand the question?23:33
nik90aquarius: I saved it as a script.py file. On running it I get the + mouse cursor23:34
nik90aquarius: does it then start recording a video?23:34
aquariusnik90, heh.23:34
aquariusrun it as "python script.py"23:34
aquariushere is a pro tip for you: if you run a Python script and you get the + cursor, then it is being run as a bash script23:35
aquariusand you should beat up the script creator for forgetting to put #!/usr/bin/env python at the top of the script ;)23:35
nik90aquarius: ah :)23:35
aquariusthe reason you get the + cursor is that it's being run by bash, which interprets it as being full of shell commands.23:35
aquariusthe first line in the script, because it's Python, is almost certainly "import <something>"23:36
aquariusand "import" is a shell command which makes you select a window with the mouse and then takes a screenshot of it. It's part of imagemagick.23:36
nik90aquarius: so in the file, I edit the Seconds_duration variable to choose my time, eh23:36
nik90pretty sweet!23:36
aquariusI've been burned by this 100,000 times ;)23:36
aquariusnik90, ah, hang on, you want the New Version Of The Script23:37
aquariuswhich is way, way, way better23:37
nik90aquarius: definitely23:37
popeyaquarius: what license is yours under?23:37
nik90aquarius: you know how long I have looked for a screencaster app which follows the damn mouse! too long!23:38
aquariushttp://pastebin.ubuntu.com/6940238/23:38
popeynik90: vokoscreen can do that23:38
aquariusnik90, that one lets you press a key to start and stop it.23:38
aquariusI should really release that, shouldn't I?23:38
nik90popey: oh cool23:38
aquariuspopey, god, I don't know. Do I have to make some sort of official licensing declaration? Public domain is fine with me :)23:39
popeysurely you had to put one when you submitted to the store?23:39
popeyyou chose apache23:39
popeythat'll do23:39
aquariusooh, you're right, i did23:39
aquariusApache is fine then :)23:40
popeyyou just chose the first on the list didnt you ? ☻23:40
popey(immediately after proprietary)23:40
nik90lol23:40
sarnoldIf "public domain" is your goal, MIT might be more appropriate. it's simpler, anyway. :)23:40
aquariusto this day, and despite twenty years of involvement in this stuff, I couldn't tell you why I should care about the difference between Apache, MIT, X, and BSD licenses. :)23:40
popeysubmitted to the store23:41
popeystart the clock!23:41
aquariuspopey, I wonder if it will get approved fast? ;)23:41
popey:D23:41
aquariusis approving your own apps not kosher?23:41
popeyI dont know actually23:41
popeyI mean, I could run the tests (again, I already ran them)23:41
aquariusis probably a problem if your app is, say, one which earns you money, or does suspect things23:42
popeybut I tend not to approve my own ones, doesn't look good23:42
nik90aquarius: hmm I get an error23:42
aquariusuupc app, maybe not so much ;)23:42
aquariusnik90, it's not a very user-friendly script, the new one ;) which error do you get?23:42
nik90File "test.py", line 2, in <module>23:42
nik90    from gi.repository import Gtk, Gdk, Keybinder, GLib23:42
nik90ImportError: cannot import name Keybinder23:42
aquariusyou need the keybinder GI bindings.23:42
aquariusgir1.2-keybinder-3.0 I think23:43
aquariusyeo23:43
aquariusyep23:43
aquariusNOT python-keybinder23:43
aquariusthose are the old pygtk bindings of fail23:43
popeyjeez, twice today someone has submitted an iphone app to the store23:43
popeyi dont understand why people do that23:43
ybonso, here is the first (minimal) working version: http://imgur.com/BodtxLK23:43
nik90damn you predict my behaviour too well aquarius :P23:43
nik90I install python-keybinder before asking you23:43
popeyybon: nice!23:43
aquariuspopey, better bust out your mad build-an-emulator skillz then ;)23:44
popeysomeone suggested "well, why don't you just make ubuntu binary-compatible with ios"23:44
popey(as a joke)23:44
aquariuswhat a good idea!23:44
aquariusgo go gadget phonedations team ;)23:44
aquariusmake Mike Frey do it, he's good at stuff like that ;)23:44
popeythanks for making that podcast app23:46
sarnoldhttp://www.darlinghq.org/23:46
popeyhaha23:46
ybonHere andrea have a darker background for the section, is it something on the UITK? https://plus.google.com/photos/+AndreaDelSarto88/albums/5972807507462510001/5972807508504729794?pid=5972807508504729794&oid=10693988531886143729323:47
popey"What needs to be done should Darling be capable of running real-world iOS apps?"23:47
popey"Implement all iOS-specific frameworks."23:47
sarnoldyeah... baby steps :) hehe23:47
sarnoldbut I laughed at the wine guys ages ago and people actually use the thing, so there's some kind of proof that it can be done. hehe.23:48
popeynot sure ybon23:48
ybonok23:48
popeysame goes for all emulators23:48
aquariusybon, just do color: Qt.darker(basecolor) in your section.delegate, surely? Or Qt.rgba(0,0,0,0.2)23:48
ybonaquarius: but is it allowed by the design principles?23:49
aquariuspopey, no worries about podcast app; it was written for exactly what you used it for23:49
ybon(well, as soon as this green is allowed... ;) #trollolol)23:49
popey23:50
aquariusybon, well, no-one's published any design principles about this as far as I'm aware. If they publish more design guidelines then that'd be useful, and maybe if they don't like what you've done it'll encourage them ;)23:50
* aquarius debates creating dahlinghq.com23:50
ybonpopey: I've a subtle feeling that we are missing a little bit of agile in the actual process: it's two days I'm hacking and pushing, and creating issues, and so at the end there is only more thing in the air to review, and nothing merged23:51
aquariusDahling is a translation layer that allows you to run any computer program in history on a ham sandwich23:51
aquariusTODO: actually implement this23:51
popeytrue enough./23:51
ybonI'm not complaining about "my" code not being merging, to make it clear, just saying that *imho* we should have go faster in the trunk23:53
ybon(as soon as we have autopilot working :p )23:53
popeywell, it should land quickly once reviewed/approved23:53
popeybut all the core apps teams are small23:54
popeyso resource limited for reviewing / approving23:54
ybonI understand23:54
popeyybon: i dont see any active reviews from you at https://code.launchpad.net/ubuntu-calendar-app/+activereviews23:54
ybonpopey: no, because I'm not able to run autopilot23:55
ybonand I don't want to submit to merge without a minimum of tests23:55
popeyah okay. balloons is our resident AP expert, or you can ask in #ubuntu-autopilot where others may be lurking23:55
ybondone already :(23:55
popeyso what is the state right now?23:57
popeyfailing tests?23:57
popeywant to see if I can duplicate the issue on 14.04 here?23:58
ybonpopey: state for me is AP eating all RAM when running23:58
ybonand then no test being able to pass for dbus complaining23:58
popeyoof23:58
popeyhow much ram do you have?23:59
ybon8Go23:59
popeygosh23:59
aquariuspopey, question about click reviews: they're still being done manually? is that just because the work to have them done by script isn't complete yet, or is there some reason that a person still needs to be in the mix?23:59
popeyaquarius: yes, currently manual, but over time more of them are automated23:59
popeythe site still does pre-flight checks23:59

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