Commit graph

766 commits

Author SHA1 Message Date
John McLear
e23af7e439 changelog, package file and fix for redo 2014-03-26 15:44:04 +00:00
John McLear
e1fa43e640 quick formatting clean up 2014-03-17 19:20:32 +00:00
Marcel Klehr
51900cbf67 Toolbar: Allow custom dropdowns for plugins 2014-03-16 14:04:12 +01:00
Marcel Klehr
a369347d86 Merge branch 'pr/1579' into toolbar-test
Conflicts:
	settings.json.template
	src/static/js/pad_editbar.js
2014-03-16 13:30:22 +01:00
John McLear
cc03f5374c Merge pull request #2089 from dmitryuv/changesetslib-fixes
fix for infinite loop on bad changeset
2014-03-13 14:39:19 +00:00
John McLear
e12093eb19 Merge pull request #2080 from ether/ignore-ctrl-pageup
allow tabs to be cycled when focus is in editor
2014-03-13 00:49:20 +00:00
John McLear
f5716a3b26 cleaner logic 2014-03-05 21:44:32 +00:00
John McLear
89d7ba0dc0 merge 2014-03-05 21:27:12 +00:00
John McLear
432438a40d fix dintenation 2014-03-04 23:36:16 +00:00
John McLear
c3d62c5fa4 preprocessor for domline attributes 2014-03-04 23:14:15 +00:00
Marcel Klehr
af50001769 Merge pull request #2074 from webzwo0i/fix-disconnect-on-new-changes-in-padinitialization
don't call ace_getInInternationalComposition if editor is not fully load...
2014-02-26 22:52:30 +01:00
Dmitry Uvarov
0e6019344e fix for infinite loop on bad changeset 2014-02-20 14:08:49 +04:00
Benjamin Chodoroff
44062ae765 escape rendered npm package info 2014-02-17 11:40:30 -05:00
John McLear
7151e7827a allow tabs to be cycled when focus is in editor 2014-02-01 07:05:25 +00:00
webzwo0i
3f31445abf don't call ace_getInInternationalComposition if editor is not fully loaded 2014-01-28 14:07:26 +01:00
Marcel Klehr
b6f354a2de Merge pull request #2052 from ether/fix/l10n-fallbacks-related-langs
Try to find related languages as a fallback
2014-01-25 05:34:11 -08:00
Marcel Klehr
fd4dd915ce Merge pull request #2062 from Gared/enable_import_buttons
Fix #1835 Enable import buttons after failed import (timeout)
2014-01-24 08:26:37 -08:00
Gared
bf6ec18ead Fix #1835 Enable import buttons after failed import (timeout) 2014-01-19 20:04:09 +01:00
Gared
3715535f86 Fix #2058 Add square brackets to url characters 2014-01-19 19:23:11 +01:00
Marcel Klehr
9c64b6e268 Try to find related languages as a fallback
fixes #2029
2013-12-30 13:06:13 +01:00
John McLear
333d2f119b expose update browser selection function 2013-12-18 22:13:03 +00:00
John McLear
1a138438eb dont error when pressing del on rep 0 0 2013-12-18 18:34:35 +00:00
John McLear
8313083cd9 better handling for attribute queries 2013-12-17 20:48:19 +00:00
John McLear
24e96c4f8b Merge pull request #2028 from webzwo0i/remove-deadcode
Remove deadcode
2013-12-09 10:49:57 -08:00
John McLear
505dc70df5 Merge pull request #2013 from ether/getAttributeOnSelection
getAttributeOnSelection function
2013-12-09 09:46:57 -08:00
webzwo0i
77cf2aafac [pad_modals] remove unused variables. for the hide/show functions jquery's default variables are used everywhere 2013-12-08 17:35:11 +01:00
webzwo0i
9400425b1e [virtual_lines] remove traces of virtual_lines/makeVirtualLineView. this code was used for FF2 key handling code and is long unused 2013-12-08 17:33:58 +01:00
webzwo0i
ab797c9831 [pad_connectionstatus] padeditbar is not used anywhere in pad_connectionstatus 2013-12-08 17:31:46 +01:00
webzwo0i
906ab1820b [timeslider] do not include underscore, as its not (longer) used 2013-12-08 17:31:18 +01:00
webzwo0i
1fa8c2a7e6 [collab_client] remove unused function getStats 2013-12-08 17:30:48 +01:00
webzwo0i
6aaf4c4065 [collab_client] remove keys function, which was not used and variable reconnectTimes which was used for some long gone disconnect tracking code 2013-12-08 17:30:25 +01:00
webzwo0i
aadcfbb3d1 do not send globalPadId in clientvars - its not used anywhere 2013-12-08 17:29:41 +01:00
webzwo0i
021db28a02 [Changeset] a?lines_length was not used within inverse function 2013-12-08 17:27:48 +01:00
webzwo0i
e04f46d477 [ace2_inner] init() has replaced setup(), reflect this change in the comments and remove the unused setup() 2013-12-08 17:25:12 +01:00
webzwo0i
020bd3915c remove empty&unused overlaysdiv 2013-12-08 17:24:12 +01:00
webzwo0i
4dd3584532 [ace2inner] remove unused function boldColorFromColor 2013-12-08 17:22:55 +01:00
webzwo0i
a714f63597 [ace2inner] remove unused recolorLineByKey that was part of old recolor module 2013-12-08 17:22:20 +01:00
webzwo0i
3dc844eb08 [ace2_inner] remove unused getLineKeyForOffset that was part of old recolor module 2013-12-08 17:21:53 +01:00
webzwo0i
eee355979d [ace2_inner] remove unused function htmlForRemovedChild 2013-12-08 17:21:27 +01:00
webzwo0i
8175af3017 [collab_client] remove socketid because its not used 2013-12-08 17:20:53 +01:00
webzwo0i
f25fed1c25 [ace2_inner] remove incorpIfQuick because its unused since July 2013-12-08 17:15:38 +01:00
John McLear
8a547b24ba resolve issue where first char showed all formatting 2013-12-07 17:37:52 +00:00
Marcel Klehr
37442d301c Merge pull request #2021 from ldidry/fix-no-tab-indent
Replace tabs indentation with spaces indentation
2013-12-05 06:22:33 -08:00
Luc Didry
3d8452b143 Replace tabs indentation with spaces indentation
Some files are obviously external libraries, I didn't touch them
2013-12-05 08:41:29 +01:00
John McLear
378e07964b allow for lighter colors 2013-12-04 23:01:08 +00:00
John McLear
30f577e8f4 dont assume formatting is on the start of any line 2013-12-01 20:01:17 +00:00
John McLear
95db100f12 remove white space 2013-12-01 18:56:05 +00:00
John McLear
39f81fdb9e remove post ace event 2013-12-01 18:55:42 +00:00
John McLear
3791ad4186 ends of line shouldn't show incorrect formatted status 2013-12-01 18:54:46 +00:00
John McLear
b4877f002d handle logic for line lengths with 0 2013-12-01 18:06:56 +00:00
John McLear
e9f7583793 some nice css to that reflect when a button is active 2013-11-28 17:44:37 +00:00
John McLear
dee2dab7c4 getAttributeOnSelection function 2013-11-28 17:27:52 +00:00
s1341
7550be0921 strip off trailing commas 2013-11-26 10:11:32 +02:00
John McLear
3be1ee5967 slightly cleaner 2013-11-25 17:36:24 +00:00
John McLear
252be19885 make sticky chat mroe responsive to changes in top bar 2013-11-25 17:33:33 +00:00
Marcel Klehr
5d803a0523 Fix walking caret bug
white-space css prop must be set to pre-wrap to keep trailing spaces
fixes #1766
2013-11-22 17:18:30 +01:00
Grant Woodford
c3a58f42e7 Added a better way of detecting when a url does not have a protocol specified 2013-10-21 22:15:46 +02:00
Marcel Klehr
8c9e543b91 Fix disconnect modals 2013-10-12 22:29:03 +02:00
Marcel Klehr
7f10b9a42f Add explanations for more disconnect scenarios 2013-10-10 21:11:15 +02:00
Marcel Klehr
22e9e5fdcd Merge pull request #1926 from ether/fix/no-connect-to-corrupt-pad
Fix a whole range of bugs related to corrupted changesets
2013-10-10 11:07:37 -07:00
Marcel Klehr
46511d6144 Polish the error messages of the easysync lib 2013-10-10 20:02:13 +02:00
Marcel Klehr
ccf4683558 Easysync: Throw an error if an unknown attrib is referneced 2013-10-10 16:38:16 +02:00
John McLear
6dc4240985 Merge pull request #1919 from ether/make-username-show-properly
use val not value, broken with newer jq
2013-10-02 16:37:29 -07:00
John McLear
d69df91709 use val not value, broken with newer jq 2013-10-03 00:36:15 +01:00
John McLear
716e929e64 works but hides caret on full line and not on X too, X is much harder to do 2013-09-29 08:19:57 +01:00
John McLear
6e4d94069f Merge pull request #1906 from ether/down-arrow-dont-be-weird
Down arrow dont be weird
2013-09-28 23:38:45 -07:00
John McLear
7d1d73f8a6 doh, wasnt supposed to add this background 2013-09-25 22:20:13 +01:00
John McLear
ed04842801 more sensible reload without cache message 2013-09-25 22:18:51 +01:00
John McLear
c8109b7398 sanity also control home support 2013-09-25 15:56:56 +01:00
John McLear
487f1a969f vast improvement on movement of caret due to isolation of cause of problem - TLDR is Chrome detects blank rows line heights as incorrect 2013-09-25 14:57:02 +01:00
Marcel Klehr
6a02302fc9 /admin/plugins: Fix search algorithm (use string match in lower case)
fix #1903
2013-09-23 19:55:35 +02:00
John McLear
e35c45e9b5 make export clearly seperated from import 2013-09-21 16:22:43 +01:00
John McLear
ca680a32b6 fix padding so export icons show properly 2013-09-21 16:17:19 +01:00
John McLear
05a8ae7acc padding on import now button 2013-09-21 16:15:59 +01:00
Guillaume AMAT
96adb4d626 The #importsubmitinput button was too small and hidden its value 2013-09-21 12:39:45 +02:00
Guillaume AMAT
6de3a400e1 The import/export columns were not displayed correctly 2013-09-21 12:38:26 +02:00
daniel tygel
1cfde05139 fix .popup CSS to fit in small spaces, like thin iframe 2013-09-17 11:26:11 -06:00
Marcel Klehr
2b46bc40a1 Beautify infinite scroll 2013-09-12 16:37:37 +02:00
Florent Viard
6f478c4de1 Fix to check if searchTerm is not "undefined" before trying to use it to filter search results.
Signed-off-by: Florent Viard <fviard@lacie.com>
2013-09-11 11:36:09 +02:00
Marcel Klehr
c39eb4f443 Make use of the new plural macro 2013-07-23 12:43:30 +02:00
Marcel Klehr
dabba91152 Update html10n.js 2013-07-23 12:42:55 +02:00
Dave Longley
3a47e719d4 Make pads with long lines usable with chrome.
- Do not use incorpIfQuick on keyup because it's not ever quick
  on chrome. Calling incorpIfQuick calls incorporateUserChanges
  which sets a flag on the current callstack state indicating
  that the selection has changed (since something was typed).
  Whenever this flag is set, the event handler will run code
  to update the selection (and possibly scroll the view as
  well), which is a very costly operation in webkit browsers.
  Instead let the user changes be incorporated by the idle worker,
  scheduling it to run ASAP on keyup. This isn't a perfect
  solution, but may make pads running on webkit browsers more
  usable with otherwise fairly unnoticeable changes in the UI.
2013-07-14 01:51:39 -04:00
j@mailb.org
9dd6471921 Add userLeave hook 2013-06-17 15:53:01 +02:00
j@mailb.org
bc5dc74f90 pass pad in postAceInit hook
no way for plugins to access current pad otherwise.
2013-06-17 15:52:51 +02:00
j@mailb.org
a554552bed Simpify CSS for sticky chat 2013-06-17 14:47:28 +02:00
John McLear
ae78c6731d Merge pull request #1811 from clkao/author-style-hook
Document author style hook and provide outer_ace dynamic css manager
2013-06-15 00:17:09 -07:00
Chia-liang Kao
f31db205da allow cssmanager to manage outer_ace 2013-06-15 01:38:46 +08:00
Kyle Kelley
82de797642 Only kept URL schemes which have an RFC standard 2013-06-12 12:31:38 -05:00
Kyle Kelley
b4f155c028 Cleanup gophers 2013-06-12 11:20:36 -05:00
Chia-liang Kao
548f31a46a new hook: aceSetAuthorStyle 2013-06-06 13:03:40 +08:00
Chia-liang Kao
eae9faa28c refactor setAuthorStyle 2013-06-06 12:30:48 +08:00
Marcel Klehr
90d1598688 Merge pull request #1751 from goldquest/dev_IE8-fix
Fixing IE8 errors
2013-05-08 07:19:15 -07:00
Brian Emerick
e7d8f124ad Issue #1625: Fix to client-side-induced changeset spamming.
THE BUG - HIGH LEVEL:
- When client A sends out an attribute change, client B applies that change to itself but
  also thinks that it made the change itself, which is incorrect. This means that when client B
  next makes a change, he will send out that he made the attrib change that A actually made.
- Ex: Have 2 clients on the same pad. Have A apply bold on some text. Next, have B type a character.
  B will broadcast that it both added a character AND applied bold, when in reality it did NOT
  apply bold at all, that change was done by the other client and this client incorrectly adopted it as its own.
- This root bug behavior results in clients continuing to think that they each made the other client's change,
  thus resulting in an infinite loop of changeset spamming that bogs down clients and harms server stability.

THE BUG - IN DEPTH:
- The root issue is in the way that Changesets are combined in Changeset.follow(). Specifically, in the case of a
  changeset with ONLY new attrib changes (no text changes) being merged with an identity changeset (has no ops).
- In this case, Changeset.follow() copies the ops of the new CS and fully overrides the other CS.
- applyChangesToBase invokes Changeset.follow to determine the final client document CS state after applying the new CS.
  If the final client document CS state is NOT the identity CS, then the client broadcasts that it made a change.
- When client A changes just attribs, client B's applyChangesToBase calls Changeset.follow() and passes client A's
  changeset (attrib change) and Client B's current changeset state (identity).
- As per the noted bug, Changeset.follow() returns client A's changeset as a result, causing client B to adopt
  client A's changeset as its own document state. Thus, client A ends up thinking it has made client B's changes.

THE FIX:
- Changeset.follow() should NOT copy the ops of the new CS passed in if those changes are only attrib changes.
  This allows applyChangesToBase to properly set the client's CS back to the identity after applying an
  external attrib change, instead of incorrectly adopting the external client's changes.
2013-04-24 15:18:25 -07:00
goldquest
98c43aff43 fixed spacing 2013-04-17 18:17:14 +02:00
John McLear
f478f99995 Merge pull request #1750 from ether/fix/authorship-once-and-4-all
Fix authorship sanitization
2013-04-17 08:13:22 -07:00
goldquest
896f72311f use document, not doc 2013-04-17 16:51:54 +02:00
goldquest
566034ddf0 IE8 don't knows the Array.forEach function (simple version fix) 2013-04-17 16:51:43 +02:00
goldquest
b08a6e522f IE8 complains, if catch block is missing 2013-04-17 16:51:21 +02:00
Marcel Klehr
146c75e703 Remove console.log in content collector
fixes #1731
2013-04-17 16:37:45 +03:00
Marcel Klehr
560fd55bf2 Fix authorship sanitization
author colors wouldn't get disttributed, if their id was greater than 9
(due to apool encoding them to base 36)
2013-04-17 15:24:40 +02:00