Bug 1260057

Summary: Enabling Zoom for screen part causes warnings in gnome-shell
Product: Red Hat Enterprise Linux 7 Reporter: Vadim Rutkovsky <vrutkovs>
Component: gnome-shellAssignee: Florian Müllner <fmuellner>
Status: CLOSED ERRATA QA Contact: Desktop QE <desktop-qa-list>
Severity: low Docs Contact:
Priority: unspecified    
Version: 7.2CC: bmilar, mclasen, mdomonko, rstrode, tpelka
Target Milestone: rc   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: gnome-shell-3.14.4-29.el7 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2015-11-19 07:20:50 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Vadim Rutkovsky 2015-09-04 10:33:20 UTC
Description of problem:
After zoom is enabled in Universal Access gnome-shell spews warnings

Version-Release number of selected component (if applicable):
gnome-shell-3.14.4-26.el7.x86_64

How reproducible:
Always

Steps to Reproduce:
1. Start Control Center
2. Universal Access - Zoom - Screen Part
3. Enable Zoom and move mouse around

Actual results:

A bunch of :
Sep 04 12:30:09 dhcp131-229.brq.redhat.com gnome-session[10696]: ZoomRegion<._updateFocus@resource:///org/gnome/shell/ui/magnifier.js:720
Sep 04 12:30:09 dhcp131-229.brq.redhat.com gnome-session[10696]: wrapper@resource:///org/gnome/gjs/modules/lang.js:169
Sep 04 12:30:09 dhcp131-229.brq.redhat.com gnome-session[10696]: _emit@resource:///org/gnome/gjs/modules/signals.js:124
Sep 04 12:30:09 dhcp131-229.brq.redhat.com gnome-session[10696]: FocusCaretTracker<._onChanged@resource:///org/gnome/shell/ui/focusCaretTracker.js:44
Sep 04 12:30:09 dhcp131-229.brq.redhat.com gnome-session[10696]: wrapper@resource:///org/gnome/gjs/modules/lang.js:169
Sep 04 12:30:09 dhcp131-229.brq.redhat.com gnome-session[10696]: (gnome-shell:10916): Gjs-WARNING **: JS ERROR: Exception in callback for signal: caret-moved: TypeError: event.source.get_text_iface is not a function
Sep 04 12:30:09 dhcp131-229.brq.redhat.com gnome-session[10696]: ZoomRegion<._updateCaret@resource:///org/gnome/shell/ui/magnifier.js:737
Sep 04 12:30:09 dhcp131-229.brq.redhat.com gnome-session[10696]: wrapper@resource:///org/gnome/gjs/modules/lang.js:169
Sep 04 12:30:09 dhcp131-229.brq.redhat.com gnome-session[10696]: _emit@resource:///org/gnome/gjs/modules/signals.js:124
Sep 04 12:30:09 dhcp131-229.brq.redhat.com gnome-session[10696]: FocusCaretTracker<._onChanged@resource:///org/gnome/shell/ui/focusCaretTracker.js:46
Sep 04 12:30:09 dhcp131-229.brq.redhat.com gnome-session[10696]: wrapper@resource:///org/gnome/gjs/modules/lang.js:169
Sep 04 12:30:09 dhcp131-229.brq.redhat.com gnome-session[10696]: (gnome-shell:10916): Gjs-WARNING **: JS ERROR: Exception in callback for signal: caret-moved: TypeError: event.source.get_text_iface is not a function

appears in the log


Expected results:
No extra warnings

Additional info:
Functionality doesn't seem to be affected

Comment 1 Matthias Clasen 2015-09-04 15:51:50 UTC
These warnings do not reproduce with 3.17.91, so there may be a backportable fix...

Comment 2 Ray Strode [halfline] 2015-09-15 17:52:24 UTC
looks like it's related to https://bugzilla.gnome.org/show_bug.cgi?id=727824 but that fix is already in gjs.

Comment 3 Ray Strode [halfline] 2015-09-15 19:30:21 UTC
so this patch:

index 101c14c..d1b7105 100644
--- a/js/ui/magnifier.js
+++ b/js/ui/magnifier.js
@@ -720 +720 @@ const ZoomRegion = new Lang.Class({
-        let component = event.source.get_component_iface();
+        let component = event.source.get_component();
@@ -737 +737 @@ const ZoomRegion = new Lang.Class({
-        let text = event.source.get_text_iface();
+        let text = event.source.get_text();


fixes it.  Maybe we're having some breakage with function shadowing in gobject-introspection.  note the gir xml:

…
      <method name="get_text"•
              c:identifier="atspi_accessible_get_text"•
              shadows="get_text_iface"•
              deprecated="1"•
              deprecated-version="2.10">•
…
      <method name="get_text_iface"•
              c:identifier="atspi_accessible_get_text_iface"•
              shadowed-by="get_text">•
…
      <method name="get_component"•
              c:identifier="atspi_accessible_get_component"•
              shadows="get_component_iface"•
              deprecated="1"•
              deprecated-version="2.10">•
…
      <method name="get_component_iface"•
              c:identifier="atspi_accessible_get_component_iface"•
              shadowed-by="get_component">•
…

Comment 4 Ray Strode [halfline] 2015-09-16 16:38:52 UTC
turns out it's much more mundane than an gobject-introspection problem.  we never rebased at-spi2 so it has the old names.

I'll push a patch that makes it try both in case we end up doing rebase of at-spi2 later.

Comment 8 errata-xmlrpc 2015-11-19 07:20:50 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://rhn.redhat.com/errata/RHBA-2015-2216.html