Skip to content

Commit

Permalink
config: avoid using initial ws tracking for exec-once
Browse files Browse the repository at this point in the history
  • Loading branch information
vaxerski committed Jul 25, 2024
1 parent a0d15a0 commit 33a5c8c
Show file tree
Hide file tree
Showing 3 changed files with 8 additions and 4 deletions.
2 changes: 2 additions & 0 deletions src/config/ConfigManager.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -1299,12 +1299,14 @@ void CConfigManager::dispatchExecOnce() {
"dbus-update-activation-environment --systemd WAYLAND_DISPLAY XDG_CURRENT_DESKTOP HYPRLAND_INSTANCE_SIGNATURE QT_QPA_PLATFORMTHEME PATH XDG_DATA_DIRS");

firstExecDispatched = true;
isLaunchingExecOnce = true;

for (auto& c : firstExecRequests) {
handleRawExec("", c);
}

firstExecRequests.clear(); // free some kb of memory :P
isLaunchingExecOnce = false;

// set input, fixes some certain issues
g_pInputManager->setKeyboardLayout();
Expand Down
8 changes: 5 additions & 3 deletions src/config/ConfigManager.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -129,9 +129,6 @@ class CConfigManager {
void performMonitorReload();
void appendMonitorRule(const SMonitorRule&);
bool replaceMonitorRule(const SMonitorRule&);
bool m_bWantsMonitorReload = false;
bool m_bForceReload = false;
bool m_bNoMonitorReload = false;
void ensureMonitorStatus();
void ensureVRR(CMonitor* pMonitor = nullptr);

Expand Down Expand Up @@ -192,6 +189,11 @@ class CConfigManager {
std::unordered_map<std::string, std::function<CWindowOverridableVar<int>*(PHLWINDOW)>> miWindowProperties = {
{"rounding", [](PHLWINDOW pWindow) { return &pWindow->m_sWindowData.rounding; }}, {"bordersize", [](PHLWINDOW pWindow) { return &pWindow->m_sWindowData.borderSize; }}};

bool m_bWantsMonitorReload = false;
bool m_bForceReload = false;
bool m_bNoMonitorReload = false;
bool isLaunchingExecOnce = false; // For exec-once to skip initial ws tracking

private:
std::unique_ptr<Hyprlang::CConfig> m_pConfig;

Expand Down
2 changes: 1 addition & 1 deletion src/managers/KeybindManager.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@ using namespace Hyprutils::String;
static std::vector<std::pair<std::string, std::string>> getHyprlandLaunchEnv() {
static auto PINITIALWSTRACKING = CConfigValue<Hyprlang::INT>("misc:initial_workspace_tracking");

if (!*PINITIALWSTRACKING)
if (!*PINITIALWSTRACKING || g_pConfigManager->isLaunchingExecOnce)
return {};

const auto PMONITOR = g_pCompositor->m_pLastMonitor;
Expand Down

0 comments on commit 33a5c8c

Please sign in to comment.