I do worry about the direction of this thread — we&#39;re getting overly complicated to solve a pretty simple problem... namely, what size should the popup start out as?<div><br></div><div>The more we can standardize on ONE size that works in MOST contexts, the better for overall user experience, as this popup size should become recognized by users as being a window with a specific purpose.</div>
<div><br></div><div>The more we offer custom size options, the more we&#39;ll see meaningless variation to serve subjective tastes, without really adding anything to usability. I certainly understand that not all OPs will want to use the same size popup, but it seems to me that we start by supporting ONE size and then if we get REAL resistance in the wild, then we consider updating the DRAFT spec.&nbsp;</div>
<div><br></div><div>In other words, let&#39;s produce DRAFT ONE of the spec with support for ONE size, and one size only. And then let&#39;s see what [real] problems emerge.</div><div><br></div><div>One of the reasons why FB Connect is so popular is that it answers trivial questions like this consistently. It barely matters what the decision they make, only that they&#39;ve made one. I think we should decide what the standard size for the popup should be and then ship it.</div>
<div><br></div><div>We can iterate/debate later.</div><div><br></div><div>Thus, in Section 4, why don&#39;t we use this language:</div><div><br></div><div><blockquote class="gmail_quote" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0.8ex; border-left-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; padding-left: 1ex; ">
<span class="Apple-style-span" style="font-family: Times; font-size: 16px; "><span class="Apple-style-span" style="font-family: verdana; font-size: 13px; "><p style="margin-left: 2em; margin-right: 2em; ">The recommended default values for openid.popup.width SHOULD be 450px &nbsp;and openid.popup.height SHOULD be 500px for consistency. OPs SHOULD design their authentication screens to match these dimensions.</p>
</span></span></blockquote><div><br></div><div>Let&#39;s keep it simple here at least to start.</div><div><br></div><div>Chris</div><br><div class="gmail_quote">On Mon, Feb 16, 2009 at 2:42 PM, Praveen Alavilli <span dir="ltr">&lt;<a href="mailto:praveen.alavilli@gmail.com">praveen.alavilli@gmail.com</a>&gt;</span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;"><div>hmm I would rather prefer getting the width and height&nbsp;of the &quot;popup&quot; from some attributes defined in XRDS than parsing multiple popup urls and extracting the width and height to figure out which one I want to use. I am not very familiar with the XRDS schema - but can the &quot;<font face="Courier New">otherattribute&quot;&nbsp;be used to specify the width and height for the popup type service element? </font></div>


<div>&nbsp;</div>
<div>If we are going down this route of letting OP specify multiple urls with different width &amp; height in the urls, then I don&#39;t see the value of specifying a new&nbsp;&quot;type&quot; for popup ui. The OPs can as well set multple urls for the &quot;&lt;Type&gt;<a href="http://specs.openid.net/auth/2.0/signon" target="_blank">http://specs.openid.net/auth/2.0/signon</a>&lt;/Type&gt;&quot; with each containing the UI width and height and it&#39;s upto the RPs to chose the one that they think will fit in their popup window.</div>


<div>&nbsp;</div>
<div>IMHO - providing the new type for popup with just one url along with width and height as some attributes&nbsp;really makes it less confusing for the developers.&nbsp;&nbsp;Just look at the way RPs use FBConnect popups.</div>
<div>&nbsp;</div>
<div>&nbsp;</div>
<div>As far as resizing of the window is considered - it seems to be broken if the OP cannot always support the same size of the window. If the OP needs to do additional challenges or display more information, there are several other ways to do it without resizing the window. They would have to do it anyway for smart phones (iphone) since they cannot just resize the window. </div>


<div>&nbsp;</div>
<div>&nbsp;</div>
<div>thanks</div>
<div>Praveen</div><div><div></div><div class="Wj3C7c">
<div><br><br>&nbsp;</div>
<div class="gmail_quote">On Mon, Feb 16, 2009 at 12:23 PM, Allen Tom <span dir="ltr">&lt;<a href="mailto:atom@yahoo-inc.com" target="_blank">atom@yahoo-inc.com</a>&gt;</span> wrote:<br>
<blockquote class="gmail_quote" style="padding-left:1ex;margin:0px 0px 0px 0.8ex;border-left:#ccc 1px solid">
<div text="#000000" bgcolor="#ffffff">Hi Praveen,<br><br>Thanks for jumping in! 
<div><br><br>Praveen Alavilli wrote: 
<blockquote type="cite">
<ul>
<li>&nbsp;as an RP when using a popup for login, I prefer knowing the smallest possible window size that the OP can support before hand so I can set the window size accordingly without any assumptions or guesses. So I vote for OP declaring the dimensions of it&#39;s &quot;popup&quot; type window in it&#39;s XRDS so I know what width and height I should be setting when a user wants to use that OP to login. That makes it possible for the OP to change the size of the popup in future without requiring all RPs to make code changes too.</li>

</ul></blockquote><br></div>OK, let&#39;s just use Breno&#39;s suggestion to include multiple &lt;Type&gt; values in the OP&#39;s XRDS&nbsp; for the popup. The first value will just indicate support for the popup extension, and the subsequent values will indicate the dimensions.<br>

<br>&lt;Type&gt;<a href="http://specs.openid.net/extensions/ux/popup/1.0" target="_blank">http://specs.openid.net/extensions/ux/popup/1.0</a>&lt;/Type&gt;<br>&lt;Type&gt;<a href="http://specs.openid.net/extensions/ux/popup/1.0/popup?width=450&amp;height=500" target="_blank">http://specs.openid.net/extensions/ux/popup/1.0/popup?width=450&amp;height=500</a>&lt;/Type&gt;<br>

&lt;Type&gt;<a href="http://specs.openid.net/extensions/ux/popup/1.0/popup?width=300&amp;height=400" target="_blank">http://specs.openid.net/extensions/ux/popup/1.0/popup?width=300&amp;height=400</a>&lt;/Type&gt;<br>&lt;Type&gt;<a href="http://specs.openid.net/extensions/ux/popup/1.0/popup?width=WWW&amp;height=HHH" target="_blank">http://specs.openid.net/extensions/ux/popup/1.0/popup?width=WWW&amp;height=HHH</a>&lt;/Type&gt;<br>

<br>As mentioned earlier, this approach seems kind of hackish, but seems to be the best way to advertise parameters for an extension. 
<div><br><br><br><br>
<blockquote type="cite">
<ul>
<li>-1 for allowing OP to resize the window - though it&#39;s possible programmatically, it leaves bad user experience as focus will be changed to the popup and if the window resizes after loading the page (because the JS has to load) it looks odd IMO (almost like those popup ads)</li>

</ul></blockquote><br></div>At the UX Summit, Google, Yahoo, and MySpace indicated a need to resize the popup window under certain circumstances. Hopefully, OP does not need to resize the window most of the time.<br><br>
For instance, the OP may need to resize the popup to display a CAPTCHA if the user seems suspicious. <br>
<br>Another case for resizing the window is if the user clicks &quot;learn more&quot; to get detailed information about what&#39;s going on. In this case, the OP may want to enlarge the popup to show additional information. 
<div><br><br><br>
<blockquote type="cite">
<ul>
<li>Section4: looks like a typo - it says &quot;When requesting OpenID authentication using the <strong>checkid_immediate</strong> mode, the Relying Party MUST &quot; - I beleive you meant &quot;When requesting OpenID authentication using the <strong>checkid_setup</strong> mode, the Relying Party MUST &quot;. Probably worth mentioning this extension doens&#39;t apply for checkid_immediate mode at all.</li>

</ul></blockquote></div>Yup, good catch! 
<div><br><br><br>
<blockquote type="cite">
<ul>
<li>+1 for adding a recommendation for the RP to dim the contents of the parent window while the popup is active and also to provide a status message (&quot;please complete login from the popup window....&quot; or so ) &nbsp;with a &quot;cancel login&quot; and/or &quot;use standard login&quot; options so if the popup doesn&#39;t show up or work the way we wanted (since it&#39;s JS in a browser - too many possibilities for it to go wrong), the user has an alternative way</li>

</ul></blockquote></div>OK, we&#39;ll add some additional text to explain the recommended behavior for RPs when spawning the popup. 
<div><br><br>
<blockquote type="cite">
<ul>
<li>Section2: I would suggest to remove this &quot;Another optimization is that the OP can close the popup, rather than returning a negative assertion if the user choses cancel the authentication request. &quot; - if a user cancels out of login, then it will be helpful for the RP to know that so it can take some action (for example, if the RP is using something like an IDSelector, it can remove or&nbsp;move down&nbsp;the OP button in the list or show other login&nbsp;options to the user for that session).</li>

</ul></blockquote></div>The RP is going to have to implement logic to detect if the popup was closed anyway, because the user might manually close it. My suggestion is to reuse the same codepath so that an RP can treat a closed popup without a response to be a negative assertion, regardless of whether the user or the OP closed the popup. 
<div><br><br><br>
<blockquote type="cite">
<ul>
<li><br></li></ul>
<div>Not sure if it has been discussed at the UX summit last week, but it might be useful for the RP to specify a user-friendly name in it&#39;s XRDS file that the OP can use in addition to the realm in the login page. This will be particularly useful when a user tries to login with multiple&nbsp;RPs on the same domain (just a hypothetical&nbsp;example: <a href="http://mail.aol.com/" target="_blank">mail.aol.com</a>, <a href="http://pictures.aol.com/" target="_blank">pictures.aol.com</a>, <a href="http://journals.aol.com/" target="_blank">journals.aol.com</a>, etc..) at the same time&nbsp;using same OP and all popups look exactly&nbsp;same.</div>


<div>&nbsp;</div>
<div>&nbsp;</div></blockquote></div>Many OPs would require manual review of any text or logos to ensure that the RP does not misrepresent itself. It would probably make sense to tie the &quot;friendly name&quot; or any logos and descriptions to the RP&#39;s OAuth Consumer Key, and require the hybrid protocol so that the OP can verify that the CK matches the OpenID Realm/ReturnTo and also look up the logos/text based on the CK.<br>

<font color="#888888"><br>Allen</font> 
<div><br><br>
<blockquote type="cite">
<div>&nbsp;</div>
<div class="gmail_quote">On Sun, Feb 15, 2009 at 5:10 PM, Allen Tom <span dir="ltr">&lt;<a href="mailto:atom@yahoo-inc.com" target="_blank">atom@yahoo-inc.com</a>&gt;</span> wrote:<br>
<blockquote class="gmail_quote" style="padding-left:1ex;margin:0px 0px 0px 0.8ex;border-left:rgb(204,204,204) 1px solid">
<div text="#000000" bgcolor="#ffffff">
<div>Breno wrote:<br>
<blockquote type="cite">
<div class="gmail_quote">
<div><br></div>
<div>Ok. In the interest of expediency, we could at this point define only ui.mode=popup which is extensible in principle without introducing any new other use cases at the present.</div>
<div>&nbsp;</div></div></blockquote><br></div>OK, let&#39;s just agree that mode=popup implies 450x500, and there may be other modes defined in the future.<br><br>Will this work for your mobile users? The puffypoodles example looks good on my iphone, so I&#39;m thinking that we&#39;ll just&nbsp; use mode=popup for desktop browsers and for advanced smartphones. 
<div><br><br><br><br>
<blockquote type="cite">
<div class="gmail_quote">
<div><br></div>
<div>I agree that we shouldn&#39;t have too much going on simultaneously with the popup. However, it may prove useful for the RP to provide some context &quot;before the popup opens and the RP screen goes dim&quot;.</div>

</div></blockquote></div>We can add some text that describes this, however I&#39;m not sure if this is really necessary, and could just make the overall experience heavier and wordier. 
<div><br><br>
<blockquote type="cite">
<div class="gmail_quote">
<div>&nbsp;</div>
<blockquote class="gmail_quote" style="padding-left:1ex;margin:0pt 0pt 0pt 0.8ex;border-left:rgb(204,204,204) 1px solid">
<div text="#000000" bgcolor="#ffffff">
<div><br><br>
<blockquote type="cite">
<div class="gmail_quote">
<div>Should we also cover the case where the parent window is closed before authentication is completed?</div>
<div><br></div></div></blockquote></div>Ah, I hadn&#39;t thought of this case. </div></blockquote>
<div><br></div>
<div>This can be addressed as follows:</div>
<div><br></div>
<div>When the user completes the authentication and is returned at the RP, the RP should proceed as follows:</div>
<div><br></div>
<div>Check if window.opener.location is defined and within its realm. If so, it should close the popup after ensure that all side-effects (set cookies, etc) that follow the login operation have completed.<br></div>
<div><br></div>
<div>If window.opener.location is not defined, not accessible (attempt to read it throws a security exception, for instance) or not recognized to be part of the RP&#39;s site, then the RP should try to load its normal landing page for full-page redirects.</div>


<div>&nbsp;</div></div></blockquote></div>Sounds good!<br><font color="#888888"><br>Allen</font> 
<div><br><br><br><br><br></div></div></blockquote></div></blockquote><br><br><br></div></div></blockquote></div><br>
<br>
--~--~---------~--~----~------------~-------~--~----~<br>
You received this message because you are subscribed to the Google Groups &quot;Step2&quot; group. <br> To post to this group, send email to <a href="mailto:step2@googlegroups.com" target="_blank">step2@googlegroups.com</a> <br>
 To unsubscribe from this group, send email to <a href="mailto:step2%2Bunsubscribe@googlegroups.com" target="_blank">step2+unsubscribe@googlegroups.com</a> <br> For more options, visit this group at <a href="http://groups.google.com/group/step2?hl=en" target="_blank">http://groups.google.com/group/step2?hl=en</a><br>

-~----------~----~----~----~------~----~------~--~---<br>
<br>
</div></div></blockquote></div><br><br clear="all"><br>-- <br>Chris Messina<br>Citizen-Participant &amp;<br> &nbsp;Open Web Advocate-at-Large<br><br><a href="http://factoryjoe.com">factoryjoe.com</a> # <a href="http://diso-project.org">diso-project.org</a><br>
<a href="http://citizenagency.com">citizenagency.com</a> # <a href="http://vidoop.com">vidoop.com</a><br>This email is: &nbsp; [ ] bloggable &nbsp; &nbsp;[X] ask first &nbsp; [ ] private<br>
</div>