Merge branch 'master' into next
This commit is contained in:
commit
a84fb59723
42
CHANGELOG.md
42
CHANGELOG.md
@ -4,6 +4,32 @@
|
||||
|
||||
## v1.13.0
|
||||
|
||||
**v1.13.0.17** *(2016-10-30)* - [[Userscript](https://raw.githubusercontent.com/ccd0/4chan-x/1.13.0.17/builds/4chan-X-noupdate.user.js)] [[Chrome extension](https://raw.githubusercontent.com/ccd0/4chan-x/1.13.0.17/builds/4chan-X-noupdate.crx)]
|
||||
- Various regression and bug fixes.
|
||||
|
||||
**v1.13.0.16** *(2016-10-27)* - [[Userscript](https://raw.githubusercontent.com/ccd0/4chan-x/1.13.0.16/builds/4chan-X-noupdate.user.js)] [[Chrome extension](https://raw.githubusercontent.com/ccd0/4chan-x/1.13.0.16/builds/4chan-X-noupdate.crx)]
|
||||
- Merge v1.12.3.11: Update due to 4chan's ad changes, part two.
|
||||
|
||||
**v1.13.0.15** *(2016-10-27)* - [[Userscript](https://raw.githubusercontent.com/ccd0/4chan-x/1.13.0.15/builds/4chan-X-noupdate.user.js)] [[Chrome extension](https://raw.githubusercontent.com/ccd0/4chan-x/1.13.0.15/builds/4chan-X-noupdate.crx)]
|
||||
- Merge v1.12.3.10: Update due to 4chan's ad changes.
|
||||
|
||||
**v1.13.0.14** *(2016-10-23)* - [[Userscript](https://raw.githubusercontent.com/ccd0/4chan-x/1.13.0.14/builds/4chan-X-noupdate.user.js)] [[Chrome extension](https://raw.githubusercontent.com/ccd0/4chan-x/1.13.0.14/builds/4chan-X-noupdate.crx)]
|
||||
- Fix bug from v1.13.0.3 causing index/catalog search to not search comment.
|
||||
|
||||
**v1.13.0.13** *(2016-10-15)* - [[Userscript](https://raw.githubusercontent.com/ccd0/4chan-x/1.13.0.13/builds/4chan-X-noupdate.user.js)] [[Chrome extension](https://raw.githubusercontent.com/ccd0/4chan-x/1.13.0.13/builds/4chan-X-noupdate.crx)]
|
||||
- Add styling guide link to custom CSS section.
|
||||
- Add basic support for is.4chan.org domain.
|
||||
|
||||
**v1.13.0.12** *(2016-10-14)* - [[Userscript](https://raw.githubusercontent.com/ccd0/4chan-x/1.13.0.12/builds/4chan-X-noupdate.user.js)] [[Chrome extension](https://raw.githubusercontent.com/ccd0/4chan-x/1.13.0.12/builds/4chan-X-noupdate.crx)]
|
||||
- Switch back to using `border` rather than `outline` for highlighting watched threads in catalog.
|
||||
- Restore hiding of extra linebreaks in catalog. Show them at reduced height on hover.
|
||||
|
||||
**v1.13.0.11** *(2016-10-13)* - [[Userscript](https://raw.githubusercontent.com/ccd0/4chan-x/1.13.0.11/builds/4chan-X-noupdate.user.js)] [[Chrome extension](https://raw.githubusercontent.com/ccd0/4chan-x/1.13.0.11/builds/4chan-X-noupdate.crx)]
|
||||
- Merge v1.12.3.8: Don't run 4chan X on the donation or advertisement purchase pages (it already didn't run on the pass purchase page).
|
||||
|
||||
**v1.13.0.10** *(2016-10-09)* - [[Userscript](https://raw.githubusercontent.com/ccd0/4chan-x/1.13.0.10/builds/4chan-X-noupdate.user.js)] [[Chrome extension](https://raw.githubusercontent.com/ccd0/4chan-x/1.13.0.10/builds/4chan-X-noupdate.crx)]
|
||||
- Merge v1.12.3.7: Workaround for problem on 4chan's end with images not loading.
|
||||
|
||||
**v1.13.0.9** *(2016-10-09)* - [[Userscript](https://raw.githubusercontent.com/ccd0/4chan-x/1.13.0.9/builds/4chan-X-noupdate.user.js)] [[Chrome extension](https://raw.githubusercontent.com/ccd0/4chan-x/1.13.0.9/builds/4chan-X-noupdate.crx)]
|
||||
- Fix bug from v1.13.0.0 that broke Quote Inlining / Previewing of OPs on /f/.
|
||||
|
||||
@ -60,6 +86,22 @@
|
||||
|
||||
### v1.12.3
|
||||
|
||||
**v1.12.3.11** *(2016-10-27)* - [[Userscript](https://raw.githubusercontent.com/ccd0/4chan-x/1.12.3.11/builds/4chan-X-noupdate.user.js)] [[Chrome extension](https://raw.githubusercontent.com/ccd0/4chan-x/1.12.3.11/builds/4chan-X-noupdate.crx)]
|
||||
- Update due to 4chan's ad changes, part two.
|
||||
|
||||
**v1.12.3.10** *(2016-10-27)* - [[Userscript](https://raw.githubusercontent.com/ccd0/4chan-x/1.12.3.10/builds/4chan-X-noupdate.user.js)] [[Chrome extension](https://raw.githubusercontent.com/ccd0/4chan-x/1.12.3.10/builds/4chan-X-noupdate.crx)]
|
||||
- Update due to 4chan's ad changes.
|
||||
|
||||
**v1.12.3.9** *(2016-10-18)* - [[Userscript](https://raw.githubusercontent.com/ccd0/4chan-x/1.12.3.9/builds/4chan-X-noupdate.user.js)] [[Chrome extension](https://raw.githubusercontent.com/ccd0/4chan-x/1.12.3.9/builds/4chan-X-noupdate.crx)]
|
||||
- Add basic support for is.4chan.org domain.
|
||||
|
||||
**v1.12.3.8** *(2016-10-13)* - [[Userscript](https://raw.githubusercontent.com/ccd0/4chan-x/1.12.3.8/builds/4chan-X-noupdate.user.js)] [[Chrome extension](https://raw.githubusercontent.com/ccd0/4chan-x/1.12.3.8/builds/4chan-X-noupdate.crx)]
|
||||
- Don't run 4chan X on the donation or advertisement purchase pages (it already didn't run on the pass purchase page).
|
||||
|
||||
**v1.12.3.7** *(2016-10-09)* - [[Userscript](https://raw.githubusercontent.com/ccd0/4chan-x/1.12.3.7/builds/4chan-X-noupdate.user.js)] [[Chrome extension](https://raw.githubusercontent.com/ccd0/4chan-x/1.12.3.7/builds/4chan-X-noupdate.crx)]
|
||||
- Workaround for problem on 4chan's end with images not loading.
|
||||
- The error messages displayed when the Chrome extension updates but the tab has not been reloaded have been replaced with a single warning message asking you to reload the tab.
|
||||
|
||||
**v1.12.3.6** *(2016-10-03)* - [[Userscript](https://raw.githubusercontent.com/ccd0/4chan-x/1.12.3.6/builds/4chan-X-noupdate.user.js)] [[Chrome extension](https://raw.githubusercontent.com/ccd0/4chan-x/1.12.3.6/builds/4chan-X-noupdate.crx)]
|
||||
- Add `Pass Date` to filterable items.
|
||||
- Show Pass flair in posts constructed from JSON.
|
||||
|
||||
@ -29,7 +29,7 @@ If you're reporting a bug, the more detail you can give, the better. If I can't
|
||||
|
||||
- 4chan X is mostly written in [CoffeeScript](http://coffeescript.org/). If you're already familiar with Javascript, it doesn't take long to pick up.
|
||||
- Edit the sources in the src/ directory (not the compiled scripts in builds/).
|
||||
- Compile the script with: `grunt`
|
||||
- Compile the script with: `make` (this should fetch needed dependencies automatically; if not, do an `npm install` first)
|
||||
- Install the compiled script (found in the testbuilds/ directory), and test your changes.
|
||||
- Make sure you have set your name and email as you want them, as they will be published in your commit message:<br>`git config user.name yourname`<br>`git config user.email youremail`
|
||||
- Commit your changes: `git commit -a`
|
||||
|
||||
Binary file not shown.
@ -1,6 +1,6 @@
|
||||
// ==UserScript==
|
||||
// @name 4chan X beta
|
||||
// @version 1.13.0.9
|
||||
// @version 1.13.0.17
|
||||
// @minGMVer 1.14
|
||||
// @minFFVer 26
|
||||
// @namespace 4chan-X
|
||||
@ -14,6 +14,8 @@
|
||||
// @include https://www.4chan.org/*
|
||||
// @include http://i.4cdn.org/*
|
||||
// @include https://i.4cdn.org/*
|
||||
// @include http://is.4chan.org/*
|
||||
// @include https://is.4chan.org/*
|
||||
// @include https://www.google.com/recaptcha/api2/anchor?k=6Ldp2bsSAAAAAAJ5uyx_lx34lJeEpTLVkP5k04qc*
|
||||
// @include https://www.google.com/recaptcha/api2/frame?*&k=6Ldp2bsSAAAAAAJ5uyx_lx34lJeEpTLVkP5k04qc*
|
||||
// @include http://www.google.com/recaptcha/api/fallback?k=6Ldp2bsSAAAAAAJ5uyx_lx34lJeEpTLVkP5k04qc*
|
||||
@ -22,7 +24,16 @@
|
||||
// @exclude https://www.4chan.org/pass
|
||||
// @exclude http://www.4chan.org/pass?*
|
||||
// @exclude https://www.4chan.org/pass?*
|
||||
// @exclude http://www.4chan.org/advertise
|
||||
// @exclude https://www.4chan.org/advertise
|
||||
// @exclude http://www.4chan.org/advertise?*
|
||||
// @exclude https://www.4chan.org/advertise?*
|
||||
// @exclude http://www.4chan.org/donate
|
||||
// @exclude https://www.4chan.org/donate
|
||||
// @exclude http://www.4chan.org/donate?*
|
||||
// @exclude https://www.4chan.org/donate?*
|
||||
// @connect i.4cdn.org
|
||||
// @connect is.4chan.org
|
||||
// @connect *
|
||||
// @grant GM_getValue
|
||||
// @grant GM_setValue
|
||||
|
||||
File diff suppressed because one or more lines are too long
Binary file not shown.
File diff suppressed because one or more lines are too long
Binary file not shown.
@ -1,6 +1,6 @@
|
||||
// ==UserScript==
|
||||
// @name 4chan X
|
||||
// @version 1.13.0.9
|
||||
// @version 1.13.0.17
|
||||
// @minGMVer 1.14
|
||||
// @minFFVer 26
|
||||
// @namespace 4chan-X
|
||||
@ -14,6 +14,8 @@
|
||||
// @include https://www.4chan.org/*
|
||||
// @include http://i.4cdn.org/*
|
||||
// @include https://i.4cdn.org/*
|
||||
// @include http://is.4chan.org/*
|
||||
// @include https://is.4chan.org/*
|
||||
// @include https://www.google.com/recaptcha/api2/anchor?k=6Ldp2bsSAAAAAAJ5uyx_lx34lJeEpTLVkP5k04qc*
|
||||
// @include https://www.google.com/recaptcha/api2/frame?*&k=6Ldp2bsSAAAAAAJ5uyx_lx34lJeEpTLVkP5k04qc*
|
||||
// @include http://www.google.com/recaptcha/api/fallback?k=6Ldp2bsSAAAAAAJ5uyx_lx34lJeEpTLVkP5k04qc*
|
||||
@ -22,7 +24,16 @@
|
||||
// @exclude https://www.4chan.org/pass
|
||||
// @exclude http://www.4chan.org/pass?*
|
||||
// @exclude https://www.4chan.org/pass?*
|
||||
// @exclude http://www.4chan.org/advertise
|
||||
// @exclude https://www.4chan.org/advertise
|
||||
// @exclude http://www.4chan.org/advertise?*
|
||||
// @exclude https://www.4chan.org/advertise?*
|
||||
// @exclude http://www.4chan.org/donate
|
||||
// @exclude https://www.4chan.org/donate
|
||||
// @exclude http://www.4chan.org/donate?*
|
||||
// @exclude https://www.4chan.org/donate?*
|
||||
// @connect i.4cdn.org
|
||||
// @connect is.4chan.org
|
||||
// @connect *
|
||||
// @grant GM_getValue
|
||||
// @grant GM_setValue
|
||||
|
||||
File diff suppressed because one or more lines are too long
Binary file not shown.
@ -1,7 +1,7 @@
|
||||
<?xml version='1.0' encoding='UTF-8'?>
|
||||
<gupdate xmlns='http://www.google.com/update2/response' protocol='2.0'>
|
||||
<app appid='lacclbnghgdicfifcamcmcnilckjamag'>
|
||||
<updatecheck codebase='https://www.4chan-x.net/builds/4chan-X-beta.crx' version='1.13.0.9' />
|
||||
<updatecheck codebase='https://www.4chan-x.net/builds/4chan-X-beta.crx' version='1.13.0.17' />
|
||||
</app>
|
||||
</gupdate>
|
||||
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
<?xml version='1.0' encoding='UTF-8'?>
|
||||
<gupdate xmlns='http://www.google.com/update2/response' protocol='2.0'>
|
||||
<app appid='lacclbnghgdicfifcamcmcnilckjamag'>
|
||||
<updatecheck codebase='https://www.4chan-x.net/builds/4chan-X.crx' version='1.13.0.9' />
|
||||
<updatecheck codebase='https://www.4chan-x.net/builds/4chan-X.crx' version='1.13.0.17' />
|
||||
</app>
|
||||
</gupdate>
|
||||
|
||||
|
||||
@ -9,6 +9,7 @@
|
||||
"downloads": "https://www.4chan-x.net/builds/",
|
||||
"oldVersions": "https://raw.githubusercontent.com/ccd0/4chan-x/",
|
||||
"faq": "https://github.com/ccd0/4chan-x/wiki/Frequently-Asked-Questions",
|
||||
"cssGuide": "https://github.com/ccd0/4chan-x/wiki/Styling-Guide",
|
||||
"license": "https://github.com/ccd0/4chan-x/blob/master/LICENSE",
|
||||
"changelog": "https://github.com/ccd0/4chan-x/blob/master/CHANGELOG.md",
|
||||
"issues": "https://gitreports.com/issue/ccd0/4chan-x",
|
||||
@ -25,13 +26,18 @@
|
||||
"*://sys.4chan.org/*",
|
||||
"*://www.4chan.org/*",
|
||||
"*://i.4cdn.org/*",
|
||||
"*://is.4chan.org/*",
|
||||
"https://www.google.com/recaptcha/api2/anchor?k=6Ldp2bsSAAAAAAJ5uyx_lx34lJeEpTLVkP5k04qc*",
|
||||
"https://www.google.com/recaptcha/api2/frame?*&k=6Ldp2bsSAAAAAAJ5uyx_lx34lJeEpTLVkP5k04qc*",
|
||||
"*://www.google.com/recaptcha/api/fallback?k=6Ldp2bsSAAAAAAJ5uyx_lx34lJeEpTLVkP5k04qc*"
|
||||
],
|
||||
"exclude_matches": [
|
||||
"*://www.4chan.org/pass",
|
||||
"*://www.4chan.org/pass?*"
|
||||
"*://www.4chan.org/pass?*",
|
||||
"*://www.4chan.org/advertise",
|
||||
"*://www.4chan.org/advertise?*",
|
||||
"*://www.4chan.org/donate",
|
||||
"*://www.4chan.org/donate?*"
|
||||
],
|
||||
"grants": [
|
||||
"GM_getValue",
|
||||
|
||||
@ -220,6 +220,9 @@ Build =
|
||||
container = $.el 'div', <%= readHTML('CatalogThread.html') %>
|
||||
$.before thread.OP.nodes.info, [container.childNodes...]
|
||||
|
||||
for br in $$('br', thread.OP.nodes.comment) when br.previousSibling and br.previousSibling.nodeName is 'BR'
|
||||
$.addClass br, 'extra-linebreak'
|
||||
|
||||
root = $.el 'div',
|
||||
className: 'thread catalog-thread'
|
||||
id: "t#{thread}"
|
||||
|
||||
@ -763,6 +763,7 @@ Index =
|
||||
when 'birth' then [liveThreadIDs... ].sort (a, b) -> b - a
|
||||
when 'replycount' then [liveThreadData...].sort((a, b) -> b.replies - a.replies).map (post) -> post.no
|
||||
when 'filecount' then [liveThreadData...].sort((a, b) -> b.images - a.images ).map (post) -> post.no
|
||||
else liveThreadIDs
|
||||
if Index.search and (threadIDs = Index.querySearch Index.search)
|
||||
Index.sortedThreadIDs = threadIDs
|
||||
# Sticky threads
|
||||
@ -874,6 +875,7 @@ Index =
|
||||
|
||||
searchMatch: (obj, keywords) ->
|
||||
{info, file} = obj
|
||||
info.comment ?= Build.parseComment info.commentHTML.innerHTML
|
||||
text = []
|
||||
for key in ['comment', 'subject', 'name', 'tripcode']
|
||||
text.push info[key] if key of info
|
||||
|
||||
@ -113,7 +113,7 @@ Settings =
|
||||
Enable it on boards.4chan.org in your browser's privacy settings (may be listed as part of "local data" or "cookies").
|
||||
"""
|
||||
ads: (cb) ->
|
||||
$.onExists doc, '.ad-cnt', (ad) -> $.onExists ad, 'img', ->
|
||||
$.onExists doc, '.ad-cnt, .adg-rects', (ad) -> $.onExists ad, 'img, iframe', ->
|
||||
url = Redirect.to 'thread', {boardID: 'qa', threadID: 362590}
|
||||
cb $.el 'li',
|
||||
<%= html(
|
||||
|
||||
@ -137,6 +137,7 @@
|
||||
<legend>
|
||||
<label><input type="checkbox" name="Custom CSS"> Custom CSS</label>
|
||||
</legend>
|
||||
<div>For more information about customizing 4chan X's CSS, see the <a href="<%= meta.cssGuide %>" target="_blank">styling guide</a>.</div>
|
||||
<button id="apply-css">Apply CSS</button>
|
||||
<textarea name="usercss" class="field" spellcheck="false"></textarea>
|
||||
</fieldset>
|
||||
|
||||
@ -14,7 +14,7 @@ Linkify =
|
||||
node: ->
|
||||
return Embedding.events @ if @isClone
|
||||
return unless Linkify.regString.test @info.comment
|
||||
for link in $$ 'a[href^="http://i.4cdn.org/"], a[href^="https://i.4cdn.org/"]', @nodes.comment
|
||||
for link in $$ 'a[href^="http://i.4cdn.org/"], a[href^="https://i.4cdn.org/"], a[href^="http://is.4chan.org/"], a[href^="https://is.4chan.org/"]', @nodes.comment
|
||||
$.addClass link, 'linkify'
|
||||
Embedding.process link, @
|
||||
links = Linkify.process @nodes.comment
|
||||
|
||||
@ -231,12 +231,7 @@ Unread =
|
||||
Unread.title
|
||||
d.title = "#{titleQuotingYou}#{titleCount}#{titleDead}"
|
||||
|
||||
$.forceSync 'Remember Last Read Post'
|
||||
if Conf['Remember Last Read Post'] and (!Unread.thread.isDead or Unread.thread.isArchived)
|
||||
ThreadWatcher.update Unread.thread.board.ID, Unread.thread.ID,
|
||||
isDead: Unread.thread.isDead
|
||||
unread: count
|
||||
quotingYou: countQuotingYou
|
||||
Unread.saveThreadWatcherCount()
|
||||
|
||||
if Conf['Unread Favicon']
|
||||
{isDead} = Unread.thread
|
||||
@ -249,3 +244,11 @@ Unread =
|
||||
Favicon[if isDead then 'dead' else 'default']
|
||||
# `favicon.href = href` doesn't work on Firefox.
|
||||
$.add d.head, Favicon.el
|
||||
|
||||
saveThreadWatcherCount: $.debounce 2 * $.SECOND, ->
|
||||
$.forceSync 'Remember Last Read Post'
|
||||
if Conf['Remember Last Read Post'] and (!Unread.thread.isDead or Unread.thread.isArchived)
|
||||
ThreadWatcher.update Unread.thread.board.ID, Unread.thread.ID,
|
||||
isDead: Unread.thread.isDead
|
||||
unread: Unread.posts.size
|
||||
quotingYou: Unread.postsQuotingYou.size
|
||||
|
||||
@ -117,6 +117,7 @@ QR.post = class
|
||||
@spoiler = input.checked
|
||||
return
|
||||
{name} = input.dataset
|
||||
prev = @[name]
|
||||
@[name] = input.value or input.dataset.default or null
|
||||
switch name
|
||||
when 'thread'
|
||||
@ -133,7 +134,8 @@ QR.post = class
|
||||
@saveFilename()
|
||||
@updateFilename()
|
||||
when 'name'
|
||||
QR.persona.set @
|
||||
if @name isnt prev # only save manual changes, not values filled in by persona settings
|
||||
QR.persona.set @
|
||||
|
||||
forceSave: ->
|
||||
return unless @ is QR.selected
|
||||
|
||||
@ -16,14 +16,14 @@ Post.Clone = class extends Post
|
||||
node.id = Post.Clone.prefix + node.id
|
||||
Post.Clone.prefix++
|
||||
|
||||
@nodes = @parseNodes root
|
||||
|
||||
# Remove inlined posts inside of this post.
|
||||
for inline in $$ '.inline', @nodes.post
|
||||
for inline in $$ '.inline', root
|
||||
$.rm inline
|
||||
for inlined in $$ '.inlined', @nodes.post
|
||||
for inlined in $$ '.inlined', root
|
||||
$.rmClass inlined, 'inlined'
|
||||
|
||||
@nodes = @parseNodes root
|
||||
|
||||
root.hidden = false # post hiding
|
||||
$.rmClass root, 'forwarded' # quote inlining
|
||||
$.rmClass @nodes.post, 'highlight' # keybind navigation, ID highlighting
|
||||
|
||||
@ -188,6 +188,8 @@ class Post
|
||||
return if not (link = $ '.fileText > a, .fileText-original > a', fileRoot)
|
||||
return if not (info = link.nextSibling?.textContent.match /\(([\d.]+ [KMG]?B).*\)/)
|
||||
fileText = fileRoot.firstElementChild
|
||||
# XXX full images on https://is.4chan.org don't load
|
||||
link.hostname = 'i.4cdn.org' if link.hostname is 'is.4chan.org'
|
||||
@file =
|
||||
text: fileText
|
||||
link: link
|
||||
@ -203,6 +205,8 @@ class Post
|
||||
size *= 1024 while unit-- > 0
|
||||
@file.sizeInBytes = size
|
||||
if (thumb = $ 'a.fileThumb > [data-md5]', fileRoot)
|
||||
# XXX full images on https://is.4chan.org don't load
|
||||
thumb.parentNode.hostname = 'i.4cdn.org' if thumb.parentNode.hostname is 'is.4chan.org'
|
||||
$.extend @file,
|
||||
thumb: thumb
|
||||
thumbLink: thumb.parentNode
|
||||
|
||||
@ -126,15 +126,18 @@ body > div[style*=" top: -10000px;"] {
|
||||
}
|
||||
|
||||
/* Ads */
|
||||
:root:not(.ads-loaded) .ad-cnt > * {
|
||||
height: auto;
|
||||
.ad-cnt > *, .adg-rects > * {
|
||||
height: auto !important;
|
||||
}
|
||||
:root:not(.ads-loaded) .ad-plea,
|
||||
:root:not(.ads-loaded) hr.abovePostForm,
|
||||
:root:not(.ads-loaded) .ad-plea-bottom + hr {
|
||||
display: none;
|
||||
}
|
||||
hr + div.center:not(.ad-cnt):not(.topad):not(.middlead):not(.bottomad) {
|
||||
:root:not(.ads-loaded) .adg-rects {
|
||||
margin: 0;
|
||||
}
|
||||
div.center[style] {
|
||||
display: none !important;
|
||||
}
|
||||
|
||||
@ -717,6 +720,8 @@ div[data-checked="false"] > .suboption-list {
|
||||
}
|
||||
.catalog-thread {
|
||||
display: inline-block;
|
||||
-moz-box-sizing: border-box;
|
||||
box-sizing: border-box;
|
||||
border: 1px solid transparent;
|
||||
word-wrap: break-word;
|
||||
vertical-align: top;
|
||||
@ -727,12 +732,12 @@ div[data-checked="false"] > .suboption-list {
|
||||
margin: 4px;
|
||||
}
|
||||
.catalog-small > .catalog-thread {
|
||||
width: 165px;
|
||||
height: 320px;
|
||||
width: 167px;
|
||||
height: 322px;
|
||||
}
|
||||
.catalog-large > .catalog-thread {
|
||||
width: 270px;
|
||||
height: 410px;
|
||||
width: 272px;
|
||||
height: 412px;
|
||||
}
|
||||
:root.catalog-hover-expand .catalog-thread:hover {
|
||||
z-index: 1;
|
||||
@ -825,9 +830,11 @@ div[data-checked="false"] > .suboption-list {
|
||||
.catalog-container:not(:hover) > * > .file,
|
||||
.catalog-container:not(:hover) > * > .postInfo > :not(.subject),
|
||||
.catalog-container:not(:hover) > * > .catalog-replies,
|
||||
.catalog-container:not(:hover) .extra-linebreak,
|
||||
:root:not(.catalog-hover-expand) .catalog-container > * > .file,
|
||||
:root:not(.catalog-hover-expand) .catalog-container > * > .postInfo > :not(.subject),
|
||||
:root:not(.catalog-hover-expand) .catalog-container > * > .catalog-replies,
|
||||
:root:not(.catalog-hover-expand) .catalog-container .extra-linebreak,
|
||||
.catalog-thread > .catalog-container > :not(.catalog-post),
|
||||
.catalog-post > .file > :not(.fileText),
|
||||
.catalog-post > * > .fileText > :not(:first-child),
|
||||
@ -878,11 +885,15 @@ div[data-checked="false"] > .suboption-list {
|
||||
:root.catalog-hover-expand .catalog-container:hover > * > .postMessage:not(:empty) {
|
||||
padding-top: .3em;
|
||||
}
|
||||
.catalog-post .extra-linebreak {
|
||||
content: ''; /* makes this work in Blink/WebKit */
|
||||
display: block;
|
||||
margin-top: .3em;
|
||||
}
|
||||
.catalog-reply {
|
||||
text-align: left;
|
||||
white-space: nowrap;
|
||||
margin: -1px;
|
||||
border: 1px solid transparent;
|
||||
border-top: 1px solid transparent;
|
||||
display: -webkit-flex;
|
||||
display: flex;
|
||||
-webkit-flex-direction: row;
|
||||
@ -1337,10 +1348,10 @@ input[name="Default Volume"] {
|
||||
box-shadow: 0 0 3px 3px rgba(255, 0, 0, .5);
|
||||
}
|
||||
:root:not(.werkTyme) .catalog-thread.watched .catalog-thumb,
|
||||
:root.werkTyme .catalog-thread.watched:not(:hover),
|
||||
:root.werkTyme:not(.catalog-hover-expand) .catalog-thread.watched,
|
||||
:root:root.werkTyme .catalog-thread.watched:not(:hover),
|
||||
:root:root.werkTyme:not(.catalog-hover-expand) .catalog-thread.watched,
|
||||
:root.werkTyme.catalog-hover-expand .catalog-thread.watched > .catalog-container:hover > .catalog-post {
|
||||
outline: 2px solid rgba(255, 0, 0, .75);
|
||||
border: 2px solid rgba(255, 0, 0, .75);
|
||||
}
|
||||
|
||||
/* Spoiler text */
|
||||
|
||||
@ -88,7 +88,7 @@
|
||||
:root.tomorrow.werkTyme .catalog-thread.watched:not(:hover),
|
||||
:root.tomorrow.werkTyme:not(.catalog-hover-expand) .catalog-thread.watched,
|
||||
:root.tomorrow.werkTyme.catalog-hover-expand .catalog-thread.watched > .catalog-container:hover > .catalog-post {
|
||||
outline: 2px solid rgb(64, 192, 255);
|
||||
border: 2px solid rgb(64, 192, 255);
|
||||
}
|
||||
|
||||
|
||||
|
||||
@ -4,3 +4,8 @@
|
||||
:root:not(.js-enabled) #form {
|
||||
display: block;
|
||||
}
|
||||
#bd > div[style], #bd > div[style] > * {
|
||||
height: auto !important;
|
||||
margin: 0 !important;
|
||||
font-size: 0;
|
||||
}
|
||||
|
||||
@ -129,7 +129,7 @@ Main =
|
||||
else if pathname[2] is 'post'
|
||||
PostSuccessful.init()
|
||||
return
|
||||
when 'i.4cdn.org'
|
||||
when 'i.4cdn.org', 'is.4chan.org'
|
||||
return unless pathname[2] and not /s\.jpg$/.test(pathname[2])
|
||||
$.asap (-> d.readyState isnt 'loading'), ->
|
||||
if Conf['404 Redirect'] and d.title in ['4chan - Temporarily Offline', '4chan - 404 Not Found']
|
||||
@ -187,7 +187,7 @@ Main =
|
||||
$.addClass doc, 'fourchan-x', 'seaweedchan'
|
||||
$.addClass doc, if g.VIEW is 'thread' then 'thread-view' else g.VIEW
|
||||
$.addClass doc, "ua-#{$.engine}" if $.engine
|
||||
$.onExists doc, '.ad-cnt', (ad) -> $.onExists ad, 'img', -> $.addClass doc, 'ads-loaded'
|
||||
$.onExists doc, '.ad-cnt, .adg-rects', (ad) -> $.onExists ad, 'img, iframe', -> $.addClass doc, 'ads-loaded'
|
||||
$.addClass doc, 'autohiding-scrollbar' if Conf['Autohiding Scrollbar']
|
||||
$.ready ->
|
||||
if d.body.clientHeight > doc.clientHeight and (window.innerWidth is doc.clientWidth) isnt Conf['Autohiding Scrollbar']
|
||||
|
||||
@ -35,6 +35,7 @@
|
||||
})()
|
||||
%>
|
||||
// @connect i.4cdn.org
|
||||
// @connect is.4chan.org
|
||||
// @connect *
|
||||
<%=
|
||||
meta.grants.map(function(grant) {
|
||||
|
||||
@ -14,7 +14,7 @@ CrossOrigin =
|
||||
# XXX https://forums.lanik.us/viewtopic.php?f=64&t=24173&p=78310
|
||||
url = url.replace /^((?:https?:)?\/\/(?:\w+\.)?4c(?:ha|d)n\.org)\/adv\//, '$1//adv/'
|
||||
<% if (type === 'crx') { %>
|
||||
if url.split('/')[...3].join('/') is "#{location.protocol}//i.4cdn.org"
|
||||
if url.split('/')[...3].join('/') in ["#{location.protocol}//i.4cdn.org", "#{location.protocol}//is.4chan.org"]
|
||||
xhr = new XMLHttpRequest()
|
||||
xhr.open 'GET', url, true
|
||||
xhr.setRequestHeader key, value for key, value of headers
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
{
|
||||
"version": "1.13.0.9",
|
||||
"date": "2016-10-09T10:48:46.406Z"
|
||||
"version": "1.13.0.17",
|
||||
"date": "2016-10-30T05:07:56.889Z"
|
||||
}
|
||||
Loading…
x
Reference in New Issue
Block a user