ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/rxvt-unicode/src/perl/background
(Generate patch)

Comparing rxvt-unicode/src/perl/background (file contents):
Revision 1.46 by root, Sun Jun 10 13:32:55 2012 UTC vs.
Revision 1.49 by root, Sun Jun 10 15:29:18 2012 UTC

204 204
205=back 205=back
206 206
207=cut 207=cut
208 208
209our %_IMGCACHE;
209our $HOME; 210our $HOME;
210our ($self, $old, $new); 211our ($self, $old, $new);
211our ($x, $y, $w, $h); 212our ($x, $y, $w, $h);
212 213
213# enforce at least this interval between updates 214# enforce at least this interval between updates
683 684
684 sub contrast($$;$$;$) { 685 sub contrast($$;$$;$) {
685 my $img = pop; 686 my $img = pop;
686 my ($r, $g, $b, $a) = @_; 687 my ($r, $g, $b, $a) = @_;
687 688
688 ($g, $b) = ($r, $r) if @_ < 4; 689 ($g, $b) = ($r, $r) if @_ < 3;
689 $a = 1 if @_ < 5; 690 $a = 1 if @_ < 4;
690 691
691 $img = $img->clone; 692 $img = $img->clone;
692 $img->contrast ($r, $g, $b, $a); 693 $img->contrast ($r, $g, $b, $a);
693 $img 694 $img
694 } 695 }
695 696
696 sub brightness($$;$$;$) { 697 sub brightness($$;$$;$) {
697 my $img = pop; 698 my $img = pop;
698 my ($r, $g, $b, $a) = @_; 699 my ($r, $g, $b, $a) = @_;
699 700
700 ($g, $b) = ($r, $r) if @_ < 4; 701 ($g, $b) = ($r, $r) if @_ < 3;
701 $a = 1 if @_ < 5; 702 $a = 1 if @_ < 4;
702 703
703 $img = $img->clone; 704 $img = $img->clone;
704 $img->brightness ($r, $g, $b, $a); 705 $img->brightness ($r, $g, $b, $a);
705 $img 706 $img
706 } 707 }
796 797
797 # evaluate user expression 798 # evaluate user expression
798 799
799 my $img = eval { $self->{expr}->() }; 800 my $img = eval { $self->{expr}->() };
800 warn $@ if $@;#d# 801 warn $@ if $@;#d#
801 die if !UNIVERSAL::isa $img, "urxvt::img"; 802 die "background-expr did not return an image.\n" if !UNIVERSAL::isa $img, "urxvt::img";
802 803
803 $state->{size_sensitive} = 1 804 $state->{size_sensitive} = 1
804 if $img->repeat_mode != urxvt::RepeatNormal; 805 if $img->repeat_mode != urxvt::RepeatNormal;
805 806
806 # if the expression is sensitive to external events, prepare reevaluation then 807 # if the expression is sensitive to external events, prepare reevaluation then
856} 857}
857 858
858sub on_start { 859sub on_start {
859 my ($self) = @_; 860 my ($self) = @_;
860 861
861 my $expr = $self->x_resource ("background.expr") 862 my $expr = $self->x_resource ("%.expr")
862 or return; 863 or return;
863 864
865 $self->has_render
866 or die "background extension needs RENDER extension 0.10 or higher, ignoring background-expr.\n";
867
864 $self->set_expr (parse_expr $expr); 868 $self->set_expr (parse_expr $expr);
865 $self->{border} = $self->x_resource_boolean ("background.border"); 869 $self->{border} = $self->x_resource_boolean ("%.border");
866 870
867 $MIN_INTERVAL = $self->x_resource ("background.interval"); 871 $MIN_INTERVAL = $self->x_resource ("%.interval");
868 872
869 () 873 ()
870} 874}
871 875

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines