/srv/irclogs.ubuntu.com/2015/08/04/#ubuntu-app-devel.txt

=== chihchun_afk is now known as chihchun
liuxg has anyone used actions in MainView? it seems that it does not show the icon03:20
=== chihchun is now known as chihchun_afk
=== chihchun_afk is now known as chihchun
dholbachgood morning07:11
=== dbarth__ is now known as dbarth
rararahi guys. I am gaving trouble including my c++ code in the project. First problem: #include <iostream.h> is not found, neither are all the other imports.08:54
=== oSoMoN_ is now known as oSoMoN
=== dpm_ is now known as dpm
=== chihchun is now known as chihchun_afk
liuxgI have a horizontal ListView, snapMode: ListView.SnapOneItem, when view.currentIndex is changed, the ListView's view is changed. The problem is that the speed of moving is very slow. Does any one know how to set the moving speed. My source code is at bzr branch lp:~liu-xiao-guo/debiantrial/visualitemmodel11:34
sverzegnassiliuxg: http://doc.qt.io/qt-5/qml-qtquick-listview.html#highlightMoveDuration-prop11:46
liuxgsverzegnassi, thanks. I just tried highlightMoveVelocity, and it seemed to the right one.11:47
=== JamesTai1 is now known as JamesTait
didrockszbenjamin: hey, with the .pro template, how/when is pot built and how are the po refreshed from it? Doesn't seem that the traditional "run" debug or release does it?12:02
zbenjamindidrocks: on make i think12:06
didrockszbenjamin: there isn't the traditional make pot or make po target generated by .pro12:06
zbenjamindidrocks: well the po are not automatically updated afaik12:06
didrockszbenjamin: you have some "po" target generally in build systems for merging12:06
zbenjamindidrocks: i modelled it after the cmake stuff. I think it does not exist there as well12:07
zbenjamindidrocks: but enlighten me if you know the command to do that automatically12:07
didrockszbenjamin: ok, sounds like something we should get a fix at, I know the general command like msgmerge and so on, but we should look if there isn't some qmake automation already12:07
didrockszbenjamin: ok, I'll dig into this I guess :p12:08
zbenjamindidrocks: well traditionally qmake would not use po and pot files12:09
zbenjamindidrocks: it would use lupdate an lrelease12:09
zbenjamindidrocks: but lp does not have support for these afaik12:10
didrockszbenjamin: yep, lp only support .pot (and refresh .po for you based on this)12:10
didrockszbenjamin: the cmake templates have rules for it12:12
didrockszbenjamin: po/CMakeLists.txt12:13
didrocksI know more cmake than qmake, do you think you can translate those into qmake?12:13
didrocks(I think I can't really promote our qmake template by default as long as we don't have proper i18n support in the tools)12:14
didrocks(same issue for the desktop file, which is bug #1443351)12:16
ubot5bug 1443351 in qtcreator-plugin-ubuntu (Ubuntu) ".desktop file is not translated for qmake based projects" [Medium,Triaged] https://launchpad.net/bugs/144335112:16
zbenjamindidrocks:  i do not see any code that updates the po files from the pot12:32
didrockszbenjamin: this is:12:33
didrocksadd_custom_target(${DESKTOP_FILE_NAME} ALL12:33
Elleo3/712:33
Elleooops12:33
didrocks    COMMENT "Merging translations into ${DESKTOP_FILE_NAME}"12:33
didrocks    COMMAND LC_ALL=C ${INTLTOOL_MERGE} -d -u ${CMAKE_SOURCE_DIR}/po ${CMAKE_BINARY_DIR}/app/${DESKTOP_FILE_NAME}.in ${CMAKE_BINARY_DIR}/app/${DESKTOP_FILE_NAME} > /dev/null12:34
didrocks)12:34
didrocksfor the desktop file12:34
zbenjamindidrocks: this just updates the desktop file12:34
zbenjamindidrocks: yeah12:34
didrockszbenjamin: but you are right, it only refreshes the .pot file, not the .po, we can fix this easily12:35
didrocks(in cmake)12:35
didrockszbenjamin: but at least it builds the .pot files which qmake doesn't, right?12:35
zbenjamindidrocks: qmake does create the pot file12:36
didrockszbenjamin: hum, did you change the template recently? It didn't for me12:36
* didrocks tries to create one qmake project now12:36
zbenjamindidrocks: ah there is a bug, do not rename the hook12:37
zbenjamindidrocks: leave it to be "app"12:37
zbenjamindidrocks: we just stumbled over that yesterday12:37
didrockszbenjamin: ah, so probably this :p12:37
didrocksI guess you then rely on launchpad for the pot -> po, right? and when do you build the .mo then?12:37
didrocksalso:     $$files(app/*.qml,true) \12:38
didrocksbut that doesn't work for files in subdir, right?12:38
didrocks(or is it the true param?)12:38
zbenjaminthe true param enables recursive search12:38
didrocksok12:38
zbenjaminchange it to:  $$files(*.qml,true)12:39
didrocksyeah, same for js and such12:39
didrocksand what do you build the .mo then? (and how do you handle the desktop file?)12:39
didrocks(also, another bug with the hook: aptest.commands = bash $$PWD/app/tests/autopilot/run12:39
didrocksand template is named template.pot (doesn't use the gettext domain)12:41
zbenjamindidrocks: http://bazaar.launchpad.net/~ubuntu-sdk-team/qtcreator-plugin-ubuntu/trunk/view/head:/ubuntu-click-tools.prf#L6112:41
didrocksah ok, so only on click build (which makes sense in a way)12:43
zbenjamindidrocks: well it happens when you load(ubuntu-click)12:43
zbenjamindidrocks: when you create a new po file you need to rerun qmake so its picked up12:44
zbenjamindidrocks: thats this part12:45
zbenjamin# specifies all translations files and makes sure they are12:45
zbenjamin# compiled and installed into the right place in the click package12:45
zbenjaminUBUNTU_PO_FILES+=$$files(po/*.po)12:45
didrockszbenjamin: yeah, so only the ide integration is missing? (let me confirm, but it seems that I running through the IDE doesn't create the .pot at first)12:45
* didrocks tries a new blank project12:45
zbenjamindidrocks: as i said, as long as you do not rename the hook ;)12:46
didrockszbenjamin: yeah, just did that, and indeed, this works12:46
didrockszbenjamin: one issue is that you don't specify CHARSET by default though12:46
kivizbenjamin, just curious if you could get around to reviewing this branch https://code.launchpad.net/~akiva/qtcreator-plugin-autopilot/Improve-code-issue-readability12:46
zbenjamindidrocks: fyi this is just a problem in the qtquick app template12:47
kivitldr; it aligns the source file's order with the header, and it makes the issues more readable.12:47
zbenjaminkivi: if you move code around please do not make additional changes12:48
zbenjaminkivi: that way i can not see what was changed12:48
kivizbenjamin, sure. its a small change though. Only a function was changed12:48
didrockszbenjamin: hum, but rerunning the app after copying and fixing the hook name doesn't create the .mo file, contrary to "qmake . && make"12:49
didrocks(rerunning from the IDE)12:49
didrockswe don't load(ubuntu-click) in that case?12:49
zbenjamindidrocks: ubuntu-click is always loaded12:49
didrockszbenjamin: want me to open a bug on this? (there is already one about the desktop file, I can retarget the other one for charset + hook renamed) and this one?12:50
zbenjamindidrocks: yeah add it to that one12:50
zbenjamindidrocks: however try make distclean after renaming12:50
zbenjamindidrocks: like:   rename -> make distclean -> qmake -> mak12:51
zbenjamine12:51
didrockszbenjamin: yeah, that works, I guess we need to fix the template and get the integration done12:51
didrockslet me write to it and tell me what you think12:51
zbenjamindidrocks: ok12:52
zbenjamindidrocks: would be awesome to get launchpad support for lrelease and lupdate . The developer experience is much better imho12:54
zbenjamindidrocks: you have a great UI tool that helps with the translations12:54
didrockszbenjamin: well, most of the FLOSS projects standardized around intltool nowdays, I think it's good enough and there are some UI tools. I don't think changing this would be a big priority12:57
didrockszbenjamin: tell me how bug #1481325 sounds?12:57
ubot5bug 1481325 in qtcreator-plugin-ubuntu (Ubuntu) "fix i18n integration in qmake template" [Undecided,New] https://launchpad.net/bugs/148132512:58
didrockszbenjamin: also, qmake is the third option here, didn't you want to rename it to be first?12:58
didrocks(for QML app with simple UI)12:58
zbenjamindidrocks: we did, and it should be released already12:59
zbenjamindidrocks: if you are on vivid do you use the ppa?12:59
didrockszbenjamin: yep, I also have hookname == appname by default12:59
didrocks(I thought that was in the same release)13:00
didrockszbenjamin: http://people.canonical.com/~didrocks/tmp/order_new_project.png13:00
didrocks(see for the other, qmake is first, not on the first option though)13:01
didrocksalso, unsure what is "QtQuick App with QML UI" vs "QML App with C++ plugin"13:01
zbenjamindidrocks: wtf, ok seems shame is on me, i misread (cmake) and (qmake) seems the cmake version is not first13:03
zbenjamindidrocks: QtQuickApp == native application, QML APp with C++ plugin == app using qmlscene loading a c++ plugin13:04
didrockszbenjamin: ahah, on reading, I prefer that TBH :p13:04
didrockszbenjamin: want a bug? :)13:04
didrockszbenjamin: ok on QtQuickApp, so it seems we would prefer QtQuickApp over QML App with C++ plugin for things handling c++? (or is there any preference?)13:05
zbenjamindidrocks: no preference, its up to the dev if he wants a main.cpp or not13:06
didrocksok13:07
zbenjamindidrocks: well i personally would prefer the qtquick app because thats how the Qt devs suggest it to do.13:08
zbenjamindidrocks: but its just a personal opinion13:08
didrockszbenjamin: so not using qmlscene but having our own "starter"13:08
zbenjamindidrocks: no starter at all, the app is its own starter13:11
zbenjamindidrocks: just the bare minimum what the app needs to startup the qml surface, instead of all the other stuff qmlscene supports13:11
didrockszbenjamin: ok, making sense13:12
didrockszbenjamin: so, on the i18n, keep me posted if you need any other info, I'm just using the workaround for module name for now13:12
zbenjamindidrocks: ok , sorry for the inconvenience though :(13:15
didrockszbenjamin: no worry, it's more minor than what I was afraid of :)13:16
kalikianazsombi: fyi if you haven't seen https://code.launchpad.net/~zsombi/ubuntu-ui-toolkit/swipeListItemWithActiveChild/+merge/266390 one comment14:32
=== viper is now known as Guest93021
aquariusseb128, ping about avahi-daemon on the phone15:06
seb128aquarius, wrong person to ping I guess15:06
* aquarius grins15:06
seb128I've no clue about avahi on the phone15:06
ogra_aquarius, not doable15:06
ogra_it needs to be able to send constant broadcasts ... cant do that without keeping the wifi permanently on15:07
seb128ogra_, convergence?15:07
* ogra_ had this discussion multiple times15:07
ogra_seb128, yeah, but only via IPs :P15:07
aquariusseb128, you may well point me at someone else! At the moment the phone doesn't run avahi, and I'm wondering whether it can. Before that, though, I want to confirm something which I think you'll know -- if I put a file in /etc/dbus/services/*.service which advertises a service on a port, is it avahi-daemon that uses those files?15:07
ogra_aquarius, see my answer15:08
seb128aquarius, I'm pointing you to ogra then ;-)15:08
aquariusogra_, agreed that's a reason against it, but the iphone manages it, so it can't be, y'know, impossible to keep the wifi on sometimes or something; I'm just exploring what the deal is ;)15:08
ogra_aquarius, there was an avahi implementation that allowed to work with not constantly running, but lennart abandoned it very early15:09
ogra_aquarius, pitti is acually our avahi specialist15:09
aquariusseb128, :-) I think I'm right that it's avahi-daemon which reads those files and advertises the service, yes? Even if we've decided to not do that for ogra_ reasons ;015:09
seb128aquarius, I've no clue about avahi, maybe pitti does15:10
aquariusseb128, cheers; will talk to pitti!15:10
aquariusogra_, ah, so ios has a zeroconf implementation which doesn't require wifi on always or something, and we don't?15:10
aquariusogra_, I assume it's hard to make it so it only works *when* wifi is on?15:10
ogra_aquarius, i would guess so ... i always have a hard time imagining the IOS source in my dreams :P15:11
aquariusogra_, like, put "start on network up; avahi-daemon start" in /etc/init/avahi or whatever?15:11
ogra_in any case there was a mdns implementation that didnt need to run permanently15:12
aquariusit'd certainly be cleverer to have an avahi which ran all the time but knew to not do any work when there was no wifi, but wouldn't just starting avahi on wifi-up and killing it on wifi-down be OK? Or is that a bad idea too?15:13
ogra_there must be a blog entry from lennart about it somewhere15:13
aquariusogra_, separate issue, then (if you don't know I'll ask pitti); what's required to have avahi-daemon on the phone? If I switch it to apt rather than system-image and apt-get install avahi-daemon, would you expect it to work? (Even if it eats my battery?)15:21
ogra_aquarius, mightz or might not, worth a try i guess :)15:21
ogra_i think it will depend on the fact if it needs writable dirs that arent writable currently15:21
aquariusogra_, ya, this is what I don't know :)15:22
ogra_well, if you find missing dirs you can just add them to the config and reboot15:22
aquariusogra_, what I want is for the phone to run an ssh server, and advertise it over zeroconf, so that it shows up automatically in Nautilus. The nautilus bit of this already works -- if I can make the phone bit work then I can lobby jdstrand about how it'd be a good idea for people even if less good for security ;)15:25
* ogra_ uses ssh:// all the time with the phone :)15:26
aquariusya, but that's because you know your phone's IP address, which is not information sensibly available to, say, my dad :)15:27
ogra_sure15:27
aquariushence avahi -- and then it just appears in Nautilus's Browse Network folder, which is fantastic. Automatic phone-to-laptop appearance for Ubuntu users.15:27
kalikianaaquarius: +100016:07
aquariuskalikiana, ya, hence wanting it. But it needs avahi, which will keep the wifi network powered up the whole time, so ogra_ says :(16:08
ogra_well, talk to pitti16:08
ogra_or re-vivie the other daemon (of which i forgot the name) that lennart abandoned16:08
ogra_that was able to work on-demand16:09
aquariusogra_, just so I understand -- the problem is that it keeps the wifi *radio* on? So starting avahi on wifi connection and killing it on wifi disconnect won't help, because the problem is that the wifi card isn't able to sleep?16:09
ogra_aquarius, it needs a working IP stack ... constantly16:10
ogra_so it is more than just the radio16:10
aquariusogra_, and the phone... shuts down the IP stack when nobody's using it, even if you're connected to wifi?16:10
aquariussorry that you have to give me the Dummies' Guide To How The Phone Works :)16:11
ogra_well, the phone shuts down the radio ... and tears down  the IP stack alongside16:11
aquariusogra_, ah, and avahi then starts up the IP stack again? Or avahi explodes because it doesn't have an IP stack?16:11
ogra_the latter16:11
aquariusright, I get you now.16:12
aquariusand we don't want to stop and start avahi when the phone shuts down the radio, because we'll be doing it a lot and just starting up avahi will itself use lots of battery?16:12
aquariuscould *suspend* avahi, but it probably doesn't like that either :)16:12
kalikianaogra_: this one? http://0pointer.de/lennart/projects/nss-mdns/16:12
didrocksogra_: how are we working on wifi then, like for push notification? We put up the wifi + IP stack up again at x number of seconds interval?16:13
ogra_didrocks, it gets woken up every 5 min and polls for notifications16:14
didrocksogra_: ah, so let's say I get a new email, and even with push notification up, it can wait for 5 minutes before getting notified?16:14
ogra_yes16:14
didrocksinteresting, thanks for the info :)16:15
aquariusindeed. annoying, eh? :)16:15
ogra_kalikiana, i'm not sure, but yeah, that could have been it16:15
didrocksnot sure how the google "low energy connexion constantly up" works16:15
kalikianaogra_: it says in the scription it's implementing dns via zeroconf and can be run without avahi16:16
didrocks(it's a persistent xmpp one)16:16
ogra_kalikiana, well, it has  big fat warning about security probs when not using avahi with it :)16:16
ogra_..."Thus, nss-mdns will not work unless Avahi is running! That makes Avahi essentially a hard dependency of nss-mdns. Pass --enable-legacy to reenable the mini mDNS stack again."...16:16
kalikianaogra_: yes, a very useful warning given 0 reasoning...16:17
kalikianathe description only points out that ipv6 support will be incomplete16:17
ogra_so you would have to use that flag but apparently open security holes16:17
kalikianayet he did write the code, surely he had a point other than to release insecure code16:18
ogra_anyway, talk to pitti ... this was iterated over multiple times in the last years16:18
kalikiana*nod*16:18
ogra_and always decided to be not feasible for now16:19
ogra_(probablly something changed though ... )16:19
zsombikalikiana: got back home16:19
zsombikalikiana: the click is tested in the tst_listitem.qml16:20
ogra_aquarius, btw, with snappy that might be easier ... (teh webdm snap ships its own mini avahi for example)16:20
zsombikalikiana: that has been tested before, the click should happen if you don't start swiping over the active component16:20
zsombikalikiana: so far that test was there alone, the swipe just got introduced16:21
kalikianazsombi: the new test case has a different setup. that's not testing the click16:22
zsombikalikiana: hmm... the new test case should test that the swipe does not produce click on the button...16:23
zsombikalikiana: ahh, you're right, the signal spy target should be the button, not the item16:23
zsombikalikiana: I'll fix it16:23
kalikianazsombi: yep16:25
zsombikalikiana: just fyi, I may need to redo the swipe logic... design wants to have the ListItem swipable only thru touch... :/16:27
kalikianazsombi: I've seen some discussion in the backlog. not sure why it matters much to design, but it for sure will be fun for any developer who doesn't have a touch screen on their development machine...16:30
zsombikalikiana: right, that's why I'm trying to back this topic a bit...16:31
didrockszsombi: agreed, as long as we don't have a "touch emulator" for developers, that doesn't sound like a good move16:31
didrocksas, how to test it on your desktop?16:32
kalikianafree touchscreen for everyone :-P16:32
zsombiLOL16:32
didrocks"download the SDK, get a free toy"16:32
ogra_just ship it with the iso16:32
zsombifree Willy for everyone... wait... that's free anyway :D16:32
kalikianalol16:33
didrocksseriously, I think it's something to really put in perspective with design16:33
zsombiyep16:33
zsombididrocks: kalikiana: we have the launcher, that can do mouse-to-touch... maybe we should start promoting it?16:35
didrockszsombi: start promoting it to me then! I even don't know what this is :p16:35
zsombididrocks: it's a launcher we use to test touch related functionality on desktop16:36
didrockszsombi: sounds interesting, is it installed and integrated with the sdk?16:37
zsombididrocks: but it is only available in tests :(16:37
didrocksah16:37
didrocksso yeah, we should probably do this first16:37
zsombiright16:37
didrockszsombi: is it only for mouse-to-touch or also handle things like calling services like media-hub emulation?16:37
zsombibut then we're back to the 3year discussion, should we have our own launcher, or should we use qmlscene... :/16:37
zsombididrocks: no, only mouse-to-touch16:37
didrockszsombi: I started to dream :)16:38
zsombididrocks: mention it to kalikiana, he will get mad :D16:38
didrocksheh, you already pinged and ruined his evening I guess :p16:38
didrocksbut at least an easy way to simulate those touch interactions seem a prerequisite to remove this swap with mouse if design really wants to16:39
kalikianazsombi: grrrrrr16:39
didrocks(I find it weird to break pattern that people know on other platforms though)16:39
kalikianadidrocks: it's basically a slim replacement for qmlscene and it aids with testing since it can open qml unit tests and simulate touch events, things qmlscene can't16:40
zsombididrocks: qmlscene aint suppose dto be used by any platform for released projects16:41
zsombiit's a prototyping tool, which helps you to run your QML apps...16:41
didrocksso yeah, let's maybe a better way to run this launcher to emulate touch events for developers (independent of the design discussion, but a prerequisite IMHO)16:42
kalikianadidrocks: it's been discussed to death that qmlscene is officially a "developer tool" and now we have a dozen variants of it and still use it16:42
didrockskalikiana: yeah, I remember those discussions16:42
didrocksI'm unsure how many pure QML project we have though16:42
didrocksI guess as soon as someone followed some C++ tuts, they created their own main.cpp16:43
kalikianawell, pure as well as qml+plugin16:43
* ogra_ guesses the majority of click packages in the store that arent webapps are plain QMl16:43
didrocksyeah… from previous discussion, I got that :p16:43
kalikianaand almost all of them use qmlscene, if not oxideqmlscene16:44
ogra_only a few use C++ extensions i guess16:44
zsombiogra_: actually there are few (mzanetti's ones are I think all) which use CPP runner, so the qml is loaded from the cpp and the models are exposed straight from the loader code16:45
zsombinot even using extension plugins...16:46
ogra_a few, yeah :)16:46
ogra_i doubt it is the majority though16:46
zsombimost likely not...16:46
=== jhodapp__ is now known as jhodapp_
=== jhodapp_ is now known as jhodapp

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