Login
[x]
Log in using an account from:
Fedora Account System
Red Hat Associate
Red Hat Customer
Or login using a Red Hat Bugzilla account
Forgot Password
Login:
Hide Forgot
Create an Account
Red Hat Bugzilla – Attachment 881929 Details for
Bug 1083500
Crosshairs Are Broken
[?]
New
Simple Search
Advanced Search
My Links
Browse
Requests
Reports
Current State
Search
Tabular reports
Graphical reports
Duplicates
Other Reports
User Changes
Plotly Reports
Bug Status
Bug Severity
Non-Defaults
|
Product Dashboard
Help
Page Help!
Bug Writing Guidelines
What's new
Browser Support Policy
5.0.4.rh83 Release notes
FAQ
Guides index
User guide
Web Services
Contact
Legal
This site requires JavaScript to be enabled to function correctly, please enable it.
[patch]
proposed patch
fix-gnome-shell-magnifier-s-crosshairs-1083500.patch (text/plain), 9.51 KB, created by
Javier Hernandez
on 2014-04-02 17:53:54 UTC
(
hide
)
Description:
proposed patch
Filename:
MIME Type:
Creator:
Javier Hernandez
Created:
2014-04-02 17:53:54 UTC
Size:
9.51 KB
patch
obsolete
>From 5a5dfee2704b227c4c2ac71dfc2e1eb9fed7098a Mon Sep 17 00:00:00 2001 >From: =?UTF-8?q?Javier=20Hern=C3=A1ndez?= <jhernandez@emergya.com> >Date: Wed, 2 Apr 2014 19:48:56 +0200 >Subject: [PATCH] Fix gnome-shell magnifier's crosshairs (#1083500) > >--- > fix-broken-crosshairs.patch | 199 ++++++++++++++++++++++++++++++++++++++++++++ > gnome-shell.spec | 7 +- > 2 files changed, 205 insertions(+), 1 deletion(-) > create mode 100644 fix-broken-crosshairs.patch > >diff --git a/fix-broken-crosshairs.patch b/fix-broken-crosshairs.patch >new file mode 100644 >index 0000000..9efc8fd >--- /dev/null >+++ b/fix-broken-crosshairs.patch >@@ -0,0 +1,199 @@ >+From 713d4aa6c4a606c8479d7160e9df3fb79d7ec7f0 Mon Sep 17 00:00:00 2001 >+From: Magdalen Berns <m.berns@thismagpie.com> >+Date: Wed, 5 Feb 2014 20:53:21 +0000 >+Subject: [PATCH] Magnifier: Restore crosshairs >+ >+This patch is to restore broken crosshairs so they may be used >+once more >+ >+https://bugzilla.gnome.org/show_bug.cgi?id=723709 >+ magnifier.js >+--- >+ js/ui/magnifier.js | 131 +++++++++++++++++++++++------------------------------ >+ 1 file changed, 56 insertions(+), 75 deletions(-) >+ >+diff --git a/js/ui/magnifier.js b/js/ui/magnifier.js >+index 2a6ac38..96c12b2 100644 >+--- a/js/ui/magnifier.js >++++ b/js/ui/magnifier.js >+@@ -57,20 +57,6 @@ const Magnifier = new Lang.Class({ >+ // Magnifier is a manager of ZoomRegions. >+ this._zoomRegions = []; >+ >+- // Export to dbus. >+- magDBusService = new MagnifierDBus.ShellMagnifier(); >+- >+- let showAtLaunch = this._settingsInit(); >+- this.setActive(showAtLaunch); >+- }, >+- >+- _initialize: function() { >+- if (this._initialized) >+- return; >+- this._initialized = true; >+- >+- this._settingsInitLate(); >+- >+ // Create small clutter tree for the magnified mouse. >+ let cursorTracker = Meta.CursorTracker.get_for_screen(global.screen); >+ this._mouseSprite = new Clutter.Texture(); >+@@ -86,11 +72,15 @@ const Magnifier = new Lang.Class({ >+ >+ let aZoomRegion = new ZoomRegion(this, this._cursorRoot); >+ this._zoomRegions.push(aZoomRegion); >+- this._settingsInitRegion(aZoomRegion); >++ let showAtLaunch = this._settingsInit(aZoomRegion); >+ aZoomRegion.scrollContentsTo(this.xMouse, this.yMouse); >+ >+ cursorTracker.connect('cursor-changed', Lang.bind(this, this._updateMouseSprite)); >+ this._cursorTracker = cursorTracker; >++ >++ // Export to dbus. >++ magDBusService = new MagnifierDBus.ShellMagnifier(); >++ this.setActive(showAtLaunch); >+ }, >+ >+ /** >+@@ -115,12 +105,6 @@ const Magnifier = new Lang.Class({ >+ * @activate: Boolean to activate or de-activate the magnifier. >+ */ >+ setActive: function(activate) { >+- if (activate == this.isActive()) >+- return; >+- >+- if (activate) >+- this._initialize(); >+- >+ this._zoomRegions.forEach (function(zoomRegion, index, array) { >+ zoomRegion.setActive(activate); >+ }); >+@@ -452,68 +436,64 @@ const Magnifier = new Lang.Class({ >+ this._mouseSprite.set_anchor_point(xHot, yHot); >+ }, >+ >+- _settingsInitRegion: function(zoomRegion) { >+- // Mag factor is accurate to two decimal places. >+- let aPref = parseFloat(this._settings.get_double(MAG_FACTOR_KEY).toFixed(2)); >+- if (aPref != 0.0) >+- zoomRegion.setMagFactor(aPref, aPref); >+- >+- aPref = this._settings.get_enum(SCREEN_POSITION_KEY); >+- if (aPref) >+- zoomRegion.setScreenPosition(aPref); >+- >+- zoomRegion.setLensMode(this._settings.get_boolean(LENS_MODE_KEY)); >+- zoomRegion.setClampScrollingAtEdges(!this._settings.get_boolean(CLAMP_MODE_KEY)); >+- >+- aPref = this._settings.get_enum(MOUSE_TRACKING_KEY); >+- if (aPref) >+- zoomRegion.setMouseTrackingMode(aPref); >+- >+- aPref = this._settings.get_enum(FOCUS_TRACKING_KEY); >+- if (aPref) >+- zoomRegion.setFocusTrackingMode(aPref); >+- >+- aPref = this._settings.get_enum(CARET_TRACKING_KEY); >+- if (aPref) >+- zoomRegion.setCaretTrackingMode(aPref); >+- >+- aPref = this._settings.get_boolean(INVERT_LIGHTNESS_KEY); >+- if (aPref) >+- zoomRegion.setInvertLightness(aPref); >+- >+- aPref = this._settings.get_double(COLOR_SATURATION_KEY); >+- if (aPref) >+- zoomRegion.setColorSaturation(aPref); >+- >+- let bc = {}; >+- bc.r = this._settings.get_double(BRIGHT_RED_KEY); >+- bc.g = this._settings.get_double(BRIGHT_GREEN_KEY); >+- bc.b = this._settings.get_double(BRIGHT_BLUE_KEY); >+- zoomRegion.setBrightness(bc); >+- >+- bc.r = this._settings.get_double(CONTRAST_RED_KEY); >+- bc.g = this._settings.get_double(CONTRAST_GREEN_KEY); >+- bc.b = this._settings.get_double(CONTRAST_BLUE_KEY); >+- zoomRegion.setContrast(bc); >+- }, >+- >+- _settingsInit: function() { >++ _settingsInit: function(zoomRegion) { >+ this._appSettings = new Gio.Settings({ schema: APPLICATIONS_SCHEMA }); >+ this._settings = new Gio.Settings({ schema: MAGNIFIER_SCHEMA }); >+ >+- this._appSettings.connect('changed::' + SHOW_KEY, Lang.bind(this, function() { >+- let active = this._appSettings.get_boolean(SHOW_KEY); >+- this.setActive(active); >+- })); >+- >+- return this._appSettings.get_boolean(SHOW_KEY); >+- }, >++ if (zoomRegion) { >++ // Mag factor is accurate to two decimal places. >++ let aPref = parseFloat(this._settings.get_double(MAG_FACTOR_KEY).toFixed(2)); >++ if (aPref != 0.0) >++ zoomRegion.setMagFactor(aPref, aPref); >++ >++ aPref = this._settings.get_enum(SCREEN_POSITION_KEY); >++ if (aPref) >++ zoomRegion.setScreenPosition(aPref); >++ >++ zoomRegion.setLensMode(this._settings.get_boolean(LENS_MODE_KEY)); >++ zoomRegion.setClampScrollingAtEdges(!this._settings.get_boolean(CLAMP_MODE_KEY)); >++ >++ aPref = this._settings.get_enum(MOUSE_TRACKING_KEY); >++ if (aPref) >++ zoomRegion.setMouseTrackingMode(aPref); >++ >++ aPref = this._settings.get_enum(FOCUS_TRACKING_KEY); >++ if (aPref) >++ zoomRegion.setFocusTrackingMode(aPref); >++ >++ aPref = this._settings.get_enum(CARET_TRACKING_KEY); >++ if (aPref) >++ zoomRegion.setCaretTrackingMode(aPref); >++ >++ aPref = this._settings.get_boolean(INVERT_LIGHTNESS_KEY); >++ if (aPref) >++ zoomRegion.setInvertLightness(aPref); >++ >++ aPref = this._settings.get_double(COLOR_SATURATION_KEY); >++ if (aPref) >++ zoomRegion.setColorSaturation(aPref); >++ >++ let bc = {}; >++ bc.r = this._settings.get_double(BRIGHT_RED_KEY); >++ bc.g = this._settings.get_double(BRIGHT_GREEN_KEY); >++ bc.b = this._settings.get_double(BRIGHT_BLUE_KEY); >++ zoomRegion.setBrightness(bc); >++ >++ bc.r = this._settings.get_double(CONTRAST_RED_KEY); >++ bc.g = this._settings.get_double(CONTRAST_GREEN_KEY); >++ bc.b = this._settings.get_double(CONTRAST_BLUE_KEY); >++ zoomRegion.setContrast(bc); >++ } >+ >+- _settingsInitLate: function() { >+ let showCrosshairs = this._settings.get_boolean(SHOW_CROSS_HAIRS_KEY); >+ this.addCrosshairs(); >+ this.setCrosshairsVisible(showCrosshairs); >+ >++ this._appSettings.connect('changed::' + SHOW_KEY, >++ Lang.bind(this, function() { >++ this.setActive(this._appSettings.get_boolean(SHOW_KEY)); >++ })); >++ >+ this._settings.connect('changed::' + SCREEN_POSITION_KEY, >+ Lang.bind(this, this._updateScreenPosition)); >+ this._settings.connect('changed::' + MAG_FACTOR_KEY, >+@@ -577,6 +557,7 @@ const Magnifier = new Lang.Class({ >+ Lang.bind(this, function() { >+ this.setCrosshairsClip(this._settings.get_boolean(CROSS_HAIRS_CLIP_KEY)); >+ })); >++ return this._appSettings.get_boolean(SHOW_KEY); >+ }, >+ >+ _updateScreenPosition: function() { >+-- >+1.8.3.2 >+ >diff --git a/gnome-shell.spec b/gnome-shell.spec >index 7e8f3a5..57996ff 100644 >--- a/gnome-shell.spec >+++ b/gnome-shell.spec >@@ -1,6 +1,6 @@ > Name: gnome-shell > Version: 3.10.4 >-Release: 2%{?dist} >+Release: 3%{?dist} > Summary: Window management and application launching for GNOME > > Group: User Interface/Desktops >@@ -13,6 +13,7 @@ Source0: http://download.gnome.org/sources/gnome-shell/3.10/%{name}-%{ver > # Replace Epiphany with Firefox in the default favourite apps list > Patch1: gnome-shell-favourite-apps-firefox.patch > Patch2: only-set-scale-factor-on-success.patch >+Patch3: fix-broken-crosshairs.patch > > %define clutter_version 1.13.4 > %define gnome_bluetooth_version 1:3.9.0 >@@ -117,6 +118,7 @@ easy to use experience. > %setup -q > %patch1 -p1 -b .firefox > %patch2 -p1 -b .scale-factor-success >+%patch3 -p1 -b .broken-crosshairs > > %build > (if ! test -x configure; then NOCONFIGURE=1 ./autogen.sh; fi; >@@ -176,6 +178,9 @@ glib-compile-schemas --allow-any-name %{_datadir}/glib-2.0/schemas &> /dev/null > %exclude %{_datadir}/gtk-doc > > %changelog >+* Wed Apr 02 2014 Javier Hernández <jhernandez@emergya.com> - 3.10.4-3 >+- Fix gnome shell magnifier's crosshairs (RH #1083500) >+ > * Mon Mar 17 2014 Adel Gadllah <adel.gadllah@gmail.com> - 3.10.4-2 > - Backport fix for RH #1076981 > >-- >1.8.4 >
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
Attachments on
bug 1083500
: 881929