diff options
| author | Eduard Braun <eduard.braun2@gmx.de> | 2018-01-07 16:53:16 +0000 |
|---|---|---|
| committer | Eduard Braun <eduard.braun2@gmx.de> | 2018-01-07 16:53:16 +0000 |
| commit | 0ab95408b8cd74e560ec30535f6cc4dc9dff3881 (patch) | |
| tree | fe22e66fde8cde6fc666bcd1738614061cb2de95 /src | |
| parent | Make natural window size default and fix small window size (diff) | |
| download | inkscape-0ab95408b8cd74e560ec30535f6cc4dc9dff3881.tar.gz inkscape-0ab95408b8cd74e560ec30535f6cc4dc9dff3881.zip | |
Limit geometry from file to width/height of monitor
Diffstat (limited to 'src')
| -rw-r--r-- | src/ui/interface.cpp | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/src/ui/interface.cpp b/src/ui/interface.cpp index 816f4e337..7df3502f7 100644 --- a/src/ui/interface.cpp +++ b/src/ui/interface.cpp @@ -40,6 +40,7 @@ #include "document.h" #include "ui/interface.h" +#include "ui/monitor.h" #include "desktop.h" #include "selection-chemistry.h" #include "svg-view-widget.h" @@ -133,8 +134,6 @@ static void sp_ui_menu_item_set_name(GtkWidget *data, Glib::ustring const &name); static void sp_recent_open(GtkRecentChooser *, gpointer); -static const int MIN_ONSCREEN_DISTANCE = 50; - void sp_create_window(SPViewWidget *vw, bool editable) { @@ -171,6 +170,9 @@ sp_create_window(SPViewWidget *vw, bool editable) gint full = prefs->getBool("/desktop/geometry/fullscreen"); gint maxed = prefs->getBool("/desktop/geometry/maximized"); if (pw>0 && ph>0) { + Gdk::Rectangle monitor_geometry = Inkscape::UI::get_monitor_geometry_at_point(px, py); + pw = std::min(pw, monitor_geometry.get_width()); + ph = std::min(ph, monitor_geometry.get_height()); desktop->setWindowSize(pw, ph); desktop->setWindowPosition(Geom::Point(px, py)); } |
