Sha256: 787735618b84f8c1df77f259d7ae17efd64cf0b22ceb3a8a45e25afe92206863

Contents?: true

Size: 856 Bytes

Versions: 5

Compression:

Stored size: 856 Bytes

Contents

require "karabiner/dsl/root"
require "karabiner/history"
require "karabiner/vkopenurldef"

class Karabiner::Root
  include Karabiner::XmlTree
  include Karabiner::DSL::Root

  def initialize
    @configs = []
  end

  def to_xml
    add_registered_applications
    add_registered_scripts

    [
      "<?xml version=\"1.0\"?>",
      super(1),
    ].join("\n")
  end

  private

  def add_registered_applications
    Karabiner::History.registered_applications.each do |application|
      vkopenurldef = Karabiner::Vkopenurldef.for_application(application)
      add_child(vkopenurldef)
    end
  end

  def add_registered_scripts
    Karabiner::History.registered_scripts.each do |script|
      vkopenurldef = Karabiner::Vkopenurldef.for_script(script)
      add_child(vkopenurldef)
    end
  end

  def add_config(config)
    @configs << config
  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
karabiner-0.4.0 lib/karabiner/root.rb
karabiner-0.3.1 lib/karabiner/root.rb
karabiner-0.3.0 lib/karabiner/root.rb
karabiner-0.2.1 lib/karabiner/root.rb
karabiner-0.2.0 lib/karabiner/root.rb