author Timothy Nikkel <>
Mon, 04 May 2015 14:29:19 -0500
changeset 242304 f58aab6a4e62d9ca2c0c9098c0eed84024adf85e
parent 201671 f37d8b5936c470718e80f34d9ea9ca942b63de8b
child 448947 6f3709b3878117466168c40affa7bca0b60cf75b
permissions -rw-r--r--
Bug 1159772. Don't let nsContainerFrame::SyncWindowProperties make widget calls that can result in synchronous painting during reflow or frame construction. r=mats Specifically on Windows nsIWidget::SetTransparencyMode can result in sync painting. So we give nsContainerFrame::SyncWindowProperties a sync or async option and use the view manager post pending update infrastructure to flush SyncWindowProperties calls async.

/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
/* 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 */

#ifndef nsParserMsgUtils_h
#define nsParserMsgUtils_h

#include "nsString.h"

#define XMLPARSER_PROPERTIES "chrome://global/locale/layout/"

class nsParserMsgUtils {
  nsParserMsgUtils();  // Currently this is not meant to be created, use the static methods
  ~nsParserMsgUtils(); // If perf required, change this to cache values etc.
  static nsresult GetLocalizedStringByName(const char * aPropFileName, const char* aKey, nsString& aVal);
  static nsresult GetLocalizedStringByID(const char * aPropFileName, uint32_t aID, nsString& aVal);