Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(9)

Unified Diff: chrome/browser/ui/cocoa/extensions/extension_install_view_controller.mm

Issue 580363002: Update app info and install prompt UI to show retained devices. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 6 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome/browser/ui/cocoa/extensions/extension_install_view_controller.mm
diff --git a/chrome/browser/ui/cocoa/extensions/extension_install_view_controller.mm b/chrome/browser/ui/cocoa/extensions/extension_install_view_controller.mm
index df708813c6d13897c38c52112c02c69dcc13e9be..819f11d5003c54c6c6677ca8731c6f9bec7c597f 100644
--- a/chrome/browser/ui/cocoa/extensions/extension_install_view_controller.mm
+++ b/chrome/browser/ui/cocoa/extensions/extension_install_view_controller.mm
@@ -190,7 +190,8 @@ bool HasAttribute(id item, CellAttributesMask attributeMask) {
} else if (prompt->has_webstore_data()) {
nibName = @"ExtensionInstallPromptWebstoreData";
} else if (!prompt->ShouldShowPermissions() &&
- prompt->GetRetainedFileCount() == 0) {
+ prompt->GetRetainedFileCount() == 0 &&
+ prompt->GetRetainedDeviceCount() == 0) {
nibName = @"ExtensionInstallPromptNoWarnings";
} else {
nibName = @"ExtensionInstallPrompt";
@@ -307,8 +308,8 @@ bool HasAttribute(id item, CellAttributesMask attributeMask) {
OffsetControlVerticallyToFitContent(itemsField_, &totalOffset);
}
- // If there are any warnings or retained files, then we have to do
- // some special layout.
+ // If there are any warnings, retained devices or retained files, then we
+ // have to do some special layout.
if (prompt_->ShouldShowPermissions() || prompt_->GetRetainedFileCount() > 0) {
NSSize spacing = [outlineView_ intercellSpacing];
spacing.width += 2;
@@ -663,6 +664,35 @@ bool HasAttribute(id item, CellAttributesMask attributeMask) {
[self buildDetailToggleItem:type permissionsDetailIndex:0]];
}
+ if (prompt.GetRetainedDeviceCount() > 0) {
+ type = ExtensionInstallPrompt::RETAINED_DEVICES_DETAILS;
tapted 2014/09/19 04:09:09 What happens if an extension has both retained dev
Reilly Grant (use Gerrit) 2014/09/19 19:30:09 You get two lists and the button says "Revoke File
tapted 2014/09/22 01:04:36 Ah - cool. On the cocoa side it looked like `type`
+
+ NSMutableArray* children = [NSMutableArray array];
+
+ if (prompt.GetIsShowingDetails(type, 0)) {
+ for (size_t i = 0; i < prompt.GetRetainedDeviceCount(); ++i) {
+ [children
tapted 2014/09/19 04:09:09 nit: a temporary `title` var will probably make th
Reilly Grant (use Gerrit) 2014/09/19 19:30:09 Done.
+ addObject:[self buildItemWithTitle:
+ SysUTF16ToNSString(
+ prompt.GetRetainedDeviceMessageString(i))
+ cellAttributes:kUseBullet
+ children:nil]];
+ }
+ }
+
+ [warnings
tapted 2014/09/19 04:09:09 same here, clang-format will probably do something
+ addObject:[self
+ buildItemWithTitle:SysUTF16ToNSString(
+ prompt.GetRetainedDevicesHeading())
+ cellAttributes:kBoldText | kAutoExpandCell |
+ kNoExpandMarker
+ children:children]];
+
+ // Add a row for the link.
+ [warnings
+ addObject:[self buildDetailToggleItem:type permissionsDetailIndex:0]];
+ }
+
return warnings;
}

Powered by Google App Engine
This is Rietveld 408576698