<!--
 Copyright (C) 2008 The Android Open Source Project

 Licensed under the Apache License, Version 2.0 (the "License");
 you may not use this file except in compliance with the License.
 You may obtain a copy of the License at

 http://www.apache.org/licenses/LICENSE-2.0

 Unless required by applicable law or agreed to in writing, software
 distributed under the License is distributed on an "AS IS" BASIS,
 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 See the License for the specific language governing permissions and
 limitations under the License.
-->
<module rename-to="gerrit_ui">
  <inherits name='com.google.gwt.editor.Editor'/>
  <inherits name='com.google.gwt.user.User'/>
  <inherits name='com.google.gwt.resources.Resources'/>
  <inherits name='com.google.gwt.user.theme.chrome.Chrome'/>
  <inherits name='com.google.gwtexpui.css.CSS'/>
  <inherits name='com.google.gerrit.GerritGwtUICommon'/>
  <inherits name='com.google.gerrit.UserAgent'/>
  <inherits name='net.codemirror.CodeMirror'/>

  <extend-property name='locale' values='en'/>
  <set-property-fallback name='locale' value='en'/>
  <set-property name='locale' value='en'/>
  <set-configuration-property name='UiBinder.useSafeHtmlTemplates' value='true'/>
  <set-configuration-property name='CssResource.style' value='stable'/>
  <add-linker name='xsiframe'/>

  <set-property name='gwt.logging.logLevel' value='SEVERE'/>

  <!-- Disable GSS -->
  <set-configuration-property name='CssResource.enableGss' value='false'/>

  <entry-point class='com.google.gerrit.client.Gerrit'/>
</module>
