Opened 14 years ago

Closed 9 years ago

#5030 closed bug (fixed)

terminal automatically saves settings

Reported by: augiedoggie Owned by: pulkomandy
Priority: normal Milestone: R1
Component: Applications/Terminal Version: R1/Development
Keywords: gci2011 Cc:
Blocked By: Blocking:
Platform: All

Description

Starting with hrev34165 the terminal application automatically saves the settings regardless of whether or not you select "Settings->Save as default" menu item. This doesn't really make sense to have the menu item there if it is going to do it anyway. I really preferred the old behavior of only saving settings when I specifically told it to.

Change History (19)

comment:1 by augiedoggie, 14 years ago

Version: R1/alpha1R1/Development

comment:2 by humdinger, 14 years ago

I think this issue is fixed. At least with hrev34203, there's only a "Save to File..." button to create a special settings file. "OK" will apply the changes to the default theme. Which is the expected behaviour, I think.

comment:3 by augiedoggie, 14 years ago

That's not really what I'm talking about. I think the behavior of automatically saving the settings when you close the window should be removed. If not, then the menu for "Save as default" should be removed because it happens anyway when you close a window.

The auto-saving code here

The superfluous menu here

comment:4 by humdinger, 14 years ago

Oops. I totally misunderstood the ticket... (and I was still writing when you posted the above. :) )

augiedoggie is right, either go back to only saving when the menu item is invoked or remove the item. Personally, I'd remove the item and have Terminal always open in the state it was closed.

I also think that the menu item "Save as default" has the potential to confuse. "Did I not just saved my settings in the preference panel? Do I have to again "Save as default" to make them stick?

If these encoding and size settings were saved with the currently used Terminal-settings file (that holds the fonts and colour prefs), you could have different settings for different profiles.

BTW, the Encoding setting isn't saved at all. With or without using "Save as default".

in reply to:  4 comment:5 by jackburton, 14 years ago

Replying to humdinger:

Oops. I totally misunderstood the ticket... (and I was still writing when you posted the above. :) )

augiedoggie is right, either go back to only saving when the menu item is invoked or remove the item. Personally, I'd remove the item and have Terminal always open in the state it was closed.

Indeed augiedoggie is right. This problem is my fault. I actually never noticed the "save as default" button, and I changed the code to save the state everytime the terminal is closed. I'd be for removing "save as default", but I'd like to hear other opinions.

I also think that the menu item "Save as default" has the potential to confuse. "Did I not just saved my settings in the preference panel? Do I have to again "Save as default" to make them stick?

Yeah I agree. That's also another reason for removing the menuitem.

If these encoding and size settings were saved with the currently used Terminal-settings file (that holds the fonts and colour prefs), you could have different settings for different profiles.

BTW, the Encoding setting isn't saved at all. With or without using "Save as default".

I can take care of this.

comment:6 by jackburton, 14 years ago

Status: newassigned

in reply to:  4 comment:7 by jackburton, 14 years ago

Replying to humdinger:

I also think that the menu item "Save as default" has the potential to confuse. "Did I not just saved my settings in the preference panel? Do I have to again "Save as default" to make them stick?

BTW, another problem with the "Save as default" approach: while some settings (colors, font size, etc.) are settable in the preference window, and when changed, the application will show an alert "Save settings?", the others (window size, encoding) are settable via menu only, and on exit no alert will be shown. You have to "Save as default" explicitly. The behaviour is inconsistent.

comment:8 by jackburton, 14 years ago

After some thought, I actually changed my mind. I think the best way to solve this is to:

  • Implement Profiles support
  • Don't save settings automatically
  • Move all settings to the Preference window.
  • Change the Preference Window to only have "Defaults" and "Revert" buttons, so that it conforms to the Haiku UIG. On close, it will always save settings.

What do you think ?

comment:9 by axeld, 14 years ago

The only problem I see with this is that you cannot store the size of your manually resized window. Or am I missing something?

in reply to:  9 comment:10 by jackburton, 14 years ago

Replying to axeld:

The only problem I see with this is that you cannot store the size of your manually resized window. Or am I missing something?

You're right. The simpler way to fix this, would be a menuitem "Save window size" / "save window position" which only does that, I guess.

in reply to:  9 comment:11 by jackburton, 14 years ago

Replying to axeld:

The only problem I see with this is that you cannot store the size of your manually resized window. Or am I missing something?

By the way, this problem was exactly the reason I changed the settings behaviour: because the manually resized terminal window didn't keep its size when reopened :-)

comment:12 by axeld, 14 years ago

It did after you invoked "Save As Default" :-)

comment:13 by humdinger, 14 years ago

I'm not the biggest Terminal user, so YMMV and the Terminal should be tuned to the majority of its users.

That said, for me it'd make sense to have the settings that aren't changed often in the preference panel. Which are, for me, all but the window size. Font type, size and colours and encoding is something I set once and after that use it. Or I "Save to file..." to get a separate profile, containing all those settings, I can double-click to start such a set up Terminal.

It's really just the window size I change according to the screen population with other windows. This setting is saved with the currently used profile (default: ~/config/settings/Terminal_settings)

The "Window Size" can be removed completely, as resizing shows the number of cols x rows.

comment:14 by axeld, 14 years ago

FWIW I like the window size menu, and I'm now actively using it to restore the standard size when Terminal has stored "the wrong one" :-)

I would also assume that the encoding only makes sense as a temporary setting in Haiku (until we have session support), since we use UTF-8 everywhere. Only the output of some other server (or incorrectly ported app) could differ here, so that's about the only cases where you can make use of that.

comment:15 by humdinger, 14 years ago

OK:

  • Move "Window Size" and "Text Encoding" into prefs panel
  • Remove menu items "Window Size", "Text Encoding", "Text Size", "Save as default"
  • Add a "Reset Window Size" that resets to the size defined in the prefs panel
  • Don't save changed window sizes, (only position?)
  • Have a "Defaults" and "Revert" button in the prefs panel and a "Save to file..." (I do like to have different settings that open a thus configured Terminal on double-click.)
  • In the prefs panel "Font" and "Size" drop-down should be in one row to save some space. Below that the "Encoding". Below that "Window Size". Below that "Color".

Correct summary?

Questions:
Is the temporary changing of text encoding so important it's worth its own menu item?
If so, how can it be named, so a user doesn't expect this setting to stick? "Switch Encoding", "Temporary Encoding", "Encoding (this session)"?
Or put it together with "Reset Window Size" in its own menu "Session"?

comment:16 by jackburton, 14 years ago

Owner: changed from jackburton to nobody
Status: in-progressassigned

comment:17 by pulkomandy, 14 years ago

Owner: changed from nobody to pulkomandy

comment:18 by pepol, 12 years ago

Keywords: gci2011 added

The problem was checked during GCI 2011. It still behaves like described.
After changing text color to red and exiting terminal, then opening it again, the color was the same, even though I haven't saved the settings.

Version 0, edited 12 years ago by pepol (next)

comment:19 by pulkomandy, 9 years ago

Resolution: fixed
Status: assignedclosed

Fixed in hrev48270.

Note: See TracTickets for help on using tickets.