Discoverable buttons in Material WebUI |
|||||||||
Issue descriptionChrome Settings is full of non-traditional buttons which open sub-pages but don't look button-y. How can we make these more discoverable? We avoid hover state effects, and presumably should give actionable elements a pointer (hand) cursor. What else can we do to differentiate between plain text and content that opens more content? An example with the Passwords section is attached. The toggle button disables the features, but tapping the row itself expands to show more settings when the feature is enabled.
,
May 15 2016
#1: cursor status and selectability should be filed as [a] separate issue(s).
,
May 16 2016
For the record, - there are no hovers used in md-webui - hand cursors should be used for all clickable items: rows that go to subpages, rows that go to dialogs, dropdowns, radio buttons, material buttons, side-nav, blue hyperlink text, and anything else I can't think of - no i-beams, or pointers should be used for anything clickable >> What else can we do to differentiate between plain text and content that opens more content? There are other tools we can use to communicate where the user will go once clicking a link, but I urge us to at least do the above *first* so that we can properly test the intended design.
,
May 16 2016
,
May 17 2016
some would consider "hand cursors" as a hover effect, which is part of the miscommunication here
,
May 17 2016
,
May 24 2016
,
May 24 2016
Alan, can you help capture the places we *do* want hover? The ones I know of are: * Using the "pointer" cursor for all clickable links/buttons/etc (it's the one that looks like a hand with the pointer-finger extended [1]) * Showing a shadow when hovering over avatars in the edit page for "People (desktop)" * Showing a gray background when hovering over items in a dropdown menu [1] https://developer.mozilla.org/en-US/docs/Web/CSS/cursor
,
Jun 20 2016
,
Jun 20 2016
All clickable links/buttons/rows should show the "pointer" icon
,
Jun 21 2016
,
Jun 21 2016
Issue 622088 has been merged into this issue.
,
Jun 24 2016
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/65fef050ca882d64532c57ce7d7c27ad98f2016b commit 65fef050ca882d64532c57ce7d7c27ad98f2016b Author: blundell <blundell@chromium.org> Date: Fri Jun 24 09:58:20 2016 Revert of MD Settings: make custom UIs look "actionable" (patchset #3 id:40001 of https://codereview.chromium.org/2094813002/ ) Reason for revert: This CL causes SettingLanguagesBrowserTest.LanguagesPage to fail on ChromiumOS and Win7 (confirmed by building ChromeOS locally in Release, observing the failure, reverting the CL, and seeing that the failure goes away). Example failure: https://build.chromium.org/p/chromium.chromiumos/builders/Linux%20ChromiumOS%20Tests%20%281%29/builds/21718/steps/browser_tests%20on%20Ubuntu-12.04/logs/SettingsLanguagesPageBrowserTest.LanguagesPage. Relevant snippet from test output: [11504:11504:0624/023830:INFO:CONSOLE(1196)] "Running TestCase SettingsLanguagesPageBrowserTest.MAYBE_LanguagesPage", source: test_api.js (1196) [11504:11504:0624/023830:ERROR:CONSOLE(44)] "Mocha test failed: languages page manage languages AssertionError: expected false to be true at Function.assert.isTrue (chai.js:2423:31) at assertTrue (test_api.js:851:17) at Context.<anonymous> (languages_page_browsertest.js:81:7) ", source: mocha_adapter.js (44) Original issue's description: > MD Settings: make custom UIs look "actionable" > > Currently, that just entails a cursor: pointer; but may involve e.g. a > :hover effect in the future. > > This introduces the shared variable: > > --settings-actionable: { > cursor: pointer; > }; > > which can be used from places that don't want all the settings shared > style (which generally applies to the sections in the middle). > > .my-custom-thing { > @apply(--settings-actionable); > } > > For stuff inside of <settings-main> (or code otherwise using > settings-shared), it's probably easier to just use the new: > > [actionable] { > @apply(--settings-actionable); > } > > and just annotate your element with that attribute, i.e. > > <div id="frobber" on-tap="onFrobberTap_" actionable> > > FYI: This CL is semi-automatedly generated via: > > vim -p `git grep -l on-tap -- chrome/browser/resources/settings` > > and lots of hacking. > > R=dpapad@chromium.org > BUG= 611826 > CQ_INCLUDE_TRYBOTS=tryserver.chromium.linux:closure_compilation > > Committed: https://crrev.com/a298aa9c3276b78073a61613787909a0b2427302 > Cr-Commit-Position: refs/heads/master@{#401763} TBR=dpapad@chromium.org,dbeam@chromium.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG= 611826 Review-Url: https://codereview.chromium.org/2089313005 Cr-Commit-Position: refs/heads/master@{#401843} [modify] https://crrev.com/65fef050ca882d64532c57ce7d7c27ad98f2016b/chrome/browser/resources/settings/about_page/about_page.html [modify] https://crrev.com/65fef050ca882d64532c57ce7d7c27ad98f2016b/chrome/browser/resources/settings/appearance_page/appearance_fonts_page.html [modify] https://crrev.com/65fef050ca882d64532c57ce7d7c27ad98f2016b/chrome/browser/resources/settings/appearance_page/appearance_page.html [modify] https://crrev.com/65fef050ca882d64532c57ce7d7c27ad98f2016b/chrome/browser/resources/settings/bluetooth_page/bluetooth_device_list_item.html [modify] https://crrev.com/65fef050ca882d64532c57ce7d7c27ad98f2016b/chrome/browser/resources/settings/default_browser_page/default_browser_page.html [modify] https://crrev.com/65fef050ca882d64532c57ce7d7c27ad98f2016b/chrome/browser/resources/settings/device_page/device_page.html [modify] https://crrev.com/65fef050ca882d64532c57ce7d7c27ad98f2016b/chrome/browser/resources/settings/device_page/keyboard.html [modify] https://crrev.com/65fef050ca882d64532c57ce7d7c27ad98f2016b/chrome/browser/resources/settings/internet_page/network_proxy_exclusions.html [modify] https://crrev.com/65fef050ca882d64532c57ce7d7c27ad98f2016b/chrome/browser/resources/settings/internet_page/network_summary_item.html [modify] https://crrev.com/65fef050ca882d64532c57ce7d7c27ad98f2016b/chrome/browser/resources/settings/languages_page/languages_page.html [modify] https://crrev.com/65fef050ca882d64532c57ce7d7c27ad98f2016b/chrome/browser/resources/settings/languages_page/languages_page.js [modify] https://crrev.com/65fef050ca882d64532c57ce7d7c27ad98f2016b/chrome/browser/resources/settings/on_startup_page/startup_urls_page.html [modify] https://crrev.com/65fef050ca882d64532c57ce7d7c27ad98f2016b/chrome/browser/resources/settings/passwords_and_forms_page/autofill_section.html [modify] https://crrev.com/65fef050ca882d64532c57ce7d7c27ad98f2016b/chrome/browser/resources/settings/passwords_and_forms_page/passwords_and_forms_page.html [modify] https://crrev.com/65fef050ca882d64532c57ce7d7c27ad98f2016b/chrome/browser/resources/settings/passwords_and_forms_page/passwords_section.html [modify] https://crrev.com/65fef050ca882d64532c57ce7d7c27ad98f2016b/chrome/browser/resources/settings/people_page/people_page.html [modify] https://crrev.com/65fef050ca882d64532c57ce7d7c27ad98f2016b/chrome/browser/resources/settings/people_page/sync_page.html [modify] https://crrev.com/65fef050ca882d64532c57ce7d7c27ad98f2016b/chrome/browser/resources/settings/privacy_page/privacy_page.html [modify] https://crrev.com/65fef050ca882d64532c57ce7d7c27ad98f2016b/chrome/browser/resources/settings/reset_page/reset_page.html [modify] https://crrev.com/65fef050ca882d64532c57ce7d7c27ad98f2016b/chrome/browser/resources/settings/settings_main/settings_main.html [modify] https://crrev.com/65fef050ca882d64532c57ce7d7c27ad98f2016b/chrome/browser/resources/settings/settings_menu/settings_menu.html [modify] https://crrev.com/65fef050ca882d64532c57ce7d7c27ad98f2016b/chrome/browser/resources/settings/settings_root_css.html [modify] https://crrev.com/65fef050ca882d64532c57ce7d7c27ad98f2016b/chrome/browser/resources/settings/settings_shared_css.html [modify] https://crrev.com/65fef050ca882d64532c57ce7d7c27ad98f2016b/chrome/browser/resources/settings/site_settings/site_list.html [modify] https://crrev.com/65fef050ca882d64532c57ce7d7c27ad98f2016b/chrome/browser/resources/settings/site_settings_page/site_settings_page.html
,
Jun 24 2016
Issue 623027 has been merged into this issue.
,
Jun 24 2016
Issue 622987 has been merged into this issue.
,
Jun 25 2016
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/ed68883804c25965c677a99278d1ab4c2d98af96 commit ed68883804c25965c677a99278d1ab4c2d98af96 Author: dbeam <dbeam@chromium.org> Date: Sat Jun 25 01:33:15 2016 MD Settings: make custom UIs look "actionable" Currently, that just entails a cursor: pointer; but may involve e.g. a :hover effect in the future. This introduces the shared variable: --settings-actionable: { cursor: pointer; }; which can be used from places that don't want all the settings shared style (which generally applies to the sections in the middle). .my-custom-thing { @apply(--settings-actionable); } For stuff inside of <settings-main> (or code otherwise using settings-shared), it's probably easier to just use the new: [actionable] { @apply(--settings-actionable); } and just annotate your element with that attribute, i.e. <div id="frobber" on-tap="onFrobberTap_" actionable> FYI: This CL is semi-automatedly generated via: vim -p `git grep -l on-tap -- chrome/browser/resources/settings` and lots of hacking. R=dpapad@chromium.org BUG= 611826 CQ_INCLUDE_TRYBOTS=tryserver.chromium.linux:closure_compilation Committed: https://crrev.com/a298aa9c3276b78073a61613787909a0b2427302 Review-Url: https://codereview.chromium.org/2094813002 Cr-Original-Commit-Position: refs/heads/master@{#401763} Cr-Commit-Position: refs/heads/master@{#402042} [modify] https://crrev.com/ed68883804c25965c677a99278d1ab4c2d98af96/chrome/browser/resources/settings/about_page/about_page.html [modify] https://crrev.com/ed68883804c25965c677a99278d1ab4c2d98af96/chrome/browser/resources/settings/appearance_page/appearance_fonts_page.html [modify] https://crrev.com/ed68883804c25965c677a99278d1ab4c2d98af96/chrome/browser/resources/settings/appearance_page/appearance_page.html [modify] https://crrev.com/ed68883804c25965c677a99278d1ab4c2d98af96/chrome/browser/resources/settings/bluetooth_page/bluetooth_device_list_item.html [modify] https://crrev.com/ed68883804c25965c677a99278d1ab4c2d98af96/chrome/browser/resources/settings/default_browser_page/default_browser_page.html [modify] https://crrev.com/ed68883804c25965c677a99278d1ab4c2d98af96/chrome/browser/resources/settings/device_page/device_page.html [modify] https://crrev.com/ed68883804c25965c677a99278d1ab4c2d98af96/chrome/browser/resources/settings/device_page/keyboard.html [modify] https://crrev.com/ed68883804c25965c677a99278d1ab4c2d98af96/chrome/browser/resources/settings/internet_page/network_proxy_exclusions.html [modify] https://crrev.com/ed68883804c25965c677a99278d1ab4c2d98af96/chrome/browser/resources/settings/internet_page/network_summary_item.html [modify] https://crrev.com/ed68883804c25965c677a99278d1ab4c2d98af96/chrome/browser/resources/settings/languages_page/languages_page.html [modify] https://crrev.com/ed68883804c25965c677a99278d1ab4c2d98af96/chrome/browser/resources/settings/languages_page/languages_page.js [modify] https://crrev.com/ed68883804c25965c677a99278d1ab4c2d98af96/chrome/browser/resources/settings/on_startup_page/startup_urls_page.html [modify] https://crrev.com/ed68883804c25965c677a99278d1ab4c2d98af96/chrome/browser/resources/settings/passwords_and_forms_page/autofill_section.html [modify] https://crrev.com/ed68883804c25965c677a99278d1ab4c2d98af96/chrome/browser/resources/settings/passwords_and_forms_page/passwords_and_forms_page.html [modify] https://crrev.com/ed68883804c25965c677a99278d1ab4c2d98af96/chrome/browser/resources/settings/passwords_and_forms_page/passwords_section.html [modify] https://crrev.com/ed68883804c25965c677a99278d1ab4c2d98af96/chrome/browser/resources/settings/people_page/people_page.html [modify] https://crrev.com/ed68883804c25965c677a99278d1ab4c2d98af96/chrome/browser/resources/settings/people_page/sync_page.html [modify] https://crrev.com/ed68883804c25965c677a99278d1ab4c2d98af96/chrome/browser/resources/settings/privacy_page/privacy_page.html [modify] https://crrev.com/ed68883804c25965c677a99278d1ab4c2d98af96/chrome/browser/resources/settings/reset_page/reset_page.html [modify] https://crrev.com/ed68883804c25965c677a99278d1ab4c2d98af96/chrome/browser/resources/settings/settings_main/settings_main.html [modify] https://crrev.com/ed68883804c25965c677a99278d1ab4c2d98af96/chrome/browser/resources/settings/settings_menu/settings_menu.html [modify] https://crrev.com/ed68883804c25965c677a99278d1ab4c2d98af96/chrome/browser/resources/settings/settings_root_css.html [modify] https://crrev.com/ed68883804c25965c677a99278d1ab4c2d98af96/chrome/browser/resources/settings/settings_shared_css.html [modify] https://crrev.com/ed68883804c25965c677a99278d1ab4c2d98af96/chrome/browser/resources/settings/site_settings/site_list.html [modify] https://crrev.com/ed68883804c25965c677a99278d1ab4c2d98af96/chrome/browser/resources/settings/site_settings_page/site_settings_page.html
,
Jun 27 2016
Found a button that does not display the correct mouse pointer, see screenshot.
,
Jun 28 2016
dpapad@/#c18: I assume you mean the <paper-toggle>?
,
Jun 28 2016
Yes, I meant the <paper-toggle>. I included the mouse pointer in the screenshot to make it more obvious, but should have also mentioned it for clarity.
,
Jun 28 2016
i'ts not clear to me whether <paper-toggle> should have a cursor: pointer; but they do have an effect. Polymer chose to keep the cursor the same for some reason.
,
Jun 28 2016
If paper-toggle should not have a cursor, that is fine, but shouldn't we be consistent with other paper-toggle instances? In the screenshot above the toggles in the "Passwords and forms" section do show the hand cursor.
,
Jun 29 2016
Is this the desired look on Chrome OS and Windows? English (US) and Spanish can both be selected as the UI language, but Spanish (Spain) cannot. But it's weird having some languages blue and bold, as well as "Manage languages", but not others -- the effect seems to be opposite to what is desired (the non-actionable one stands out).
,
Jun 29 2016
wrong languages.png
,
Jun 29 2016
not sure if "desired", but I think the old UI is weirder than the current (new) UI you've posted as a screenshot, yes. previously: all items were blue button-ish things (with an I-beam cursor) and clicking some worked and clicking some didn't. now: UI supporting languages are blue (with hand cursors) and can be clicked, non-UI supporting languages are black and have no hand cursor I generally think this UI (clicking something that looks like a link to change the UI language) is pretty bad anyways you apply it (on 50% or 100% of languages in that list; doesn't really matter). I think we need Alan to look more at this. I think having a ... menu with "Show Chrome in this language" makes more sense.
,
Jun 30 2016
i'm calling this fixed for now. file specific bugs for addition issues
,
Jun 30 2016
Fixed as of #17/53.0.2779? (Asking so I wait for the proper version before assuming it's a bug)
,
Jun 30 2016
rdevlin.cronin: yes
,
Jul 12 2016
Issue 626701 has been merged into this issue. |
|||||||||
►
Sign in to add a comment |
|||||||||
Comment 1 by dpa...@chromium.org
, May 13 2016