diff options
Diffstat (limited to 'application/MultiMC.cpp')
-rw-r--r-- | application/MultiMC.cpp | 31 |
1 files changed, 30 insertions, 1 deletions
diff --git a/application/MultiMC.cpp b/application/MultiMC.cpp index 49e45c41..6c7deca1 100644 --- a/application/MultiMC.cpp +++ b/application/MultiMC.cpp @@ -64,7 +64,9 @@ #include <FileSystem.h> #include <DesktopServices.h> #include <LocalPeer.h> + #include <ganalytics.h> +#include <sys.h> #if defined Q_OS_WIN32 #ifndef WIN32_LEAN_AND_MEAN @@ -962,9 +964,36 @@ MainWindow* MultiMC::showMainWindow(bool minimized) m_mainWindow->checkInstancePathForProblems(); m_openWindows++; } + // FIXME: move this somewhere else... if(m_analytics) { - m_analytics->sendScreenView("Main Window"); + auto windowSize = m_mainWindow->size(); + auto sizeString = QString("%1x%2").arg(windowSize.width()).arg(windowSize.height()); + qDebug() << "Viewport size" << sizeString; + m_analytics->setViewportSize(sizeString); + /* + * cm1 = java min heap [MB] + * cm2 = java max heap [MB] + * cm3 = system RAM [MB] + * + * cd1 = java version + * cd2 = java architecture + * cd3 = system architecture + * cd4 = CPU architecture + */ + QVariantMap customValues; + customValues["cm1"] = m_settings->get("MinMemAlloc"); + customValues["cm2"] = m_settings->get("MaxMemAlloc"); + constexpr uint64_t Mega = 1024ull * 1024ull; + int ramSize = int(Sys::getSystemRam() / Mega); + qDebug() << "RAM size is" << ramSize << "MB"; + customValues["cm3"] = ramSize; + + customValues["cd1"] = m_settings->get("JavaVersion"); + customValues["cd2"] = m_settings->get("JavaArchitecture"); + customValues["cd3"] = Sys::isSystem64bit() ? "64":"32"; + customValues["cd4"] = Sys::isCPU64bit() ? "64":"32"; + m_analytics->sendScreenView("Main Window", customValues); } return m_mainWindow; } |