AnyEvent-I3X-Workspace-OnDemand

 view release on metacpan or  search on metacpan

bin/i3-status  view on Meta::CPAN


sub _get_property_from_root_window {
  my $key = shift;
  my $value = _get_string_property_from_root_window($key, 'UTF8_STRING');
  return $value if defined $value;
  # Allow xprop values to be set but also allow
  $value = _get_string_property_from_root_window($key, 'STRING');
  return unless defined $value;

  my $prop      = $x11->atom($key);
  my $utf8 = $x11->atom('UTF8_STRING');
  $x11->ChangeProperty($xroot, $prop, $utf8, 8, 'Replace', $value);
  $x11->flush;
  return $value;
}

# Read lines forever, ignore a comma at the beginning if it exists.
while (my ($statusline) = (<STDIN> =~ /^,?(.*)/)) {
  # Decode the JSON-encoded line.
  my @blocks = @{decode_json($statusline)};

  my $value = _get_property_from_root_window('_I3_WOD_GROUP');

lib/AnyEvent/I3X/Workspace/OnDemand.pm  view on Meta::CPAN


method get_group_from_root_window() {
  my $group = $self->_get_property_from_root_window('_I3_WOD_GROUP');
  return $group if $group;
  $self->set_group_on_root_window($groups[0]);
  return $groups[0];
}

method _set_property_on_root_window($key, $value) {
  my $prop = $self->x11->atom($key);
  my $utf8 = $self->x11->atom('UTF8_STRING');

  $x11->ChangeProperty($xroot, $prop, $utf8, 8, 'Replace', $value);
  $self->restart_i3_status;
  $x11->flush;
}

method set_group_on_root_window($name) {
  $self->_set_property_on_root_window('_I3_WOD_GROUP', $name);
}

method restart_i3_status() {
  return unless $i3status;

lib/AnyEvent/I3X/Workspace/OnDemand/UserGuide.pod  view on Meta::CPAN

use utf8;

#PODNAME: AnyEvent::I3X::Workspace::OnDemand::UserGuide
#
#ABSTRACT: User document for AnyEvent::I3X::Workspace::OnDemand

__END__

=pod

=encoding UTF-8



( run in 0.507 second using v1.01-cache-2.11-cpan-600a1bdf6e4 )