Bug 1890689 accumulate input in LargerReceiverBlockSizeThanDesiredBuffering GTest...
[gecko.git] / widget / cocoa / nsLookAndFeel.h
blob89e4c93713bd7db3525cfed78ad7be34bcd0c596
1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
2 /* This Source Code Form is subject to the terms of the Mozilla Public
3 * License, v. 2.0. If a copy of the MPL was not distributed with this
4 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
6 #ifndef nsLookAndFeel_h_
7 #define nsLookAndFeel_h_
8 #include "nsXPLookAndFeel.h"
10 class nsLookAndFeel final : public nsXPLookAndFeel {
11 public:
12 nsLookAndFeel();
13 virtual ~nsLookAndFeel();
15 void NativeInit() final { EnsureInit(); }
16 void RefreshImpl() final;
17 void EnsureInit();
19 nsresult NativeGetColor(ColorID, ColorScheme, nscolor& aColor) override;
20 nsresult NativeGetInt(IntID, int32_t& aResult) override;
21 nsresult NativeGetFloat(FloatID, float& aResult) override;
22 bool NativeGetFont(FontID aID, nsString& aFontName,
23 gfxFontStyle& aFontStyle) override;
25 char16_t GetPasswordCharacterImpl() override {
26 // unicode value for the bullet character, used for password textfields.
27 return 0x2022;
30 void RecordLookAndFeelSpecificTelemetry() override {
31 RecordAccessibilityTelemetry();
34 // Having a separate, static method allows us to rely on the same
35 // chunk of telemetry logging code at initialization and when we
36 // recieve an event that changes the value of our telemetry probe.
37 static void RecordAccessibilityTelemetry();
39 protected:
40 bool mInitialized = false;
41 bool mRtl = false;
42 int32_t mTitlebarHeight = 0;
45 #endif // nsLookAndFeel_h_