diff --git a/src/apps/installer/InstallerWindow.cpp b/src/apps/installer/InstallerWindow.cpp index 89c8627af1..5047e02ce7 100644 --- a/src/apps/installer/InstallerWindow.cpp +++ b/src/apps/installer/InstallerWindow.cpp @@ -64,7 +64,9 @@ LogoView::Draw(BRect update) InstallerWindow::InstallerWindow(BRect frame_rect) : BWindow(frame_rect, "Installer", B_TITLED_WINDOW, B_NOT_ZOOMABLE | B_NOT_RESIZABLE), - fDriveSetupLaunched(false) + fDriveSetupLaunched(false), + fLastSrcItem(NULL), + fLastTargetItem(NULL) { fCopyEngine = new CopyEngine(this); @@ -179,10 +181,16 @@ InstallerWindow::MessageReceived(BMessage *msg) ShowBottom(); break; case SRC_PARTITION: + if (fLastSrcItem == fSrcMenu->FindMarked()) + break; + fLastSrcItem = fSrcMenu->FindMarked(); PublishPackages(); AdjustMenus(); break; case TARGET_PARTITION: + if (fLastTargetItem == fDestMenu->FindMarked()) + break; + fLastTargetItem = fDestMenu->FindMarked(); AdjustMenus(); break; case SETUP_MESSAGE: @@ -341,6 +349,7 @@ InstallerWindow::PublishPackages() if (!item) return; +#ifdef __HAIKU__ BPath directory; BDiskDeviceRoster roster; BDiskDevice device; @@ -353,6 +362,9 @@ InstallerWindow::PublishPackages() return; } else return; // shouldn't happen +#else + BPath directory = "/BeOS 5 PE Max Edition V3.1 beta"; +#endif directory.Append(PACKAGES_DIRECTORY); BDirectory dir(directory.Path()); diff --git a/src/apps/installer/InstallerWindow.h b/src/apps/installer/InstallerWindow.h index 6f4710b32d..f2e8345a5d 100644 --- a/src/apps/installer/InstallerWindow.h +++ b/src/apps/installer/InstallerWindow.h @@ -11,6 +11,7 @@ #include #include #include +#include #include #include #include "CopyEngine.h" @@ -56,6 +57,7 @@ private: BPoint fDrawPoint; CopyEngine *fCopyEngine; BString fLastStatus; + BMenuItem *fLastSrcItem, *fLastTargetItem; }; #endif /* _InstallerWindow_h */ diff --git a/src/apps/installer/Jamfile b/src/apps/installer/Jamfile index 4e0b5db0d8..6488f2ddae 100644 --- a/src/apps/installer/Jamfile +++ b/src/apps/installer/Jamfile @@ -1,7 +1,5 @@ SubDir HAIKU_TOP src apps installer ; -SetSubDirSupportedPlatformsBeOSCompatible ; - UsePrivateHeaders shared ; UsePrivateHeaders storage ; UsePrivateHeaders tracker ; @@ -16,5 +14,5 @@ Application Installer : InstallerWindow.cpp PackageViews.cpp PartitionMenuItem.cpp - : libbe.so libtracker.so libtranslation.so + : be tracker translation : Installer.rdef ; diff --git a/src/apps/installer/PackageViews.cpp b/src/apps/installer/PackageViews.cpp index 31884ce674..2e4bddde4c 100644 --- a/src/apps/installer/PackageViews.cpp +++ b/src/apps/installer/PackageViews.cpp @@ -155,7 +155,7 @@ PackageCheckBox::Draw(BRect update) void PackageCheckBox::MouseMoved(BPoint point, uint32 transit, const BMessage *message) { - printf("coucouc\n"); + printf("%s called\n", __PRETTY_FUNCTION__); if (transit == B_ENTERED_VIEW) { BMessage msg(STATUS_MESSAGE); msg.AddString("status", fPackage->Description());