/srv/irclogs.ubuntu.com/2011/11/10/#ayatana.txt

andyrockthumper, hi01:25
thumperhi andyrock01:25
thumperhow goes your study?01:26
andyrockcan i work on this bug https://bugs.launchpad.net/unity/+bug/819721?01:26
ubot5Ubuntu bug 819721 in unity (Ubuntu Oneiric) "quicklists not accessible for the first time just after login" [Medium,In progress]01:26
andyrockthumper, quite good :)01:26
andyrockthis bug is marked as "in progress" since 2011-10-19...01:27
thumperandyrock: I suggested that bug to bschaefer :)01:28
thumperlet me find something chunky for you...01:28
andyrockthumper, ah ok... but i think that i've found the problem01:28
thumperoh?01:28
thumperand it is?01:29
andyrockI've to do some tests but i'm quite sure...01:29
thumperandyrock: a key thing here is "can we test it in an automated way?"01:29
andyrocka no initialization01:29
thumperhaha01:29
andyrockproblem01:30
thumpersounds plausable01:30
andyrockin nux::GraphicsDisplayX11...01:30
thumperoh really?01:30
thumperha01:30
andyrock_global_pointer_grab_active is not initializzed01:31
* thumper goes to open source01:31
andyrockand it's used to grab the mouse01:31
andyrockthis explains why the probelm happens just at the login01:32
* thumper nods01:32
thumpergood find01:32
thumperthat class is crazy big01:33
andyrockso if bschaefer is online he can look to it...01:33
thumperthe interesting question is how do we write a test for it?01:34
andyrockmmmh, is there a way to create fake X event?01:35
andyrockI mean I know how create X event from xlib01:36
* thumper looks for jay01:36
bschaeferandyrock: hey im here01:36
andyrockbschaefer, about quicklist problem...01:36
andyrockhave you found a fix?01:37
bschaeferandyrock: not yet, but I see what you suggested01:37
thumperwhat we want to be able to do is to construct a graphics display object to test01:37
bschaefer(or said, I can see if that fixes it)01:37
thumperbschaefer: it looks most likely to fix it01:38
thumperbschaefer: also I'm guessing there are other members not initialized there too01:38
thumperprobably worth a look01:38
thumperit is a massive class01:38
bschaeferthumper: yeah that would explain whats going on01:38
bschaeferandyrock: thanks, will take a look into, and see if I can find anything else not inited01:38
bschaeferthat needs to be01:39
andyrockusing an hack in unity fix this problem to...01:39
andyrocki mean:01:39
andyrockGrabPointer();01:39
andyrockUngrabPointer();01:39
andyrockand again...01:39
andyrockGrabPointer()01:39
andyrockjust to init everything we need01:40
bschaeferthere was also the similar problem with the dash on start up01:40
thumperandyrock: ew...01:40
andyrockbschaefer, i know01:40
andyrockthumper, i know that the hack sucks but it's how i found the problem :)01:41
thumperandyrock: don't get me wrong, it is a great find01:41
andyrockthumper, another question... can someone reviews this branch https://code.launchpad.net/~andyrock/unity/fix-875467/+merge/7963801:43
andyrockplease...01:43
* thumper looks01:43
andyrockit's a low priority bugs01:43
andyrockbut a bug is a bug01:43
thumperandyrock: that code will blow up01:45
thumperandyrock: I'll give a more complete review when I'm done with sam01:45
andyrockthumper, thanks01:47
andyrockI'm going to bad (3:00 AM here)... see you tomorrow01:51
thumperandyrock: ok01:52
bschaeferthumper: yeah that fixed it02:00
thumperbschaefer: awesome02:01
thumperbschaefer: that also explains why it only sometimes happened02:01
bschaeferthumper: just need to figure out the best way to actually do it02:01
thumperdo it?02:01
thumperor test it?02:01
bschaeferi mean better way02:01
bschaeferthen GrabPointer02:01
bschaeferand UnGrab02:01
thumperoh, fix nux02:01
bschaeferyeah02:01
bschaeferand how to test it...02:01
thumperthat is why I was pinging Jay02:01
bschaeferI see, it also looks like it fixed my Dash too02:02
thumperbschaefer: make a nux branch that initializes all of the GraphicsDisplay02:02
thumper(using initializer lists)02:02
* thumper looks at the time02:02
bschaeferalright!02:02
* thumper runs to collect kids02:02
bschaeferhave fun02:03
thumperbschaefer: once you have that, we can talk to jay about the best way to instantiate one and check :)02:15
bschaeferok, none of it was in an init list so it is taking a little time02:15
bschaeferthumper: plus i wanna check I get everything :)02:15
thumperbschaefer: cool02:16
thumperbschaefer: did you mention that this may also fix bug 860805?02:19
ubot5Launchpad bug 860805 in unity (Ubuntu Oneiric) "Dash doesn't get the focus on pressing the super key first time after login" [Medium,Confirmed] https://launchpad.net/bugs/86080502:19
thumperbschaefer: or is that something else?02:19
bschaeferYeah, it seemed to be fixed also, but I wanna log out and do some more testing before i say a definite yes02:20
bschaeferthumper: ^02:20
thumperbschaefer: awesome02:20
bschaeferthumper: which I will do when I am done with this :)02:20
thumperbschaefer: two bugs with one fix :)02:20
thumperbschaefer: I'll put you down for these two bugs then02:21
thumperbschaefer: and you can link it to your nux branch02:21
thumperbschaefer: what's your LP id?02:21
bschaeferthumper: yeah, if it isen't then it is very similar02:21
bschaeferbrandontschaefer02:21
thumperta02:25
bschaeferthumper: sadly it didn't fix the dash, but it has to be very simillr, so I will start looking into that.03:36
bschaefersimilar*03:36
bschaeferthumper: https://code.launchpad.net/~brandontschaefer/nux/fix-81972104:02
bschaeferfix for when you wanna call jay n04:02
bschaeferin*04:02
andyrockthumper, about this: https://code.launchpad.net/~andyrock/unity/fix-875467/+merge/7963808:45
andyrocki just have to add the get_icon_name_from_g_icon in the impl namespace?08:46
=== zyga-afk is now known as zyga
apwcan anyone tell me where to find the documentation for the expected semantics of t11:15
apwthe unity desktop.  its silly i have to keep asking if my observed behaviour is "right"11:15
apwbut until i have that.  i assume that i should expect new windows to appear on the same monitor as the cursor ?11:15
smspillazapw: I'm pretty sure that the smart placement code puts the window in the most optimal space on the last active monitor11:41
apwsmspillaz, ok so its definatly not putting it on the last active monitor most of the time for me, in this example when running gitk11:42
apwsmspillaz, ok so bzr vis does appear on the right one, but thats not 'full screen', any idea what determines whether a window is full screen or not when its created ?11:44
=== Jens is now known as Guest71164
smspillazsome windows palce themselves11:48
smspillaz*place11:48
smspillazsome tcl/tk applications do this iirc11:48
=== andyrock is now known as andyrock|away
JoniiHow did I check if I had Unity 2d or 3d?12:27
smspillazJonii: alt-tab12:28
smspillazJanC: if you have tiles that match what you've got on the launcher, its 3d, otherwise 2d12:28
JoniiI don't understand12:28
JoniiIcons that show up after alt-tab are included in launcher, and they look more or less the same(the size is different)12:30
smspillazyou're using 3D then12:30
smspillaz(though, I haven't checked if 2D has implemented this feature)12:30
JoniiSo, it means my graphics device has to use 3d-acceleration and that is why Ubuntu is draining my battery so ridiculously fast?12:31
smspillazJonii: not necessarily12:31
=== seif is now known as seifstrup
=== seifstrup is now known as kamlotfy
smspillazJonii: the battery drain is a combination of that, a kernel bug and a few other things likely12:33
smspillazthe 3D unit of your graphics hardware will remain on regardless of whether or not you're using unity 2d or unity 3d because they both use the same codepaths on the gpu12:33
smspillaz(and I beleive that having the 3D unit and the memory controller on is now mandatory these days in the kernel mode-setting world)12:34
smspillazand then there are a few inefficiencies in the way that unity-3d does its painting, which are being worked on12:34
JoniiSo switching from unity 3d to 2d is unlikely to fix my ubuntu?12:34
smspillazyou may get a slight power boost, sure, but I don't think it will be drastic12:35
JoniiCurrently Ubuntu drains the battery roughly twice as fast as Windows 712:37
smspillaz*shrug* It's worth testing in your case I suppose12:37
JoniiHow to change?12:38
smspillazlog out, click on the settings cog next to your username, pick "Unity 2D", log in12:38
JoniiShutdown is not needed?12:39
smspillaznope12:39
JoniiThen I'll try that right now ->12:39
smspillazok12:39
=== API is now known as apinheiro
JoniiHumm, maybe 1W less12:44
=== kamlotfy is now known as kamseifstrup
=== kamseifstrup is now known as mstr_seif
=== yofel_ is now known as yofel
=== mstr_seif is now known as seif
mhr3apinheiro, hey, can you tell me something about the atk objects, particularly when are they destroyed16:50
apinheiromhr3, hi16:50
apinheirothey are destroyed when the bridge doesn't require them anymore16:51
apinheirousually, when the ui object is destroyed16:51
apinheirothey "survive" a little16:51
apinheirothe ATs are notified, and then not used anymore16:51
mhr3apinheiro, what does a little mean?16:51
apinheiroso after that the bridge made a g_object_unref and remove it16:51
apinheirook, from the beginning16:51
apinheiroan atk object is a kind of proxy of the UI objects16:52
apinheiroso for a gtkbutton, you usually have an atkobject16:52
apinheirothe one asking for a ref of that object is the atk-bridge16:52
apinheiroatk-bridge communicate with the registry16:52
apinheiroATs (AT == assistive technology)16:52
apinheiroask the registry for apps, and also for their contents16:53
apinheiroso a atkobject is alive as long as it is relevant to that AT16:53
apinheirowhen the UI object is destroyed16:53
apinheirothe atkobject usually remains alive, although changing his state16:53
apinheiroand after that the bridge usually makes a unref, so then destroyed16:54
apinheiromhr3, anyway, why asking?16:54
apinheirodo you plan to work with atkobjects in some app?16:54
mhr3is there any possibility that the atk object and it's methods are being called after the associated widget dies?16:54
apinheiroyes, that it is usual16:55
mhr3apinheiro, there's some bug i'm trying to fix16:55
apinheirothis is the reason the atkobject needs to be connected to the destruction of that object16:55
apinheiroa atkobject also have states16:55
apinheiroone of his states is ATK_STATE_DEFUNCT16:55
apinheirothat means that the ui object related to that atkobject is dead16:56
mhr3so instead of weak_refing the gtkobject i can just check the state?16:56
apinheiroyes, you can check the state16:56
apinheiroin fact, a lot of the methods on a atk implementation already made that check16:56
apinheiroif atk_state_defunct then return;16:56
mhr3apinheiro, yea, the stacktrace i see is that get_n_children was called, and then it crashes16:57
apinheiroanyway, atk-bridge was changed recently, and it usually doesn't interact with a object on defunct state16:57
apinheiroand about <mhr3> so instead of weak_refing the gtkobject i can just check the state?16:57
apinheiroas far as I remember, the way this is implemented on gtk is with weak_refs16:57
apinheiroI mean that the atkobject adds a weak_ref16:58
apinheiroso if the ui object is destroyed16:58
apinheiroit changes the state to DEFUNCT, and also set his reference to the ui object to NULL16:58
apinheiromhr3, do you have here the bug number?16:58
mhr3sure, let me get it16:58
apinheirolamalex, btw, did you see yesterday my question?16:58
apinheirodo I need to resubmit my branch review proposal?16:59
mhr3apinheiro, https://bugs.launchpad.net/ubuntu/+source/unity/+bug/86372017:00
ubot5Error: ubuntu bug 863720 not found17:00
lamalexapinheiro, no you shouldn't need to17:00
apinheirolamalex, ok thanks17:01
apinheiromhr3, is this the proper link? I get a "this page doesn't exist"17:01
apinheirowell, it also says "or you may not have permission to see it. " :P17:01
mhr3apinheiro, try again17:02
apinheirohmm the panel service17:02
apinheiroI solved a crash on the panel service recently17:02
apinheirolet me see17:02
mhr3apinheiro, yea... too many crashes in it :P17:03
apinheirohttps://bugs.launchpad.net/unity/+bug/84328017:03
ubot5Ubuntu bug 843280 in unity (Ubuntu) "unity-panel-service crashed with SIGSEGV in g_closure_invoke()" [High,Fix released]17:03
apinheiromhr3, could you check if that fix is included on your code?17:03
mhr3apinheiro, if it's fix released, it is :)17:04
apinheiroyes, makes sense :P17:04
mhr3the question if the reporter had it... :/17:04
mhr3the question is if the reporter had it... :/17:04
apinheiroah, were you able to reproduce it?17:04
mhr3apinheiro, not exactly this one, but a similar stacktrace17:05
mhr3also in the same func, same line17:05
mhr3unfortunately i reproduced it randomly, dont have an exact way to do it :/17:06
apinheirowell, with the panel there are some race conditions :/17:06
apinheirothey had some random crashes in the past, not only with a11y enabled17:06
mhr3yep, i fixed a few unrelated ones :)17:07
mhr3but since i was able to make it crash, this one isn't fixed yet17:07
apinheirolet me see, the last one I fixed was just a wrong way iterating an array17:08
mhr3apinheiro, so anyway my basic question is - can the get_n_children be called when the atkobject is defunct?17:08
apinheirolets see if it is a obvious issue17:08
apinheiromhr3, it shouldn't17:08
apinheiroin theory if the object is defunct the bridge will not called it17:09
apinheirobut in theory ;)17:09
apinheirothis can be a bug there17:09
mhr3i'll check in atk17:09
apinheiroatk-bridge17:09
apinheiromhr3, the bridge source code is at at-spi2-atk17:10
mhr3apinheiro, in gnome?17:11
=== andyrock|away is now known as andyrock
apinheiromhr3, http://git.gnome.org/browse/at-spi2-atk17:12
apinheiromhr3, that append_cache_item on the backtrace17:12
apinheiroon cache-adaptor.c17:12
apinheirothat file belongs to at-spi2-atk17:13
apinheiromhr3, take a look to the code17:14
apinheiro    if (!atk_state_set_contains_state (set, ATK_STATE_MANAGES_DESCENDANTS) &&17:14
apinheiro        !atk_state_set_contains_state (set, ATK_STATE_DEFUNCT))17:14
apinheiro      {17:14
apinheiro        gint childcount, i;17:14
apinheiro        childcount = atk_object_get_n_accessible_children (obj);17:14
ubot5apinheiro: I am only a bot, please don't think I'm intelligent :)17:14
apinheiro        for (i = 0; i < childcount; i++)17:14
apinheirothat atk_object_get_n_accessible_children17:14
apinheirois that line 153 on the backtrace17:14
mhr3apinheiro, damn :(17:15
apinheiroand as you can see, it test if the object is defunct17:15
mhr3and i though it'd be an easy fix :P17:15
apinheiroanyway, next question is if they are properly updating the defunct state17:15
apinheiroI thought that you were talking about a gtk bug17:15
apinheirobut the panel-service creates custom atk objects17:15
apinheirofor non-gtk objects17:15
mhr3i think it isn't in gtk/atk17:16
apinheirothis code was mostly written by rodrigo moya17:16
apinheiroI just fixed some bugs, so I don't know all the details17:16
apinheirolet me check a mon17:16
mhr3yea np, i'll dig into it deeper, thanks anyway17:16
mhr3and i already talked to rodrigo ;)17:17
apinheirowell, just grepping for DEFUNCT I don't find anything17:17
apinheiroanyway on panel_indicator_entry_accessible_get_n_children17:17
apinheiroit already does this:17:17
apinheiro  g_return_val_if_fail (PANEL_IS_INDICATOR_ENTRY_ACCESSIBLE (accessible), 0)17:17
apinheirohmm, forget that17:17
apinheirothat it just a test that the accessible object is still an accessible object17:18
apinheirosorry for the noise17:18
mhr3the problem is that priv->entry is either something odd or NULL17:18
mhr3but yea, now i realized that we're connecting to non-gtk objects, so maybe there should be something to set the DEFUNCT state?17:19
apinheiromhr3, yes true, thats the line17:19
apinheiromhr3, probably17:19
apinheirowhen this accessible object is created is because there are a entry17:20
apinheiroin fact a entry->menu17:20
apinheiroso you could do that, check if that object is destroyed17:20
apinheiromhr3, you could go to your original weak_ref test17:21
apinheiroand if it is true that the object is destroyed17:21
apinheirothen it would be required to add the DEFUNCT nits on that custom atk object17:21
apinheirothat means notify that the state change to DEFUNCT17:21
mhr3apinheiro, yep, that should work, the problem is that i can't reproduce it easily :/17:21
apinheiroand update panel_indicator_entry_accessible_ref_state_set accordingly17:22
apinheiromhr3, yes that kind of bugs are the worst17:22
apinheirowhen you say that you can't reproduce it easily what means?17:22
apinheirothat you usually need about 10 attempts to reproduce, 30 min?17:22
mhr3that it's completely random17:23
mhr3i reproduced it while working on completely different bug17:23
apinheirohmm, but the bug description says "This bug is highly reproducible."17:23
mhr3maybe for them :P17:23
apinheiro;)17:24
apinheirowell, anyway, just in case I will add a summary of this conversation to the bug17:25
apinheirotaking a look to the parent17:25
apinheiropanel-indicator-accessible17:25
mhr3cool, thx17:25
apinheirothere are a callback for indicator_entry_removed17:25
apinheiroso that means that indicator_entry are usually removed17:25
apinheiroso makes sense on the accessible object to be sure that the object are still there17:26
apinheiromhr3, hmm, btw, on the initialize it checks priv->entry->label and priv->entry->image to check the role and name17:33
apinheirobut on ref_child it exposes priv->entry->menu17:33
apinheiroprobably you should ask rodrigo about this ;)17:33
mhr3apinheiro, we have a lot of crashers and none of them were in ref_child :)17:33
apinheirowell, on get_n_children it also checks the menu17:34
apinheirowhat I mean is that object seems to be exposing the menu, but on the initialize it ignores it17:34
mhr3apinheiro, that's fine, the entry object has label(+image) *and* menu17:39
mhr3so initialize is fine17:40
apinheiromhr3, ok17:40
apinheiropity that I have just added the comment on the bug ;)17:41
mhr3yey, i reproduced it!17:42
apinheiromhr3, with a weak_ref?17:43
mhr3apinheiro, no, just added some debug which didn't really get called17:44
mhr3apinheiro, and i also pressed enter too soon so i didn't have a chance to inspect the locals :/17:44
mhr3crap17:44
om26erkamstrup, Hi any thoughts on bug 842108 also what do you think if its Unity bug or lens?18:12
ubot5Launchpad bug 842108 in unity (Ubuntu) "run command (alt+F2): results do not contain the exact match" [Medium,Confirmed] https://launchpad.net/bugs/84210818:12
kamstrupom26er: i think it must be a bug in unity-lens-applications18:13
om26erkamstrup, it only happens with alt-f2 though, i'll add the lens as affects :)18:13
kamstrupom26er: yeah, I noticed18:14
kamstrupom26er: and is it only evolution? both gedit and gcalctool work...18:14
om26erkamstrup, try typing 'empathy'18:15
kamstrupom26er: hmmm, that follows the same pattern as evo18:15
kamstrupthere are two hits18:15
kamstrup$name-settings18:15
kamstrupand it removes the $name hit18:15
mgedminover here Alt-F2 nautilus finds 'nautilus-actions-config-tool' and a whole bunch of other stuff, doesn't find nautilus itself18:17
om26erthe same pattern :)18:17
mgedminI remember some pain trying to restart unity with Alt-F2 unity; thankfully Alt-F2 unity --replace works fine18:18
om26ersmspillaz, Hi, you around?18:18
om26ersmspillaz, this bug 875557 and a bunch other came through the SRU update :/18:19
ubot5Launchpad bug 875557 in compiz-plugins-main (Ubuntu) "Compiz grid overlay appears after workspace switcher use" [Critical,Confirmed] https://launchpad.net/bugs/87555718:19
mgedminoh, hey, I've seen this one too, was just about annoyed enough to try to file it, but couldn't figure out how to reproduce it!18:20
andyrockom26er, htorque scrolling with touchpad in the dash is broken right?18:36
htorqueandyrock: gimme a second18:37
om26erandyrock, seems to have regressed :/18:37
htorqueworks here, but i'm not up-to-date. would i need trunk for this?18:38
andyrockom26er, damn...18:39
om26erwfm too :(18:39
om26erhahah i was using two fingers scrolling but side scrolling was enabled :p18:39
htorque;)18:39
andyrocki'm using two fingers scrolling18:40
andyrocktoo...18:40
andyrockhtorque, can you try with two finger scrolling please?18:40
htorqueupdating first :)18:41
om26erandyrock, two finger scrolling works18:41
andyrockom26er, on my pc two finger scrolling doesn't work18:42
andyrockside scrolling works18:42
htorqueworks here too.18:42
andyrockjaytaoko1, around?18:43
andyrocksummarizing...18:45
andyrockfor me18:45
htorqueanyone here good at reading valgrind logs? want to make sure bug 886467 gets assigned to the right place (i added unity today as it happened on my "trunk" testing machine).18:45
ubot5Launchpad bug 886467 in unity (Ubuntu) "Memory leaking from the unityshell plugin" [Undecided,New] https://launchpad.net/bugs/88646718:45
andyrock* 2 finger scrolling doesn't work18:45
andyrock* edge scrolling woks18:45
andyrockfor om26er18:45
andyrock* 2 finger scrolling works18:45
andyrock* edge scrolling doesn't works18:46
andyrockfor htorque18:46
andyrock* 2 finger scrolling works18:46
andyrock* edge scrolling works18:46
andyrockright?18:46
om26erboth scrolling methods work for om26er :)18:46
andyrockom26er, have you nux and unity from trunk?18:47
om26erno, latest in oneiric18:47
htorquei'm on precise, compiling nux & co. from trunk right now.18:47
andyrockom26er, ok18:48
andyrockhtorque, i'm on oneiric18:48
andyrockyou can build unity from trunk using oneiric ;)18:48
jaytaoko1andyrock: hello18:49
htorqueandyrock: oneiric? what's that? no machine's running that here anymore. :P18:49
andyrockjaytaoko1, two finger scrolling doesn't works in dash18:50
andyrockknown bug?18:50
andyrocknux and unity from trunk18:50
andyrockhtorque, eheheh i've not so much time now18:50
andyrockyesterday i've spent the night to fix "qucklist problem after the login"18:51
andyrockand for a month  i've study hard18:52
andyrock*I have studied18:52
jaytaoko1andyrock: it is working fine on my laptop18:53
jaytaoko1andyrock: however, I am not at the latest version18:53
jaytaoko1andyrock: I will have to upgrade and check again18:53
andyrockjaytaoko1, don't worry...18:54
andyrockmmm... it doesn't work well if you use the two finger scrolling on a dash icon18:58
htorqueandyrock: i'm now on trunk and scrolling works with mouse wheele, touchpad edge scrolling, two finger scrolling (w/ and w/o horizontal scrolling enabled). though, two finger scrolling seems rather sensitive - i just opened six instances of a program. :D19:11
htorque*wheel19:11
andyrocktry two finger scrolling inside the dash, without hovering any icons19:17
andyrockit works right?19:17
htorqueandyrock: yeah, with and without hovering icons.19:19
andyrockhtorque, thanks19:20
htorqueyw! :)19:20
=== andyrock is now known as andyrock|brb
bschaeferthumper: hey are you around?20:24
thumperbschaefer: am now20:45
thumperbschaefer: set up in my favourite cafe20:45
bschaeferthumper: nice, just got back from a few errands.21:38
* thumper is still here21:38
bschaeferthumper: sorry it took so long to get that branch up, that class was huge and it wasn't in order at first and I wanted to triple check it was working21:38
thumperbschaefer: that's fine21:38
thumperI have an overly agressive imapfilter rule right now21:39
thumperI need to tweak it so code review email that is directed to me stays in my inbox if unread21:39
bschaeferthumper: haha, yeah I need to get mine set up. Never have I ever felt so popular from an email21:39
bschaeferthumper: I didn't submit it for a merge yet because I wanted you to take a look at it (even though it was a simple init list)21:40
bschaeferthumper: and I am currently looking for the problem with the dash21:40
thumperbschaefer: do you realise that you can propose for merging, but mark it work in progress?21:40
thumperbschaefer: that way no review email goes out, but you can see the diff21:40
bschaeferthumper: I do now21:41
thumperbschaefer: when proposing, expand the extra options21:41
thumperbschaefer: and uncheck "ready for review" or whatever it is21:41
bschaeferthumper: good to know, as I haven't really proposed many branches yet21:41
thumperbschaefer: has you pushed your nux branch to LP?21:41
thumperbschaefer: that's fine, I can help you though it all21:42
bschaeferthumper: yeah21:42
bschaeferhttps://code.launchpad.net/~brandontschaefer/nux/fix-81972121:42
thumperok, so propose it for merging :)21:42
bschaeferthumper: doing that right now :)21:42
bschaeferthumper: branch is proposed21:46
thumperkk21:47
thumperI'll take a look21:47
bschaeferthumper: ugg i noticed a mistake. Line 8221:56
bschaeferI accidentally removed that21:56
bschaefer(fixed, ill wait to see if you find anymore before I push)21:57
thumperbschaefer: if you fix and push, the diff will update22:00
bschaeferthumper: done22:02
thumperjaytaoko1: you around?22:02
bschaeferthumper: should I change the reviewer to jay?22:04
thumperbschaefer: I'm trying to work out how to test this22:05
thumperbschaefer: ideally we'd like an automated test22:05
bschaeferthumper: yeah, I haven22:05
thumperright now that class has a private constructor22:05
thumperso it makes it harder to test22:06
bschaefermade a gui test before so this will be interesting22:06
bschaefercould we just make a public method that is only enabled when an ifdef TEST etc..22:06
thumperNah...22:07
bschaefersaw something like that in xapian...22:07
thumperPerhpas what we do is this...22:07
thumpermake a trivial app that just brings up a window22:07
thumperonce it is up, we do some testing internally to assert the state of the variables22:07
thumperthen trigger an exit22:07
thumpermake the main return value represent the test result22:08
thumper0 is good22:08
thumper1 is bad22:08
bschaeferalright, how would we assert data that is hidden?22:08
thumperthere are some very simple nux apps already in the examples directory22:08
bschaeferyeah I have seen those22:08
* thumper thinks and looks at the code again22:09
thumper bool GraphicsDisplay::PointerIsGrabbed()22:10
thumperthe test apps we create are going to be mind blowingly simple to start with22:10
thumperwe then need to make sure that the app is built as part of make check22:10
thumperand executed22:10
bschaeferok22:11
thumperthere is code in the test directory that does the google test stuff22:11
bschaeferok, should be fun to figure this out22:11
thumperwhile you are there, you could make PointerIsGrabbed a const function22:11
thumperbschaefer: I've just pasted a log of this chat into the review :)22:12
bschaeferalright, so simply make an app; then have it assert the value of the PointerIsgrabber() return 0 as good and 1 as bad22:12
bschaeferthat should be a good starting ground to have more test within nux22:12
thumperyep, sounds good22:13
=== m_conley_away is now known as m_conley
=== m_conley is now known as m_conley_away
bschaeferthumper: so basically I used the test_entry_focus.cpp to base the new test off, and have it create init a window then use this to check what the value is.23:31
bschaefernux::GetGraphicsDisplay()->PointerIsGrabbed() == true ? assert = 1 : assert = 0;23:31
bschaeferi should check for false, since I assume assert is 1 just in case it is not inited23:32
andyrockgord, around?23:44
thumperandyrock: gord is on leave until next week23:46
thumperbschaefer: use a global return value (ick, I know)23:46
thumperbschaefer: don't call it assert (that is a reserved work - or it should be)23:47
andyrockthumper, do you know if the using of the mouse wheel onto dash scrollbar is disabled by design?23:47
thumperandyrock: my guess is no23:48
bschaeferthumper: ok, was trying to avoid a global. I think getting it into the make file is going to be more annoying part23:48
thumperbschaefer: sometimes a global is needed, and for this it makes sense23:50
bschaeferthumper: yeah, I didn't think it was needed because I could do the check in the main23:51
bschaeferthumper: but I will move it to the init function now, because that is better23:51
thumperreally?23:51
thumperhmm...23:51
thumperinit is good23:51
bschaeferthumper: yeah since you can use the GetGraphics function23:52
bschaefernux::GetGraphicsDisplay()->PointerIsGrabbed()23:52
thumperbschaefer: I think doing it in the main loop is better as the window has been created23:53
bschaeferthumper: yeah I can show you what I have to see if you like it23:53
bschaeferthumper: before moving the stuff around23:53
thumpersure23:53
jaytaoko1thumper: ping23:54
thumperjaytaoko1: hi23:54
bschaeferhttp://pastebin.com/heiwPbB323:54
bschaeferwill change the variable though!23:55
thumperjaytaoko1: bschaefer has a branch that changes the GraphicsDisplay for X11 to intiailise the variables23:55
thumperjaytaoko1: we are working out how to get a simple automated test :)23:55
thumperjaytaoko1: this was the cause of the quicklist not getting focus the first time23:55
jaytaoko1thumper: Ok, I saw the branch23:56
thumperjaytaoko1: is there an event in nux we can connect to when the views are shown?23:56
thumperjaytaoko1: also, how can we close the nux window from an internal function?23:57
jaytaoko1thumper: let me check...23:57
thumperjaytaoko1: here is what we want to do:23:57
thumperPop up a window23:57
thumperOnce it has been all set up, query some internal state23:57
thumperthen close the window and shutdown23:57
bschaeferthumper: well not calling Run will make the window not pop up while leaving all the inited variables23:58
bschaefer(tested it by removed the inited var)23:58
bschaeferremoving*23:58
thumperbschaefer: but it isn't really indicitive of what happens23:59

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