mirror of
https://github.com/OrcaSlicer/OrcaSlicer.git
synced 2026-06-15 00:13:00 +00:00
Merge branch '2.2.3' into dev_upgrade_alves
This commit is contained in:
@@ -2,7 +2,30 @@
|
||||
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||
<plist version="1.0">
|
||||
<dict>
|
||||
|
||||
<key>com.apple.application-identifier</key>
|
||||
<string>5NGD3B3V37.snapmaker-orca</string>
|
||||
<key>com.apple.developer.team-identifier</key>
|
||||
<string>5NGD3B3V37</string>
|
||||
|
||||
|
||||
<key>com.apple.security.cs.disable-library-validation</key>
|
||||
<true/>
|
||||
<key>com.apple.runningboard.assertions.webkit</key>
|
||||
<true/>
|
||||
<key>com.apple.security.network.client</key>
|
||||
<true/>
|
||||
<key>com.apple.security.network.server</key>
|
||||
<true/>
|
||||
<key>com.apple.security.files.user-selected.read-write</key>
|
||||
<true/>
|
||||
<key>com.apple.security.files.downloads.read-write</key>
|
||||
<true/>
|
||||
<key>com.apple.security.cs.allow-jit</key>
|
||||
<true/>
|
||||
<key>com.apple.security.cs.allow-unsigned-executable-memory</key>
|
||||
<true/>
|
||||
<key>com.apple.security.cs.allow-dyld-environment-variables</key>
|
||||
<true/>
|
||||
</dict>
|
||||
</plist>
|
||||
|
||||
@@ -963,7 +963,7 @@ void GUI_App::post_init()
|
||||
std::string language = GUI::into_u8(current_language_code());
|
||||
std::string network_ver = Slic3r::NetworkAgent::get_version();
|
||||
bool sys_preset = app_config->get("sync_system_preset") == "true";
|
||||
//this->preset_updater->sync(http_url, language, network_ver, sys_preset ? preset_bundle : nullptr);
|
||||
this->preset_updater->sync(http_url, language, network_ver, sys_preset ? preset_bundle : nullptr);
|
||||
this->preset_updater->sync_web_async(true);
|
||||
this->check_new_version_sf(false, false);
|
||||
|
||||
|
||||
@@ -7782,9 +7782,9 @@ void Plater::priv::on_process_completed(SlicingProcessCompletedEvent &evt)
|
||||
}
|
||||
else if (is_finished && evt.finished())
|
||||
{
|
||||
auto strTime = get_works_time(duration_ms);
|
||||
auto slice_time = BP_SLICE_DURATION_TIME + std::string(":") + strTime;
|
||||
sentryReportLog(SENTRY_LOG_TRACE, slice_time, BP_SLICE_DURATION);
|
||||
//auto strTime = get_works_time(duration_ms);
|
||||
//auto slice_time = BP_SLICE_DURATION_TIME + std::string(":") + strTime;
|
||||
//sentryReportLog(SENTRY_LOG_TRACE, slice_time, BP_SLICE_DURATION);
|
||||
|
||||
m_slice_start_time = {};
|
||||
m_slice_timing_active = false;
|
||||
|
||||
@@ -330,6 +330,7 @@ UpdateVersionDialog::UpdateVersionDialog(wxWindow *parent)
|
||||
m_button_download->SetSize(wxSize(FromDIP(58), FromDIP(24)));
|
||||
m_button_download->SetMinSize(wxSize(FromDIP(58), FromDIP(24)));
|
||||
m_button_download->SetCornerRadius(FromDIP(12));
|
||||
m_button_download->SetCursor(wxCURSOR_HAND);
|
||||
|
||||
m_button_download->Bind(wxEVT_LEFT_DOWN, [this](wxMouseEvent &e) {
|
||||
EndModal(wxID_YES);
|
||||
@@ -342,6 +343,7 @@ UpdateVersionDialog::UpdateVersionDialog(wxWindow *parent)
|
||||
m_button_skip_version->SetSize(wxSize(FromDIP(58), FromDIP(24)));
|
||||
m_button_skip_version->SetMinSize(wxSize(FromDIP(58), FromDIP(24)));
|
||||
m_button_skip_version->SetCornerRadius(FromDIP(12));
|
||||
m_button_skip_version->SetCursor(wxCURSOR_HAND);
|
||||
|
||||
m_button_skip_version->Bind(wxEVT_LEFT_DOWN, [this](wxMouseEvent &e) {
|
||||
wxGetApp().set_skip_version(true);
|
||||
@@ -372,6 +374,7 @@ UpdateVersionDialog::UpdateVersionDialog(wxWindow *parent)
|
||||
m_button_cancel->SetSize(wxSize(FromDIP(58), FromDIP(24)));
|
||||
m_button_cancel->SetMinSize(wxSize(FromDIP(58), FromDIP(24)));
|
||||
m_button_cancel->SetCornerRadius(FromDIP(12));
|
||||
m_button_cancel->SetCursor(wxCURSOR_HAND);
|
||||
|
||||
m_button_cancel->Bind(wxEVT_LEFT_DOWN, [this](wxMouseEvent &e) {
|
||||
EndModal(wxID_NO);
|
||||
|
||||
@@ -2081,8 +2081,12 @@ void SSWCP_MachineOption_Instance::process()
|
||||
sw_ServerClientManagerSetUserinfo();
|
||||
} else if (m_cmd == "sw_DefectDetactionConfig"){
|
||||
sw_DefectDetactionConfig();
|
||||
} else if (m_cmd == GETCAMERA_TIMELAPSE_INSTANCE) {
|
||||
CmdForwarding();
|
||||
}
|
||||
else if (m_cmd == GET_DEVICEDATA_STORAGESPACE) {
|
||||
CmdForwarding();
|
||||
}
|
||||
|
||||
else {
|
||||
handle_general_fail();
|
||||
}
|
||||
@@ -3691,6 +3695,28 @@ void SSWCP_MachineOption_Instance::sw_GetTimelapseInstance()
|
||||
handle_general_fail();
|
||||
}
|
||||
}
|
||||
void SSWCP_MachineOption_Instance::CmdForwarding() {
|
||||
try {
|
||||
std::shared_ptr<PrintHost> host = nullptr;
|
||||
wxGetApp().get_connect_host(host);
|
||||
|
||||
if (!host) {
|
||||
handle_general_fail(-1, "Connection lost!");
|
||||
return;
|
||||
}
|
||||
|
||||
auto weak_self = std::weak_ptr<SSWCP_Instance>(shared_from_this());
|
||||
host->async_delete_camera_timelapse(m_param_data, [weak_self](const json& response) {
|
||||
auto self = weak_self.lock();
|
||||
if (self) {
|
||||
SSWCP_Instance::on_mqtt_msg_arrived(self, response);
|
||||
}
|
||||
});
|
||||
} catch (std::exception& e) {
|
||||
handle_general_fail();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
void SSWCP_MachineOption_Instance::sw_DeleteCameraTimelapse()
|
||||
{
|
||||
@@ -5779,7 +5805,9 @@ std::unordered_set<std::string> SSWCP::m_machine_option_cmd_list = {
|
||||
"sw_DeleteCameraTimelapse",
|
||||
"sw_GetTimelapseInstance",
|
||||
"sw_ServerClientManagerSetUserinfo",
|
||||
"sw_DefectDetactionConfig"
|
||||
"sw_DefectDetactionConfig",
|
||||
GETCAMERA_TIMELAPSE_INSTANCE,
|
||||
GET_DEVICEDATA_STORAGESPACE
|
||||
};
|
||||
|
||||
std::unordered_set<std::string> SSWCP::m_machine_connect_cmd_list = {
|
||||
|
||||
@@ -23,7 +23,13 @@ using namespace nlohmann;
|
||||
namespace asio = boost::asio;
|
||||
using tcp = asio::ip::tcp;
|
||||
|
||||
|
||||
//WCP Interface definition
|
||||
#define UPDATE_PRIVACY_STATUS "sw_SubUserUpdatePrivacy"
|
||||
#define UPLOAD_CAMERA_TIMELAPSE "sw_UploadCameraTimelapse"
|
||||
#define DELETE_CAMERA_TIMELAPSE "sw_DeleteCameraTimelapse"
|
||||
#define GETCAMERA_TIMELAPSE_INSTANCE "sw_GetCameraTimelapseInstance"
|
||||
#define GET_DEVICEDATA_STORAGESPACE "sw_GetDeviceDataStorageSpace"
|
||||
|
||||
namespace Slic3r { namespace GUI {
|
||||
|
||||
@@ -422,6 +428,7 @@ private:
|
||||
|
||||
void sw_DefectDetactionConfig();
|
||||
|
||||
void CmdForwarding();
|
||||
|
||||
// Download machine file
|
||||
void sw_DownloadMachineFile();
|
||||
|
||||
@@ -165,6 +165,17 @@ static int log_trace(CURL* handle, curl_infotype type,
|
||||
return 0;
|
||||
}
|
||||
|
||||
// Domains that should bypass proxy and connect directly
|
||||
// This helps when users have Shadowsocks/Clash/V2Ray proxy enabled
|
||||
static const char* NOPROXY_DOMAINS =
|
||||
"snapmaker.cn,"
|
||||
"snapmaker.com,"
|
||||
"*.snapmaker.cn,"
|
||||
"*.snapmaker.com,"
|
||||
"localhost,"
|
||||
"127.0.0.1,"
|
||||
"::1";
|
||||
|
||||
Http::priv::priv(const std::string &url)
|
||||
: curl(::curl_easy_init())
|
||||
, form(nullptr)
|
||||
@@ -194,6 +205,11 @@ Http::priv::priv(const std::string &url)
|
||||
::curl_easy_setopt(curl, CURLOPT_SSL_VERIFYPEER, 0L);
|
||||
::curl_easy_setopt(curl, CURLOPT_SSL_VERIFYHOST, 0L);
|
||||
|
||||
// Bypass proxy for Snapmaker domains - this fixes issues when users have
|
||||
// Shadowsocks/Clash/V2Ray or other proxy software enabled
|
||||
// The domains in NOPROXY_DOMAINS will connect directly without going through proxy
|
||||
::curl_easy_setopt(curl, CURLOPT_NOPROXY, NOPROXY_DOMAINS);
|
||||
|
||||
// https://everything.curl.dev/http/post/expect100.html
|
||||
// remove the Expect: header, it will add a second delay to each request,
|
||||
// if the file is uploaded in packets, it will cause the upload time to be longer
|
||||
|
||||
Reference in New Issue
Block a user