GNOME Bugzilla – Bug 744643
LaunchSearch complains: Child name 'view' not found in GtkStack
Last modified: 2015-03-17 20:42:31 UTC
Steps to reproduce: 1) Start gnome-documents 2) Close the application window 3) While the process is still running, quickly (ie. in less than 12 seconds) start a gnome-shell search that will produce a hit from gnome-documents 4) Click the gnome-documents icon (not a search item) from the results - this calls LaunchSearch 5) As a new application window opens, there is a WARNING in the console: Child name 'view' not found in GtkStack 6) Select an item from the overview 7) Try going back to the overview from the preview
After the recent round of patches to split the views, we have this back trace: (gnome-documents:3855): Gjs-WARNING **: JS ERROR: Exception in callback for signal: launch-search: Error: Not handled Embed<._restoreLastPage@/opt/share/gnome-documents/js/embed.js:211 wrapper@resource:///org/gnome/gjs/modules/lang.js:169 Embed<._onQueryStatusChanged@/opt/share/gnome-documents/js/embed.js:226 wrapper@resource:///org/gnome/gjs/modules/lang.js:169 Embed<._init@/opt/share/gnome-documents/js/embed.js:156 wrapper@resource:///org/gnome/gjs/modules/lang.js:169 _Base.prototype._construct@resource:///org/gnome/gjs/modules/lang.js:110 Class.prototype._construct/newClass@resource:///org/gnome/gjs/modules/lang.js:204 MainWindow<._init@/opt/share/gnome-documents/js/mainWindow.js:90 wrapper@resource:///org/gnome/gjs/modules/lang.js:169 _Base.prototype._construct@resource:///org/gnome/gjs/modules/lang.js:110 Class.prototype._construct/newClass@resource:///org/gnome/gjs/modules/lang.js:204 Application<._createWindow@/opt/share/gnome-documents/js/application.js:655 wrapper@resource:///org/gnome/gjs/modules/lang.js:169 Application<._onLaunchSearch@/opt/share/gnome-documents/js/application.js:767 wrapper@resource:///org/gnome/gjs/modules/lang.js:169 _emit@resource:///org/gnome/gjs/modules/signals.js:124 ShellSearchProvider<.LaunchSearch@/opt/share/gnome-documents/js/shellSearchProvider.js:456 wrapper@resource:///org/gnome/gjs/modules/lang.js:169 _handleMethodCall@resource:///org/gnome/gjs/modules/overrides/Gio.js:261 _wrapJSObject/<@resource:///org/gnome/gjs/modules/overrides/Gio.js:331 start@/opt/share/gnome-documents/js/main.js:30 @<command line>:1
Created attachment 299160 [details] [review] [gnome-3-14] application: Clean up OffsetController signals
Created attachment 299161 [details] [review] embed: Remove unused variable
Review of attachment 299161 [details] [review]: Sure
Review of attachment 299160 [details] [review]: Looks good
Now we need to figure out what is happening in master (ie. comment 2).
Created attachment 299347 [details] [review] embed: Unbreak launch-search This should fix the problem in comment 2.
Created attachment 299348 [details] [review] embed: Unbreak re-activation before the inactivity timeout
Review of attachment 299348 [details] [review]: Some minor comments ::: src/application.js @@ +706,2 @@ // reset state + documentManager.clearRowRefs(null); clearRowRefs() doesn't take arguments so you don't need to pass null ::: src/documents.js @@ +1227,3 @@ + for (let idx in items) { + items[idx].rowRefs = {}; + }; No need for semicolon ::: src/view.js @@ +103,3 @@ + let items = Application.documentManager.getItems(); + for (let idx in items) { + this._onItemAdded(null, items[idx]); You can pass the document manager instead of null here
Review of attachment 299347 [details] [review]: Looks good
Created attachment 299517 [details] [review] embed: Unbreak re-activation before the inactivity timeout
Created attachment 299642 [details] [review] embed: Unbreak re-activation before the inactivity timeout
Review of attachment 299642 [details] [review]: LG
Comment on attachment 299642 [details] [review] embed: Unbreak re-activation before the inactivity timeout Committing after addressing review comments.
Thanks for taking a look so soon, Cosimo!