mirror of
https://github.com/OrcaSlicer/OrcaSlicer.git
synced 2026-09-13 03:57:34 +00:00
Merge pull request #127 from Snapmaker/dev_bug_fixed_2.3.0_alves
Dev bug fixed 2.3.0 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">
|
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||||
<plist version="1.0">
|
<plist version="1.0">
|
||||||
<dict>
|
<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>
|
<key>com.apple.security.cs.disable-library-validation</key>
|
||||||
<true/>
|
<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>
|
</dict>
|
||||||
</plist>
|
</plist>
|
||||||
|
|||||||
@@ -963,7 +963,7 @@ void GUI_App::post_init()
|
|||||||
std::string language = GUI::into_u8(current_language_code());
|
std::string language = GUI::into_u8(current_language_code());
|
||||||
std::string network_ver = Slic3r::NetworkAgent::get_version();
|
std::string network_ver = Slic3r::NetworkAgent::get_version();
|
||||||
bool sys_preset = app_config->get("sync_system_preset") == "true";
|
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->preset_updater->sync_web_async(true);
|
||||||
this->check_new_version_sf(false, false);
|
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())
|
else if (is_finished && evt.finished())
|
||||||
{
|
{
|
||||||
auto strTime = get_works_time(duration_ms);
|
//auto strTime = get_works_time(duration_ms);
|
||||||
auto slice_time = BP_SLICE_DURATION_TIME + std::string(":") + strTime;
|
//auto slice_time = BP_SLICE_DURATION_TIME + std::string(":") + strTime;
|
||||||
sentryReportLog(SENTRY_LOG_TRACE, slice_time, BP_SLICE_DURATION);
|
//sentryReportLog(SENTRY_LOG_TRACE, slice_time, BP_SLICE_DURATION);
|
||||||
|
|
||||||
m_slice_start_time = {};
|
m_slice_start_time = {};
|
||||||
m_slice_timing_active = false;
|
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->SetSize(wxSize(FromDIP(58), FromDIP(24)));
|
||||||
m_button_download->SetMinSize(wxSize(FromDIP(58), FromDIP(24)));
|
m_button_download->SetMinSize(wxSize(FromDIP(58), FromDIP(24)));
|
||||||
m_button_download->SetCornerRadius(FromDIP(12));
|
m_button_download->SetCornerRadius(FromDIP(12));
|
||||||
|
m_button_download->SetCursor(wxCURSOR_HAND);
|
||||||
|
|
||||||
m_button_download->Bind(wxEVT_LEFT_DOWN, [this](wxMouseEvent &e) {
|
m_button_download->Bind(wxEVT_LEFT_DOWN, [this](wxMouseEvent &e) {
|
||||||
EndModal(wxID_YES);
|
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->SetSize(wxSize(FromDIP(58), FromDIP(24)));
|
||||||
m_button_skip_version->SetMinSize(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->SetCornerRadius(FromDIP(12));
|
||||||
|
m_button_skip_version->SetCursor(wxCURSOR_HAND);
|
||||||
|
|
||||||
m_button_skip_version->Bind(wxEVT_LEFT_DOWN, [this](wxMouseEvent &e) {
|
m_button_skip_version->Bind(wxEVT_LEFT_DOWN, [this](wxMouseEvent &e) {
|
||||||
wxGetApp().set_skip_version(true);
|
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->SetSize(wxSize(FromDIP(58), FromDIP(24)));
|
||||||
m_button_cancel->SetMinSize(wxSize(FromDIP(58), FromDIP(24)));
|
m_button_cancel->SetMinSize(wxSize(FromDIP(58), FromDIP(24)));
|
||||||
m_button_cancel->SetCornerRadius(FromDIP(12));
|
m_button_cancel->SetCornerRadius(FromDIP(12));
|
||||||
|
m_button_cancel->SetCursor(wxCURSOR_HAND);
|
||||||
|
|
||||||
m_button_cancel->Bind(wxEVT_LEFT_DOWN, [this](wxMouseEvent &e) {
|
m_button_cancel->Bind(wxEVT_LEFT_DOWN, [this](wxMouseEvent &e) {
|
||||||
EndModal(wxID_NO);
|
EndModal(wxID_NO);
|
||||||
|
|||||||
@@ -2081,8 +2081,12 @@ void SSWCP_MachineOption_Instance::process()
|
|||||||
sw_ServerClientManagerSetUserinfo();
|
sw_ServerClientManagerSetUserinfo();
|
||||||
} else if (m_cmd == "sw_DefectDetactionConfig"){
|
} else if (m_cmd == "sw_DefectDetactionConfig"){
|
||||||
sw_DefectDetactionConfig();
|
sw_DefectDetactionConfig();
|
||||||
|
} else if (m_cmd == GETCAMERA_TIMELAPSE_INSTANCE) {
|
||||||
|
CmdForwarding();
|
||||||
|
}
|
||||||
|
else if (m_cmd == GET_DEVICEDATA_STORAGESPACE) {
|
||||||
|
CmdForwarding();
|
||||||
}
|
}
|
||||||
|
|
||||||
else {
|
else {
|
||||||
handle_general_fail();
|
handle_general_fail();
|
||||||
}
|
}
|
||||||
@@ -3691,6 +3695,28 @@ void SSWCP_MachineOption_Instance::sw_GetTimelapseInstance()
|
|||||||
handle_general_fail();
|
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()
|
void SSWCP_MachineOption_Instance::sw_DeleteCameraTimelapse()
|
||||||
{
|
{
|
||||||
@@ -5779,7 +5805,9 @@ std::unordered_set<std::string> SSWCP::m_machine_option_cmd_list = {
|
|||||||
"sw_DeleteCameraTimelapse",
|
"sw_DeleteCameraTimelapse",
|
||||||
"sw_GetTimelapseInstance",
|
"sw_GetTimelapseInstance",
|
||||||
"sw_ServerClientManagerSetUserinfo",
|
"sw_ServerClientManagerSetUserinfo",
|
||||||
"sw_DefectDetactionConfig"
|
"sw_DefectDetactionConfig",
|
||||||
|
GETCAMERA_TIMELAPSE_INSTANCE,
|
||||||
|
GET_DEVICEDATA_STORAGESPACE
|
||||||
};
|
};
|
||||||
|
|
||||||
std::unordered_set<std::string> SSWCP::m_machine_connect_cmd_list = {
|
std::unordered_set<std::string> SSWCP::m_machine_connect_cmd_list = {
|
||||||
|
|||||||
@@ -23,7 +23,13 @@ using namespace nlohmann;
|
|||||||
namespace asio = boost::asio;
|
namespace asio = boost::asio;
|
||||||
using tcp = asio::ip::tcp;
|
using tcp = asio::ip::tcp;
|
||||||
|
|
||||||
|
|
||||||
|
//WCP Interface definition
|
||||||
#define UPDATE_PRIVACY_STATUS "sw_SubUserUpdatePrivacy"
|
#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 {
|
namespace Slic3r { namespace GUI {
|
||||||
|
|
||||||
@@ -422,6 +428,7 @@ private:
|
|||||||
|
|
||||||
void sw_DefectDetactionConfig();
|
void sw_DefectDetactionConfig();
|
||||||
|
|
||||||
|
void CmdForwarding();
|
||||||
|
|
||||||
// Download machine file
|
// Download machine file
|
||||||
void sw_DownloadMachineFile();
|
void sw_DownloadMachineFile();
|
||||||
|
|||||||
@@ -165,6 +165,17 @@ static int log_trace(CURL* handle, curl_infotype type,
|
|||||||
return 0;
|
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)
|
Http::priv::priv(const std::string &url)
|
||||||
: curl(::curl_easy_init())
|
: curl(::curl_easy_init())
|
||||||
, form(nullptr)
|
, 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_VERIFYPEER, 0L);
|
||||||
::curl_easy_setopt(curl, CURLOPT_SSL_VERIFYHOST, 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
|
// https://everything.curl.dev/http/post/expect100.html
|
||||||
// remove the Expect: header, it will add a second delay to each request,
|
// 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
|
// if the file is uploaded in packets, it will cause the upload time to be longer
|
||||||
|
|||||||
Reference in New Issue
Block a user