/usr/share/perl5/Shutter/Screenshot/WindowName.pm is in shutter 0.93.1-1ubuntu1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 | ###################################################
#
# Copyright (C) 2008-2013 Mario Kemper <mario.kemper@gmail.com>
#
# This file is part of Shutter.
#
# Shutter is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 3 of the License, or
# (at your option) any later version.
#
# Shutter is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with Shutter; if not, write to the Free Software
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
#
###################################################
package Shutter::Screenshot::WindowName;
#modules
#--------------------------------------
use utf8;
use strict;
use warnings;
use Shutter::Screenshot::WindowXid;
use Data::Dumper;
our @ISA = qw(Shutter::Screenshot::WindowXid);
#Glib and Gtk2
use Gtk2;
use Glib qw/TRUE FALSE/;
#--------------------------------------
sub new {
my $class = shift;
#call constructor of super class (shutter_common, include_cursor, delay, notify_timeout, include_border, windowresize_active, windowresize_w, windowresize_h, hide_time, mode, autoshape)
my $self = $class->SUPER::new( shift, shift, shift, shift, shift, shift, shift, shift, shift, shift, shift );
bless $self, $class;
return $self;
}
#~ sub DESTROY {
#~ my $self = shift;
#~ print "$self dying at\n";
#~ }
#~
sub window_find_by_name {
my $self = shift;
my $name_pattern = shift;
my $active_workspace = $self->{_wnck_screen}->get_active_workspace;
#cycle through all windows
my $output = 7;
foreach my $win ( $self->{_wnck_screen}->get_windows_stacked ) {
#ignore shutter window
if ( $self->{_sc}->get_mainwindow->window ) {
next if ( $win->get_xid == $self->{_sc}->get_mainwindow->window->get_xid );
}
#check if window is on active workspace
if ( $active_workspace && $win->is_on_workspace( $active_workspace ) ) {
eval{
if ( $win->get_name =~ m/$name_pattern/i ) {
$output = $self->window_by_xid($win->get_xid);
last;
}
};
if($@){
$output = 8;
$self->{_error_text} = $@;
}
}
}
return $output;
}
1;
|