diff options
| author | Darksome <dev@darkso.me> | 2022-07-21 19:18:03 +0300 |
|---|---|---|
| committer | Darksome <dev@darkso.me> | 2022-07-21 19:18:03 +0300 |
| commit | eb8a1939e6dddaaf81f6b623d1c657b801978487 (patch) | |
| tree | d62d4ca30d4114fe2e2745e36907b65ac4be20af /src/debug | |
| parent | 68cfc1a496f556f360c032651b75d33ddb576517 (diff) | |
| parent | 7f660fed0d4a8133ccde21c3e092dbc8c6e08c60 (diff) | |
Merge upstream
Diffstat (limited to 'src/debug')
| -rw-r--r-- | src/debug/HyprCtl.cpp | 51 | ||||
| -rw-r--r-- | src/debug/Log.cpp | 17 | ||||
| -rw-r--r-- | src/debug/Log.hpp | 1 |
3 files changed, 45 insertions, 24 deletions
diff --git a/src/debug/HyprCtl.cpp b/src/debug/HyprCtl.cpp index 1e6a8e32..9832a22d 100644 --- a/src/debug/HyprCtl.cpp +++ b/src/debug/HyprCtl.cpp @@ -38,11 +38,11 @@ R"#({ "active": "%s" },)#", m->ID, - m->szName.c_str(), + escapeJSONStrings(m->szName).c_str(), (int)m->vecPixelSize.x, (int)m->vecPixelSize.y, m->refreshRate, (int)m->vecPosition.x, (int)m->vecPosition.y, - m->activeWorkspace, g_pCompositor->getWorkspaceByID(m->activeWorkspace)->m_szName.c_str(), + m->activeWorkspace, escapeJSONStrings(g_pCompositor->getWorkspaceByID(m->activeWorkspace)->m_szName).c_str(), (int)m->vecReservedTopLeft.x, (int)m->vecReservedTopLeft.y, (int)m->vecReservedBottomRight.x, (int)m->vecReservedBottomRight.y, m->scale, (int)m->transform, @@ -86,14 +86,14 @@ R"#({ "title": "%s", "pid": %i },)#", - &w, + w.get(), (int)w->m_vRealPosition.vec().x, (int)w->m_vRealPosition.vec().y, (int)w->m_vRealSize.vec().x, (int)w->m_vRealSize.vec().y, - w->m_iWorkspaceID, (w->m_iWorkspaceID == -1 ? "" : g_pCompositor->getWorkspaceByID(w->m_iWorkspaceID) ? g_pCompositor->getWorkspaceByID(w->m_iWorkspaceID)->m_szName.c_str() : std::string("Invalid workspace " + std::to_string(w->m_iWorkspaceID)).c_str()), + w->m_iWorkspaceID, escapeJSONStrings(w->m_iWorkspaceID == -1 ? "" : g_pCompositor->getWorkspaceByID(w->m_iWorkspaceID) ? g_pCompositor->getWorkspaceByID(w->m_iWorkspaceID)->m_szName : std::string("Invalid workspace " + std::to_string(w->m_iWorkspaceID))).c_str(), (int)w->m_bIsFloating, w->m_iMonitorID, - g_pXWaylandManager->getAppIDClass(w.get()).c_str(), - g_pXWaylandManager->getTitle(w.get()).c_str(), + escapeJSONStrings(g_pXWaylandManager->getAppIDClass(w.get())).c_str(), + escapeJSONStrings(g_pXWaylandManager->getTitle(w.get())).c_str(), w->getPID() ); } @@ -107,7 +107,7 @@ R"#({ for (auto& w : g_pCompositor->m_vWindows) { if (w->m_bIsMapped) { result += getFormat("Window %x -> %s:\n\tat: %i,%i\n\tsize: %i,%i\n\tworkspace: %i (%s)\n\tfloating: %i\n\tmonitor: %i\n\tclass: %s\n\ttitle: %s\n\tpid: %i\n\n", - &w, w->m_szTitle.c_str(), (int)w->m_vRealPosition.vec().x, (int)w->m_vRealPosition.vec().y, (int)w->m_vRealSize.vec().x, (int)w->m_vRealSize.vec().y, w->m_iWorkspaceID, (w->m_iWorkspaceID == -1 ? "" : g_pCompositor->getWorkspaceByID(w->m_iWorkspaceID) ? g_pCompositor->getWorkspaceByID(w->m_iWorkspaceID)->m_szName.c_str() : std::string("Invalid workspace " + std::to_string(w->m_iWorkspaceID)).c_str()), (int)w->m_bIsFloating, w->m_iMonitorID, g_pXWaylandManager->getAppIDClass(w.get()).c_str(), g_pXWaylandManager->getTitle(w.get()).c_str(), w->getPID()); + w.get(), w->m_szTitle.c_str(), (int)w->m_vRealPosition.vec().x, (int)w->m_vRealPosition.vec().y, (int)w->m_vRealSize.vec().x, (int)w->m_vRealSize.vec().y, w->m_iWorkspaceID, (w->m_iWorkspaceID == -1 ? "" : g_pCompositor->getWorkspaceByID(w->m_iWorkspaceID) ? g_pCompositor->getWorkspaceByID(w->m_iWorkspaceID)->m_szName.c_str() : std::string("Invalid workspace " + std::to_string(w->m_iWorkspaceID)).c_str()), (int)w->m_bIsFloating, w->m_iMonitorID, g_pXWaylandManager->getAppIDClass(w.get()).c_str(), g_pXWaylandManager->getTitle(w.get()).c_str(), w->getPID()); } } @@ -130,8 +130,8 @@ R"#({ "hasfullscreen": %i },)#", w->m_iID, - w->m_szName.c_str(), - g_pCompositor->getMonitorFromID(w->m_iMonitorID)->szName.c_str(), + escapeJSONStrings(w->m_szName).c_str(), + escapeJSONStrings(g_pCompositor->getMonitorFromID(w->m_iMonitorID)->szName).c_str(), g_pCompositor->getWindowsOnWorkspace(w->m_iID), (int)w->m_bHasFullscreenWindow ); @@ -175,11 +175,11 @@ R"#({ PWINDOW, (int)PWINDOW->m_vRealPosition.vec().x, (int)PWINDOW->m_vRealPosition.vec().y, (int)PWINDOW->m_vRealSize.vec().x, (int)PWINDOW->m_vRealSize.vec().y, - PWINDOW->m_iWorkspaceID, (PWINDOW->m_iWorkspaceID == -1 ? "" : g_pCompositor->getWorkspaceByID(PWINDOW->m_iWorkspaceID)->m_szName.c_str()), + PWINDOW->m_iWorkspaceID, escapeJSONStrings(PWINDOW->m_iWorkspaceID == -1 ? "" : g_pCompositor->getWorkspaceByID(PWINDOW->m_iWorkspaceID)->m_szName).c_str(), (int)PWINDOW->m_bIsFloating, PWINDOW->m_iMonitorID, - g_pXWaylandManager->getAppIDClass(PWINDOW).c_str(), - g_pXWaylandManager->getTitle(PWINDOW).c_str(), + escapeJSONStrings(g_pXWaylandManager->getAppIDClass(PWINDOW)).c_str(), + escapeJSONStrings(g_pXWaylandManager->getTitle(PWINDOW)).c_str(), PWINDOW->getPID() ); } else { @@ -199,7 +199,7 @@ std::string layersRequest(HyprCtl::eHyprCtlOutputFormat format) { R"#("%s": { "levels": { )#", - mon->szName.c_str() + escapeJSONStrings(mon->szName).c_str() ); int layerLevel = 0; @@ -225,7 +225,7 @@ R"#( { layer->geometry.y, layer->geometry.width, layer->geometry.height, - layer->szNamespace.c_str() + escapeJSONStrings(layer->szNamespace).c_str() ); } @@ -285,7 +285,7 @@ R"#( { "name": "%s" },)#", &m, - m.mouse->name + escapeJSONStrings(m.mouse->name).c_str() ); } @@ -308,13 +308,13 @@ R"#( { "active_keymap": "%s" },)#", &k, - k.keyboard->name, - k.currentRules.rules.c_str(), - k.currentRules.model.c_str(), - k.currentRules.layout.c_str(), - k.currentRules.variant.c_str(), - k.currentRules.options.c_str(), - KM + escapeJSONStrings(k.keyboard->name).c_str(), + escapeJSONStrings(k.currentRules.rules).c_str(), + escapeJSONStrings(k.currentRules.model).c_str(), + escapeJSONStrings(k.currentRules.layout).c_str(), + escapeJSONStrings(k.currentRules.variant).c_str(), + escapeJSONStrings(k.currentRules.options).c_str(), + escapeJSONStrings(KM).c_str() ); } @@ -336,7 +336,7 @@ R"#( { },)#", &d, d.pTabletParent, - d.pTabletParent ? d.pTabletParent->wlrDevice ? d.pTabletParent->wlrDevice->name : "" : "" + escapeJSONStrings(d.pTabletParent ? d.pTabletParent->wlrDevice ? d.pTabletParent->wlrDevice->name : "" : "").c_str() ); } @@ -347,7 +347,7 @@ R"#( { "name": "%s" },)#", &d, - d.wlrDevice ? d.wlrDevice->name : "" + escapeJSONStrings(d.wlrDevice ? d.wlrDevice->name : "").c_str() ); } @@ -456,6 +456,9 @@ std::string dispatchKeyword(std::string in) { if (COMMAND.contains("input")) g_pInputManager->setKeyboardLayout(); // update kb layout + if (COMMAND.contains("general:layout")) + g_pLayoutManager->switchToLayout(g_pConfigManager->getString("general:layout")); // update layout + Debug::log(LOG, "Hyprctl: keyword %s : %s", COMMAND.c_str(), VALUE.c_str()); if (retval == "") diff --git a/src/debug/Log.cpp b/src/debug/Log.cpp index 2fa4a127..59d2d239 100644 --- a/src/debug/Log.cpp +++ b/src/debug/Log.cpp @@ -41,6 +41,23 @@ void Debug::log(LogLevel level, const char* fmt, ...) { break; } + // print date and time to the ofs + if (disableTime && !*disableTime) { + auto timet = std::chrono::system_clock::to_time_t(std::chrono::system_clock::now()); + const auto MILLIS = std::chrono::duration_cast<std::chrono::milliseconds>(std::chrono::system_clock::now().time_since_epoch()).count() % 1000; + + ofs << std::put_time(std::localtime(&timet), "[%H:%M:%S:"); + + if (MILLIS > 99) + ofs << MILLIS; + else if (MILLIS > 9) + ofs << "0" << MILLIS; + else + ofs << "00" << MILLIS; + + ofs << "] "; + } + char buf[LOGMESSAGESIZE] = ""; char* outputStr; int logLen; diff --git a/src/debug/Log.hpp b/src/debug/Log.hpp index bde9b820..4001d996 100644 --- a/src/debug/Log.hpp +++ b/src/debug/Log.hpp @@ -18,4 +18,5 @@ namespace Debug { inline std::string logFile; inline int64_t* disableLogs = nullptr; + inline int64_t* disableTime = nullptr; };
\ No newline at end of file |
