-
Notifications
You must be signed in to change notification settings - Fork 14
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Feature to paste images directly into the textarea without needing image dialog #338
Comments
This SO question is supposed to help, but with my little AJAX experience, I can't figure it out :/ @shu8 do you have some experience uploading images through AJAX? Self-notes: Some useful SO questions:
Concerned Web API: https://developer.mozilla.org/en-US/docs/Web/API/DataTransfer |
@GaurangTandon sure I'll have a look! I've done something very similar in another project so hopefully it won't be too hard to make it work for SOX! |
Great! I did try this myself first though, and interestingly got the 418 error! :O The error reads: "Sorry, your request could not be completed because it looked suspicious". The code is pretty short, and I am unable to figure out what's wrong (my code matches well with what I found in those links above)
I'll again have a look later. Later observations:
Ahh, I am missing the CRSF token :( Any idea where I can get one from, @shu8 ? Or should I post a question on StackApps? |
@GaurangTandon interesting, I couldn't get it to work for the Stack Imgur API, but I could get it to work with the normal imgur api by registering an application. I just pushed what I did -- if we can get it to work with stack's imgur it would be great! to get the fkey I think it is in the Also, something I didn't get whilst I was doing it is why can there be more than one item? |
Yeah, I noticed a few times the
Hmm, I am not sure if this is a good idea. Stack gives exclusive support to the
Nice find! I inserted a simple PS: You can set it to |
@GaurangTandon I remember seeing a stackapps question on uploading images to the SE imgur account. I'll try finding it! Sorry - I don't understand, are you saying it's a bad idea to use the SE account, or bad idea to use the normal imgur API? |
I was saying that it's a bad idea to use the normal imgur API. That question link is great! Wanna give it a shot? (because I have given up entirely now, can't get it to work at all :'() |
Sure, I'll give it another try soon!
…On Thu, 28 Jun 2018, 06:24 Gaurang Tandon, ***@***.***> wrote:
are you saying it's a bad idea to use the SE account, or bad idea to use
the normal imgur API?
I was saying that it's a bad idea to use the normal imgur API. That
question link is great! Wanna give it a shot? (because I have given up
entirely now, can't get it to work :'( at all)
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
<#338 (comment)>, or mute
the thread
<https://github.com/notifications/unsubscribe-auth/AIcNjnc-nuE2Ha3dNdXCt5LtYlBS_rDAks5uBGh7gaJpZM4U5GAS>
.
|
@GaurangTandon I think I got it to work now in dev 2.2.5 -- can you confirm? the URL extraction is reallllllllly messy, so do you mind having a look to see if you can clean it up? 😆 |
Okay, first off, I spent five minutes debugging why the paste event doesn't fire when I realized the setting "Paste images directly into the post editor without the image dialog" is unchecked by default!! :O Please check it like all others. Then, a couple more I even converted the first few lines to:
to make sure it works on comment boxes. But it still doesn't work. That's because And since we need the Also, Still, after all that, I get an xhr error :( I've made a commit with fixes for all of the stuff above, but I don't know how to fix the xhr :/
Once you fix the xhr request, I can surely look into ways to optimize it :) |
described in soscripted#338 (comment)
@GaurangTandon cool thanks! I still don't understand why the whole multiple items happens, but your fix seems perfect! The POST error was to do with me being an idiot and only testing on Meta, so I forgot to change the URL to the Hopefully it should work now in dev v2.2.6! |
1. used addEventListener instead of onload 2. descriptive names (`reader`) 3. optimized extraction of the image URL from the `data` 4. made all declarations `var` and moved them into one place for consistency 5. shortened the POST url to simply `'/upload/image?https=true',` ;P
Thanks for the collaboration, I'm glad we finally got it to work :D One thing I still wonder though is how are you going to tell the existing users that there's a new feature? The new users might notice this feature while configuring their settings, but I doubt the old users would notice it :/ |
1. used addEventListener instead of onload 2. descriptive names (`reader`) 3. optimized extraction of the image URL from the `data` 4. made all declarations `var` and moved them into one place for consistency 5. shortened the POST url to simply `'/upload/image?https=true',` ;P
@GaurangTandon thanks! nice touch with the pre-selection too! (and using just You're right. In the past, we've never really done anything but I've been thinking recently to add a new 'added_in_version' property to the |
I just found that literally a day ago while google searching :P
that would be too much of a burden. Instead, you could simply keep updating the contents of the popup manually. There would be two types of users: a) old and b) new. Is there a way to detect which ones are old (and are only updating their userscript) and which ones are new (and are actually installing the userscript)? If that is possible then we could only show the popup to the old users and we're done :D |
Hmm, I'll look into that more. If there's not an out-of-the-box way, a
simple solution would be to store a GM setting `lastVersion` and compare it
to the current version (which is easily obtainable), setting it to the
current version every time it turns out to be different.
…On Fri, 29 Jun 2018 at 18:08, Gaurang Tandon ***@***.***> wrote:
nice touch with the pre-selection too! (and using just
'/upload/image?https=true' is pure genius 😆).
I just found that literally a day ago while google searching :P
I've been thinking recently to add a new 'added_in_version' property to
the sox.features.info.json
that would be too much of a burden. You could simply keep updating the
contents of the popup manually. There would be two types of users: a) old
and b) new. Is there a way to detect which ones are old (and are only
updating their userscript) and which ones are new (and are actually
installing the userscript)? If that is possible then we could only show the
popup to the old users and we're done :D
—
You are receiving this because you modified the open/close state.
Reply to this email directly, view it on GitHub
<#338 (comment)>, or mute
the thread
<https://github.com/notifications/unsubscribe-auth/AIcNjinfkqxfJdhBzjq0M5tiMq0u0VVWks5uBl76gaJpZM4U5GAS>
.
|
Not sure if that would work, considering that currently both old and new
users don't have that `lastVersion` property.
If there's not an out of the box available to us, our best method would be
to first ship the lastVersion property and only after that ship any new
feature.
…On Sat 30 Jun, 2018, 01:00 ᔕᖺᘎᕊ, ***@***.***> wrote:
Hmm, I'll look into that more. If there's not an out-of-the-box way, a
simple solution would be to store a GM setting `lastVersion` and compare it
to the current version (which is easily obtainable), setting it to the
current version every time it turns out to be different.
On Fri, 29 Jun 2018 at 18:08, Gaurang Tandon ***@***.***>
wrote:
> nice touch with the pre-selection too! (and using just
> '/upload/image?https=true' is pure genius 😆).
>
> I just found that literally a day ago while google searching :P
>
> I've been thinking recently to add a new 'added_in_version' property to
> the sox.features.info.json
>
> that would be too much of a burden. You could simply keep updating the
> contents of the popup manually. There would be two types of users: a) old
> and b) new. Is there a way to detect which ones are old (and are only
> updating their userscript) and which ones are new (and are actually
> installing the userscript)? If that is possible then we could only show
the
> popup to the old users and we're done :D
>
> —
> You are receiving this because you modified the open/close state.
> Reply to this email directly, view it on GitHub
> <#338 (comment)>,
or mute
> the thread
> <
https://github.com/notifications/unsubscribe-auth/AIcNjinfkqxfJdhBzjq0M5tiMq0u0VVWks5uBl76gaJpZM4U5GAS
>
> .
>
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
<#338 (comment)>, or mute
the thread
<https://github.com/notifications/unsubscribe-auth/AGBDSwXnv8txCu1MVCopm9MGBugYSP_0ks5uBoA3gaJpZM4U5GAS>
.
|
@GaurangTandon fair enough, but I'm sure new users wouldn't mind a 'new in this version' popup anyway seeing as it is technically a new version for them 😆 I'll try doing something with this soon. |
I just noticed that this has already been implemented in a much cooler manner by Tomas Zato on StackApps. Considering that it's 986 lines worth of code, I'm sure it can't be merged into SOX. So, it'd rather be separately on its own. <Thought I'd just mention.> |
* new dev * #305 * #307 * #310 * #310 * Better fix for #310 The old fix placed the SOX button to the right of the username, but the username only shows up in the top bar if you're logged in. This meant the SOX button would be absent if you were logged out. This new code should fix that. * #310 * #309, #313 * #311, #312 * #256 * #319, #317, #316 * #256 * #318 * #294 deprecate enhanced editor * #308, other small fixes * #320 * minor fixes (#324) change scroll top top feature JSON info * fixes #329 (#330) also reduces jQuery dependency * v2.1.4 DEV before push to master also adds #326 * v2.2.0 * inital DEV push * update readme to state GM not supported; #306 * reduce dependency on `hotkeys`+minor details (#333) * #334 fixed * #334 * #334 * #338 * #335, #338 * Micro optimizations (#336) * update source link * micro optimizations - converted jQuery .not to CSS selector for faster perf (https://stackoverflow.com/questions/8845811/performance-differences-between-using-not-and-not-selectors) - introduced a separate function to eliminate thrice-repeated (!) code, to keep it DRY * fixes some issues (#339) described in #338 (comment) * fixes #338 * fixes #338 (#340) 1. used addEventListener instead of onload 2. descriptive names (`reader`) 3. optimized extraction of the image URL from the `data` 4. made all declarations `var` and moved them into one place for consistency 5. shortened the POST url to simply `'/upload/image?https=true',` ;P * #322 implemented * Sticky property * Update sox.user.js * Updating button colors The main SE buttons use a lighter color than the SOX buttons * Update sox.css * Minor fixes Patched a problem with vote buttons, and fixed the color of the notify on edit button * Update sox.user.js * minor changes/fixes * #341 temporary fix * Updated mod diamond icon Updated to the icon, to match the one used by the new topbar * Updated diamond icon * Updated mod diamond * improvements in colorAnswerer (#344) * improvements in colorAnswerer 1. constant variables+cache answeredID 2. reduce jQuery dependency+shorter a[href] selector via user ID 3. change coloration * optimization: use filters throughout (#345) reduces bandwidth consumption * fixes a few features; adds CSS Fixes moveBounty, dragBounty, copyCommentsLink. Adds class for colorAnswerer. Updates jQuery * fixes quickAuthorInfo fontawesome icon * fix a few of #308 * Major improvements in code extensibility, reduced API usage, eliminate redundancy, etc. (#348) * fixes various bugs mentioned in #348 * fixes standOutDupeCloseMigrated for search pages * remove unwanted console logs * #347, various minor tweaks * fixes small bug in parseCrossSiteLinks e.g. on this comment: https://meta.stackoverflow.com/questions/370902/i-need-a-lot-of-help-to-write-a-query-for-the-stack-exchange-data-explorer-sh?cb=1#comment608548_370902 * Fixed Meta SE's chat link Added a / to the end of Meta SE's if statement to fix it. Also replaced "discuss" with "meta" for Area 51 (to match the new URL for Area 51 Discussions), shortened a bit of code, and added some comments * Fixed Meta SE links * Changed topbar z-index Changed the fixed topbar's z-index to match the one on SO, in order to prevent elements like the usercard (z-index: 1000) from covering it * Made it clearer what the checkbox does * Many fixes to dialog buttons Fixes many of the bugs from #308 * Many fixes to dialog buttons Fixes many of the bugs from #308 * Many fixes to dialog buttons Fixes many of the bugs from #308 * Many fixes to dialog buttons Fixes many of the bugs from #308 * Fixed Area 51 Discussions bug * #348 minor tweak * fix (#350) ...for answerer ID 13 also matching commenter ids beginning with 13 (1345, 13555, etc.) * #352, #353 remove yahoo YQL use * #352 * PR/351 (#355) * update getQuestionTags * provide immediate response to user * minor changes * #325: remove rangyInputs dependency (#354) * bump version number * remove downvotedPostsEditAlert; remove rangyinputs `require`; implement mini changelog in dialog * install stale and no-response bots * #356 added, minor bug fix * start #349, start to move to es6 * onlyShowCommentActionsOnHover bug fix * #357 * deprecate fixedTopbar feature for #349 * add showTagWikiLinkOnTagPopup feature * #359 fixed * #358 fixed * fixes #360 * fixes for #361 * #361 changes * v2.3.0 final
* new dev * #305 * #307 * #310 * #310 * Better fix for #310 The old fix placed the SOX button to the right of the username, but the username only shows up in the top bar if you're logged in. This meant the SOX button would be absent if you were logged out. This new code should fix that. * #310 * #309, #313 * #311, #312 * #256 * #319, #317, #316 * #256 * #318 * #294 deprecate enhanced editor * #308, other small fixes * #320 * minor fixes (#324) change scroll top top feature JSON info * fixes #329 (#330) also reduces jQuery dependency * v2.1.4 DEV before push to master also adds #326 * v2.2.0 * inital DEV push * update readme to state GM not supported; #306 * reduce dependency on `hotkeys`+minor details (#333) * #334 fixed * #334 * #334 * #338 * #335, #338 * Micro optimizations (#336) * update source link * micro optimizations - converted jQuery .not to CSS selector for faster perf (https://stackoverflow.com/questions/8845811/performance-differences-between-using-not-and-not-selectors) - introduced a separate function to eliminate thrice-repeated (!) code, to keep it DRY * fixes some issues (#339) described in #338 (comment) * fixes #338 * fixes #338 (#340) 1. used addEventListener instead of onload 2. descriptive names (`reader`) 3. optimized extraction of the image URL from the `data` 4. made all declarations `var` and moved them into one place for consistency 5. shortened the POST url to simply `'/upload/image?https=true',` ;P * #322 implemented * Sticky property * Update sox.user.js * Updating button colors The main SE buttons use a lighter color than the SOX buttons * Update sox.css * Minor fixes Patched a problem with vote buttons, and fixed the color of the notify on edit button * Update sox.user.js * minor changes/fixes * #341 temporary fix * Updated mod diamond icon Updated to the icon, to match the one used by the new topbar * Updated diamond icon * Updated mod diamond * improvements in colorAnswerer (#344) * improvements in colorAnswerer 1. constant variables+cache answeredID 2. reduce jQuery dependency+shorter a[href] selector via user ID 3. change coloration * optimization: use filters throughout (#345) reduces bandwidth consumption * fixes a few features; adds CSS Fixes moveBounty, dragBounty, copyCommentsLink. Adds class for colorAnswerer. Updates jQuery * fixes quickAuthorInfo fontawesome icon * fix a few of #308 * Major improvements in code extensibility, reduced API usage, eliminate redundancy, etc. (#348) * fixes various bugs mentioned in #348 * fixes standOutDupeCloseMigrated for search pages * remove unwanted console logs * #347, various minor tweaks * fixes small bug in parseCrossSiteLinks e.g. on this comment: https://meta.stackoverflow.com/questions/370902/i-need-a-lot-of-help-to-write-a-query-for-the-stack-exchange-data-explorer-sh?cb=1#comment608548_370902 * Fixed Meta SE's chat link Added a / to the end of Meta SE's if statement to fix it. Also replaced "discuss" with "meta" for Area 51 (to match the new URL for Area 51 Discussions), shortened a bit of code, and added some comments * Fixed Meta SE links * Changed topbar z-index Changed the fixed topbar's z-index to match the one on SO, in order to prevent elements like the usercard (z-index: 1000) from covering it * Made it clearer what the checkbox does * Many fixes to dialog buttons Fixes many of the bugs from #308 * Many fixes to dialog buttons Fixes many of the bugs from #308 * Many fixes to dialog buttons Fixes many of the bugs from #308 * Many fixes to dialog buttons Fixes many of the bugs from #308 * Fixed Area 51 Discussions bug * #348 minor tweak * fix (#350) ...for answerer ID 13 also matching commenter ids beginning with 13 (1345, 13555, etc.) * #352, #353 remove yahoo YQL use * #352 * PR/351 (#355) * update getQuestionTags * provide immediate response to user * minor changes * #325: remove rangyInputs dependency (#354) * bump version number * remove downvotedPostsEditAlert; remove rangyinputs `require`; implement mini changelog in dialog * install stale and no-response bots * #356 added, minor bug fix * start #349, start to move to es6 * onlyShowCommentActionsOnHover bug fix * #357 * deprecate fixedTopbar feature for #349 * add showTagWikiLinkOnTagPopup feature * #359 fixed * #358 fixed * fixes #360 * fixes for #361 * #361 changes * v2.3.0 final * 2.3.0 DEV * fix for #363 * implemented 'feature packs' in settings dialog * debugging for #363, fixes #364 * #363 debugging * fix for #363 * #361 implemented (access token no longer mandatory); minor code cleanup * #365 * fix #368 * Add #315 * fix #366 * start to use linting * fix #372 * add #370 * clean up code * implement #374 * fix #373 * add #370; deprecate pasteImagesDirectly * #374 replace 'help' instead of prepend new link * change indentation to 2 spaces * lint * implement #296 * implements #376 (linkify meta diamond dialog title) * fix #375 (topAnswers post score not being found) * improve customMagicLinks feature -- add button to help menu on all pages * fix sticky vote buttons feature * keep new meta posts under diamond even after clicking (#378) * editComment improve design, add more defaults (#377) * fix better css feature * editComment: make dialog delete button smaller * improve editComment for #377; allow editing; new setting storage format * add delay to comment features for links to deleted comments #379 * bump to v2.4.0 * Remove accidental letter introduced into file * Bump installation link version numbers * Lint
Similar to what GitHub does. If you copy an image into your clipboard and paste it into the GitHub textbox, it:

I will try and see if this is possible with the SE Imgur API, and if it is, will submit a pull request with this attempted new feature. Hopefully it will be short enough, and be a useful addition to SOX :)
The text was updated successfully, but these errors were encountered: