diff options
| author | Joakim Verona | 2011-10-28 16:26:43 +0200 |
|---|---|---|
| committer | Joakim Verona | 2011-10-28 16:26:43 +0200 |
| commit | fc7ee8f78653ddcd6a46bf1ac1b50b80d939c52e (patch) | |
| tree | cb39f16cf2f391669cb6341f5b3d444a53b13dc2 /README.xwidget | |
| parent | b70516db12801e015c538c4e7eb44cb87316afc4 (diff) | |
| download | emacs-fc7ee8f78653ddcd6a46bf1ac1b50b80d939c52e.tar.gz emacs-fc7ee8f78653ddcd6a46bf1ac1b50b80d939c52e.zip | |
some fruitless webkit size experiments
Diffstat (limited to 'README.xwidget')
| -rw-r--r-- | README.xwidget | 176 |
1 files changed, 93 insertions, 83 deletions
diff --git a/README.xwidget b/README.xwidget index 6b735cae13a..e9b8817b17b 100644 --- a/README.xwidget +++ b/README.xwidget | |||
| @@ -264,7 +264,8 @@ Currently I just allocate as large an area as the offscreen widget | |||
| 264 | desires. This works well most of the time. But a HTML page might in | 264 | desires. This works well most of the time. But a HTML page might in |
| 265 | principle be of infinite height so there will probably be cases where | 265 | principle be of infinite height so there will probably be cases where |
| 266 | this doesn't work too well. | 266 | this doesn't work too well. |
| 267 | ** TODO again a trace | 267 | ** DONE again a trace |
| 268 | CLOSED: [2011-10-28 Fri 13:48] | ||
| 268 | [2011-08-23 Tue] | 269 | [2011-08-23 Tue] |
| 269 | the hunch is that since I still hand-wave the view storage the array | 270 | the hunch is that since I still hand-wave the view storage the array |
| 270 | can get out of synchronous. so maybe switching to a lisp structure | 271 | can get out of synchronous. so maybe switching to a lisp structure |
| @@ -533,6 +534,9 @@ xdotool | |||
| 533 | xte xautomation | 534 | xte xautomation |
| 534 | crikey | 535 | crikey |
| 535 | libxdo | 536 | libxdo |
| 537 | |||
| 538 | *** TODO webkit raw keyboard event escape | ||
| 539 | c-c tab could send a raw tab to the webkit instance. | ||
| 536 | ** DONE remove the special-case for when the minibuffer is | 540 | ** DONE remove the special-case for when the minibuffer is |
| 537 | active. I added some code to reduce the annoying problem display artefacts | 541 | active. I added some code to reduce the annoying problem display artefacts |
| 538 | when making the minibuffer the selected window. This made xwidgets in the | 542 | when making the minibuffer the selected window. This made xwidgets in the |
| @@ -1203,6 +1207,10 @@ to see the problem surface to http://www.slashdot.org | |||
| 1203 | 1207 | ||
| 1204 | and then compare by resizing in Epiphany, which is also webkit based. | 1208 | and then compare by resizing in Epiphany, which is also webkit based. |
| 1205 | 1209 | ||
| 1210 | **** TODO try putting webkit osr inside a scrolling window | ||
| 1211 | it seems webkit is supposed to behave differently while embedded in a | ||
| 1212 | scrolling window. This is a bit cumbersome because the container stack | ||
| 1213 | is already deep. | ||
| 1206 | *** TODO xwidget webkit allow loading from string from emacs | 1214 | *** TODO xwidget webkit allow loading from string from emacs |
| 1207 | *** DONE xwidget-webkit-last-session | 1215 | *** DONE xwidget-webkit-last-session |
| 1208 | CLOSED: [2011-08-01 Mon 22:38] | 1216 | CLOSED: [2011-08-01 Mon 22:38] |
| @@ -1230,6 +1238,90 @@ that image-mode has special code to handle scrolling. the browser mode | |||
| 1230 | and image mode has some similarities. | 1238 | and image mode has some similarities. |
| 1231 | 1239 | ||
| 1232 | I made some delegation code frrom webkit mode to image mode. | 1240 | I made some delegation code frrom webkit mode to image mode. |
| 1241 | *** TODO internal links (page.html#section) do not work | ||
| 1242 | see xwidget-webkit-show-named-element | ||
| 1243 | |||
| 1244 | *** TODO sindicat notes | ||
| 1245 | Here are some comments from user "sindikat" and my replies | ||
| 1246 | |||
| 1247 | - site.com and http://site.com should be equivalent (simple site.com | ||
| 1248 | throws error) | ||
| 1249 | |||
| 1250 | Yes, but its unclear at what level in Emacs to do this | ||
| 1251 | properly. I added a url-tidy function as a start. | ||
| 1252 | |||
| 1253 | - http://ya.ru renders inadequatly (compare with any other browser) - | ||
| 1254 | the search text-input is way below | ||
| 1255 | |||
| 1256 | The problem is the size communication between Emacs and Webkit. | ||
| 1257 | |||
| 1258 | - doing PageDown is endless; so if you do 100 PageDowns, you have to | ||
| 1259 | do 100 PageUps to retun to the header of the page | ||
| 1260 | |||
| 1261 | True, I hadn't noticed. Thanks. | ||
| 1262 | |||
| 1263 | - http://linux.org.ru (just an example) renders incorrectly too - it | ||
| 1264 | should stretch horizontally | ||
| 1265 | |||
| 1266 | Size communication. | ||
| 1267 | |||
| 1268 | - obviously, pointing of mouse over some link should change it to | ||
| 1269 | pointing hand cursor | ||
| 1270 | |||
| 1271 | Need to verify with some other webkit browser. | ||
| 1272 | |||
| 1273 | - when you are somewhere on the middle of a long page, than go to some | ||
| 1274 | other page, you are still in the middle, instead of being again on | ||
| 1275 | the top | ||
| 1276 | |||
| 1277 | This is because I inherit from Image view mode. I kind of like it so | ||
| 1278 | we can add an option for it. | ||
| 1279 | |||
| 1280 | |||
| 1281 | - changing dropdown menus cause flickering | ||
| 1282 | |||
| 1283 | |||
| 1284 | - string entering is incorrect - by default it enters the title of the | ||
| 1285 | page, while it should be empty | ||
| 1286 | |||
| 1287 | The cause is the lack of return value in the webkit evaluation | ||
| 1288 | API. Ive made some fixes. | ||
| 1289 | |||
| 1290 | - internal links (page.html#section) do not work | ||
| 1291 | |||
| 1292 | ive added a rudimentary function "xwidget-webkit-show-named-element" for this | ||
| 1293 | |||
| 1294 | - maybe it's a good idea to implement Conkeror or some other | ||
| 1295 | keybindings, where you press 'f' then select the exact <input | ||
| 1296 | type="text"> where you want to enter text, without using mouse, | ||
| 1297 | etc.; | ||
| 1298 | |||
| 1299 | Indeed, this would require better DOM integration. | ||
| 1300 | |||
| 1301 | - pressing 'home' and 'end' puts nonsense into minibuffer | ||
| 1302 | |||
| 1303 | Probably because the Image mode derivative is mostly a hack. | ||
| 1304 | fixed now I think. | ||
| 1305 | |||
| 1306 | |||
| 1307 | |||
| 1308 | |||
| 1309 | |||
| 1310 | |||
| 1311 | - implement search (emacs internal isearch obviously doesn't work) | ||
| 1312 | |||
| 1313 | Either use the webkit search but that doesn't feel right. It would be | ||
| 1314 | better to expose the DOM and search that. | ||
| 1315 | |||
| 1316 | - some sites intercept with keyboard; example - | ||
| 1317 | http://www.artlebedev.ru/kovodstvo/business-lynch/2011/10/03/ uses | ||
| 1318 | Ctrl+left/right/up/down to navigate between pages - this should be | ||
| 1319 | implemented too | ||
| 1320 | |||
| 1321 | Keyboard integration is the unloved step-child of xwidgets, unfortunately. | ||
| 1322 | |||
| 1323 | |||
| 1324 | |||
| 1233 | ** TODO xwidget image display spec compatibility | 1325 | ** TODO xwidget image display spec compatibility |
| 1234 | some history: the first version of the xwidget display spec was | 1326 | some history: the first version of the xwidget display spec was |
| 1235 | the same as an image spec. This turned out not to be fantastic because | 1327 | the same as an image spec. This turned out not to be fantastic because |
| @@ -1369,85 +1461,3 @@ splint -Demacs -DHAVE_CONFIG_H -I. -I/home/joakim/build_myprojs/emacsnew/emac | |||
| 1369 | user reports that xwidgets segfaults on the 32 bit Mint distribution | 1461 | user reports that xwidgets segfaults on the 32 bit Mint distribution |
| 1370 | but not the 64 bit. Mint is an Ubuntu derivative. I got some | 1462 | but not the 64 bit. Mint is an Ubuntu derivative. I got some |
| 1371 | VirtualBox images to test with. | 1463 | VirtualBox images to test with. |
| 1372 | ** TODO sindicat notes | ||
| 1373 | Here are some comments from user "sindikat" and my replies | ||
| 1374 | |||
| 1375 | - site.com and http://site.com should be equivalent (simple site.com | ||
| 1376 | throws error) | ||
| 1377 | |||
| 1378 | Yes, but its unclear at what level in Emacs to do this | ||
| 1379 | properly. I added a url-tidy function as a start. | ||
| 1380 | |||
| 1381 | - http://ya.ru renders inadequatly (compare with any other browser) - | ||
| 1382 | the search text-input is way below | ||
| 1383 | |||
| 1384 | The problem is the size communication between Emacs and Webkit. | ||
| 1385 | |||
| 1386 | - doing PageDown is endless; so if you do 100 PageDowns, you have to | ||
| 1387 | do 100 PageUps to retun to the header of the page | ||
| 1388 | |||
| 1389 | True, I hadn't noticed. Thanks. | ||
| 1390 | |||
| 1391 | - http://linux.org.ru (just an example) renders incorrectly too - it | ||
| 1392 | should stretch horizontally | ||
| 1393 | |||
| 1394 | Size communication. | ||
| 1395 | |||
| 1396 | - obviously, pointing of mouse over some link should change it to | ||
| 1397 | pointing hand cursor | ||
| 1398 | |||
| 1399 | Need to verify with some other webkit browser. | ||
| 1400 | |||
| 1401 | - when you are somewhere on the middle of a long page, than go to some | ||
| 1402 | other page, you are still in the middle, instead of being again on | ||
| 1403 | the top | ||
| 1404 | |||
| 1405 | This is because I inherit from Image view mode. I kind of like it so | ||
| 1406 | we can add an option for it. | ||
| 1407 | |||
| 1408 | |||
| 1409 | - changing dropdown menus cause flickering | ||
| 1410 | |||
| 1411 | |||
| 1412 | - string entering is incorrect - by default it enters the title of the | ||
| 1413 | page, while it should be empty | ||
| 1414 | |||
| 1415 | The cause is the lack of return value in the webkit evaluation | ||
| 1416 | API. Ive made some fixes. | ||
| 1417 | |||
| 1418 | - internal links (page.html#section) do not work | ||
| 1419 | |||
| 1420 | ive added a rudimentary function "xwidget-webkit-show-named-element" for this | ||
| 1421 | |||
| 1422 | - maybe it's a good idea to implement Conkeror or some other | ||
| 1423 | keybindings, where you press 'f' then select the exact <input | ||
| 1424 | type="text"> where you want to enter text, without using mouse, | ||
| 1425 | etc.; | ||
| 1426 | |||
| 1427 | Indeed, this would require better DOM integration. | ||
| 1428 | |||
| 1429 | - pressing 'home' and 'end' puts nonsense into minibuffer | ||
| 1430 | |||
| 1431 | Probably because the Image mode derivative is mostly a hack. | ||
| 1432 | fixed now I think. | ||
| 1433 | |||
| 1434 | |||
| 1435 | |||
| 1436 | |||
| 1437 | |||
| 1438 | |||
| 1439 | - implement search (emacs internal isearch obviously doesn't work) | ||
| 1440 | |||
| 1441 | Either use the webkit search but that doesn't feel right. It would be | ||
| 1442 | better to expose the DOM and search that. | ||
| 1443 | |||
| 1444 | - some sites intercept with keyboard; example - | ||
| 1445 | http://www.artlebedev.ru/kovodstvo/business-lynch/2011/10/03/ uses | ||
| 1446 | Ctrl+left/right/up/down to navigate between pages - this should be | ||
| 1447 | implemented too | ||
| 1448 | |||
| 1449 | Keyboard integration is the unloved step-child of xwidgets, unfortunately. | ||
| 1450 | |||
| 1451 | |||
| 1452 | * TODO - internal links (page.html#section) do not work | ||
| 1453 | see xwidget-webkit-show-named-element | ||