Tue, 06 Jan 2015 21:39:09 +0100
Conditionally force memory storage according to privacy.thirdparty.isolate;
This solves Tor bug #9701, complying with disk avoidance documented in
https://www.torproject.org/projects/torbrowser/design/#disk-avoidance.
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 mozilla_a11y_XULComboboxAccessible_h__
7 #define mozilla_a11y_XULComboboxAccessible_h__
9 #include "XULMenuAccessible.h"
11 namespace mozilla {
12 namespace a11y {
14 /**
15 * Used for XUL comboboxes like xul:menulist and autocomplete textbox.
16 */
17 class XULComboboxAccessible : public AccessibleWrap
18 {
19 public:
20 enum { eAction_Click = 0 };
22 XULComboboxAccessible(nsIContent* aContent, DocAccessible* aDoc);
24 // nsIAccessible
25 NS_IMETHOD DoAction(uint8_t aIndex);
26 NS_IMETHOD GetActionName(uint8_t aIndex, nsAString& aName);
28 // Accessible
29 virtual void Description(nsString& aDescription);
30 virtual void Value(nsString& aValue);
31 virtual a11y::role NativeRole();
32 virtual uint64_t NativeState();
33 virtual bool CanHaveAnonChildren();
35 // ActionAccessible
36 virtual uint8_t ActionCount();
38 // Widgets
39 virtual bool IsActiveWidget() const;
40 virtual bool AreItemsOperable() const;
41 };
43 } // namespace a11y
44 } // namespace mozilla
46 #endif