gecko/widget/cocoa/nsMacDockSupport.h
Dave Vasilevsky cd0183f9ff Bug 548763 - Show download progress in OS X app dock icon. r=dao r=josh
--HG--
rename : widget/tests/taskbar_progress.xul => widget/tests/test_taskbar_progress.xul
2013-03-03 05:58:00 -05:00

41 lines
1.1 KiB
Objective-C

/* -*- Mode: c++; tab-width: 2; indent-tabs-mode: nil; -*- */
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
#import <Carbon/Carbon.h>
#include "nsIMacDockSupport.h"
#include "nsIStandaloneNativeMenu.h"
#include "nsITaskbarProgress.h"
#include "nsITimer.h"
#include "nsCOMPtr.h"
#include "nsString.h"
class nsMacDockSupport : public nsIMacDockSupport, public nsITaskbarProgress
{
public:
nsMacDockSupport();
virtual ~nsMacDockSupport();
NS_DECL_ISUPPORTS
NS_DECL_NSIMACDOCKSUPPORT
NS_DECL_NSITASKBARPROGRESS
protected:
nsCOMPtr<nsIStandaloneNativeMenu> mDockMenu;
nsString mBadgeText;
NSImage *mAppIcon, *mProgressBackground;
HIThemeTrackDrawInfo mProgressDrawInfo;
nsTaskbarProgressState mProgressState;
double mProgressFraction;
nsCOMPtr<nsITimer> mProgressTimer;
static void RedrawIconCallback(nsITimer* aTimer, void* aClosure);
bool InitProgress();
nsresult RedrawIcon();
};