After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 746217 - Nautilus Sidebar doesn't show/hide correctly
Nautilus Sidebar doesn't show/hide correctly
Status: RESOLVED FIXED
Product: nautilus
Classification: Core
Component: Sidebar
3.15.x
Other Linux
: Normal normal
: ---
Assigned To: Nautilus Maintainers
Nautilus Maintainers
: 748910 (view as bug list)
Depends on:
Blocks:
 
 
Reported: 2015-03-14 18:53 UTC by alex diavatis
Modified: 2015-06-05 07:20 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
window: don't always make sidebar visible on new windows (2.09 KB, patch)
2015-03-16 00:33 UTC, António Fernandes
accepted-commit_now Details | Review

Description alex diavatis 2015-03-14 18:53:36 UTC
Reproduce: Always

1. Open two Nautilus Windows


2. Press F9 to hide sidebar
2.1 Sidebar will be hidden from both

3. Open a new Nautilus Window
3.1 Sidebar will be visible on this window (not expected, since F9 and appMenu is global)

4. Press F9 to hide the sidebar in the new window

Expected: Hide Sidebar

Outcome: It shows the sidebar on the previous two instances.
Comment 1 alex diavatis 2015-03-15 07:02:57 UTC
Another reproduce:

1. Open a Nautilus Window
2. Hide sidebar (F9, or appMenu)
3. Create a new Nautilus Tab
4. Drag any of the two Tabs and create a new window

Expected: The new window should have sidebar hidden
Outcome: The new window has a visible sidebar
Comment 2 alex diavatis 2015-03-15 07:04:33 UTC
On Nautilus 3.14, sidebar visibility was per window, and not global.
Comment 3 António Fernandes 2015-03-16 00:33:21 UTC
Created attachment 299475 [details] [review]
window: don't always make sidebar visible on new windows

We are setting the sidebar as visible in the ui definition and binding
this visibility to the disabled-chrome property (inversely) to prevent
the sidebar from being visible in the desktop. But this also makes
the sidebar visible in all new windows, ignoring both the state of the
"Sidebar" toggle in the app menu and the start-with-sidebar setting.

Fix this by setting the sidebar as not visible in the ui definition and
removing the binding. The sidebar will be made visible if appropriate
in the nautilus-window-initialize-actions function.
Comment 4 António Fernandes 2015-03-16 00:41:07 UTC
I'm not sure about the purpose of the binding. Is ok to simply remove it?

Also, please feel free to correct errors in the commit message (either technical or textual).
Comment 5 António Fernandes 2015-05-08 22:08:06 UTC
*** Bug 748910 has been marked as a duplicate of this bug. ***
Comment 6 Carlos Soriano 2015-05-11 15:33:21 UTC
Review of attachment 299475 [details] [review]:

The current nautilus code to deal with this is not the most clear one...
Would you mind making it better instead of this patch?

I can imagine a

update_sidebar_visibility (sidebar)
{
get_action_state();
if (state == show && !disable chrome)
gtk_widget_show()
else
gtk_widget_hide()
}

then connect to the action state change signal and update accordingly.

If you feel like "meh" just commit this patch then.
Comment 7 Carlos Soriano 2015-05-13 12:08:37 UTC
pushed in 3.16 and master
https://git.gnome.org/browse/nautilus/commit/?id=467c2eff5a227ab50223b93937e29835e06801c2
Comment 8 Luc Pi 2015-05-13 12:15:42 UTC
great!
Comment 9 Luc Pi 2015-06-05 07:20:46 UTC
this apparently landed in today's update of my distribution. 

Rocks! Many thanks!