Skip to content
This repository has been archived by the owner on Mar 1, 2023. It is now read-only.

Commit

Permalink
Merge pull request #6 from openmainframeproject/development
Browse files Browse the repository at this point in the history
version 0.5.2 ... toggle command improvements
  • Loading branch information
johnarwe authored Sep 5, 2017
2 parents 4840e61 + f389a9c commit 18de02c
Show file tree
Hide file tree
Showing 5 changed files with 25 additions and 3 deletions.
4 changes: 4 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,7 @@
## 0.5.2
* Toggle command improved; click anywhere to hide its modal panel
* Fix one message text (??? >> Rexx)

## 0.5.0 - First Release
* Complete z/VM 6.4 Rexx grammar implemented except for the following
* Some simple do/end pairs might be incorrectly or not colored
Expand Down
1 change: 0 additions & 1 deletion keymaps/language-zvm-rexx.cson
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@

# Change summary
# - Generated by atom-package-generator
# - Added Copyright
# - Commented out all generated "code", since this package is not supplying
# any default key bindings. Commented it out rather than deleting it
# in case default key bindings are needed in the future.
Expand Down
16 changes: 15 additions & 1 deletion lib/language-zvm-rexx-view.coffee
Original file line number Diff line number Diff line change
Expand Up @@ -2,13 +2,15 @@
# Change summary
# - Generated by atom-package-generator
# - Customized the generated text to be more useful.
# - Added "clickToHide" + tabIndex

module.exports =
class LanguageZvmRexxView
constructor: (serializedState) ->
# Create root element
@element = document.createElement('div')
@element.classList.add('language-zvm-rexx')
@element.tabIndex = "-1" # Ensure element can gain focus, so blur/etc work

# Create message element
message = document.createElement('div')
Expand All @@ -20,7 +22,7 @@ class LanguageZvmRexxView
message.appendChild(list)

item1 = document.createElement('li')
item1.textContent = "The package has been activated; ??? files should have visible syntax highlighting."
item1.textContent = "The package has been activated; Rexx files should have visible syntax highlighting."
list.appendChild(item1)

# TODO: Allow any click to close the modal "window" pop-up
Expand All @@ -32,6 +34,18 @@ class LanguageZvmRexxView
item3.textContent = "Package settings can be found on the File > Settings > Packages menu. Filter on 'zvm' or the full package name."
list.appendChild(item3)

# Click to hide the view
# "panel", at run time, will be the Panel encapsulating this View.
clickToHide: (panel) ->
@panel = panel
# Click ON the content, and it disappears
@element.addEventListener 'click',(event) =>
# console.log 'LanguageZvmRexxView click event fired'
@panel.hide()
# Click OFF (away from) the content, and it disappears
@element.addEventListener 'blur',(event) =>
# console.log 'LanguageZvmRexxView blur event fired'
@panel.hide()
# Returns an object that can be retrieved when package is activated
serialize: ->

Expand Down
5 changes: 5 additions & 0 deletions lib/language-zvm-rexx.coffee
Original file line number Diff line number Diff line change
Expand Up @@ -10,10 +10,12 @@ module.exports = LanguageZvmRexx =
languageZvmRexxView: null
modalPanel: null
subscriptions: null
elementHadFocus: null

activate: (state) ->
@languageZvmRexxView = new LanguageZvmRexxView(state.languageZvmRexxViewState)
@modalPanel = atom.workspace.addModalPanel(item: @languageZvmRexxView.getElement(), visible: false)
@languageZvmRexxView.clickToHide(@modalPanel)

# Events subscribed to in atom's system can be easily cleaned up with a CompositeDisposable
@subscriptions = new CompositeDisposable
Expand All @@ -34,5 +36,8 @@ module.exports = LanguageZvmRexx =

if @modalPanel.isVisible()
@modalPanel.hide()
@elementHadFocus?.focus()
else
@modalPanel.show()
@elementHadFocus = document.activeElement
@modalPanel.getItem().focus() # Needed for clickToHide to work
2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"name": "language-zvm-rexx",
"main": "./lib/language-zvm-rexx",
"version": "0.5.1",
"version": "0.5.2",
"description": "Syntax highlighting for z/VM Rexx files, ala the z/VM 6.4 Rexx Reference publication",
"keywords": [
"language",
Expand Down

0 comments on commit 18de02c

Please sign in to comment.