fix conflicts

This commit is contained in:
lichie 2025-12-15 20:50:46 -08:00
commit f24c431656
6 changed files with 24 additions and 24 deletions

View file

@ -321,6 +321,10 @@ if(CMAKE_BUILD_TYPE MATCHES Debug OR CMAKE_BUILD_TYPE MATCHES DEBUG)
endif()
endif()
if(BUILT_WITH_NIX)
add_compile_definitions(BUILT_WITH_NIX)
endif()
check_include_file("execinfo.h" EXECINFOH)
if(EXECINFOH)
message(STATUS "Configuration supports execinfo")

View file

@ -192,6 +192,7 @@ in
dontStrip = debug;
cmakeFlags = mapAttrsToList cmakeBool {
"BUILT_WITH_NIX" = true;
"NO_XWAYLAND" = !enableXWayland;
"LEGACY_RENDERER" = legacyRenderer;
"NO_SYSTEMD" = !withSystemd;

View file

@ -574,9 +574,6 @@ void CCompositor::cleanup() {
for (auto const& m : m_monitors) {
g_pHyprOpenGL->destroyMonitorResources(m);
m->m_output->state->setEnabled(false);
m->m_state.commit();
}
g_pXWayland.reset();

View file

@ -1067,7 +1067,7 @@ std::string versionRequest(eHyprCtlOutputFormat format, std::string request) {
result += __hyprland_api_get_hash();
result += "\n";
#if (!ISDEBUG && !defined(NO_XWAYLAND))
#if (!ISDEBUG && !defined(NO_XWAYLAND) && !defined(BUILT_WITH_NIX))
result += "no flags were set\n";
#else
result += "flags set:\n";
@ -1077,6 +1077,9 @@ std::string versionRequest(eHyprCtlOutputFormat format, std::string request) {
#ifdef NO_XWAYLAND
result += "no xwayland\n";
#endif
#ifdef BUILT_WITH_NIX
result += "nix\n";
#endif
#endif
return result;
} else {
@ -1113,6 +1116,9 @@ std::string versionRequest(eHyprCtlOutputFormat format, std::string request) {
#ifdef NO_XWAYLAND
result += "\"no xwayland\",";
#endif
#ifdef BUILT_WITH_NIX
result += "\"nix\",";
#endif
trimTrailingComma(result);

View file

@ -41,13 +41,12 @@ namespace Desktop::Rule {
std::string monitor, workspace, group;
std::optional<bool> floating;
bool fullscreen = false;
bool maximize = false;
bool pseudo = false;
bool pin = false;
bool noInitialFocus = false;
bool center = false;
std::optional<bool> fullscreen;
std::optional<bool> maximize;
std::optional<bool> pseudo;
std::optional<bool> pin;
std::optional<bool> noInitialFocus;
std::optional<bool> center;
std::optional<int> fullscreenStateClient;
std::optional<int> fullscreenStateInternal;

View file

@ -2047,14 +2047,10 @@ void CWindow::mapWindow() {
requestedFSMonitor = MONITOR_INVALID;
}
if (m_ruleApplicator->static_.floating.has_value())
m_isFloating = m_ruleApplicator->static_.floating.value();
if (m_ruleApplicator->static_.pseudo)
m_isPseudotiled = true;
if (m_ruleApplicator->static_.noInitialFocus)
m_noInitialFocus = true;
m_isFloating = m_ruleApplicator->static_.floating.value_or(m_isFloating);
m_isPseudotiled = m_ruleApplicator->static_.pseudo.value_or(m_isPseudotiled);
m_noInitialFocus = m_ruleApplicator->static_.noInitialFocus.value_or(m_noInitialFocus);
m_pinned = m_ruleApplicator->static_.pin.value_or(m_pinned);
if (m_ruleApplicator->static_.fullscreenStateClient || m_ruleApplicator->static_.fullscreenStateInternal) {
requestedFSState = Desktop::View::SFullscreenState{
@ -2080,13 +2076,10 @@ void CWindow::mapWindow() {
}
}
if (m_ruleApplicator->static_.pin)
m_pinned = true;
if (m_ruleApplicator->static_.fullscreen)
if (m_ruleApplicator->static_.fullscreen.value_or(false))
requestedInternalFSMode = FSMODE_FULLSCREEN;
if (m_ruleApplicator->static_.maximize)
if (m_ruleApplicator->static_.maximize.value_or(false))
requestedInternalFSMode = FSMODE_MAXIMIZED;
if (!m_ruleApplicator->static_.group.empty()) {