… | |
… | |
19 | $popup->add_separator; |
19 | $popup->add_separator; |
20 | |
20 | |
21 | my %unsafe = map +($_ => 1), |
21 | my %unsafe = map +($_ => 1), |
22 | qw(borderLess console iconic loginShell reverseVideo |
22 | qw(borderLess console iconic loginShell reverseVideo |
23 | scrollBar scrollBar_floating scrollBar_right |
23 | scrollBar scrollBar_floating scrollBar_right |
24 | secondaryScreen transparent utmpInhibit meta8); |
24 | secondaryScreen transparent utmpInhibit meta8 |
|
|
25 | override_redirect); |
25 | |
26 | |
26 | for my $name (sort keys %urxvt::OPTION) { |
27 | for my $name (sort keys %urxvt::OPTION) { |
27 | next if $unsafe{$name}; |
28 | next if $unsafe{$name}; |
28 | |
29 | |
29 | my $optval = $urxvt::OPTION{$name}; |
30 | my $optval = $urxvt::OPTION{$name}; |
30 | |
31 | |
31 | $popup->add_toggle ($name => sub { $self->option ($optval, $_[0]) }, |
32 | $popup->add_toggle ($name => $self->option ($optval), |
32 | $self->option ($optval)); |
33 | sub { $self->option ($optval, $_[0]) }); |
|
|
34 | } |
|
|
35 | |
|
|
36 | for my $hook (@{ $self->{term}{option_popup_hook} || [] }) { |
|
|
37 | if (my ($name, $value, $cb) = $hook->($popup)) { |
|
|
38 | $popup->add_toggle ($name => $value, sub { $cb->($_[0]) }); |
|
|
39 | } |
|
|
40 | } |
|
|
41 | |
|
|
42 | { |
|
|
43 | $popup->add_separator; |
|
|
44 | my $locale = $self->locale; |
|
|
45 | $locale =~ y/\x20-\x7e//cd; |
|
|
46 | $popup->add_title ("Locale: $locale"); |
33 | } |
47 | } |
34 | |
48 | |
35 | $popup->show; |
49 | $popup->show; |
36 | |
50 | |
37 | return 1; |
51 | return 1; |