// Copyright (c) 2012 The Chromium Authors. All rights reserved. // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. #import <Cocoa/Cocoa.h> #include "base/time/time.h" // A class representing the dock icon of the Chromium app. It's its own class // since several parts of the app want to manipulate the display of the dock // icon. // // Like all UI, it must only be messaged from the UI thread. @interface DockIcon : NSObject { @private // The time that the icon was last updated. base::TimeTicks lastUpdate_; // If true, the state has changed in a significant way since the last icon // update and throttling should not prevent icon redraw. BOOL forceUpdate_; } + (DockIcon*)sharedDockIcon; // Updates the icon. Use the setters below to set the details first. - (void)updateIcon; // Download progress /////////////////////////////////////////////////////////// // Indicates how many downloads are in progress. - (void)setDownloads:(int)downloads; // Indicates whether the progress indicator should be in an indeterminate state // or not. - (void)setIndeterminate:(BOOL)indeterminate; // Indicates the amount of progress made of the download. Ranges from [0..1]. - (void)setProgress:(float)progress; @end