Commit Graph

55 Commits

Author SHA1 Message Date
hallgren
524fb1a6bc minibar.js: bug fix: when not using group translation, and a particular language is chosen in the To: menu, the translation would not be displayed 2010-10-28 12:39:56 +00:00
hallgren
7fac5dc089 minibar.js: bug fix: the To: menu wasn't updated properly when switching grammars 2010-10-28 11:53:50 +00:00
hallgren
5fc0e059c5 minibar: restructured code and improved user interface
* Keyboard input and completion should now work much more smoothly:
  + When you press space, the current word will be completed (if incomplete)
    and a new magnet will be created. If there is more than one possible
    completion, no magnet is created, but the common prefix of the possible
    completions is added to the text box.
  + Instead of asking the server for possible completions every time a new
    letter is added to the curent word, minibar only ask for completions for
    whole words and then filters the list locally when more letters are entered,
    speeding things up when server responses are slow.

* Code restructuring:
  + The PGF server API has been moved to its own file: pgf_online.js. This
    allows it to be reused in other applicaitons without importing the entire
    minibar. It also allows minibar to be used with different server interfaces.
  + The minibar code has been rewritten to avoid storing state information
    in the document tree and accessing it by referring to named document
    elements. The code now also avoids using string literals contaning
    the names of top-level functions to specify event handlers for buttons
    and menus. (The code is no longer introspective, so alpha conversion will
    not change its meaning.)
2010-10-26 12:42:33 +00:00
hallgren
1e51a2e9e5 support.js: some enhancements and new functions
+ ajax_http_get(url,callback) now checks the HTTP response status and shows an
  error message if the status is not OK (is not 200)
+ New function node(tag,attrs,children) to create document nodes with arbitraty
  attributes and children. The functions node() and text() should now be enough
  to construct arbitrary document trees in an easy, functional way, and many of
  the more specialized functions could be removed.
+ When calling the function button(label,action,key), the action can be a
  function instead of a string, so you can use local/anonymous functions.
+ New function debug(str) adds text to the element with id=debug, if it
  exists.
2010-10-26 11:52:04 +00:00
hallgren
57f0124f2a minibar.html: add a <noscript> element with a note that the page doesn't work unless JavaScript is enabled 2010-10-23 14:56:10 +00:00
hallgren
d803d2a925 minibar.js: show the type error messages that can occur for grammars with dependent types 2010-10-18 12:15:30 +00:00
hallgren
26da60d0a9 minibar.js: add an option to enable/disable the Random button 2010-10-17 16:48:21 +00:00
hallgren
8b7d27fe4c minibar: work on adding back support for typing multiple words without pressing enter in between
It mostly works now, but some minor issues still need to be fixed.
2010-09-29 13:03:40 +00:00
hallgren
66672d8af1 minibar: update about.html with description of recent changes 2010-09-28 11:46:32 +00:00
hallgren
1ac7a8bd7c minibar/about.html: fix typos and formatting 2010-09-24 12:57:16 +00:00
hallgren
72fe93a8c4 minibar.html: specify charset, move initialization
Added a meta tag to specify that the file is in UTF-8. This makes the browser
(at least Firefox) assume that the JavaScript files are also in UTF-8, it seems.

Moved the call to start_minibar() from the <body onload="..."> to the end of
the file. The onload action is not executed until all images in the document
has been loaded, while javascipt at the end of the file is executed as soon
as the HTML file has been loaded. (Calling start_minibar() from the head of
the document would be too soon, since it refers to elements in the body,
which hasn't been loaded yet.)
2010-09-24 12:47:18 +00:00
hallgren
1b6d9ee29d minibar.js: server API code cleanup 2010-09-14 17:15:37 +00:00
hallgren
1f06415774 minibar.js: bug fix: the current word should be accepted when you press enter if it matches one of the possible completions exactly
The current word is also accepted if there is only one remaining possible
completion.
2010-09-14 16:48:20 +00:00
hallgren
7581451852 minibar.js: add access keys to some of the buttons 2010-09-14 16:45:48 +00:00
hallgren
17cf4e1276 support.js: create buttons with access keys 2010-09-10 12:20:07 +00:00
hallgren
e13e47be8a minibar: default input language is now the user's preferred language, if possible
This is implemented using the userLanguage field in the grammar info output by
pgf-server.
2010-09-10 11:03:46 +00:00
hallgren
46da64cc72 minibar: use AJAX instead of JSONP when possible
Using AJAX instead of JSONP can give better caching in the browser, since the
URL doesn't need to contain a (dynamically generated) callback function name.
But because of the same origin policy in JavaScript, AJAX can only be used when
the HTML file is served from the same server as the PGF. The new function
http_get_json in support.js uses AJAX if this is the case, and falls back to
JSONP otherwise.
2010-09-10 08:38:11 +00:00
hallgren
5290659c2c Minibar: PGF server API: pass callback functions directly instead of passing function names as strings. 2010-09-05 18:06:45 +00:00
hallgren
c85c1e1c11 minibar: fix broken link to brushed-metal background
Solution: include a local copy of brushed-metal.png
2010-09-05 18:01:44 +00:00
hallgren
509ccb0db0 Adapt minibar.js to the current GF web service API
Quick fix. More work needed for correct behaviour when multiple words are
entered at once.
2010-08-27 16:46:14 +00:00
hallgren
a2fa22ed74 Add missing <td> tags in the HTML constructed by functio show_groupedtranslations 2010-07-13 11:54:42 +00:00
hallgren
2e2d190fd4 Bug fix in minibar.js: no translations where shown when using option show_grouped_translations: false
This affected minibar.html but not phrasebook.html and was
caused by accidental shadowing of function tr in function show_translations.
2010-07-13 11:35:28 +00:00
hallgren
d0954d2f20 Make minibar.js work again after backwards incompatible changes to the data structures output by pgf-server.
The canParse field was removed without notice.
2010-07-13 10:22:03 +00:00
krasimir
027c14dcbb FridgeApp and TranslateApp now show the type errors 2010-07-08 07:57:36 +00:00
hallgren
c1245d53cd Access keys for input fields in minibar and feedback form 2010-07-06 13:36:42 +00:00
hallgren
5fb77eb0fe feedback list styling 2010-06-02 16:50:46 +00:00
hallgren
9976477272 minibar feedback: save user_agent, simple feedback viewer 2010-06-02 16:23:52 +00:00
hallgren
1e5984fe2d Feedback form for phrasebook/minibar 2010-06-02 14:36:09 +00:00
hallgren
e5bc4328cb New minibar option: default_source_language 2010-06-02 13:59:38 +00:00
hallgren
86da023392 Some minibar/phrasebook button and style changes
* Add help button at top of page.
* Change style of word buttons to look like fridge magnets again.
* New options to specify locations of other pages: feedback_url, help_url. If
  they are left undefined, no Help/Feedback buttons will be created.
* Shorter test in Google Translate button.
2010-06-02 13:40:41 +00:00
hallgren
0c67946362 Improved Goolge Translate button 2010-06-02 10:39:25 +00:00
hallgren
83015a8018 Work on the feedback button for the minibar 2010-06-01 20:20:17 +00:00
hallgren
f2bf7f188f Always show link to Google Translate, and open it in a new window. 2010-05-29 15:42:27 +00:00
hallgren
deacb02195 updated documentation 2010-05-28 16:19:06 +00:00
hallgren
4436a454ef Add link to Google Translate 2010-05-28 16:17:54 +00:00
hallgren
8317f02279 Changes for publication of SALDO demo web apps
Published at http://spraakbanken.gu.se/swe/forskning/saldo/ordspel
2010-05-28 14:47:38 +00:00
hallgren
f46bfb67b6 support.js: new function span_id, bug fix in function sort 2010-05-28 14:41:30 +00:00
hallgren
c54d21ea2c Add meta tag to avoid horizontal scrolling in Mobile Safari
With thanks to codinggeekette,
http://www.codinggeekette.com/post/Mobile-Safari-40-2b-Horizontal-Scrolling-3d-SUX.aspx
2010-05-26 21:03:57 +00:00
hallgren
1e379b4953 Improved keyboard input handling in minibar/phrasebook
1. The text input field is shown form the start, no need to click.
2. The text input field is removed when no more words can be added to the
   sentence.
3. When you press Enter, a word is added to the sentence (1) if there is only
   one possible completion left (e.g. if you typed "airp" and the only
   completion is "airport"), or (2) if what you typed exactly matches one
   of the completions (e.g. if you typed "the" and the completions are
   "the", "theatre" and "these").
2010-05-26 15:49:08 +00:00
hallgren
296463fc05 Enable display of abstract syntax in minibar 2010-05-26 15:48:06 +00:00
hallgren
0f82695c31 Use <input type=button ...> instead of <div ...> tags for the word magnets. This should make them clickable in more browsers and could improve layout. 2010-05-26 11:47:15 +00:00
hallgren
0d77f24f02 Change server to http://www.grammaticalframework.org:41296 2010-05-26 11:46:25 +00:00
hallgren
9f42474b16 hide the language code if translating to only one target language 2010-05-21 10:43:19 +00:00
hallgren
14d26b03d8 smaller input field 2010-05-21 10:42:30 +00:00
aarne
c5b3de8825 Amharic transliteration by Markos 2010-05-07 12:23:57 +00:00
hallgren
329c39b4d4 Merge phrasebook.js into minibar.js 2010-04-30 14:55:56 +00:00
hallgren
593f104bc1 Some work on the Saldo game 2010-04-28 12:58:17 +00:00
hallgren
d1088d12bc Some work on minibar:
1. Menu for choosing target language.
2. Pass options when calling start_minibar.
See about.html for more details.
2010-04-19 16:48:26 +00:00
hallgren
1baa90a0ff Work in progress on keyboard input in minibar 2010-04-15 15:42:18 +00:00
hallgren
d711c7da09 Code simplification 2010-04-15 15:41:30 +00:00