michael@0: /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ michael@0: /* This Source Code Form is subject to the terms of the Mozilla Public michael@0: * License, v. 2.0. If a copy of the MPL was not distributed with this michael@0: * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ michael@0: #ifndef __nsLookAndFeel michael@0: #define __nsLookAndFeel michael@0: michael@0: #include "nsXPLookAndFeel.h" michael@0: #include "AndroidBridge.h" michael@0: michael@0: class nsLookAndFeel: public nsXPLookAndFeel michael@0: { michael@0: public: michael@0: nsLookAndFeel(); michael@0: virtual ~nsLookAndFeel(); michael@0: michael@0: virtual nsresult NativeGetColor(ColorID aID, nscolor &aResult); michael@0: virtual nsresult GetIntImpl(IntID aID, int32_t &aResult); michael@0: virtual nsresult GetFloatImpl(FloatID aID, float &aResult); michael@0: virtual bool GetFontImpl(FontID aID, nsString& aName, gfxFontStyle& aStyle, michael@0: float aDevPixPerCSSPixel); michael@0: virtual bool GetEchoPasswordImpl(); michael@0: virtual uint32_t GetPasswordMaskDelayImpl(); michael@0: virtual char16_t GetPasswordCharacterImpl(); michael@0: michael@0: protected: michael@0: static bool mInitializedSystemColors; michael@0: static mozilla::AndroidSystemColors mSystemColors; michael@0: static bool mInitializedShowPassword; michael@0: static bool mShowPassword; michael@0: michael@0: nsresult GetSystemColors(); michael@0: nsresult CallRemoteGetSystemColors(); michael@0: }; michael@0: michael@0: #endif