fluid-work IRC Logs-2013-10-17

[07:05:22 CDT(-0500)] <amilchev> hi Justin_o, tell me when you're here..

[07:15:14 CDT(-0500)] <Justin_o> amilchev: hello

[07:16:04 CDT(-0500)] <amilchev> Justin_o: I fixed some of the comments on the pull request https://github.com/GPII/prefsEditors/pull/6, but some of them I couldn't

[07:17:12 CDT(-0500)] <amilchev> Justin_o: how do you suggest handling the breaking of the UI when "save/reset/cancel" button is pressed, I guess reloading the page isn't an option..

[07:18:53 CDT(-0500)] <amilchev> I know chris had the same problem but didn't understand how it was fixed

[07:20:20 CDT(-0500)] <Justin_o> amilchev: have you determined what is causing the breakage?

[07:25:53 CDT(-0500)] <amilchev> Justin_o: well the animation listeners "onReady...." and "onSomeEvent...." are still there inside the component, but I don't know what exactly the save/reset/cancel buttons do - so no

[07:29:04 CDT(-0500)] <Justin_o> amilchev: just trying to run your code.. i'm getting 404 errors on MyInfusion.js and speakTextPanel.js

[07:29:38 CDT(-0500)] <amilchev> Justin_o: hm that's weird.. let me see..

[07:33:30 CDT(-0500)] <amilchev> Justin_o: I see no problem on my side

[07:34:21 CDT(-0500)] <Justin_o> it's strange because it's working but i'm getting 404 errors on those two.. they are at different paths than what you have in the head though..

[07:34:27 CDT(-0500)] <Justin_o> you are not getting any 404 errors?

[07:36:13 CDT(-0500)] <Justin_o> amilchev: okay.. i think i've found the problem.. it's coming from the template "newestSpeakText.html"

[07:36:58 CDT(-0500)] <Justin_o> amilchev: templates should be DOM fragments..

[07:38:21 CDT(-0500)] <amilchev> Justin_o: I don't see any 404 errors, do you mean these paths are incorrect? https://github.com/radmanovi4/prefsEditors/blob/divide-and-conquer/demos/speakTextAdjusterGroup/index.html#L20-L22

[07:40:48 CDT(-0500)] <amilchev> Justin_o: do you mean that instead of this single container https://github.com/radmanovi4/prefsEditors/blob/divide-and-conquer/src/shared/adjusters/html/newestSpeakText.html#L4 there should be one similar to this for each adjuster?

[07:40:48 CDT(-0500)] <Justin_o> amilchev: sorry.. i was looking at an old version of your code

[07:41:48 CDT(-0500)] <amilchev> Justin_o: oh, sorry I didn't mention it in the first place..

[07:42:34 CDT(-0500)] <Justin_o> amilchev: nope, my fault.. i mistyped a command in git and thought it had changed things, but it didn't.. i have it sorted out now and no more 404 errors (smile)

[07:42:42 CDT(-0500)] <Justin_o> i'll take a look at the save/reset thing now

[07:42:51 CDT(-0500)] <amilchev> Justin_o: thank you!

[07:43:24 CDT(-0500)] <Justin_o> amilchev: i'm going to guess there is an issue reading from the storage though as the UI remains broken after saving until i do a reset and then refresh.

[07:56:12 CDT(-0500)] <amilchev> Justin_o: I noticed one more thing - the very first click on the header does nothing - at this moment the that.model.extraAdjustersVisibility is true (for some reason)

[08:02:51 CDT(-0500)] <Justin_o> amilchev: interesting.. by the way.. i think those events should be part of the panel as opposed to the preference editor

[08:03:16 CDT(-0500)] <Justin_o> and model for that matter

[08:09:49 CDT(-0500)] <Justin_o> amilchev: your model paths seem to be undefined for partialAdjustersVisibility

[08:13:55 CDT(-0500)] <amilchev> Justin_o: which line is that?

[08:14:22 CDT(-0500)] <Justin_o> amilchev: when you hit save and apply it seems to to close the panel without going through your logic which sets the model state.. also these values from the model are persisted in the cookie

[08:15:02 CDT(-0500)] <Justin_o> amilchev: line 234 and 235 of speakText.js

[08:21:24 CDT(-0500)] <amilchev> Justin_o: about 234 & 235 that.OPTIONS.model doesn't make any difference, does it..

[08:25:05 CDT(-0500)] <amilchev> Justin_o: I guess Chris and I have been extra annoying recently but these pull requests are EXTREMELY important, since merging our code can only happen after they're approved..

[08:45:20 CDT(-0500)] <Justin_o> amilchev: it shouldn't and it would be the wrong place to look.

[08:45:51 CDT(-0500)] <Justin_o> amilchev: no worries.. i'm happy to help where i can... and you are right, the pull requests are important

[08:46:15 CDT(-0500)] <amilchev> Justin_o: any progress?

[08:47:00 CDT(-0500)] <Justin_o> amilchev: yes.. so i think the issue here is stemming around the state being held in uiOptions model instead of the panel

[08:47:23 CDT(-0500)] <Justin_o> because it's there, the values are being persisted to the store as well...

[08:47:44 CDT(-0500)] <Justin_o> i think changing this will be the first step to solving the issue

[08:51:34 CDT(-0500)] <amilchev> ok si I moved this inside the speakTextCollectivePanel ...

[08:51:34 CDT(-0500)] <amilchev> model: {

[08:51:34 CDT(-0500)] <amilchev> partialAdjustersVisibility: false,

[08:51:34 CDT(-0500)] <amilchev> extraAdjustersVisibility: false

[08:51:34 CDT(-0500)] <amilchev> }

[08:52:35 CDT(-0500)] <amilchev> no obvious changes followed..

[08:54:44 CDT(-0500)] <Justin_o> did you move the events and everything else into there as well?

[08:54:53 CDT(-0500)] <Justin_o> amilchev: ^

[08:56:37 CDT(-0500)] <Justin_o> amilchev: also do you have this pushed up somewhere?

[08:58:30 CDT(-0500)] <amilchev> Justin_o: no, wait a sec..

[08:58:43 CDT(-0500)] <Justin_o> amilchev: sure, let me know

[09:49:20 CDT(-0500)] <amilchev> Justin_o: I moved practically all the content of speakText.js into the CollectivePanel and the result was visually the same as after hitting "save" - no errors, nothing moves, no "speak text" text ...

[09:56:24 CDT(-0500)] <colinclark> Hey jessm, have you had a chance to look closely at the latest Pilots scenario document for Cloud4all?

[09:56:30 CDT(-0500)] <colinclark> I know you've been busy with the PGA doc

[09:56:40 CDT(-0500)] <colinclark> michelled was just pointing something interesting about it out to me

[09:59:27 CDT(-0500)] <jessm> colinclark: i have been glancing, but haven't had a good, long read. what interesting thing did michelled see?

[09:59:37 CDT(-0500)] <colinclark> Task 1.2 is curious

[09:59:53 CDT(-0500)] <colinclark> It involves proposing a new solution or assistive technology to the user

[10:00:17 CDT(-0500)] <colinclark> The scenario, I think, is pretty problematic from several perspectives

[10:00:27 CDT(-0500)] <colinclark> both in terms of pragmatics and our design vision

[10:00:57 CDT(-0500)] <colinclark> The idea is that, if a preferred AT isn't present, a Matchmaker "recommends" something else to the user

[10:01:17 CDT(-0500)] <jessm> yes

[10:01:42 CDT(-0500)] <colinclark> We don't have any designs for this sort of a "messages" UI, do we?

[10:01:52 CDT(-0500)] <colinclark> And presumably we want stuff to just happen

[10:01:55 CDT(-0500)] <colinclark> and seamlessly

[10:02:13 CDT(-0500)] <colinclark> rather than involving any kind of explicit "yes, Matchmaker, do that" step

[10:06:09 CDT(-0500)] <jessm> we do not have any messages yet

[10:06:52 CDT(-0500)] <jessm> yet we've said pretty consistently I think (and hope!) that we won't make changes without giving the user the opportunity to confirm them.

[10:10:16 CDT(-0500)] <jessm> colinclark: i think i should sit down with Fish today and inch through these tables. Eleni said they weren't quite updated - ugh.

[10:15:30 CDT(-0500)] <colinclark> I guess the issue is partially "getting in the door"

[10:15:51 CDT(-0500)] <colinclark> For a user who needs a screenreader, how do you even send them messages and allow them to confirm if you don't launch a screenreader?

[10:17:06 CDT(-0500)] <michelled> I suppose it might mean a self voicing message. but I feel like it's extra steps that might be annoying

[10:17:30 CDT(-0500)] <michelled> on the other hand, if the user gets an AT launched that they have no idea how to interact with, that will stop them in their tracks

[10:18:45 CDT(-0500)] <colinclark> yes, that's very true

[10:21:15 CDT(-0500)] <kasparnet> colinclark, michelled, jessm: apparently the first of the matchmaker interaction scenario was something that was discussed with claudia and not needing to be implemented

[10:21:30 CDT(-0500)] <kasparnet> ie. the one with webanywhere and the question of which matchmaker to launch

[10:25:51 CDT(-0500)] <colinclark> kasparnet: Can you clarify?

[10:26:07 CDT(-0500)] <colinclark> Are you saying Eleni and Claudia decided that this Task 1.2 won't be tested in the Pilots?

[10:30:58 CDT(-0500)] <kasparnet> colinclark: yeah - so 1.2.1 was something that Claudia suggested, but that we dont need to implement it

[10:31:50 CDT(-0500)] <colinclark> ok

[10:32:06 CDT(-0500)] <colinclark> Are the Matchmakers capable of making these kinds of recommendations?

[10:32:17 CDT(-0500)] <colinclark> What's the format that a Matchmaker users to communicate messages to the rest of the framework?

[10:35:25 CDT(-0500)] <kasparnet> colinclark: I guess they are.. the format is still undecided, but probably part of their return payload (JSON)

[10:36:01 CDT(-0500)] <colinclark> In the current Matchmakers, does it involve a two-way conversation, or simply a message?

[12:53:07 CDT(-0500)] <Bosmon> Hi Justin_o - could you give more details on your problems with resolving the message bundles?

[12:53:17 CDT(-0500)] <Justin_o> Bosmon: hello sure..

[12:54:18 CDT(-0500)] <Justin_o> Bosmon: so part of the base issue is that i need an array of strings to pass into the optionnames property of a input protoTree.

[12:55:00 CDT(-0500)] <Justin_o> Bosmon: in the messge bundle there are no arrays, instead they are grouped with a namespaced key.

[12:56:05 CDT(-0500)]

<Justin_o> Bosmon: so when trying to use my new strings bundle there is no direct way to get at the group directly. So i'm trying to construct the array manually using IoC references like

Unknown macro: {that}

.stringBundle.contrast-bw.

[12:56:28 CDT(-0500)] <Justin_o> if i do this in the prototree, it just outputs the IoC refernces as an unexpanded string..

[12:56:49 CDT(-0500)] <Bosmon> Where have you written them in the prototree

[12:56:50 CDT(-0500)]

<Justin_o> so i'll actually get

Unknown macro: {that}

.stringBundle.contrast-bw written out to the UI.

[12:56:54 CDT(-0500)] <Bosmon> Remember that we have a special syntax for this

[12:56:59 CDT(-0500)] <Bosmon> Do you recall the changes that yzen made?

[12:57:17 CDT(-0500)] <Bosmon> IoC references in the prototree are required to appear in the form ${{that}.stringBundle.contrast-bw}

[12:57:23 CDT(-0500)] <Justin_o> Bosmon: yes.. i've reverted all of it, but will write you up an example

[12:57:36 CDT(-0500)] <Bosmon> At least in certain places where a "valuebinding" is required

[12:57:52 CDT(-0500)] <Bosmon> The standard syntax may be used in "light" material such as decorators etc.

[12:58:32 CDT(-0500)] <Justin_o> http://pastie.org/private/hudscqyg1vl5zp59smlw

[12:58:38 CDT(-0500)] <Justin_o> that's what i tried to do in the prototree

[12:59:25 CDT(-0500)] <Justin_o> if i do something similar to this, but in the strings block.. i get an error that the messageResolver is undefined.. in my object that handles the path resolution.

[13:02:04 CDT(-0500)] <Justin_o> Bosmon: here's the example of the string block case http://pastie.org/8409907

[13:02:08 CDT(-0500)] <Bosmon> Justin_o - I don't believe we have support in the renderer for expressing the arrays within a UISelect as an array of references

[13:02:22 CDT(-0500)] <Bosmon> Can't you fix your pathSegmentResolver so it is able to resolve an entire array at a time?

[13:03:54 CDT(-0500)] <Justin_o> Bosmon: i don't know how.. the strings in the message bundles are only identified by a namespace in the key... So I would have two issues. 1) how do i find the values since the lookup function on the messageResolver requires the entire key name for its searches 2) I need the strings back in a particular order and have no way of passing that in as an

[13:03:54 CDT(-0500)] <Justin_o> arguments when using resolvePathSegments

[13:05:26 CDT(-0500)] <Bosmon> You could set up some special configuration in the component's "options" holding the index, which your resolver then resolves

[13:07:04 CDT(-0500)] <Justin_o> not sure i follow that

[13:07:26 CDT(-0500)] <Justin_o> Bosmon: ^

[13:11:37 CDT(-0500)] <Bosmon> Justin_o - an index like this

[13:11:40 CDT(-0500)] <Bosmon> textFont: ["textFont-default", "textFont-times", "textFont-comic", "textFont-arial", "textFont-verdana"]

[13:16:13 CDT(-0500)]

<Justin_o> Bosmon: so something like stringIndex:

Unknown macro: { textFont}

and then a search for

Unknown macro: {that}

.stringBundle.textFont, which would return an array of strings.

[13:16:23 CDT(-0500)] <Bosmon> Justin_o - yes

[13:16:36 CDT(-0500)] <Justin_o> okay.. how do you like the name stringIndex?

[13:16:56 CDT(-0500)] <Bosmon> It's fine... perhaps stringArrayIndex would be more descriptive

[13:17:06 CDT(-0500)] <Justin_o> okay..

[13:17:33 CDT(-0500)] <Justin_o> Bosmon: i'll give that a try

[13:46:56 CDT(-0500)] <Bosmon> Hi there cindyli - how are you doing these days?

[13:47:00 CDT(-0500)] <Bosmon> Haven't heard from you for a while : P

[13:47:56 CDT(-0500)] <cindyli> Bosmon: I guess you might be glad that I don't bug you much these days (smile)

[13:48:09 CDT(-0500)] <cindyli> working on aux builder again for composite panel

[13:48:31 CDT(-0500)] <Bosmon> cindyli - cool - how is it going?

[13:51:07 CDT(-0500)] <cindyli> coming along well. i've finished off the part to construct grades for the composite panel. working on the last test case to make sure the parsing on the full schema, which contains both regular single level panels and composite panels, works fine

[13:56:08 CDT(-0500)] <Justin_o> Bosmon: still getting the messageResolver is undefined

[13:56:17 CDT(-0500)] <Bosmon> Justin_o - well, is it undefined? : P

[13:56:28 CDT(-0500)] <Justin_o> only when i try to use it (smile)

[13:56:38 CDT(-0500)] <Bosmon> Perhaps you are trying to use it the wrong way (smile)

[13:57:01 CDT(-0500)] <Justin_o> Bosmon: i have a test on an onCreate event that works, but using it in the prototree throughs the error

[13:57:23 CDT(-0500)] <Bosmon> Justin_o - when does it throw the error?

[13:59:19 CDT(-0500)] <Justin_o> i take back my previous statement, i forgot to remove one of the old uses in the strings block

[13:59:29 CDT(-0500)] <Justin_o> now it's just the parser complaining.. so looking into that now

[13:59:36 CDT(-0500)] <Bosmon> ok

[13:59:52 CDT(-0500)] <Bosmon> For reference, if you plan to resolve members of the component "early", you should do so via an IoC reference

[14:00:05 CDT(-0500)] <Bosmon> Perhaps I should have you write the documentation page for the "ginger process and why it is useful" : P

[14:04:14 CDT(-0500)] <Justin_o> Bosmon: (smile) i'm not sure that would turn out useful if i write it

[14:04:37 CDT(-0500)] <Justin_o> Bosmon: by the way, it works.. thanks for your help with this.. i'll clean up our implementations to use this style now and submit a pull request

[14:05:52 CDT(-0500)] <Justin_o> Bosmon: looks like slidingPanel also uses a lookup in the resolver.. but this is a separate component.. and it's not a renderer component (sad)

[14:22:58 CDT(-0500)] <Bosmon> Justin_o - is it a problem?

[14:30:31 CDT(-0500)] <anastasiac> Justin_o, cindyli: I've filed a JIRA for that template path issue with the UI Options component: http://issues.fluidproject.org/browse/FLUID-5181

[14:30:38 CDT(-0500)] <anastasiac> I'll add it to the iteration page

[14:31:18 CDT(-0500)] <cindyli> thanks, anastasiac

[14:54:30 CDT(-0500)] <anastasiac> cindyli, Justin_o: Do you think that the integrators of the uiOptions component might want access to an afterRender event?

[14:56:15 CDT(-0500)] <cindyli> anastasiac: which "afterRender"? actual panels or the top UIO?

[14:57:27 CDT(-0500)] <anastasiac> cindyli, I guess that's the question. Why might an integrator want to know about an afterRender? I'd guess it would be so that they could be confident that what they think of as "ui options" has been rendered, so whatever afterRender event would signify that "everything is ready"

[14:59:56 CDT(-0500)] <Bosmon> Hi avtar - I've been looking at static publishing solutions and "punch" struck my eye

[14:59:58 CDT(-0500)] <Bosmon> http://laktek.github.io/punch/

[15:00:08 CDT(-0500)] <Bosmon> It seems less offensive than many of these things typically are (smile)

[15:01:01 CDT(-0500)] <cindyli> anastasiac: integrators should listener to prefEditor -> onReady event. a good news is, options for prefEditor have already been surfaced up with distribute options.

[15:01:54 CDT(-0500)] <anastasiac> cindyli, by "already", do you mean in master now?

[15:02:02 CDT(-0500)] <cindyli> yes, anastasiac

[15:02:39 CDT(-0500)] <anastasiac> but I can't add a listener to onReady right in the fluid.uiOptions.prefsEditor() options block, cindyli

[15:03:01 CDT(-0500)] <cindyli> anastasiac: i'm coming over

[15:21:31 CDT(-0500)] <Justin_o> Bosmon: it is a bit of a problem.. first the slidingPanel is outside the scope of panels.. so if we want to use the functionality that I have just written, we will need to move it out somewhere more general. Perhaps it could be part of a new grade that the rendererComponent uses as a base grade 2) the sliding panel has an expectation of having a

[15:21:31 CDT(-0500)] <Justin_o> messageResolver, but it doesn't have one by default. I don't think.

[15:22:08 CDT(-0500)] <Bosmon> Justin_o - this can just be an additional dynamic grade supplied to the slidingPanel

[15:23:13 CDT(-0500)] <Bosmon> All it requires is 2 strings named "showText" and "hideText" in any case

[15:23:26 CDT(-0500)] <Bosmon> So this isn't going to break the abstraction bank : P

[15:23:33 CDT(-0500)] <Justin_o> Bosmon: i'm worried about this https://github.com/fluid-project/infusion/blob/master/src/components/slidingPanel/js/SlidingPanel.js#L32-L45

[15:23:41 CDT(-0500)] <Bosmon> Justin_o

[15:23:44 CDT(-0500)] <Bosmon> You can just override it!

[15:23:48 CDT(-0500)] <Bosmon> This is how configuration works : P

[15:24:18 CDT(-0500)] <Justin_o> that by default it expects a msgBundle.. but when it is out of the context of the preference framework it doesn't actually have one

[15:24:38 CDT(-0500)] <Bosmon> Justin_o ^

[15:24:49 CDT(-0500)] <Justin_o> Bosmon: ^ (smile)

[15:24:56 CDT(-0500)] <Bosmon> Justin_o ^ : P

[15:24:59 CDT(-0500)] <Bosmon> Configuration!

[15:25:00 CDT(-0500)] <Bosmon> Override!

[15:25:16 CDT(-0500)] <Justin_o> i can override, sure i just think the default configuration is broken as it stands

[15:25:35 CDT(-0500)] <Justin_o> that by default it should have plain strings and not expect the message bundle

[15:25:42 CDT(-0500)] <Bosmon> Oh yes, it may well be

[15:25:51 CDT(-0500)] <Bosmon> We should have sorted that out when we broke it out as a new component

[15:26:19 CDT(-0500)] <Justin_o> Bosmon: yes, very true.. okay... i'll take care of this with my changes for FLUID-5180 as well

[15:26:34 CDT(-0500)] <Bosmon> As well as its dreadful use of the hard-coded constant "400" etc.

[15:26:58 CDT(-0500)] <Bosmon> And its awful old-fashioned "finalInit" function etc.

[15:27:05 CDT(-0500)] <Bosmon> This one received very little attention during the upgrade

[15:28:11 CDT(-0500)] <Justin_o> Bosmon: yes.. it's a bit on the ancient side.. could use dome attention

[15:28:14 CDT(-0500)] <Justin_o> some