mirror of
https://github.com/morgan9e/dash-to-panel
synced 2026-04-15 00:34:05 +09:00
init preferences window at larger size if room
This commit is contained in:
3321
#Settings.ui#
Normal file
3321
#Settings.ui#
Normal file
File diff suppressed because it is too large
Load Diff
3557
Settings.ui
3557
Settings.ui
File diff suppressed because it is too large
Load Diff
14
prefs.js
14
prefs.js
@@ -139,8 +139,9 @@ const Settings = new Lang.Class({
|
||||
this._builder.set_translation_domain(Me.metadata['gettext-domain']);
|
||||
this._builder.add_from_file(Me.path + '/Settings.ui');
|
||||
|
||||
this.widget = new Gtk.ScrolledWindow();
|
||||
this.widget.add_with_viewport(this._builder.get_object('settings_notebook');
|
||||
this.widget = this._builder.get_object('settings_scrolled_window');
|
||||
|
||||
this.viewport = this._builder.get_object('settings_viewport');
|
||||
|
||||
// Timeout to delay the update of the settings
|
||||
this._panel_size_timeout = 0;
|
||||
@@ -880,6 +881,15 @@ function init() {
|
||||
function buildPrefsWidget() {
|
||||
let settings = new Settings();
|
||||
let widget = settings.widget;
|
||||
|
||||
// I'd like the scrolled window to default to a size large enough to show all without scrolling, if it fits on the screen
|
||||
// But, it doesn't seem possible, so I'm setting a minimum size if there seems to be enough screen real estate
|
||||
let viewport = settings.viewport;
|
||||
let viewportSize = viewport.size_request();
|
||||
let screenHeight = widget.has_screen() ? widget.get_screen().get_height() : 0;
|
||||
if(viewportSize.height < (screenHeight - (screenHeight * .2)))
|
||||
widget.set_size_request(viewportSize.width, viewportSize.height + (viewportSize.height * .05));
|
||||
|
||||
widget.show_all();
|
||||
return widget;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user