Open rubinahaddad opened 10 years ago
Desktop: IE 9
See http://search.gc.ca for a good example of how it should work. Note: in http://search.gc.ca if you mouse select an option it automatically goes to the search results page. Should this happen? The user might want to add on to the query or change something before searching.
1.a. Yes 1.b. No – See B.1, B.3, C.2
I will review.
I'll work on this one.
IPad, 4th gen., iOS 6.1.3: Safari, Chrome v. 31. Screen resolution 2048 x 1536 px. Reviewed in both landscape and portrait orientation.
Blackberry Curve 9360, OS 7.1, default browser. Screen resolution 480 x 360 px. Landscape orientation only.
Screenshot to support B.2 - on iPad, when the user taps to select the input box, a dropdown list appears instead of a cursor:
Screenshot for C.2 - when the user starts to type, the options presented contain the characters typed rather than starting with what's been typed.
Just read @rubinahaddad's review and agree that the search.gc.ca example is a good starting point.
@Robin-Lang are you able to complete this by Friday?
@rubinahaddad yes, will be completed by Friday.
A. Please indicate which devices, browsers, and operating systems were tested (Desktop/Mobile/Tablet): Desktop: Mac OS 10.9.1, Firefox v26.0, Safari v7.0.1 Mobile: Galaxy Nexus running Android 4.2.1 with Chrome v31.0.1650.59 and Firefox v26.0.1
B. Provide status feedback 1. Does the component always let users know about its current status?
Yes & No. In both desktop browsers and Firefox mobile the vertical text entry cursor appears in the input field (and keyboard appears in FF mobile) and the field changes outline colour to demonstrate that the user may type into the field.
The component is buggy on the Chrome mobile browser in that more often that not, the keyboard does NOT appear at all when the input field is clicked. When keyboard does appear, entering letters does NOT change the state of the dropdown menu at all. I cannot replicate this bug consistently enough to speculate about its source and was not able to evaluate this component in the Chrome mobile browsers completely because of this issue.
In the desktop Safari and mobile Chrome browsers the dropdown menu remains on the screen even when an area outside the dropdown or the input field is clicked. This suggests, incorrectly, that the user is still acting upon the dropdown menu. The dropdown menu disappears when user clicks on other area of screen in both desktop and mobile FF browser.
In all browsers except desktop FF the dropdown menu appears immediately upon clicking into the text input field rather than waiting for the user to enter a letter and begin suggestions from there. Note: this does not happen in desktop Safari when the user navigates to the input field using tab key.
2. Does the component give immediate, easy to understand feedback?
Yes, with the exception of the mobile Chrome bug, the input field displays when it has been clicked on and items on the dropdown menu become highlighted when hovered on or navigated to via arrow keys.
3. Will the user have enough visual cues to easily complete the component’s tasks?
Yes. The text input field has the appropriate visual cues for users to know it is an input field, the dropdown menu is scrollable and menu items highlight when chosen then fill the input field when chosen.
4. If some part of a component is hidden, can users see something that allows them to bring it in and out of view?
Yes & No. In desktop Safari the dropdown menu either displays all relevant items or, if there are too many to display, the list is truncated and only the top half of the lowest item in the menu is visible, inviting the user to scroll down to see the rest of the item and possibly more below it. In desktop FF the dropdown menu remains the same size regardless of number of items, but a side scrollbar is briefly presented to indicate to the user there are more items than displayed. Unfortunately this brief flash of a scrollbar is too brief and users may miss it. This scroll bar appears long enough in mobile FF for users to see it, however when the dropdown menu is too long the upper-most items are hidden behind the URL bar and there is no way to scroll up to them until the list is shortened by entering a letter that calls a shorter list of matching items in dropdown menu.
C. Match real world conventions 1. Do parts of the component match what you see, hear (if any) and touch (if any) meet common expectations and are they easily recognizable?
Yes & No. While the text input field and dropdown menu match convention, in all browsers when the dropdown menu is activated its upper edge occludes the bottom edge of the input field, looking as though it floats above the input field. This is irregular.
2. When users perform actions within the component, are the results they get what they would commonly expect?
No. 1) Entering a letter into an autocomplete text field does not usually return all possible entries containing that letter, but usually just those who start with the entered letter. 2) It is expected that the tab button can bring a user from the text input field into the dropdown menu in desktop browsers, but this is not the case. Instead the user is brought out of the text input field to the ‘view code’ link below. 3) In desktop Safari, after using the backspace key to clear a highlighted and selected menu item, the user then choses to enter another letter, the relevant items appear in the dropdown menu but the user is no longer able to use the arrow key to highlight and select items and must use the cursor.
D. Apply standards and ensure consistency 1. Have industry formatting standards been used consistently throughout?
No. See above, dropdown menu occludes text input field and scroll bar flashes too quickly in desktop FF browser.
2. Is there a logical and consistent usage of elements throughout the component?
Yes & No. Though each browser uses slight variations on displaying hidden dropdown items the user is able to see that more items exist. However, the desktop and mobile FF browsers both remember search history, so when the dropdown menu is activated (pressing down arrow in desktop, clicking the text field in mobile) the first few items are always those previously searched for. This may be an unavoidable inconsistency, I believe this is just standard FF function.
3. Is there a consistent usage of language that is clearly understandable, relevant, concise, current and to the point throughout the component?
N/A.
4. Is the experience consistent across screen sizes?
Yes, the component does not require considerable width, the experience is consistent.
E. Help users recognize, prevent and recover from errors 1. Does the component help to prevent users from making errors whenever possible?
No. When a city name is entered incorrectly there is no ‘did you mean…?’ suggestion in the dropdown menu. Only correctly entered city names will activate menu items.
2. When there is an error, is it simple and informative?
No, entry errors provide no feedback to user.
3. Does it provide information to fix or correct the error?
No. See above regarding ‘did you mean…’ suggestion, incorrectly entered items reduce the dropdown menu size to 0 entries.
F. Design for human interaction 1. When using the component: a. Is the layout intuitive?
Yes, the dropdown menu appears below (desktop) or above (mobile) the text input field as expected.
2. Is the layout designed so that various input methods (touch, keyboard, mouse, gesture) and screen sizes can easily interact with things like input fields, sliders and buttons?
Yes, see last comment. Any previously mentioned interaction issues are not a product of the component’s layout.
3. If the task can't be completed in one session, does the user have an option to save and return to it at a later time?
N/A
G. Keep it simple 1. Does the component display only the information needed by the user at any given point in time?
No. In all browsers but desktop FF the dropdown menu appears as soon as the text input field is clicked. User does not need to see all menu items before they request to with down arrow press.
2. Overall, are user interactions kept as simple as possible?
Yes. Interacting with this component is kept simple enough apart from the issue raised in last comment.
3. Does the component use plain language?
N/A
Thanks @Robin-Lang, @pcwsmith ! 3 HEs complete so closing this.
Devices used
Device | OS | Browsers |
---|---|---|
Laptop (24 inch Monitor) | Windows 8.1 | IE 11.0.3 |
Laptop (24 inch Monitor) | Windows 8.1 | FF 27.0.1 |
Laptop (24 inch Monitor) | Windows 8.1 | Chrome 33.0.1750.146 m |
Nexus 7 | Android 4.3 | Chrome 33.0.1750.136 |
Nexus 7 | Android 4.3 | FF 28 |
iPhone 4 | iOS 7 | Safari |
A down-pointing arrow supports opening up the whole unfiltered list.
A filtered list pops down once you start typing.
Selection works as expected using:
The full list pops down before you type anything. Also, once you start typing an ‘X’ can be used to clear what has been entered.
It filters correctly as you proceed. Selection works as expected using:
This common selector does not work
There is not clear way to open up the whole unfiltered list.
A filtered list pops down once you start typing. The results include an extra (invalid) item
Selection works as expected using:
The full list pops UP (usually, but sometimes down) before you type anything. You scroll the list by dragging inside the list. If you drag outside the list the list closes, then reopens when you stop dragging.
It is not possible to scroll to the top item if the list extends above the top of space below the tabs (the top item remains hidden)
The filtered list includes invalid items
Selection works as expected using touch-select
Once you select you get a one-line drop down that remains till you click away.
A filtered list pops UP once you start typing. You scroll this list by dragging in the list.
Touch-select works as expected.
Once you have selected, the drop up disappears as expected.
When you touch the field, in rapid succession it
A filtered list pops down once you start typing – partly under the keypad if the list is long.
The list of options includes invalid options.
Touch-select works as expected.
You cannot scroll the list, but you can scroll the page (and the list) dragging outside the list (in the narrow space available.
You cannot change your mind about selecting something. Clicking on the background does not cause the list to go away
Updating the above...
I now see that the filter works as a "Starts with.." filter in some instances (Chrome and IE) and a "Contains..." filter in others (FF & Safari)! So I was wrong to say the lists include "invalid" items. I should have said "unexpected and inconsistent".
The widget was tested over the last several months using the browsers and devices below:
Device | OS | Browsers |
---|---|---|
Desktop | IE 8 | |
iPad 4 Screen resolution 2048 x 1536 px. Reviewed in both landscape and portrait orientation | iOS 6.1.3 | Safari |
iPad 4 Screen resolution 2048 x 1536 px. Reviewed in both landscape and portrait orientation | iOS 6.1.3 | Chrome 31 |
Blackberry Curve 9360, Screen resolution 480 x 360 px. Landscape orientation only | OS 7.1, | default browser. |
Desktop | Mac OS 10.9.1 | Firefox v26.0 |
Desktop | Mac OS 10.9.1 | Safari v7.0.1 |
Galaxy Nexus | Android 4.2.1 | Chrome v31.0.1650.59 |
Galaxy Nexus | Android 4.2.1 | Firefox v26.0.1 |
Many issues were discovered in the above browsers, and changes appear to have been made to the widget since. As a result the widget was briefly re-reviewed today using the following:
Device | OS | Browsers |
---|---|---|
Laptop (24 inch Monitor) | Windows 8.1 | IE 11.0.3 |
Laptop (24 inch Monitor) | Windows 8.1 | FF 27.0.1 |
Laptop (24 inch Monitor) | Windows 8.1 | Chrome 33.0.1750.146 m |
Nexus 7 | Android 4.3 | Chrome 33.0.1750.136 |
Nexus 7 | Android 4.3 | FF 28 |
iPhone 4 | iOS 7 | Safari |
Given that the initial reviews are now out of date, this “Summary” is really just a selection of points that still seem to apply, plus a summary of my observations in a quick review today. It is not clear which of the original bugs reported remain valid. Only the most obvious and problematic are reported here.
The High and Medium Bug priorities supersede the below. The below are not barriers to using the widget.
1) There is no highlighting of the found letters in the filtered list. This is a convenience that makes these tools more obvious, and so more usable. (Low to Medium priority) This is particularly important if you decide to go with a “includes” search strategy (Medium to High priority)
2) One reviewer correctly observed that the control did not include ‘did you mean…?’ capabilities (that predict even in the case of spelling errors). These capabilities are now becoming common in the search tools we all use. (Low priority for fixing)
@pjackson28 Because this is a polyfill, what can we actually change and improve?
@rubinahaddad Nothing in WET as the only browser that uses this polyfill is IE8. Any issues with what the HTML5 spec describes for datalist would need to be filed with the W3C. Any issues with a browser's specific implementation would need to be filed with the relevant browser vendor.
Note that it is expected that there will be differences in the autocomplete from browser to browser just like with any other native UI component.
@rubinahaddad It may be possible to override some aspects of native support with CSS, but I would expect that what we could do would be very limited.
_Note: This interface is dependant on the core device or platform components (ex. keyboards, dropdown rendering etc). This component may require additional testing on platforms such as iOS, Android, Blackberry._
Please perform a heuristic review of the following component: Auto-complete example.
Performing a heuristic evaluation