<?xml version="1.0" encoding="UTF-8"?>
<?eclipse version="3.4"?>
<plugin>
   <extension-point id="languageServer" name="Language Server" schema="schema/languageServer.exsd"/>
   <!-- Extension point will ideally be "org.eclipse.text...." because
   the feature should be part of the generic text editor -->
   <extension
         id="diagnostic"
         point="org.eclipse.core.resources.markers">
      <super
            type="org.eclipse.core.resources.problemmarker">
      </super>
   </extension>
   <extension
         point="org.eclipse.ui.ide.markerResolution">
      <markerResolutionGenerator
            class="org.eclipse.lsp4e.operations.codeactions.LSPCodeActionMarkerResolution"
            markerType="org.eclipse.lsp4e.diagnostic">
      </markerResolutionGenerator>
   </extension>
   <extension
         point="org.eclipse.ui.workbench.texteditor.hyperlinkDetectors">
      <hyperlinkDetector
            activate="true"
            class="org.eclipse.lsp4e.operations.declaration.OpenDeclarationHyperlinkDetector"
            description="%openDeclarationHyperlink_decription"
            id="org.eclipse.lsp4e.hyperlinkDetector"
            name="%openDeclarationHyperlink_name"
            targetId="org.eclipse.ui.DefaultTextEditor">
      </hyperlinkDetector>
      <hyperlinkDetector
            activate="true"
            class="org.eclipse.lsp4e.operations.documentLink.DocumentLinkDetector"
            description="Document Link Detector"
            id="org.eclipse.lsp4e.documentLinkDetector"
            name="Document Link Detector"
            targetId="org.eclipse.ui.DefaultTextEditor">
      </hyperlinkDetector>
   </extension>
   <extension
         point="org.eclipse.ui.commands">
      <category
            id="org.eclipse.lsp4e.category"
            name="%commands.category.name">
      </category>
      <command
            categoryId="org.eclipse.lsp4e.category"
            id="org.eclipse.lsp4e.format"
            name="%format.command.name">
      </command>
      <command
            categoryId="org.eclipse.lsp4e.category"
            id="org.eclipse.lsp4e.symbolinfile"
            name="%commands.symbolsInFile.name">
      </command>
      <command
            categoryId="org.eclipse.lsp4e.category"
            id="org.eclipse.lsp4e.symbolinworkspace"
            name="%commands.symbolsInWorksapce.name">
      </command>
      <command
            categoryId="org.eclipse.lsp4e.category"
            id="org.eclipse.lsp4e.togglelinkwitheditor"
            name="Toggle Link with Editor">
         <state
               class="org.eclipse.ui.handlers.RegistryToggleState:true"
               id="org.eclipse.ui.commands.toggleState">
         </state>
      </command>
      <command
            categoryId="org.eclipse.lsp4e.category"
            id="org.eclipse.lsp4e.showkindinoutline"
            name="Show Kind in Outline">
         <state
               class="org.eclipse.ui.handlers.RegistryToggleState:true"
               id="org.eclipse.ui.commands.toggleState">
         </state>
      </command>
   </extension>
   <extension
         point="org.eclipse.ui.handlers">
      <handler
            class="org.eclipse.lsp4e.operations.references.LSFindReferences"
            commandId="org.eclipse.ui.genericeditor.findReferences">
         <enabledWhen>
            <and>
               <with
                     variable="selection">
                  <instanceof
                        value="org.eclipse.jface.text.ITextSelection">
                  </instanceof>
               </with>
            </and>
         </enabledWhen>
      </handler>
      <handler
            class="org.eclipse.lsp4e.operations.rename.LSPRenameHandler"
            commandId="org.eclipse.ui.edit.rename">
         <enabledWhen>
            <and>
               <with
                     variable="selection">
                  <instanceof
                        value="org.eclipse.jface.text.ITextSelection">
                  </instanceof>
               </with>
            </and>
         </enabledWhen>
      </handler>
      <handler
            class="org.eclipse.lsp4e.operations.format.LSPFormatHandler"
            commandId="org.eclipse.lsp4e.format">
         <enabledWhen>
            <and>
               <with
                     variable="selection">
                  <instanceof
                        value="org.eclipse.jface.text.ITextSelection">
                  </instanceof>
               </with>
            </and>
         </enabledWhen>
      </handler>
      <handler
            class="org.eclipse.lsp4e.operations.symbols.LSPSymbolInFileHandler"
            commandId="org.eclipse.lsp4e.symbolinfile">
      </handler>
      <handler
            class="org.eclipse.lsp4e.operations.symbols.LSPSymbolInWorkspaceHandler"
            commandId="org.eclipse.lsp4e.symbolinworkspace">
      </handler>
      <handler
            commandId="org.eclipse.lsp4e.togglelinkwitheditor">
         <class
               class="org.eclipse.lsp4e.outline.ToggleLinkingHandler">
         </class>
      </handler>
      <handler
            commandId="org.eclipse.lsp4e.showkindinoutline">
         <class
               class="org.eclipse.lsp4e.outline.ShowKindHandler">
         </class>
      </handler>
   </extension>
   <extension
         point="org.eclipse.search.searchResultViewPages">
      <viewPage
            class="org.eclipse.search.internal.ui.text.FileSearchPage"
            id="org.eclipse.lsp4e.lsResultPage"
            searchResultClass="org.eclipse.lsp4e.operations.references.LSSearchResult">
      </viewPage>
   </extension>
   <extension
         point="org.eclipse.ui.preferencePages">
      <page
            class="org.eclipse.lsp4e.ui.LanguageServerPreferencePage"
            id="org.eclipse.lsp4e.preferences"
            name="%languageservers.preference.page">
      </page>
      <page
            category="org.eclipse.lsp4e.preferences"
            class="org.eclipse.lsp4e.ui.LoggingPreferencePage"
            id="org.eclipse.lsp4e.logging.preferences"
            name="%languageservers.logging.preference.page">
      </page>
   </extension>
   <extension
         point="org.eclipse.ui.menus">
      <menuContribution
            allPopups="true"
            locationURI="popup:#TextEditorContext?after=additions">
         <menu
               label="%refactorings.menu.label">
            <command
                  commandId="org.eclipse.ui.edit.rename"
                  style="push">
            </command>
            <separator
                  name="org.eclipse.lsp4e.refactoringseparator">
            </separator>
         </menu>
         <command
               commandId="org.eclipse.lsp4e.format"
               style="push">
         </command>
         <menu
               label="%codeactions.menu.label">
            <dynamic
                  class="org.eclipse.lsp4e.operations.codeactions.LSPCodeActionsMenu"
                  id="org.eclipse.lsp4e.codeActions">
            </dynamic>
         </menu>
      </menuContribution>
      <menuContribution
            allPopups="false"
            locationURI="menu:org.eclipse.ui.views.ContentOutline">
         <command
               commandId="org.eclipse.lsp4e.togglelinkwitheditor"
               label="Link with Editor"
               style="toggle">
            <visibleWhen
                  checkEnabled="false">
               <and>
	              <with variable="activePart">
	                 <instanceof
                           value="org.eclipse.ui.views.contentoutline.ContentOutline">
                     </instanceof>
	              </with>
	              <with
	                    variable="activePart">
	                 <test
	                       property="org.eclipse.lsp4e.hasCNFOutlinePage">
	                 </test>
	              </with>
	           </and>
            </visibleWhen>
         </command>
      </menuContribution>
      <menuContribution
            allPopups="false"
            locationURI="menu:org.eclipse.ui.views.ContentOutline">
         <command
               commandId="org.eclipse.lsp4e.showkindinoutline"
               label="Show Kind"
               style="toggle">
            <visibleWhen
                  checkEnabled="false">
               <and>
	              <with variable="activePart">
	                 <instanceof
                           value="org.eclipse.ui.views.contentoutline.ContentOutline">
                     </instanceof>
	              </with>
	              <with
	                    variable="activePart">
	                 <test
	                       property="org.eclipse.lsp4e.hasCNFOutlinePage">
	                 </test>
	              </with>
	           </and>
            </visibleWhen>
         </command>
      </menuContribution>
   </extension>
   <extension
         point="org.eclipse.ui.genericeditor.contentAssistProcessors">
      <contentAssistProcessor
            class="org.eclipse.lsp4e.operations.completion.LSContentAssistProcessor"
            contentType="org.eclipse.core.runtime.text">
      </contentAssistProcessor>
   </extension>
   <extension
         point="org.eclipse.ui.genericeditor.hoverProviders">
      <hoverProvider
            class="org.eclipse.lsp4e.operations.hover.LSBasedHover"
            contentType="org.eclipse.core.runtime.text">
      </hoverProvider>
   </extension>
   <extension
         point="org.eclipse.ui.bindings">
      <key
            commandId="org.eclipse.lsp4e.symbolinfile"
            contextId="org.eclipse.ui.textEditorScope"
            schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
            sequence="M1+O">
      </key>
      <key
            commandId="org.eclipse.lsp4e.symbolinworkspace"
            contextId="org.eclipse.ui.contexts.window"
            schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
            sequence="M1+M2+T">
      </key>
      <key
            commandId="org.eclipse.lsp4e.format"
            contextId="org.eclipse.ui.textEditorScope"
            schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
            sequence="M1+M2+F">
      </key>
   </extension>
   <extension
         point="org.eclipse.core.runtime.adapters">
      <factory
            adaptableType="org.eclipse.ui.internal.genericeditor.ExtensionBasedTextEditor"
            class="org.eclipse.lsp4e.outline.EditorToOutlineAdapterFactory">
         <adapter
               type="org.eclipse.ui.views.contentoutline.IContentOutlinePage">
         </adapter>
      </factory>
   </extension>
   <extension
         point="org.eclipse.ui.navigator.navigatorContent">
      <navigatorContent
            activeByDefault="true"
            contentProvider="org.eclipse.lsp4e.outline.LSSymbolsContentProvider"
            labelProvider="org.eclipse.lsp4e.outline.SymbolsLabelProvider"
            id="org.eclipse.lsp4e.outline.content"
            name="LS Symbols">
         <triggerPoints>
            <or></or>
         </triggerPoints>
         <enablement>
            <instanceof
                  value="org.eclipse.lsp4e.LanguageServiceAccessor$LSPDocumentInfo">
            </instanceof>
         </enablement>
      </navigatorContent>
   </extension>
   <extension
         point="org.eclipse.ui.navigator.viewer">
      <viewer
            viewerId="org.eclipse.lsp4e.outline">
      </viewer>
      <viewerContentBinding
            viewerId="org.eclipse.lsp4e.outline">
         <includes>
            <contentExtension
                  isRoot="true"
                  pattern="org.eclipse.lsp4e.outline.content">
            </contentExtension>
         </includes>
      </viewerContentBinding>
   </extension>
   <extension
         point="org.eclipse.mylyn.commons.notifications.ui.notifications">
        <category
        	id="org.eclipse.lsp4e"
        	label="%notification.category.label">
        </category>
		<event
		    categoryId="org.eclipse.lsp4e"
		    id="lsp.notification"
		    label="%notification.event.label"
		    selected="true">
		    <defaultHandler
		      sinkId="org.eclipse.mylyn.commons.notifications.sink.Popup">
		    </defaultHandler>
		</event>
   </extension>
   <extension
         point="org.eclipse.core.filebuffers.documentSetup">
      <participant
            class="org.eclipse.lsp4e.ConnectDocumentToLanguageServerSetupParticipant"
            contentTypeId="org.eclipse.core.runtime.text">
      </participant>
   </extension>
   <extension
         point="org.eclipse.ui.startup">
      <startup
            class="org.eclipse.lsp4e.DisableShortcutsWorkaround">
      </startup>
   </extension>
   <extension point="org.eclipse.ui.editors.annotationTypes">
      <type name="org.eclipse.lsp4e.read"></type>
      <type name="org.eclipse.lsp4e.write"></type>
      <type name="org.eclipse.lsp4e.text"></type>
   </extension>
   <extension point="org.eclipse.ui.editors.markerAnnotationSpecification">
		<specification annotationType="org.eclipse.lsp4e.read"
			label="LSP Read Occurrence"
			textPreferenceKey="LSP4EReadOccurrenceIndication" textPreferenceValue="false"
			highlightPreferenceKey="LSP4EReadOccurrenceHighlighting"
			highlightPreferenceValue="true" contributesToHeader="false"
			overviewRulerPreferenceKey="LSP4EReadOccurrenceIndicationInOverviewRuler"
			overviewRulerPreferenceValue="true"
			verticalRulerPreferenceKey="LSP4EReadOccurrenceIndicationInVerticalRuler"
			verticalRulerPreferenceValue="false" colorPreferenceKey="LSP4EReadOccurrenceIndicationColor"
			colorPreferenceValue="212,212,212" presentationLayer="4"
			showInNextPrevDropdownToolbarAction="true" 
			textStylePreferenceKey="LSP4EReadOccurrenceTextStyle"
			textStylePreferenceValue="NONE">
		</specification>
   </extension>
   <extension point="org.eclipse.ui.editors.markerAnnotationSpecification">
		<specification annotationType="org.eclipse.lsp4e.write"
			label="LSP Write Occurrence"
			textPreferenceKey="LSP4EWriteOccurrenceIndication" textPreferenceValue="false"
			highlightPreferenceKey="LSP4EWriteOccurrenceHighlighting"
			highlightPreferenceValue="true" contributesToHeader="false"
			overviewRulerPreferenceKey="LSP4EWriteOccurrenceIndicationInOverviewRuler"
			overviewRulerPreferenceValue="true"
			verticalRulerPreferenceKey="LSP4EWriteOccurrenceIndicationInVerticalRuler"
			verticalRulerPreferenceValue="false" colorPreferenceKey="LSP4EWriteOccurrenceIndicationColor"
			colorPreferenceValue="212,212,212" presentationLayer="4"
			showInNextPrevDropdownToolbarAction="true"
			textStylePreferenceKey="LSP4EWriteOccurrenceTextStyle"
			textStylePreferenceValue="NONE">
		</specification>
   </extension>
   <extension point="org.eclipse.ui.editors.markerAnnotationSpecification">
		<specification annotationType="org.eclipse.lsp4e.text"
			label="LSP Text Occurrence"
			textPreferenceKey="LSP4ETextOccurrenceIndication" textPreferenceValue="false"
			highlightPreferenceKey="LSP4ETextOccurrenceHighlighting"
			highlightPreferenceValue="true" contributesToHeader="false"
			overviewRulerPreferenceKey="LSP4ETextOccurrenceIndicationInOverviewRuler"
			overviewRulerPreferenceValue="true"
			verticalRulerPreferenceKey="LSP4ETextOccurrenceIndicationInVerticalRuler"
			verticalRulerPreferenceValue="false" colorPreferenceKey="LSP4ETextOccurrenceIndicationColor"
			colorPreferenceValue="212,212,212" presentationLayer="4"
			showInNextPrevDropdownToolbarAction="true"
			textStylePreferenceKey="LSP4ETextOccurrenceTextStyle"
			textStylePreferenceValue="NONE">
		</specification>
   </extension>
   <extension
         point="org.eclipse.core.expressions.propertyTesters">
      <propertyTester
            class="org.eclipse.lsp4e.outline.SymbolInformationPropertyTester"
            id="org.eclipse.lsp4e.SymbolInformationPropertyTester"
            namespace="org.eclipse.lsp4e.symbolInformation"
            properties="extension,contentTypeId"
            type="java.lang.Object">
      </propertyTester>
      <propertyTester
            class="org.eclipse.lsp4e.HasLanguageServerPropertyTester"
            id="org.eclipse.lsp4e.hasLanguageServerPropertyTester"
            namespace="org.eclipse.lsp4e"
            properties="hasLanguageServer"
            type="java.lang.Object">
      </propertyTester>
      <propertyTester
            class="org.eclipse.lsp4e.outline.HasCNFOutlinePage"
            id="org.eclipse.lsp4e.hasCNFOutlinePage"
            namespace="org.eclipse.lsp4e"
            properties="hasCNFOutlinePage"
            type="java.lang.Object">
      </propertyTester>
   </extension>
   <extension
         point="org.eclipse.ui.commandImages">
      <image
            commandId="org.eclipse.lsp4e.togglelinkwitheditor"
            disabledIcon="icons/full/dlcl16/link_to_editor.png"
            icon="icons/full/elcl16/link_to_editor.png">
      </image>
   </extension>
   <extension
         point="org.eclipse.e4.ui.css.swt.theme">
      <stylesheet
            uri="resources/css/dark.css">
         <themeid
               refid="org.eclipse.e4.ui.css.theme.e4_dark">
         </themeid>
      </stylesheet>
   </extension>
   <extension
         point="org.eclipse.ui.genericeditor.highlightReconcilers">
      <highlightReconciler
            class="org.eclipse.lsp4e.operations.highlight.HighlightReconciler"
            contentType="org.eclipse.core.runtime.text">
         <enabledWhen>
            <with
                  variable="editorInput">
               <test
                     property="org.eclipse.lsp4e.hasLanguageServer">
               </test>
            </with>
         </enabledWhen>
      </highlightReconciler>
   </extension>
   <extension
         point="org.eclipse.ui.genericeditor.foldingReconcilers">
      <foldingReconciler
            class="org.eclipse.lsp4e.operations.folding.LSPFoldingReconciler"
            contentType="org.eclipse.core.runtime.text">
         <enabledWhen>
            <with
                  variable="editorInput">
               <test
                     property="org.eclipse.lsp4e.hasLanguageServer">
               </test>
            </with>
         </enabledWhen>
      </foldingReconciler>
   </extension>   
   <extension
         point="org.eclipse.ui.workbench.texteditor.codeMiningProviders">
      <codeMiningProvider
            class="org.eclipse.lsp4e.operations.codelens.CodeLensProvider"
            id="org.eclipse.lsp4e.codelens"
            label="CodeLens">
         <enabledWhen>
            <with
                  variable="viewer">
               <test
                     property="org.eclipse.lsp4e.hasLanguageServer">
               </test>
            </with>
         </enabledWhen>
      </codeMiningProvider>
      <codeMiningProvider
            class="org.eclipse.lsp4e.operations.color.DocumentColorProvider"
            id="org.eclipse.lsp4e.documentColor"
            label="Color">
         <enabledWhen>
            <with
                  variable="viewer">
               <test
                     property="org.eclipse.lsp4e.hasLanguageServer">
               </test>
            </with>
         </enabledWhen>
      </codeMiningProvider>
   </extension>
   <extension
         point="org.eclipse.ui.genericeditor.reconcilers">
      <reconciler
            class="org.eclipse.jface.text.codemining.CodeMiningReconciler"
            contentType="org.eclipse.core.runtime.text">
      </reconciler>
   </extension>
   <extension
         point="org.eclipse.ui.quickAccess">
      <computer
            class="org.eclipse.lsp4e.operations.symbols.WorkspaceSymbolsQuickAccessProvider"
            name="Workspace Symbols"/>
   </extension>
</plugin>
