My favorites | Sign in
Project Home Downloads Wiki Issues Code Search
New issue   Search
for
  Advanced search   Search tips   Subscriptions
Issue 104955: Implement setting-level indicators for settings that are controlled by policy or extension in chrome://settings
4 people starred this issue and may be notified of changes. Back to list
 
Project Member Reported by mnissler@chromium.org, Nov 21, 2011
Currently, we show a yellow bar at the very top of the settings page to indicate that some settings might be disabled since they're under control of enterprise policy or an extension. This is not good UX, since the user cannot immediately see what settings are affected.

The idea is to move to a model where we put little indicator icons next to each setting if they're under control of an external entity. Clicking on the indicator will show a pop-up bubble the gives more information, e.g. what it is that affects the setting and contextual action. For extensions, it should contain a link that takes the user that the respective extension's options dialog. For recommended policy, we'd like to have a way to reset the option to the recommendation made by policy.

There are mocks for this available at http://goto.google.com/zbqhs (sorry, Googlers only, will post screenshots on this bug).
Nov 21, 2011
#1 mnissler@chromium.org
Here are some screenshots of a first stab at this. Note that the icons are not quite right, everything still uses the enterprise-managed icon. Ken, can you provide proper ones?
controlled_setting_policy.png
132 KB   View   Download
controlled_setting_extension.png
128 KB   View   Download
controlled_setting_recommended.png
130 KB   View   Download
Cc: kenmo...@chromium.org
Nov 21, 2011
#2 kenmoore@google.com
Assets attached.  Could you please also send strings to me for review?  The ones I see here need a little touch up.  Thanks.
recommended16x16.png
3.3 KB   View   Download
recommended16x16_hover.png
3.2 KB   View   Download
mandatory16x16.png
3.1 KB   View   Download
mandatory16x16_hover.png
3.1 KB   View   Download
recommended22x22.png
3.4 KB   View   Download
mandatory22x22.png
3.2 KB   View   Download
Nov 21, 2011
#3 mnissler@chromium.org
Thanks Ken. Note that the assets you provided are 22x22 for the larger versions, while the screenshots have 32x32. I'll use 22x22 then? Also, can you provide an icon to put in case the setting is under control of an extension?

For the strings, see the CL at http://codereview.chromium.org/8480037/. I just put there what came to my mind, touch-ups are appreciated.
Nov 21, 2011
#4 kenmoore@google.com
My original mocks had 22px images for the in-bubble icons.
  http://www.corp.google.com/~kenmoore/mocks/chromeos/Misc_2011/EnterprisePolicySettings/Draft6/EnterprisePolicySettings_0000_mandatory_bubble.png

The ones shown in your implementation feel far too large to me, please use the 22x22.

I've attached the full set of badges, including the ones formerly attached... I've PNGCRUSHed the individual files so they should be a tad smaller.
ManagedSettingsBadges1.zip
5.9 KB   Download
Nov 21, 2011
#5 mniss...@google.com
Thanks Ken! I'll make the respective changes to the CL tomorrow.
Nov 22, 2011
#6 markushe...@google.com
Since we are already at it: Can we include icons for extension managed settings as well?

Currently we use a small blue puzzle icon for extension managed content settings. Could we use the same icon in general for extension managed settings?
Nov 22, 2011
#7 mnissler@chromium.org
Markus, the icons for the extension case are part of the zip that Ken attached in comment 4.
Nov 22, 2011
#8 markushe...@google.com
Great! Thanks!

I just see that the icons for extension managed settings are different from what I used in the content settings UI. Once Mattias landed the CL with the new icons I will, change the content settings UI to use the new icons for extensions managed settings.
Nov 22, 2011
#9 mnissler@chromium.org
Updated screenshots.
controlled_setting_recommended.png
121 KB   View   Download
controlled_setting_extension.png
121 KB   View   Download
Nov 22, 2011
#10 mnissler@chromium.org
And here is the proper mandatory policy screenshot.
controlled_setting_mandatory.png
115 KB   View   Download
Dec 1, 2011
#11 gwil...@chromium.org
Issue 106000 has been merged into this issue.
Cc: tturche...@chromium.org kr...@chromium.org gwil...@chromium.org
Mar 15, 2012
#12 mnissler@chromium.org
Per my discussion with Markus, reassigning this to Bartosz.

James: It looks like the settings uber-page code starts to stabilize, are you OK with us starting this work after the 19 branch point?
Owner: bartfab@chromium.org
Cc: jhawk...@chromium.org
Mar 15, 2012
#13 jhawk...@chromium.org
That's fine.  Uber is stable at this point.
Jun 27, 2012
#14 bartfab@chromium.org
(No comment was entered for this change.)
Blocking: chromium:134851
Jul 26, 2012
#15 bartfab@chromium.org
Ken, I picked up this bug, prototyped the implementation and need some UI feedback now:

First, I would like to make a small string change. Right now, the bubble for recommended settings always says:
  "Your administrator recommends a specific value for this setting."

Instead of this generic statement, we should tell the user whether the value in question matches the recommendation or not. I suggest the following strings:
  "Your administrator recommends this value for the setting."
  "Your administrator recommends a different value for the setting."

The strings would be used as follows:
  1. Simple pref (single input field / checkbox),
     user's setting matches recommendation:
      * First string
      * see simple_pref_keep.png

  2. Simple pref (single input field / checkbox),
     user's setting does not match recommendation:
      * Second string
      * "Apply recommendation" link
      * see simple_pref_change.png

  3. Radio button pref, user selected the recommended
     button:
      * First string
      * see radio_pref_keep.png

  4. Radio button pref, user selected a different
     button than recommended:
      * First string
      * "Apply recommendation" link
      * see radio_pref_change.png

Second, I am wondering what the best practice is for bubbles in an overlay. There can be managed prefs in rather small overlays. The icon will fit nicely (see overlay_icon.png) but the corresponding bubble <div> does not fit into the overlay, causing it to develop scrollbars (see overlay_bubble.png). What is the correct thing to do here? Anchor the <div> to something outside the overlay?
simple_pref_keep.png
64.6 KB   View   Download
simple_pref_change.png
66.1 KB   View   Download
radio_pref_keep.png
60.2 KB   View   Download
radio_pref_change.png
61.1 KB   View   Download
overlay_icon.png
60.1 KB   View   Download
overlay_bubble.png
60.2 KB   View   Download
Jul 27, 2012
#16 bartfab@chromium.org
Another interesting issue: A setting's value will match the recommendation in two different cases:

1. The user never manually adjusted the setting. Its current value automatically follows the recommendation.
2. The user manually chose the same value as is being recommended.

The difference is that when the admin subsequently changes the recommendation, the setting will automatically follow suit in case 1 but will remain at the manually set value in case 2. The UI does not distinguish between these cases and makes it impossible to ever revert from case 2 back to case 1.

After pondering this, I would like to revise my proposal from the previous comment:
* Keep the current text in all recommended setting bubbles.
* If a setting was manually adjusted, regardless of whether it matches the current recommendation or not, additionally offer a link labeled "Follow recommendation". This is a slight renaming of the current "Apply recommendation" to make it clearer that the setting will follow future changes made by the admin.

I have attached two screenshots, one showing case 1, the other case 2. When the link is clicked in case 2, the effective value does not change but the setting starts following the admin's recommendations internally and the link disappears.
recommended_not_user_set.png
59.9 KB   View   Download
recommended_user_set.png
60.6 KB   View   Download
Jul 30, 2012
#17 bugdro...@chromium.org
The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=148939

------------------------------------------------------------------------
r148939 | bartfab@chromium.org | 2012-07-30T10:14:03.382888Z

Changed paths:
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/prefs/pref_value_store_unittest.cc?r1=148939&r2=148938&pathrev=148939
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/prefs/pref_value_store.cc?r1=148939&r2=148938&pathrev=148939
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/prefs/pref_value_store.h?r1=148939&r2=148938&pathrev=148939
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/prefs/pref_service_unittest.cc?r1=148939&r2=148938&pathrev=148939
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/prefs/pref_service.cc?r1=148939&r2=148938&pathrev=148939
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/prefs/pref_service.h?r1=148939&r2=148938&pathrev=148939

PrefValueStore and PrefService expose the value of a pref returned by the
highest-priority PrefStore only. Recommended values are interesting even
if they are currently being overridden by a higher-priority source.

This CL adds a getter for the recommended value and makes pref change
notifications be sent on all value changes, even if the change occurs in
a PrefStore that is currently overridden. This will allow the settings UI
to adapt when recommended values change.

BUG=104955

Review URL: https://chromiumcodereview.appspot.com/10821047
------------------------------------------------------------------------
Aug 1, 2012
#18 bartfab@chromium.org
Some fixes on the way to getting this implemented: https://chromiumcodereview.appspot.com/10834109/
Aug 3, 2012
#20 bartfab@chromium.org
(No comment was entered for this change.)
Cc: markushe...@chromium.org
Aug 8, 2012
#21 bugdro...@chromium.org
The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=150527

------------------------------------------------------------------------
r150527 | bartfab@chromium.org | 2012-08-08T09:35:48.069880Z

Changed paths:
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/chromeos/proxy_cros_settings_parser.cc?r1=150527&r2=150526&pathrev=150527
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/resources/options2/chromeos/proxy_rules_list.js?r1=150527&r2=150526&pathrev=150527
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/webui/options2/chromeos/core_chromeos_options_handler.cc?r1=150527&r2=150526&pathrev=150527
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/resources/options2/chromeos/accounts_user_list.js?r1=150527&r2=150526&pathrev=150527
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/automation/testing_automation_provider_chromeos.cc?r1=150527&r2=150526&pathrev=150527
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/resources/options2/pref_ui.js?r1=150527&r2=150526&pathrev=150527
   A http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/webui/options2/preferences_browsertest.cc?r1=150527&r2=150526&pathrev=150527
   A http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/webui/options2/preferences_browsertest.h?r1=150527&r2=150526&pathrev=150527
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/resources/options2/browser_options.js?r1=150527&r2=150526&pathrev=150527
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/chrome_tests.gypi?r1=150527&r2=150526&pathrev=150527
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/resources/options2/chromeos/network_list.js?r1=150527&r2=150526&pathrev=150527

Consistently decorate pref values sent to the settings UI code

Pref values are provided to the settings UI code by three different
classes. Each decorates the values slightly differently, adding
different metadata fields or none at all. This CL makes the classes
use a consistent decoration with identically named metadata fields,
simplifying the handling of pref values on the JS side.

BUG=104955


Review URL: https://chromiumcodereview.appspot.com/10834109
------------------------------------------------------------------------
Sep 3, 2012
#22 bugdro...@chromium.org
The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=154676

------------------------------------------------------------------------
r154676 | bartfab@chromium.org | 2012-09-03T10:57:42.808080Z

Changed paths:
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/resources/options/font_settings.js?r1=154676&r2=154675&pathrev=154676
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/webui/options/core_options_handler.cc?r1=154676&r2=154675&pathrev=154676
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/resources/options/pref_ui.js?r1=154676&r2=154675&pathrev=154676
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/resources/options/spelling_confirm_overlay.js?r1=154676&r2=154675&pathrev=154676
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/webui/options/preferences_browsertest.cc?r1=154676&r2=154675&pathrev=154676
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/webui/options/preferences_browsertest.h?r1=154676&r2=154675&pathrev=154676
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/resources/options/browser_options.js?r1=154676&r2=154675&pathrev=154676
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/resources/options/language_list.js?r1=154676&r2=154675&pathrev=154676
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/resources/options/language_options.js?r1=154676&r2=154675&pathrev=154676
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/resources/options/settings_dialog.js?r1=154676&r2=154675&pathrev=154676
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/resources/options/preferences.js?r1=154676&r2=154675&pathrev=154676
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/resources/options/controlled_setting.js?r1=154676&r2=154675&pathrev=154676
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/resources/options/chromeos/network_list.js?r1=154676&r2=154675&pathrev=154676
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/resources/options/import_data_overlay.js?r1=154676&r2=154675&pathrev=154676
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/resources/options/chromeos/proxy_rules_list.js?r1=154676&r2=154675&pathrev=154676

Move handling of dialog preferences to Preferences class

This CL extends the Preferences class to distinguish between prefs that
get committed to Chrome automatically (regular prefs) and those that
require an explicit commit or rollback (dialog prefs). Changes to either
type of pref cause notifications to propagate throughout the UI, ensuring
that UI elements are updated without any special-case handling of dialog
preferences.

The UI element classes are updated to work with the new Preferences class.
They still contain a lot of copy & pasted code. I will clean this up in a
follow-up CL.

BUG=104955

This CL depends on https://chromiumcodereview.appspot.com/10834109/


Review URL: https://chromiumcodereview.appspot.com/10827141
------------------------------------------------------------------------
Sep 4, 2012
#23 bugdro...@chromium.org
The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=154793

------------------------------------------------------------------------
r154793 | bartfab@chromium.org | 2012-09-04T19:24:44.829611Z

Changed paths:
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/resources/options/font_settings.js?r1=154793&r2=154792&pathrev=154793
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/resources/options/pref_ui.js?r1=154793&r2=154792&pathrev=154793
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/tools/extract_actions.py?r1=154793&r2=154792&pathrev=154793

Clean up copy-and-pasted code in prefs UI classes

This CL makes all prefs UI classes inherit from a common ancestor,
consolidating previously copy-and-pasted code. As an additional cleanup,
support for checkboxes controlling a non-Boolean pref is retired as no
such checkboxes exist in Chrome's code.

BUG=104955


Review URL: https://chromiumcodereview.appspot.com/10908061
------------------------------------------------------------------------
Sep 7, 2012
#24 bartfab@chromium.org
Work on this is well underway. The feature should be able to make M23.
Status: Started
Labels: Mstone-23
Sep 12, 2012
#25 bartfab@chromium.org
(No comment was entered for this change.)
Labels: -Mstone-23 Mstone-24
Blockedon: chromium:148674
Sep 20, 2012
#26 bartfab@chromium.org
Screenshot of the current WIP with --force-device-scale-factor=2 to discuss high DPI rendering.
hidpi.png
97.3 KB   View   Download
Sep 26, 2012
#27 bugdro...@chromium.org
The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=158783

------------------------------------------------------------------------
r158783 | bartfab@chromium.org | 2012-09-26T11:21:09.543610Z

Changed paths:
   A http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/resources/options/options_bubble.js?r1=158783&r2=158782&pathrev=158783
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/resources/options/options_page.js?r1=158783&r2=158782&pathrev=158783
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/resources/options/browser_options.css?r1=158783&r2=158782&pathrev=158783
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/resources/shared/css/bubble.css?r1=158783&r2=158782&pathrev=158783
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/resources/shared/js/cr/ui/focus_manager.js?r1=158783&r2=158782&pathrev=158783
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/resources/options/controlled_setting.js?r1=158783&r2=158782&pathrev=158783
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/resources/options/chromeos/network_list.js?r1=158783&r2=158782&pathrev=158783
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/resources/options/options.html?r1=158783&r2=158782&pathrev=158783
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/resources/options/options_page.css?r1=158783&r2=158782&pathrev=158783
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/resources/shared/js/cr/ui/bubble.js?r1=158783&r2=158782&pathrev=158783
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/resources/options/options_bundle.js?r1=158783&r2=158782&pathrev=158783
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/resources/shared_resources.grd?r1=158783&r2=158782&pathrev=158783

Implement popup bubbles for the controlled setting indicator

This CL adds support for popup bubbles to the settings UI and makes the options.ControlledSettingIndicator show such a bubble when it is clicked. The options.Bubble class inherits from cr.ui.BubbleBase, allowing all style and most of the code to be shared between the different bubbles in Chrome's Web UI.

The CL also fixes several long-standing bugs in the Chrome OS classes options.ManagedNetworkIndicator and options.NetworkList so that the bubbles these pop up behave consistently with the rest.

TEST=manual, including UI in rtl languages
BUG=104955

Review URL: https://chromiumcodereview.appspot.com/10907148
------------------------------------------------------------------------
Oct 4, 2012
#28 bartfab@chromium.org
The ControlledSettingIndicator class is almost done. In the final CL, I would like to adjust some strings:

* Case 1: Pref is managed by policy:
-> Bubble contents "This setting is enforced by your administrator." (no change)

* Case 2: Pref is managed by an extension:
-> Bubble contents "This setting is enforced by an extension." (adjusted for consistency with the above)

* Case 3: Pref has a recommendation that the user is following:
-> Bubble contents "You are following the administrator's recommendation for this setting." (new string)

* Case 4: Pref has a recommendation that the user is currently not following:
-> Bubble contents "Your administrator recommends a specific value for this setting." (no change) and link "Follow recommendation" (adjusted from "Apply recommendation")

If the setting is user-adjustable in principle but cannot be changed right now, the link in case 4 will not appear. The final screenshot I have attached demonstrates this: In principle, the user is free to choose any page URL. However, the home page policy is set to "Use the New Tab page" right now and the page URL input is grayed out. If the user switches the home page policy ot "Open this page:," the link will be shown.
managed.png
78.5 KB   View   Download
following.png
76.8 KB   View   Download
recommended.png
77.9 KB   View   Download
recommended_read_only.png
76.5 KB   View   Download
Oct 4, 2012
#29 kenmo...@chromium.org
SGTM.  I think it would be good if upon clicking 'Follow recommendation' the bubble with updated text 'You are following...' appears for a minimum of 1.5 seconds or so for confirmation, since there's no visual differentiation between the 2 states.  Sound reasonable?
Oct 4, 2012
#30 bartfab@chromium.org
Clicking "Follow recommendation" causes a change event to propagate from the UI deep into the backend and back up again. For most prefs, all that changes is a checkbox state or the contents of a single text fields. But there are some prefs where a change has more profound UI impact, causing multiple UI elements to update or even the layout to reflow. To make sure that the bubble does not end up in a stale location after such a large change / reflow, the bubble *always* closes when a change event occurs. This means that when you click "Follow recommendation," the bubble will always go away.

It would be possible to pop up the bubble up the bubble again, telling the user that the setting is now following the recommendation. But this would cause a weird UI experience: The bubble goes away, then pops up again a split second later.
Oct 4, 2012
#31 bartfab@chromium.org
A further consideration here is keyboard focus. The bubble is implemented so that it joins the setting page's tab order at the correct position: If the user focuses a setting indicator and then presses <Enter> or <Space>, the bubble pops up and the indicator retains focus. Tabbing away from the indicator immediately closes the bubble. What should happen if another bubble pops up after the "Follow recommendation" link has been selected? Will this bubble also go away if the user presses <Tab>? Or will it remain on the screen, even if the user tabs away straight away?
Oct 4, 2012
#32 bartfab@chromium.org
CL finishing the implementation: https://codereview.chromium.org/11066015/

This does not add the additional bubble requested in comment 29. Ken, do you think we can live without the additional bubble? The case of clearing a user-set value and switching to a recommended value that happens to be identical is extremely rare. Also, once the recommended value is in place, the user can click the controlled setting indicator again and get confirmation that the recommendation is being followed now.
Oct 4, 2012
#33 kenmo...@chromium.org
You raise good points, for now let's go with the original plan to dismiss the bubble when "Follow recommendation" is clicked.  Given that the setting value itself will change, this should be sufficient feedback to the user that the action was processed.
Oct 5, 2012
#34 bugdro...@chromium.org
The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=160351

------------------------------------------------------------------------
r160351 | bartfab@chromium.org | 2012-10-05T12:47:29.036961Z

Changed paths:
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/webui/options/chromeos/internet_options_handler.cc?r1=160351&r2=160350&pathrev=160351
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/webui/options/core_options_handler.cc?r1=160351&r2=160350&pathrev=160351
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/resources/options/chromeos/internet_detail.js?r1=160351&r2=160350&pathrev=160351
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/app/generated_resources.grd?r1=160351&r2=160350&pathrev=160351
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/resources/options/controlled_setting.js?r1=160351&r2=160350&pathrev=160351
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/resources/options/options_page.css?r1=160351&r2=160350&pathrev=160351

Finish implementation of controlled setting indicator

This CL completes the implementation of a controlled setting indicator
class for Chrome's settings UI. This class can be used to show an icon
next to each setting whose value is enforced or recommended by policy or
an extension. Clicking on it or selecting the indicator by keyboard brings
up an informative bubble.

The CL ensures that indicators already used in the Chrome OS network
settings remain functional. No further indicators are added to the
settings UI - this will be done in follow-up CLs.

BUG=104955

TEST=Chrome OS VM with ONC-configured VPN; only here is a controlled
TEST=setting indicator currently being used (see crbug.com/137470)


Review URL: https://chromiumcodereview.appspot.com/11066015
------------------------------------------------------------------------
Oct 9, 2012
#35 bugdro...@chromium.org
The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=160880

------------------------------------------------------------------------
r160880 | bartfab@chromium.org | 2012-10-09T18:23:36.885158Z

Changed paths:
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/test/data/policy/policy_test_cases.json?r1=160880&r2=160879&pathrev=160880
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/resources/options/home_page_overlay.html?r1=160880&r2=160879&pathrev=160880
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/resources/options/home_page_overlay.css?r1=160880&r2=160879&pathrev=160880
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/policy/policy_prefs_browsertest.cc?r1=160880&r2=160879&pathrev=160880
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/resources/options/home_page_overlay.js?r1=160880&r2=160879&pathrev=160880

Add first batch of controlled setting indicators

This CL adds controlled settings indicators to the settings UI homepage
overlay that indicate which settings exactly are enforced or recommended
through policy. Follow-up CLs will add indicators to all other settings
pages as well.

The CL also adds a browser test verifying that the indicators show
enforced/recommended state as expected.

BUG=104955


Review URL: https://chromiumcodereview.appspot.com/11096020
------------------------------------------------------------------------
Oct 15, 2012
#36 vivi...@chromium.org
(No comment was entered for this change.)
Cc: scunning...@chromium.org
Oct 18, 2012
#38 bartfab@chromium.org
Ken, I would like to add two more strings:

* These settings are enforced by your administrator.
* These settings are enforced by an extension.

These are plural versions of strings already in use. They are needed for the case where a single input element (and thus, a single controlled setting indicator) refers to a whole group of settings. This is the case for proxy settings (either the button is clickable and brings up the platform's native proxy dialog or the button is grayed out and all proxy settings are managed) - see attachment.
Oct 18, 2012
#39 bartfab@chromium.org
Sorry, I was faster than the bug tracker's upload :). Here is the missing attachment.
managed_proxy.png
48.5 KB   View   Download
Oct 18, 2012
#40 bugdro...@chromium.org
The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=162746

------------------------------------------------------------------------
r162746 | bartfab@chromium.org | 2012-10-18T18:41:21.209011Z

Changed paths:
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/resources/options/browser_options.css?r1=162746&r2=162745&pathrev=162746
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/resources/options/home_page_overlay.html?r1=162746&r2=162745&pathrev=162746
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/resources/options/chromeos/internet_detail.html?r1=162746&r2=162745&pathrev=162746
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/resources/options/home_page_overlay.css?r1=162746&r2=162745&pathrev=162746
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/resources/options/options_page.css?r1=162746&r2=162745&pathrev=162746
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/resources/options/chromeos/internet_detail.css?r1=162746&r2=162745&pathrev=162746

Ensure proper wrapping of controlled setting indicators
    
Controlled setting indicators usually appear next to input elements. When
space gets tight and the input element's label wraps over multiple lines,
the indicator gets misplaced instead of wrapping with the label.
    
This CL makes sure that the label and the controlled setting indicator
are inline elements within the same box so that they wrap around together.
    
TEST=Change options page CSS to force wrapping, check visual appearance
BUG=104955

Review URL: https://chromiumcodereview.appspot.com/11141022
------------------------------------------------------------------------
Oct 18, 2012
#41 bugdro...@chromium.org
The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=162818

------------------------------------------------------------------------
r162818 | bartfab@chromium.org | 2012-10-18T22:46:41.730377Z

Changed paths:
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/resources/options/browser_options.html?r1=162818&r2=162817&pathrev=162818
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/test/data/policy/policy_test_cases.json?r1=162818&r2=162817&pathrev=162818
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/policy/policy_prefs_browsertest.cc?r1=162818&r2=162817&pathrev=162818

Add second batch of controlled setting indicators

This CL continues the addition of controlled setting indicators to
the Chrome settings UI.

BUG=104955


Review URL: https://chromiumcodereview.appspot.com/11117024
------------------------------------------------------------------------
Oct 18, 2012
#42 bugdro...@chromium.org
The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=162897

------------------------------------------------------------------------
r162897 | bartfab@chromium.org | 2012-10-19T02:59:47.685080Z

Changed paths:
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/resources/options/content_settings.css?r1=162897&r2=162896&pathrev=162897
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/test/data/policy/policy_test_cases.json?r1=162897&r2=162896&pathrev=162897
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/resources/options/content_settings.js?r1=162897&r2=162896&pathrev=162897
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/app/policy/policy_templates.json?r1=162897&r2=162896&pathrev=162897
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/resources/options/content_settings.html?r1=162897&r2=162896&pathrev=162897
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/resources/options/controlled_setting.js?r1=162897&r2=162896&pathrev=162897
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/resources/options/chromeos/network_list.js?r1=162897&r2=162896&pathrev=162897
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/resources/options/content_settings_exceptions_area.js?r1=162897&r2=162896&pathrev=162897
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/policy/policy_prefs_browsertest.cc?r1=162897&r2=162896&pathrev=162897

Add controlled setting indicators for content settings

This CL adds controlled setting indicators to the content settings
configuration dialog at chrome://chrome/settings/content and its
popup dialogs for configuring per-host exceptions.

BUG=104955


Review URL: https://chromiumcodereview.appspot.com/11078023
------------------------------------------------------------------------
Oct 19, 2012
#43 bugdro...@chromium.org
The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=162975

------------------------------------------------------------------------
r162975 | bartfab@chromium.org | 2012-10-19T09:51:30.050069Z

Changed paths:
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/resources/options/browser_options.html?r1=162975&r2=162974&pathrev=162975
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/test/data/policy/policy_test_cases.json?r1=162975&r2=162974&pathrev=162975
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/resources/options/browser_options.css?r1=162975&r2=162974&pathrev=162975
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/resources/options/browser_options.js?r1=162975&r2=162974&pathrev=162975
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/policy/policy_prefs_browsertest.cc?r1=162975&r2=162974&pathrev=162975

Add third batch of controlled setting indicators

This CL continues the addition of controlled setting indicators to
the Chrome settings UI. It also refactors the policy_prefs_browsertest
and its test cases definition file so that a single policy mapping to
multiple prefs can be tested.

BUG=104955


Review URL: https://chromiumcodereview.appspot.com/11193002
------------------------------------------------------------------------
Oct 22, 2012
#47 bartfab@chromium.org
(No comment was entered for this change.)
Blocking: chromium:157156
Oct 22, 2012
#48 bartfab@chromium.org
The addition of controlled setting indicators to Chrome OS-specific network dialogs ins now tracked in its own issue 157156.
Oct 25, 2012
#49 bugdro...@chromium.org
The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=164055

------------------------------------------------------------------------
r164055 | bartfab@chromium.org | 2012-10-25T12:45:00.053799Z

Changed paths:
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/resources/options/browser_options.html?r1=164055&r2=164054&pathrev=164055
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/test/data/policy/policy_test_cases.json?r1=164055&r2=164054&pathrev=164055
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/resources/options/import_data_overlay.html?r1=164055&r2=164054&pathrev=164055
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/app/policy/policy_templates.json?r1=164055&r2=164054&pathrev=164055

Add fifth batch of controlled setting indicators

This CL continues the addition of controlled setting indicators to
the Chrome settings UI.

BUG=104955


Review URL: https://chromiumcodereview.appspot.com/11232046
------------------------------------------------------------------------
Oct 25, 2012
#51 bugdro...@chromium.org
The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=164195

------------------------------------------------------------------------
r164195 | bartfab@chromium.org | 2012-10-25T22:36:12.364937Z

Changed paths:
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/chromeos/proxy_cros_settings_parser.cc?r1=164195&r2=164194&pathrev=164195
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/resources/options/browser_options.html?r1=164195&r2=164194&pathrev=164195
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/webui/options/core_options_handler.cc?r1=164195&r2=164194&pathrev=164195
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/resources/options/options_page.js?r1=164195&r2=164194&pathrev=164195
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/resources/options/chromeos/internet_detail.js?r1=164195&r2=164194&pathrev=164195
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/resources/options/pref_ui.js?r1=164195&r2=164194&pathrev=164195
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/resources/options/content_settings.js?r1=164195&r2=164194&pathrev=164195
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/resources/extensions/extensions.html?r1=164195&r2=164194&pathrev=164195
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/common/extensions/docs/examples/api/fontSettings/css/uber_shared.css?r1=164195&r2=164194&pathrev=164195
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/resources/options/browser_options.js?r1=164195&r2=164194&pathrev=164195
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/app/chromeos_strings.grdp?r1=164195&r2=164194&pathrev=164195
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/resources/uber/uber_shared.css?r1=164195&r2=164194&pathrev=164195
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/policy/policy_prefs_browsertest.cc?r1=164195&r2=164194&pathrev=164195
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/test/data/policy/policy_test_cases.json?r1=164195&r2=164194&pathrev=164195
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/resources/extensions/extensions.css?r1=164195&r2=164194&pathrev=164195
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/app/generated_resources.grd?r1=164195&r2=164194&pathrev=164195
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/resources/options/chromeos/internet_detail.html?r1=164195&r2=164194&pathrev=164195
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/resources/options/options.html?r1=164195&r2=164194&pathrev=164195
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/webui/options/chromeos/proxy_handler.cc?r1=164195&r2=164194&pathrev=164195

Remove the managed banner from the Chrome settings UI

This banner has been obsoleted by the controlled setting indicators.

BUG=104955


Review URL: https://chromiumcodereview.appspot.com/11272026
------------------------------------------------------------------------
Oct 26, 2012
#52 bartfab@chromium.org
The last CL has landed - this feature is now complete.
Status: Fixed
Mar 1, 2013
#53 vids...@chromium.org
(No comment was entered for this change.)
Cc: mlc...@chromium.org vids...@chromium.org
Mar 10, 2013
#54 bugdro...@chromium.org
(No comment was entered for this change.)
Labels: -Area-UI -Feature-Enterprise -Mstone-24 Cr-UI M-24 Cr-Enterprise
Mar 20, 2013
#55 scunning...@chromium.org
(No comment was entered for this change.)
Labels: OS-Chrome
Mar 20, 2013
#56 krishna...@chromium.org
Regression tested this in R26.0.1410.40;3701.62.1;Butterfly. Verified that the individual settings that are defined by policy have the 'controlled setting indicators) next to them and also verified that the butter bar/managed banner is removed from the top of the page. 


Mar 20, 2013
#57 scunning...@chromium.org
(No comment was entered for this change.)
Status: Verified
Sign in to add a comment

Powered by Google Project Hosting