Streamable small changes

This commit is contained in:
Jaex 2015-12-03 00:23:12 +02:00
parent 3cf44f6105
commit 85338e3605
3 changed files with 152 additions and 150 deletions

View file

@ -23,11 +23,9 @@ You should have received a copy of the GNU General Public License
#endregion License Information (GPL v3)
using Newtonsoft.Json;
using ShareX.HelpersLib;
using ShareX.UploadersLib.HelperClasses;
using System.Collections.Generic;
using System.Collections.Specialized;
using System.IO;
using System.Threading;
@ -36,9 +34,11 @@ namespace ShareX.UploadersLib.FileUploaders
{
public class Streamable : FileUploader
{
const string Host = "https://api.streamable.com";
string Email;
string Password;
private const string Host = "https://api.streamable.com";
public string Email { get; private set; }
public string Password { get; private set; }
public Streamable(string email, string password)
{
Email = email;
@ -47,27 +47,25 @@ public Streamable(string email, string password)
public override UploadResult Upload(Stream stream, string fileName)
{
Dictionary<string, string> args = new Dictionary<string, string>();
NameValueCollection headers = new NameValueCollection();
if (Email != "" && Password != "") {
headers.Add("Authorization", "Basic " + System.Convert.ToBase64String(System.Text.Encoding.ASCII.GetBytes(Email + ":" + Password)));
NameValueCollection headers = null;
if (!string.IsNullOrEmpty(Email) && !string.IsNullOrEmpty(Password))
{
headers = CreateAuthenticationHeader(Email, Password);
}
UploadResult result = UploadData(stream, Host + "/upload", fileName, "file", args, headers);
UploadResult result = UploadData(stream, URLHelpers.CombineURL(Host, "upload"), fileName, headers: headers);
TranscodeFile(result);
return result;
}
private void GetShortcode()
{
}
private void TranscodeFile(UploadResult result)
{
StreamableTranscodeResponse transcodeResponse = JsonConvert.DeserializeObject<StreamableTranscodeResponse>(result.Response);
if (transcodeResponse.Shortcode != null)
if (!string.IsNullOrEmpty(transcodeResponse.Shortcode))
{
ProgressManager progress = new ProgressManager(100);
@ -78,7 +76,7 @@ private void TranscodeFile(UploadResult result)
while (!StopUploadRequested)
{
string statusJson = SendRequest(HttpMethod.GET, Host + "/videos/" + transcodeResponse.Shortcode);
string statusJson = SendRequest(HttpMethod.GET, URLHelpers.CombineURL(Host, "videos", transcodeResponse.Shortcode));
StreamableStatusResponse response = JsonConvert.DeserializeObject<StreamableStatusResponse>(statusJson);
if (response.Status > 2)
@ -97,7 +95,7 @@ private void TranscodeFile(UploadResult result)
}
result.IsSuccess = true;
result.URL = "https://streamable.com/" + transcodeResponse.Shortcode;
result.URL = URLHelpers.CombineURL("https://streamable.com", transcodeResponse.Shortcode);
break;
}
@ -124,6 +122,7 @@ public class StreamableTranscodeResponse
public string Shortcode { get; set; }
public int Status { get; set; }
}
public class StreamableStatusResponse
{
public int Status { get; set; }

View file

@ -359,6 +359,12 @@ private void InitializeComponent()
this.txtSeafileAuthToken = new System.Windows.Forms.TextBox();
this.lblSeafileAuthToken = new System.Windows.Forms.Label();
this.lblSeafileAPIURL = new System.Windows.Forms.Label();
this.tpStreamable = new System.Windows.Forms.TabPage();
this.txtStreamablePassword = new System.Windows.Forms.TextBox();
this.txtStreamableUsername = new System.Windows.Forms.TextBox();
this.lblStreamableUsername = new System.Windows.Forms.Label();
this.lblStreamablePassword = new System.Windows.Forms.Label();
this.cbStreamableAnonymous = new System.Windows.Forms.CheckBox();
this.tpEmail = new System.Windows.Forms.TabPage();
this.chkEmailConfirm = new System.Windows.Forms.CheckBox();
this.lblEmailSmtpServer = new System.Windows.Forms.Label();
@ -500,12 +506,6 @@ private void InitializeComponent()
this.lblWidthHint = new System.Windows.Forms.Label();
this.ttlvMain = new ShareX.HelpersLib.TabToListView();
this.actRapidShareAccountType = new ShareX.UploadersLib.AccountTypeControl();
this.tpStreamable = new System.Windows.Forms.TabPage();
this.txtStreamablePassword = new System.Windows.Forms.TextBox();
this.txtStreamableUsername = new System.Windows.Forms.TextBox();
this.lblStreamableUsername = new System.Windows.Forms.Label();
this.lblStreamablePassword = new System.Windows.Forms.Label();
this.cbStreamableAnonymous = new System.Windows.Forms.CheckBox();
this.tpOtherUploaders.SuspendLayout();
this.tcOtherUploaders.SuspendLayout();
this.tpTwitter.SuspendLayout();
@ -554,6 +554,7 @@ private void InitializeComponent()
((System.ComponentModel.ISupportInitialize)(this.nudSeafileExpireDays)).BeginInit();
this.grpSeafileAccInfo.SuspendLayout();
this.grpSeafileObtainAuthToken.SuspendLayout();
this.tpStreamable.SuspendLayout();
this.tpEmail.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.nudEmailSmtpPort)).BeginInit();
this.tpSharedFolder.SuspendLayout();
@ -578,7 +579,6 @@ private void InitializeComponent()
this.tpPicasa.SuspendLayout();
this.tpChevereto.SuspendLayout();
this.tcUploaders.SuspendLayout();
this.tpStreamable.SuspendLayout();
this.SuspendLayout();
//
// txtRapidSharePremiumUserName
@ -2984,6 +2984,47 @@ private void InitializeComponent()
resources.ApplyResources(this.lblSeafileAPIURL, "lblSeafileAPIURL");
this.lblSeafileAPIURL.Name = "lblSeafileAPIURL";
//
// tpStreamable
//
this.tpStreamable.Controls.Add(this.txtStreamablePassword);
this.tpStreamable.Controls.Add(this.txtStreamableUsername);
this.tpStreamable.Controls.Add(this.lblStreamableUsername);
this.tpStreamable.Controls.Add(this.lblStreamablePassword);
this.tpStreamable.Controls.Add(this.cbStreamableAnonymous);
resources.ApplyResources(this.tpStreamable, "tpStreamable");
this.tpStreamable.Name = "tpStreamable";
this.tpStreamable.UseVisualStyleBackColor = true;
//
// txtStreamablePassword
//
resources.ApplyResources(this.txtStreamablePassword, "txtStreamablePassword");
this.txtStreamablePassword.Name = "txtStreamablePassword";
this.txtStreamablePassword.UseSystemPasswordChar = true;
this.txtStreamablePassword.TextChanged += new System.EventHandler(this.txtStreamablePassword_TextChanged);
//
// txtStreamableUsername
//
resources.ApplyResources(this.txtStreamableUsername, "txtStreamableUsername");
this.txtStreamableUsername.Name = "txtStreamableUsername";
this.txtStreamableUsername.TextChanged += new System.EventHandler(this.txtStreamableUsername_TextChanged);
//
// lblStreamableUsername
//
resources.ApplyResources(this.lblStreamableUsername, "lblStreamableUsername");
this.lblStreamableUsername.Name = "lblStreamableUsername";
//
// lblStreamablePassword
//
resources.ApplyResources(this.lblStreamablePassword, "lblStreamablePassword");
this.lblStreamablePassword.Name = "lblStreamablePassword";
//
// cbStreamableAnonymous
//
resources.ApplyResources(this.cbStreamableAnonymous, "cbStreamableAnonymous");
this.cbStreamableAnonymous.Name = "cbStreamableAnonymous";
this.cbStreamableAnonymous.UseVisualStyleBackColor = true;
this.cbStreamableAnonymous.CheckedChanged += new System.EventHandler(this.cboxStreamableAnonymous_CheckedChanged);
//
// tpEmail
//
this.tpEmail.Controls.Add(this.chkEmailConfirm);
@ -4005,47 +4046,6 @@ private void InitializeComponent()
this.actRapidShareAccountType.Name = "actRapidShareAccountType";
this.actRapidShareAccountType.SelectedAccountType = ShareX.UploadersLib.AccountType.Anonymous;
//
// tpStreamable
//
this.tpStreamable.Controls.Add(this.txtStreamablePassword);
this.tpStreamable.Controls.Add(this.txtStreamableUsername);
this.tpStreamable.Controls.Add(this.lblStreamableUsername);
this.tpStreamable.Controls.Add(this.lblStreamablePassword);
this.tpStreamable.Controls.Add(this.cbStreamableAnonymous);
resources.ApplyResources(this.tpStreamable, "tpStreamable");
this.tpStreamable.Name = "tpStreamable";
this.tpStreamable.UseVisualStyleBackColor = true;
//
// txtStreamablePassword
//
resources.ApplyResources(this.txtStreamablePassword, "txtStreamablePassword");
this.txtStreamablePassword.Name = "txtStreamablePassword";
this.txtStreamablePassword.UseSystemPasswordChar = true;
this.txtStreamablePassword.TextChanged += new System.EventHandler(this.txtStreamablePassword_TextChanged);
//
// txtStreamableUsername
//
resources.ApplyResources(this.txtStreamableUsername, "txtStreamableUsername");
this.txtStreamableUsername.Name = "txtStreamableUsername";
this.txtStreamableUsername.TextChanged += new System.EventHandler(this.txtStreamableUsername_TextChanged);
//
// lblStreamableUsername
//
resources.ApplyResources(this.lblStreamableUsername, "lblStreamableUsername");
this.lblStreamableUsername.Name = "lblStreamableUsername";
//
// lblStreamablePassword
//
resources.ApplyResources(this.lblStreamablePassword, "lblStreamablePassword");
this.lblStreamablePassword.Name = "lblStreamablePassword";
//
// cboxStreamableAnonymous
//
resources.ApplyResources(this.cbStreamableAnonymous, "cboxStreamableAnonymous");
this.cbStreamableAnonymous.Name = "cboxStreamableAnonymous";
this.cbStreamableAnonymous.UseVisualStyleBackColor = true;
this.cbStreamableAnonymous.CheckedChanged += new System.EventHandler(this.cboxStreamableAnonymous_CheckedChanged);
//
// UploadersConfigForm
//
resources.ApplyResources(this, "$this");
@ -4143,6 +4143,8 @@ private void InitializeComponent()
this.grpSeafileAccInfo.PerformLayout();
this.grpSeafileObtainAuthToken.ResumeLayout(false);
this.grpSeafileObtainAuthToken.PerformLayout();
this.tpStreamable.ResumeLayout(false);
this.tpStreamable.PerformLayout();
this.tpEmail.ResumeLayout(false);
this.tpEmail.PerformLayout();
((System.ComponentModel.ISupportInitialize)(this.nudEmailSmtpPort)).EndInit();
@ -4183,8 +4185,6 @@ private void InitializeComponent()
this.tpChevereto.ResumeLayout(false);
this.tpChevereto.PerformLayout();
this.tcUploaders.ResumeLayout(false);
this.tpStreamable.ResumeLayout(false);
this.tpStreamable.PerformLayout();
this.ResumeLayout(false);
}

View file

@ -486,7 +486,7 @@ For example, if your bucket is called bucket.example.com then URL will be http:/
</data>
<data name="tpTwitter.Text" xml:space="preserve">
<value>Twitter</value>
<comment>@Invariant</comment></data>
</data>
<data name="&gt;&gt;tpTwitter.Name" xml:space="preserve">
<value>tpTwitter</value>
</data>
@ -1921,6 +1921,9 @@ For example, if your bucket is called bucket.example.com then URL will be http:/
<data name="txtCustomUploaderLog.TabIndex" type="System.Int32, mscorlib">
<value>30</value>
</data>
<data name="txtCustomUploaderLog.Text" xml:space="preserve">
<value />
</data>
<data name="&gt;&gt;txtCustomUploaderLog.Name" xml:space="preserve">
<value>txtCustomUploaderLog</value>
</data>
@ -2082,7 +2085,7 @@ For example, if your bucket is called bucket.example.com then URL will be http:/
</data>
<data name="lblCustomUploaderURL.Text" xml:space="preserve">
<value>URL:</value>
<comment>@Invariant</comment></data>
</data>
<data name="&gt;&gt;lblCustomUploaderURL.Name" xml:space="preserve">
<value>lblCustomUploaderURL</value>
</data>
@ -2259,7 +2262,7 @@ For example, if your bucket is called bucket.example.com then URL will be http:/
</data>
<data name="tpBitly.Text" xml:space="preserve">
<value>bit.ly</value>
<comment>@Invariant</comment></data>
</data>
<data name="&gt;&gt;tpBitly.Name" xml:space="preserve">
<value>tpBitly</value>
</data>
@ -2328,7 +2331,7 @@ For example, if your bucket is called bucket.example.com then URL will be http:/
</data>
<data name="tpGoogleURLShortener.Text" xml:space="preserve">
<value>Google</value>
<comment>@Invariant</comment></data>
</data>
<data name="&gt;&gt;tpGoogleURLShortener.Name" xml:space="preserve">
<value>tpGoogleURLShortener</value>
</data>
@ -2562,7 +2565,7 @@ For example, if your bucket is called bucket.example.com then URL will be http:/
</data>
<data name="lblYourlsAPIURL.Text" xml:space="preserve">
<value>API URL:</value>
<comment>@Invariant</comment></data>
</data>
<data name="&gt;&gt;lblYourlsAPIURL.Name" xml:space="preserve">
<value>lblYourlsAPIURL</value>
</data>
@ -2589,7 +2592,7 @@ For example, if your bucket is called bucket.example.com then URL will be http:/
</data>
<data name="tpYourls.Text" xml:space="preserve">
<value>YOURLS</value>
<comment>@Invariant</comment></data>
</data>
<data name="&gt;&gt;tpYourls.Name" xml:space="preserve">
<value>tpYourls</value>
</data>
@ -2670,7 +2673,7 @@ For example, if your bucket is called bucket.example.com then URL will be http:/
</data>
<data name="lblAdflyAPIUID.Text" xml:space="preserve">
<value>API UID:</value>
<comment>@Invariant</comment></data>
</data>
<data name="&gt;&gt;lblAdflyAPIUID.Name" xml:space="preserve">
<value>lblAdflyAPIUID</value>
</data>
@ -2748,7 +2751,7 @@ For example, if your bucket is called bucket.example.com then URL will be http:/
</data>
<data name="tpAdFly.Text" xml:space="preserve">
<value>adf.ly</value>
<comment>@Invariant</comment></data>
</data>
<data name="&gt;&gt;tpAdFly.Name" xml:space="preserve">
<value>tpAdFly</value>
</data>
@ -2799,7 +2802,7 @@ For example, if your bucket is called bucket.example.com then URL will be http:/
</data>
<data name="lblCoinURLUUID.Text" xml:space="preserve">
<value>UUID:</value>
<comment>@Invariant</comment></data>
</data>
<data name="&gt;&gt;lblCoinURLUUID.Name" xml:space="preserve">
<value>lblCoinURLUUID</value>
</data>
@ -2823,7 +2826,7 @@ For example, if your bucket is called bucket.example.com then URL will be http:/
</data>
<data name="tpCoinURL.Text" xml:space="preserve">
<value>CoinURL</value>
<comment>@Invariant</comment></data>
</data>
<data name="&gt;&gt;tpCoinURL.Name" xml:space="preserve">
<value>tpCoinURL</value>
</data>
@ -2949,7 +2952,7 @@ For example, if your bucket is called bucket.example.com then URL will be http:/
</data>
<data name="tpPolr.Text" xml:space="preserve">
<value>Polr</value>
<comment>@Invariant</comment></data>
</data>
<data name="&gt;&gt;tpPolr.Name" xml:space="preserve">
<value>tpPolr</value>
</data>
@ -3255,7 +3258,7 @@ For example, if your bucket is called bucket.example.com then URL will be http:/
</data>
<data name="tpFTP.Text" xml:space="preserve">
<value>FTP</value>
<comment>@Invariant</comment></data>
</data>
<data name="&gt;&gt;tpFTP.Name" xml:space="preserve">
<value>tpFTP</value>
</data>
@ -3638,7 +3641,7 @@ For example, if your bucket is called bucket.example.com then URL will be http:/
</data>
<data name="tpDropbox.Text" xml:space="preserve">
<value>Dropbox</value>
<comment>@Invariant</comment></data>
</data>
<data name="&gt;&gt;tpDropbox.Name" xml:space="preserve">
<value>tpDropbox</value>
</data>
@ -3770,7 +3773,7 @@ For example, if your bucket is called bucket.example.com then URL will be http:/
</data>
<data name="tpOneDrive.Text" xml:space="preserve">
<value>OneDrive</value>
<comment>@Invariant</comment></data>
</data>
<data name="&gt;&gt;tpOneDrive.Name" xml:space="preserve">
<value>tpOneDrive</value>
</data>
@ -3992,7 +3995,7 @@ For example, if your bucket is called bucket.example.com then URL will be http:/
</data>
<data name="tpGoogleDrive.Text" xml:space="preserve">
<value>Google Drive</value>
<comment>@Invariant</comment></data>
</data>
<data name="&gt;&gt;tpGoogleDrive.Name" xml:space="preserve">
<value>tpGoogleDrive</value>
</data>
@ -4187,7 +4190,7 @@ For example, if your bucket is called bucket.example.com then URL will be http:/
</data>
<data name="tpBox.Text" xml:space="preserve">
<value>Box</value>
<comment>@Invariant</comment></data>
</data>
<data name="&gt;&gt;tpBox.Name" xml:space="preserve">
<value>tpBox</value>
</data>
@ -4481,7 +4484,7 @@ For example, if your bucket is called bucket.example.com then URL will be http:/
</data>
<data name="tpCopy.Text" xml:space="preserve">
<value>Copy</value>
<comment>@Invariant</comment></data>
</data>
<data name="&gt;&gt;tpCopy.Name" xml:space="preserve">
<value>tpCopy</value>
</data>
@ -4589,7 +4592,7 @@ For example, if your bucket is called bucket.example.com then URL will be http:/
</data>
<data name="btnAmazonS3BucketNameOpen.Text" xml:space="preserve">
<value>...</value>
<comment>@Invariant</comment></data>
</data>
<data name="&gt;&gt;btnAmazonS3BucketNameOpen.Name" xml:space="preserve">
<value>btnAmazonS3BucketNameOpen</value>
</data>
@ -4616,7 +4619,7 @@ For example, if your bucket is called bucket.example.com then URL will be http:/
</data>
<data name="btnAmazonS3AccessKeyOpen.Text" xml:space="preserve">
<value>...</value>
<comment>@Invariant</comment></data>
</data>
<data name="&gt;&gt;btnAmazonS3AccessKeyOpen.Name" xml:space="preserve">
<value>btnAmazonS3AccessKeyOpen</value>
</data>
@ -4898,7 +4901,7 @@ For example, if your bucket is called bucket.example.com then URL will be http:/
</data>
<data name="tpAmazonS3.Text" xml:space="preserve">
<value>Amazon S3</value>
<comment>@Invariant</comment></data>
</data>
<data name="&gt;&gt;tpAmazonS3.Name" xml:space="preserve">
<value>tpAmazonS3</value>
</data>
@ -5216,7 +5219,7 @@ For example, if your bucket is called bucket.example.com then URL will be http:/
</data>
<data name="tpMega.Text" xml:space="preserve">
<value>Mega</value>
<comment>@Invariant</comment></data>
</data>
<data name="&gt;&gt;tpMega.Name" xml:space="preserve">
<value>tpMega</value>
</data>
@ -5567,7 +5570,7 @@ For example, if your bucket is called bucket.example.com then URL will be http:/
</data>
<data name="tpOwnCloud.Text" xml:space="preserve">
<value>ownCloud</value>
<comment>@Invariant</comment></data>
</data>
<data name="&gt;&gt;tpOwnCloud.Name" xml:space="preserve">
<value>tpOwnCloud</value>
</data>
@ -5780,7 +5783,7 @@ For example, if your bucket is called bucket.example.com then URL will be http:/
</data>
<data name="tpMediaFire.Text" xml:space="preserve">
<value>MediaFire</value>
<comment>@Invariant</comment></data>
</data>
<data name="&gt;&gt;tpMediaFire.Name" xml:space="preserve">
<value>tpMediaFire</value>
</data>
@ -5942,7 +5945,7 @@ For example, if your bucket is called bucket.example.com then URL will be http:/
</data>
<data name="tpPushbullet.Text" xml:space="preserve">
<value>Pushbullet</value>
<comment>@Invariant</comment></data>
</data>
<data name="&gt;&gt;tpPushbullet.Name" xml:space="preserve">
<value>tpPushbullet</value>
</data>
@ -6119,7 +6122,7 @@ For example, if your bucket is called bucket.example.com then URL will be http:/
</data>
<data name="tpSendSpace.Text" xml:space="preserve">
<value>SendSpace</value>
<comment>@Invariant</comment></data>
</data>
<data name="&gt;&gt;tpSendSpace.Name" xml:space="preserve">
<value>tpSendSpace</value>
</data>
@ -6305,7 +6308,7 @@ For example, if your bucket is called bucket.example.com then URL will be http:/
</data>
<data name="tpGe_tt.Text" xml:space="preserve">
<value>Ge.tt</value>
<comment>@Invariant</comment></data>
</data>
<data name="&gt;&gt;tpGe_tt.Name" xml:space="preserve">
<value>tpGe_tt</value>
</data>
@ -6464,7 +6467,7 @@ For example, if your bucket is called bucket.example.com then URL will be http:/
</data>
<data name="tpHostr.Text" xml:space="preserve">
<value>Hostr</value>
<comment>@Invariant</comment></data>
</data>
<data name="&gt;&gt;tpHostr.Name" xml:space="preserve">
<value>tpHostr</value>
</data>
@ -6914,7 +6917,7 @@ For example, if your bucket is called bucket.example.com then URL will be http:/
</data>
<data name="tpMinus.Text" xml:space="preserve">
<value>Minus</value>
<comment>@Invariant</comment></data>
</data>
<data name="&gt;&gt;tpMinus.Name" xml:space="preserve">
<value>tpMinus</value>
</data>
@ -6938,7 +6941,7 @@ For example, if your bucket is called bucket.example.com then URL will be http:/
</data>
<data name="txtJiraIssuePrefix.Text" xml:space="preserve">
<value>PROJECT-</value>
<comment>@Invariant</comment></data>
</data>
<data name="&gt;&gt;txtJiraIssuePrefix.Name" xml:space="preserve">
<value>txtJiraIssuePrefix</value>
</data>
@ -7022,7 +7025,7 @@ For example, if your bucket is called bucket.example.com then URL will be http:/
</data>
<data name="txtJiraHost.Text" xml:space="preserve">
<value>http://</value>
<comment>@Invariant</comment></data>
</data>
<data name="&gt;&gt;txtJiraHost.Name" xml:space="preserve">
<value>txtJiraHost</value>
</data>
@ -7121,7 +7124,7 @@ For example, if your bucket is called bucket.example.com then URL will be http:/
</data>
<data name="tpJira.Text" xml:space="preserve">
<value>Atlassian Jira</value>
<comment>@Invariant</comment></data>
</data>
<data name="&gt;&gt;tpJira.Name" xml:space="preserve">
<value>tpJira</value>
</data>
@ -7280,7 +7283,7 @@ For example, if your bucket is called bucket.example.com then URL will be http:/
</data>
<data name="tpLambda.Text" xml:space="preserve">
<value>Lambda</value>
<comment>@Invariant</comment></data>
</data>
<data name="&gt;&gt;tpLambda.Name" xml:space="preserve">
<value>tpLambda</value>
</data>
@ -7484,7 +7487,7 @@ For example, if your bucket is called bucket.example.com then URL will be http:/
</data>
<data name="tpPomf.Text" xml:space="preserve">
<value>Pomf</value>
<comment>@Invariant</comment></data>
</data>
<data name="&gt;&gt;tpPomf.Name" xml:space="preserve">
<value>tpPomf</value>
</data>
@ -7625,7 +7628,7 @@ For example, if your bucket is called bucket.example.com then URL will be http:/
</data>
<data name="tpUp1.Text" xml:space="preserve">
<value>Up1</value>
<comment>@Invariant</comment></data>
</data>
<data name="&gt;&gt;tpUp1.Name" xml:space="preserve">
<value>tpUp1</value>
</data>
@ -7640,10 +7643,10 @@ For example, if your bucket is called bucket.example.com then URL will be http:/
</data>
<data name="cbSeafileAPIURL.Items" xml:space="preserve">
<value>https://seacloud.cc/api2/</value>
<comment>@Invariant</comment></data>
</data>
<data name="cbSeafileAPIURL.Items1" xml:space="preserve">
<value>https://cloud.mein-seafile.de/api2/</value>
<comment>@Invariant</comment></data>
</data>
<data name="cbSeafileAPIURL.Location" type="System.Drawing.Point, System.Drawing">
<value>16, 32</value>
</data>
@ -8559,7 +8562,7 @@ Using an encrypted library disables sharing.</value>
</data>
<data name="lblSeafileAPIURL.Text" xml:space="preserve">
<value>API URL:</value>
<comment>@Invariant</comment></data>
</data>
<data name="&gt;&gt;lblSeafileAPIURL.Name" xml:space="preserve">
<value>lblSeafileAPIURL</value>
</data>
@ -8586,7 +8589,7 @@ Using an encrypted library disables sharing.</value>
</data>
<data name="tpSeafile.Text" xml:space="preserve">
<value>Seafile</value>
<comment>@Invariant</comment></data>
</data>
<data name="&gt;&gt;tpSeafile.Name" xml:space="preserve">
<value>tpSeafile</value>
</data>
@ -8599,14 +8602,14 @@ Using an encrypted library disables sharing.</value>
<data name="&gt;&gt;tpSeafile.ZOrder" xml:space="preserve">
<value>19</value>
</data>
<data name="txtStreamablePassword.Location" type="System.Drawing.Point, System.Drawing">
<value>45, 200</value>
<data name="txtStreamablePassword.Location" type="System.Drawing.Point, System.Drawing">
<value>16, 104</value>
</data>
<data name="txtStreamablePassword.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>6, 6, 6, 6</value>
</data>
<data name="txtStreamablePassword.Size" type="System.Drawing.Size, System.Drawing">
<value>372, 31</value>
<value>372, 20</value>
</data>
<data name="txtStreamablePassword.TabIndex" type="System.Int32, mscorlib">
<value>17</value>
@ -8624,13 +8627,13 @@ Using an encrypted library disables sharing.</value>
<value>0</value>
</data>
<data name="txtStreamableUsername.Location" type="System.Drawing.Point, System.Drawing">
<value>47, 115</value>
<value>16, 56</value>
</data>
<data name="txtStreamableUsername.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>6, 6, 6, 6</value>
</data>
<data name="txtStreamableUsername.Size" type="System.Drawing.Size, System.Drawing">
<value>372, 31</value>
<value>372, 20</value>
</data>
<data name="txtStreamableUsername.TabIndex" type="System.Int32, mscorlib">
<value>16</value>
@ -8654,13 +8657,13 @@ Using an encrypted library disables sharing.</value>
<value>NoControl</value>
</data>
<data name="lblStreamableUsername.Location" type="System.Drawing.Point, System.Drawing">
<value>39, 85</value>
<value>13, 40</value>
</data>
<data name="lblStreamableUsername.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>6, 0, 6, 0</value>
</data>
<data name="lblStreamableUsername.Size" type="System.Drawing.Size, System.Drawing">
<value>116, 25</value>
<value>58, 13</value>
</data>
<data name="lblStreamableUsername.TabIndex" type="System.Int32, mscorlib">
<value>18</value>
@ -8687,13 +8690,13 @@ Using an encrypted library disables sharing.</value>
<value>NoControl</value>
</data>
<data name="lblStreamablePassword.Location" type="System.Drawing.Point, System.Drawing">
<value>39, 169</value>
<value>13, 88</value>
</data>
<data name="lblStreamablePassword.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>6, 0, 6, 0</value>
</data>
<data name="lblStreamablePassword.Size" type="System.Drawing.Size, System.Drawing">
<value>112, 25</value>
<value>56, 13</value>
</data>
<data name="lblStreamablePassword.TabIndex" type="System.Int32, mscorlib">
<value>19</value>
@ -8713,44 +8716,44 @@ Using an encrypted library disables sharing.</value>
<data name="&gt;&gt;lblStreamablePassword.ZOrder" xml:space="preserve">
<value>3</value>
</data>
<data name="cboxStreamableAnonymous.AutoSize" type="System.Boolean, mscorlib">
<data name="cbStreamableAnonymous.AutoSize" type="System.Boolean, mscorlib">
<value>True</value>
</data>
<data name="cboxStreamableAnonymous.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
<data name="cbStreamableAnonymous.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
<value>NoControl</value>
</data>
<data name="cboxStreamableAnonymous.Location" type="System.Drawing.Point, System.Drawing">
<value>47, 31</value>
<data name="cbStreamableAnonymous.Location" type="System.Drawing.Point, System.Drawing">
<value>16, 16</value>
</data>
<data name="cboxStreamableAnonymous.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<data name="cbStreamableAnonymous.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>6, 6, 6, 6</value>
</data>
<data name="cboxStreamableAnonymous.Size" type="System.Drawing.Size, System.Drawing">
<value>157, 29</value>
<data name="cbStreamableAnonymous.Size" type="System.Drawing.Size, System.Drawing">
<value>81, 17</value>
</data>
<data name="cboxStreamableAnonymous.TabIndex" type="System.Int32, mscorlib">
<data name="cbStreamableAnonymous.TabIndex" type="System.Int32, mscorlib">
<value>15</value>
</data>
<data name="cboxStreamableAnonymous.Text" xml:space="preserve">
<data name="cbStreamableAnonymous.Text" xml:space="preserve">
<value>Anonymous</value>
</data>
<data name="&gt;&gt;cboxStreamableAnonymous.Name" xml:space="preserve">
<value>cboxStreamableAnonymous</value>
<data name="&gt;&gt;cbStreamableAnonymous.Name" xml:space="preserve">
<value>cbStreamableAnonymous</value>
</data>
<data name="&gt;&gt;cboxStreamableAnonymous.Type" xml:space="preserve">
<data name="&gt;&gt;cbStreamableAnonymous.Type" xml:space="preserve">
<value>System.Windows.Forms.CheckBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;cboxStreamableAnonymous.Parent" xml:space="preserve">
<data name="&gt;&gt;cbStreamableAnonymous.Parent" xml:space="preserve">
<value>tpStreamable</value>
</data>
<data name="&gt;&gt;cboxStreamableAnonymous.ZOrder" xml:space="preserve">
<data name="&gt;&gt;cbStreamableAnonymous.ZOrder" xml:space="preserve">
<value>4</value>
</data>
<data name="tpStreamable.Location" type="System.Drawing.Point, System.Drawing">
<value>8, 70</value>
<value>4, 40</value>
</data>
<data name="tpStreamable.Size" type="System.Drawing.Size, System.Drawing">
<value>1944, 922</value>
<value>972, 475</value>
</data>
<data name="tpStreamable.TabIndex" type="System.Int32, mscorlib">
<value>24</value>
@ -9167,7 +9170,7 @@ Using an encrypted library disables sharing.</value>
<value>tcFileUploaders</value>
</data>
<data name="&gt;&gt;tpEmail.ZOrder" xml:space="preserve">
<value>20</value>
<value>21</value>
</data>
<data name="lblSharedFolderFiles.AutoSize" type="System.Boolean, mscorlib">
<value>True</value>
@ -9374,7 +9377,7 @@ Using an encrypted library disables sharing.</value>
<value>tcFileUploaders</value>
</data>
<data name="&gt;&gt;tpSharedFolder.ZOrder" xml:space="preserve">
<value>21</value>
<value>22</value>
</data>
<data name="tcFileUploaders.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
<value>Fill</value>
@ -9849,7 +9852,7 @@ Using an encrypted library disables sharing.</value>
</data>
<data name="tpPastebin.Text" xml:space="preserve">
<value>Pastebin</value>
<comment>@Invariant</comment></data>
</data>
<data name="&gt;&gt;tpPastebin.Name" xml:space="preserve">
<value>tpPastebin</value>
</data>
@ -9927,7 +9930,7 @@ Using an encrypted library disables sharing.</value>
</data>
<data name="tpPaste_ee.Text" xml:space="preserve">
<value>Paste.ee</value>
<comment>@Invariant</comment></data>
</data>
<data name="&gt;&gt;tpPaste_ee.Name" xml:space="preserve">
<value>tpPaste_ee</value>
</data>
@ -10026,7 +10029,7 @@ Using an encrypted library disables sharing.</value>
</data>
<data name="tpGist.Text" xml:space="preserve">
<value>Gist</value>
<comment>@Invariant</comment></data>
</data>
<data name="&gt;&gt;tpGist.Name" xml:space="preserve">
<value>tpGist</value>
</data>
@ -10134,7 +10137,7 @@ Using an encrypted library disables sharing.</value>
</data>
<data name="tpUpaste.Text" xml:space="preserve">
<value>uPaste</value>
<comment>@Invariant</comment></data>
</data>
<data name="&gt;&gt;tpUpaste.Name" xml:space="preserve">
<value>tpUpaste</value>
</data>
@ -10263,7 +10266,7 @@ Using an encrypted library disables sharing.</value>
</data>
<data name="tpHastebin.Text" xml:space="preserve">
<value>Hastebin</value>
<comment>@Invariant</comment></data>
</data>
<data name="&gt;&gt;tpHastebin.Name" xml:space="preserve">
<value>tpHastebin</value>
</data>
@ -10392,7 +10395,7 @@ Using an encrypted library disables sharing.</value>
</data>
<data name="tpOneTimeSecret.Text" xml:space="preserve">
<value>OneTimeSecret</value>
<comment>@Invariant</comment></data>
</data>
<data name="&gt;&gt;tpOneTimeSecret.Name" xml:space="preserve">
<value>tpOneTimeSecret</value>
</data>
@ -10590,7 +10593,7 @@ Using an encrypted library disables sharing.</value>
</data>
<data name="chImgurID.Text" xml:space="preserve">
<value>ID</value>
<comment>@Invariant</comment></data>
</data>
<data name="chImgurTitle.Text" xml:space="preserve">
<value>Title</value>
</data>
@ -10719,7 +10722,7 @@ Using an encrypted library disables sharing.</value>
</data>
<data name="tpImgur.Text" xml:space="preserve">
<value>Imgur</value>
<comment>@Invariant</comment></data>
</data>
<data name="&gt;&gt;tpImgur.Name" xml:space="preserve">
<value>tpImgur</value>
</data>
@ -10959,7 +10962,7 @@ Using an encrypted library disables sharing.</value>
</data>
<data name="tpImageShack.Text" xml:space="preserve">
<value>ImageShack</value>
<comment>@Invariant</comment></data>
</data>
<data name="&gt;&gt;tpImageShack.Name" xml:space="preserve">
<value>tpImageShack</value>
</data>
@ -11163,7 +11166,7 @@ Using an encrypted library disables sharing.</value>
</data>
<data name="tpTinyPic.Text" xml:space="preserve">
<value>TinyPic</value>
<comment>@Invariant</comment></data>
</data>
<data name="&gt;&gt;tpTinyPic.Name" xml:space="preserve">
<value>tpTinyPic</value>
</data>
@ -11343,7 +11346,7 @@ Using an encrypted library disables sharing.</value>
</data>
<data name="tpFlickr.Text" xml:space="preserve">
<value>Flickr</value>
<comment>@Invariant</comment></data>
</data>
<data name="&gt;&gt;tpFlickr.Name" xml:space="preserve">
<value>tpFlickr</value>
</data>
@ -11835,7 +11838,7 @@ Using an encrypted library disables sharing.</value>
</data>
<data name="tpPhotobucket.Text" xml:space="preserve">
<value>Photobucket</value>
<comment>@Invariant</comment></data>
</data>
<data name="&gt;&gt;tpPhotobucket.Name" xml:space="preserve">
<value>tpPhotobucket</value>
</data>
@ -11901,7 +11904,7 @@ Using an encrypted library disables sharing.</value>
</data>
<data name="chPicasaID.Text" xml:space="preserve">
<value>ID</value>
<comment>@Invariant</comment></data>
</data>
<data name="chPicasaID.Width" type="System.Int32, mscorlib">
<value>135</value>
</data>
@ -12003,7 +12006,7 @@ Using an encrypted library disables sharing.</value>
</data>
<data name="tpPicasa.Text" xml:space="preserve">
<value>Picasa</value>
<comment>@Invariant</comment></data>
</data>
<data name="&gt;&gt;tpPicasa.Name" xml:space="preserve">
<value>tpPicasa</value>
</data>
@ -12063,7 +12066,7 @@ Using an encrypted library disables sharing.</value>
</data>
<data name="lblCheveretoWebsiteTip.Text" xml:space="preserve">
<value>/api/1/upload</value>
<comment>@Invariant</comment></data>
</data>
<data name="&gt;&gt;lblCheveretoWebsiteTip.Name" xml:space="preserve">
<value>lblCheveretoWebsiteTip</value>
</data>
@ -12192,7 +12195,7 @@ Using an encrypted library disables sharing.</value>
</data>
<data name="tpChevereto.Text" xml:space="preserve">
<value>Chevereto</value>
<comment>@Invariant</comment></data>
</data>
<data name="&gt;&gt;tpChevereto.Name" xml:space="preserve">
<value>tpChevereto</value>
</data>