NOTICE: By continued use of this site you understand and agree to the binding Terms of Service and Privacy Policy.
// ==UserScript==
// @name VK big stickers
// @description Increases emoji window and sticker size to 128px in VK social network
// @version 5
// @grant GM_addStyle
// @license MIT
// @updateURL https://openuserjs.org/meta/Drath/VK_big_stickers.meta.js
// @copyright 2019, Drath (https://openuserjs.org/users/Drath)
// @include https://vk.com/*
// @run-at document-start
// ==/UserScript==
window.addEventListener('afterscriptexecute', function (e) {
let src = e.target.getAttribute('src');
console.log(src);
if (src && src.match("https://.+?.vk.com/js/cmodules/web/emoji.*")) {
document.head
.appendChild(document.createElement('script'))
.innerHTML =
`(function(){
Emoji.stickerSize=128;
Emoji.render.stickerRs=function (e, i, t) {
var o = {
optId: e,
selId: i,
stickerId: t[0],
size: 128,
stickerSize: 128,
stickerUrl: t[2].replace(/(\\/sticker\\/\\d+\\-\\d+)(\\-\\d+)/,'$1-128'),
fav: t[4] || '',
favHash: t[5] || '',
referrer: Emoji.getStickerReferrer(i),
favClass: t[4] ? 'faved' : ''
},
r = '';
if (browser.msie && !browser.msie_edge || !t[3]) r = Emoji.stickerItem();
else {
r = Emoji.stickerItemAnimation();
var s = rand(1, 100000);
o.animationUrl = t[3],
o.uniqId = s
}
return rs(r, o)
}
Emoji.render.stickerHintRs=function (e, i, t) {
var o = i,
r = '';
r = i < 0 ? window.promotedStickerUrls && window.promotedStickerUrls[ - o] : t ? t[2] : '';
var s = t ? t[3] : '',
n = {
optId: e,
selId: 0,
stickerId: o,
stickerUrl: r.replace(/(\\/sticker\\/\\d+\\-\\d+)(\\-\\d+)/,'$1-128'),
class: o < 0 ? 'promo' : '',
onclick: 'Emoji.stickerHintClick(' + e + ', ' + o + ', \\'' + r + '\\', this)',
stickerSize: Emoji.stickerSize
},
a = '';
return (!browser.msie || browser.msie_edge) && s && r ? (a = Emoji.hintsStickerItemAnimation(), n.animationUrl = s, n.class += ' sticker_animation') : r && (a = Emoji.hintsStickerItem()),
rs(a, n)
}
})()`;
document.head
.appendChild(document.createElement('style'))
.innerHTML =
`
.bigStickers .emoji_sticker_item .emoji_sticker_image {
width: 128px;
height: 128px;
max-width: 128px;
max-height: 128px;
filter: drop-shadow(0 0 3px white);
}
.bigStickers .emoji_scroll_stickers .emoji_sticker_item {
width: 128px;
height: 128px;
padding: 4px;
}
.bigStickers ._emoji_wrap .emoji_tt_wrap {
width: 570px;
}
.bigStickers .emoji_list {
width:545px !important;
height: 400px !important;
}
.bigStickers .emoji_tabs .emoji_tabs_wrap{
width: 485px;
}
.bigStickers .emoji_tabs .emoji_tabs_r_s {
right: 40px;
margin-left: unset;
}
.bigStickers .emoji_smiles_row {
display: inline;
}
.bigStickers ._sticker_hints.sticker_hints_tt {
top: -150px !important;
}
.bigStickers .sticker_hints_tt .emoji_sticker_item {
height: 128px !important;
width: 128px !important;
padding: 4px !important;
}
.bigStickers .sticker_hints_arrow {
display: none !important;
}
.bigStickers .sticker_hints_inner {
overflow-x: scroll !important;
}
.bigStickers .ui_scroll_inner {
min-height: 110%;
}
`
}
document.body.classList.add("bigStickers");
}, true);