Sat, 03 Jan 2015 20:18:00 +0100
Conditionally enable double key logic according to:
private browsing mode or privacy.thirdparty.isolate preference and
implement in GetCookieStringCommon and FindCookie where it counts...
With some reservations of how to convince FindCookie users to test
condition and pass a nullptr when disabling double key logic.
1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
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 #include "nsISupports.idl"
8 interface nsIDOMNode;
10 /**
11 * A service used to sort the contents of a XUL widget.
12 */
13 [scriptable, uuid(F29270C8-3BE5-4046-9B57-945A84DFF132)]
14 interface nsIXULSortService : nsISupports
15 {
16 const unsigned long SORT_COMPARECASE = 0x0001;
17 const unsigned long SORT_INTEGER = 0x0100;
19 /**
20 * Sort the contents of the widget containing <code>aNode</code>
21 * using <code>aSortKey</code> as the comparison key, and
22 * <code>aSortDirection</code> as the direction.
23 *
24 * @param aNode A node in the XUL widget whose children are to be sorted.
25 * @param aSortKey The value to be used as the comparison key.
26 * @param aSortHints One or more hints as to how to sort:
27 *
28 * ascending: to sort the contents in ascending order
29 * descending: to sort the contents in descending order
30 * comparecase: perform case sensitive comparisons
31 * integer: treat values as integers, non-integers are compared as strings
32 * twostate: don't allow the natural (unordered state)
33 */
34 void sort(in nsIDOMNode aNode,
35 in AString aSortKey,
36 in AString aSortHints);
37 };
39 %{C++
40 nsresult
41 NS_NewXULSortService(nsIXULSortService **result);
42 %}