Changeset View
Changeset View
Standalone View
Standalone View
extension/extension.js
Show First 20 Lines • Show All 134 Lines • ▼ Show 20 Line(s) | 127 | chrome.tabs.update(tabId, {active: true}, function (tab) { | |||
---|---|---|---|---|---|
135 | chrome.windows.update(tab.windowId, {focused: true}); | 135 | chrome.windows.update(tab.windowId, {focused: true}); | ||
136 | }); | 136 | }); | ||
137 | } | 137 | } | ||
138 | 138 | | |||
139 | // KDE Connect | 139 | // KDE Connect | ||
140 | // ------------------------------------------------------------------------ | 140 | // ------------------------------------------------------------------------ | ||
141 | // | 141 | // | ||
142 | 142 | | |||
143 | addCallback("kdeconnect", "deviceAdded", function(message) { | 143 | var kdeConnectMenuIdPrefix = "kdeconnect_page_"; | ||
144 | var id = message.id; | | |||
145 | var name = message.name; | | |||
146 | 144 | | |||
147 | var menuEntryTitle = chrome.i18n.getMessage("kdeconnect_open_device", name); | 145 | chrome.contextMenus.onClicked.addListener(function (info) { | ||
148 | var menuId = "kdeconnect_page_" + id; | 146 | if (!info.menuItemId.startsWith(kdeConnectMenuIdPrefix)) { | ||
147 | return; | ||||
148 | } | ||||
149 | 149 | | |||
150 | chrome.contextMenus.create({ | 150 | var deviceId = info.menuItemId.substr(kdeConnectMenuIdPrefix.length); | ||
151 | id: menuId, | | |||
152 | contexts: ["link", "page"], | | |||
153 | title: menuEntryTitle, | | |||
154 | }); | | |||
155 | 151 | | |||
156 | chrome.contextMenus.onClicked.addListener(function (info) { | | |||
157 | if (info.menuItemId == menuId) { | | |||
158 | var url = info.linkUrl || info.pageUrl; | 152 | var url = info.linkUrl || info.pageUrl; | ||
159 | console.log("Send url", url, "to kdeconnect device", id); | 153 | console.log("Send url", url, "to kdeconnect device", deviceId); | ||
160 | if (!url) { | 154 | if (!url) { | ||
161 | return; | 155 | return; | ||
162 | } | 156 | } | ||
157 | | ||||
163 | port.postMessage({ | 158 | port.postMessage({ | ||
164 | subsystem: "kdeconnect", | 159 | subsystem: "kdeconnect", | ||
165 | event: "shareUrl", | 160 | event: "shareUrl", | ||
166 | url: url, | 161 | url: url, | ||
167 | deviceId: id | 162 | deviceId: deviceId | ||
168 | }); | 163 | }); | ||
169 | } | 164 | }); | ||
165 | | ||||
166 | addCallback("kdeconnect", "deviceAdded", function(message) { | ||||
167 | var id = message.id; | ||||
168 | var name = message.name; | ||||
169 | | ||||
170 | var menuEntryTitle = chrome.i18n.getMessage("kdeconnect_open_device", name); | ||||
171 | var menuId = kdeConnectMenuIdPrefix + id; | ||||
172 | | ||||
173 | chrome.contextMenus.create({ | ||||
174 | id: menuId, | ||||
175 | contexts: ["link", "page"], | ||||
176 | title: menuEntryTitle, | ||||
170 | }); | 177 | }); | ||
171 | }); | 178 | }); | ||
172 | 179 | | |||
173 | addCallback("kdeconnect", "deviceRemoved", function(message) { | 180 | addCallback("kdeconnect", "deviceRemoved", function(message) { | ||
174 | chrome.contextMenus.remove("kdeconnect_page_" + message.id) | 181 | chrome.contextMenus.remove("kdeconnect_page_" + message.id) | ||
175 | }); | 182 | }); | ||
176 | 183 | | |||
177 | // MPRIS | 184 | // MPRIS | ||
▲ Show 20 Lines • Show All 547 Lines • Show Last 20 Lines |