NOTICE: By continued use of this site you understand and agree to the binding Terms of Service and Privacy Policy.
// ==UserScript== // @name Pin draft dialogs // @namespace http://vk.com/ // @version 0.1 // @author FlyInk13 // @copyright 2020, flyink13 (https://openuserjs.org/users/flyink13) // @downloadURL https://openuserjs.org/install/flyink13/Pin_draft_dialogs.user.js // @updateURL https://openuserjs.org/meta/flyink13/Pin_draft_dialogs.meta.js // @match https://*.vk.com/* // @grant none // @license MIT // ==/UserScript== (function code() { if (typeof ls === 'undefined') return; if (typeof vk === 'undefined') return; var coreStyles = ` body .nim-dialog:not(.nim-dialog_deleted).nim-dialog_selected+.nim-dialog { border-top: solid 1px transparent; } body #im_dialogs .ui_scroll_content { display: flex; flex-direction: column; } body #im_dialogs .ui_scroll_content:before { display: block; height: 3px; color: #777e8c; font-size: inherit; background: var(--steel_gray_80); box-shadow: 0px 0px 0px 1px var(--steel_gray_80); line-height: inherit; clear: inherit; visibility: inherit; content: ''; order: -1; } `; var StyEl = document.getElementById('pin_styles'); if (!StyEl) { StyEl = document.createElement('style'); StyEl.id = 'pin_styles'; document.body.appendChild(StyEl); } function updateStyles() { const style = Object.entries(ls.get('im_store_' + vk.id)) .reduce((style, [key, { txt }], order_id) => { const peer_id = key.substr(6); if (txt) { style += ` [data-list-id="${peer_id}"] { order: -${order_id + 2}; position: relative; } [data-list-id="${peer_id}"]:after { content: ''; display: block; position: absolute; bottom: 7px; right: 15px; width: 18px; height: 18px; background-image: url(data:image/svg+xml;charset=utf-8,%3Csvg%20height%3D%2224%22%20viewBox%3D%220%200%2024%2024%22%20width%3D%2224%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cg%20fill%3D%22none%22%20fill-rule%3D%22evenodd%22%3E%3Cpath%20d%3D%22m0%200h24v24h-24z%22%2F%3E%3Cpath%20d%3D%22m7.00723148%2015.0072315%201.98547057%201.9854705-.51090487.5109219-2.19710349.4394354c-.15126149.0302534-.25920135-.0705252-.22775495-.2277624l.4394207-2.1971764zm.99998341-1.0000166%207.70239431-7.70264988c.3948871-.39490016%201.0298385-.39805257%201.4195204-.00835778l.5742749.57429394c.3953567.3953699.38594%201.02525678-.0083575%201.41956744l-7.70236153%207.70261688z%22%20fill%3D%22%23fff%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E); background-position: center; background-color: var(--steel_gray_200); background-size: 16px; background-repeat: no-repeat; border-radius: 50px; z-index: 2; } .nim-dialog[data-list-id="${peer_id}"] .nim-dialog--unread_container { right: 21px; } ` } return style; }, ''); StyEl.innerHTML = style ? coreStyles + style : ''; } window.addEventListener('storage', updateStyles); updateStyles(); })()