diff --git a/src/apps/activitymonitor/ActivityMonitor.cpp b/src/apps/activitymonitor/ActivityMonitor.cpp index 73161e9868..0db3cd1060 100644 --- a/src/apps/activitymonitor/ActivityMonitor.cpp +++ b/src/apps/activitymonitor/ActivityMonitor.cpp @@ -21,7 +21,6 @@ ActivityMonitor::ActivityMonitor() : BApplication(kSignature) { fWindow = new ActivityWindow(); - fWindow->MoveOnScreen(B_MOVE_IF_PARTIALLY_OFFSCREEN); } diff --git a/src/apps/activitymonitor/ActivityWindow.cpp b/src/apps/activitymonitor/ActivityWindow.cpp index 130bf17b38..0e60f10e28 100644 --- a/src/apps/activitymonitor/ActivityWindow.cpp +++ b/src/apps/activitymonitor/ActivityWindow.cpp @@ -45,6 +45,7 @@ ActivityWindow::ActivityWindow() if (settings.FindRect("window frame", &frame) == B_OK) { MoveTo(frame.LeftTop()); ResizeTo(frame.Width(), frame.Height()); + MoveOnScreen(B_MOVE_IF_PARTIALLY_OFFSCREEN); } else { float scaling = be_plain_font->Size() / 12.0f; ResizeTo(Frame().Width() * scaling, Frame().Height() * scaling); diff --git a/src/apps/charactermap/CharacterWindow.cpp b/src/apps/charactermap/CharacterWindow.cpp index 0821064356..603acc1dea 100644 --- a/src/apps/charactermap/CharacterWindow.cpp +++ b/src/apps/charactermap/CharacterWindow.cpp @@ -136,6 +136,7 @@ CharacterWindow::CharacterWindow() if (settings.FindRect("window frame", &frame) == B_OK) { MoveTo(frame.LeftTop()); ResizeTo(frame.Width(), frame.Height()); + MoveOnScreen(B_MOVE_IF_PARTIALLY_OFFSCREEN); } else { float scaling = be_plain_font->Size() / 12.0f; ResizeTo(Frame().Width() * scaling, Frame().Height() * scaling); diff --git a/src/apps/deskcalc/CalcWindow.cpp b/src/apps/deskcalc/CalcWindow.cpp index 699ccd8db5..f461446b9e 100644 --- a/src/apps/deskcalc/CalcWindow.cpp +++ b/src/apps/deskcalc/CalcWindow.cpp @@ -59,9 +59,10 @@ CalcWindow::CalcWindow(BRect frame, BMessage* settings) fCalcView->AddChild(dragger); BRect rect; - if (settings->FindRect("window frame", &rect) == B_OK) + if (settings->FindRect("window frame", &rect) == B_OK) { SetFrame(rect); - else + MoveOnScreen(B_MOVE_IF_PARTIALLY_OFFSCREEN); + } else SetFrame(frame, true); // Add shortcut keys to menu options diff --git a/src/apps/sudoku/SudokuWindow.cpp b/src/apps/sudoku/SudokuWindow.cpp index f84dd5aa8d..31bd7acf7e 100644 --- a/src/apps/sudoku/SudokuWindow.cpp +++ b/src/apps/sudoku/SudokuWindow.cpp @@ -156,11 +156,9 @@ SudokuWindow::SudokuWindow() if (settings.FindRect("window frame", &frame) == B_OK) { MoveTo(frame.LeftTop()); ResizeTo(frame.Width(), frame.Height()); - frame.OffsetTo(B_ORIGIN); } else { float scaling = std::max(1.0f, be_plain_font->Size() / 12.0f); ResizeTo(Frame().Width() * scaling, Frame().Height() * scaling); - frame = Bounds(); } MoveOnScreen(); diff --git a/src/preferences/backgrounds/BackgroundsView.cpp b/src/preferences/backgrounds/BackgroundsView.cpp index 745381e5b5..1669ed303f 100644 --- a/src/preferences/backgrounds/BackgroundsView.cpp +++ b/src/preferences/backgrounds/BackgroundsView.cpp @@ -295,6 +295,7 @@ BackgroundsView::AllAttached() if (fSettings.FindPoint("pos", &point) == B_OK) { fFoundPositionSetting = true; Window()->MoveTo(point); + Window()->MoveOnScreen(B_MOVE_IF_PARTIALLY_OFFSCREEN); } fApply->SetEnabled(false);