Commit graph

856 commits

Author SHA1 Message Date
John McLear
b59f6a4d6f Update ace2_inner.js 2014-11-04 15:50:53 +00:00
John McLear
a22b558a2c change to proper IE check 2014-11-01 20:21:48 +00:00
John McLear
9b8398d0bd Merge branch 'develop' of github.com:ether/etherpad-lite into develop 2014-11-01 20:20:19 +00:00
John McLear
d54bb52b75 Fixes #1414
https://github.com/ether/etherpad-lite/issues/1414
2014-11-01 18:18:25 +00:00
John McLear
bf380eea50 take line breaks and treat them appropriatly instead of creating a space for them.. 2014-11-01 18:07:34 +00:00
John McLear
ac2e949c3e chrome browser change wrapping type 2014-10-24 00:13:34 +01:00
Prateek Saxena
6f5f89bc6b Use 'evt.shiftKey' instead of matching 'charCodes'
The shortcut wasn't running consistently and was blocking
'Cmd+L' on Chrome 38. Instead of going to the location bar
it would tooggle the list. Strangely, it did not override
'Cmd+N'. Using `evt.shiftKey` instead of matching the `charCode`
to the uppercase letter solves the problem.
2014-10-14 18:37:35 +05:30
Prateek Saxena
ca32ac89b6 Add a subset of FontAwesome icons using Fontello
Most of the code here has been taken from @LaKing's #2554.

Only icons required for etherpad have been added. Here is a
list of the code points that are being used:

 0xe800 0xe801 0xe802 0xe803
 0xe804 0xe805 0xe806 0xe807
 0xe808 0xe809 0xe80a 0xe80b
 0xe80c 0xe80d 0xe80e 0xe80f
 0xe810 0xe811 0xe812 0xe813
 0xe814 0xe815 0xe816 0xe817

Their related icon names can be seen in:
/src/static/css/fontawesome-etherpad.css

Even though this patch *adds* all the required icons it only
uses them in the in toolbar. The switch to using only FontAwesome
icons and the removal of old PNG files will only happen after the
timeslider interface has been updated.

This is the first step for #2253
2014-10-14 09:16:44 +05:30
Prateek Saxena
7b8953ee75 Add keyboard shortcuts for ordered and unordered lists and update tooltips #1987
Ordered List: Ctrl-Shift-N
Unordered List: Ctrl-Shift-L
2014-10-12 17:40:57 +05:30
Prateek Saxena
001d75cd1e Add 'Ctrl-5' keyboard shortcut for 'strikethrough' #1987
A quick search revealed that 'Ctrl-5' is a popular shortcut
for strikethrough. Implemented in 'ace2_inner' and updated
the English l10n file for the tooltip.
2014-10-11 22:51:20 +05:30
John McLear
0962f65c08 I prefer this.. 2014-10-06 14:23:13 +01:00
John McLear
f0c12d3884 escape useragent before displaying 2014-10-06 14:18:54 +01:00
John McLear
fb940897ee Merge pull request #2257 from 0ip/fix/user-count
Fix broken user count
2014-10-05 12:42:52 +01:00
0ip
29f8f13423 Prevent selection on buttons 2014-10-05 13:35:20 +02:00
0ip
5008ad10c6 Fix user count
Still dirty, but really works.
2014-10-05 13:14:07 +02:00
0ip
ee68d43932 Fix import/export popup margin @ timeslider 2014-10-03 17:39:15 +02:00
0ip
12c1d3b05a Fix active button ui 2014-10-03 17:35:48 +02:00
Stefan
0d95c8d1ec Revert change on position of imp/exp overlay 2014-09-14 20:26:35 +02:00
Stefan
cf6e5aa3ca Fix click on timeslider loads two different revisions 2014-08-09 18:56:18 +02:00
Stefan
bb21759d78 Fix timeslider revision not changing in most cases 2014-08-09 18:52:44 +02:00
Stefan
287a7805c9 Fix position of import/export popup in timeslider 2014-08-09 14:05:04 +02:00
Mike DeRosa
7861cae763 Cleaning up switchToPad functionality so that we only need one call to the server("SWITCH_TO_PAD") instead of two (cleaning session info and client ready).
Also Clearing chat messages when switchToPad is called in pad.js instead of having the server tell the client to clear the chat messages.
2014-07-12 16:27:00 -04:00
Mike DeRosa
070ba40f4f Fallback for browsers that don't support window.history.pushstate 2014-07-06 18:22:24 -04:00
kpn3m000
da0fe98edc Fixes search on plugins without Description
example "tables_ssl"
2014-07-03 14:24:41 +02:00
John McLear
2ee4e9e7fd change to line 73 2014-06-28 15:19:28 +01:00
John McLear
b657676bdd gah can only do 1/2 a fix 2014-06-24 19:02:40 +01:00
John McLear
25ace65374 don't lose comment 2014-06-24 18:46:41 +01:00
John McLear
db045c6ffd CSS fix for pasting plain-text in chrome, needs thorough testing 2014-06-24 18:45:54 +01:00
Mike DeRosa
4ccd7131d3 Added function to switch to a different pad without having to reload the whole page. 2014-06-14 14:25:56 -04:00
luto
f70309645c pluginfw: accept 'null' as a hook-result, as this is needed by handleMessage 2014-06-12 13:33:17 +02:00
Marcel Klehr
46ef83d710 Fix #online_count
Rather dirty, but works.
2014-04-30 22:32:08 +02:00
John McLear
706ee1f866 fix color 2014-04-15 18:11:41 +01:00
Marcel Klehr
6b5e3ea3a5 Toolbar: Fix timeslider button
Wouldn't play nice with url params in document.location
fixes #2124
2014-03-31 20:50:01 +02:00
Marcel Klehr
80e45e1192 Fix redo toolbar command, again. 2014-03-30 13:05:51 +02:00
Marcel Klehr
6054cda473 Create a customizable timeslider toolbar 2014-03-30 13:02:41 +02:00
Marcel Klehr
867e40533a Fix timeslider export dropdown 2014-03-30 12:30:18 +02:00
John McLear
54bf17bfea fix error on focus remove from import/export 2014-03-29 13:32:34 +00:00
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
Grant Woodford
17666eaef7 Changed to not use inline JavaScript 2013-12-15 12:02:43 +02: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
Grant Woodford
d1367484e3 Added a way to closed the extended chat window 2013-11-28 21:53:00 +02:00
Grant Woodford
383a216a7d Added a way to closed the extended chat window 2013-11-28 21:48:08 +02: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
cohitre
602380abb7 passing the ToolbarItem to the callback 2013-04-15 16:06:32 -07:00
cohitre
0c52fb5e30 Normalizing how select and button commands are triggered. 2013-04-15 11:32:59 -07:00
John McLear
4989f56673 undo avoid changeset spam as it breaks functionality 2013-04-15 14:36:25 +01:00
John McLear
c3c7a3d128 Merge pull request #1721 from ether/dont-send-same-cs-spam
temp patch for #1652
2013-04-15 04:20:05 -07:00
cohitre
90837437c5 Moving the toolbar plugin calls. 2013-04-13 12:06:51 -07:00
John McLear
08b54ef61b Merge pull request #1732 from ether/authorID-2
Correct authorID in Changeset on modification
2013-04-12 06:36:39 -07:00
John McLear
337179fddd remove console logs and cruft 2013-04-12 14:34:07 +01:00
Marcel Klehr
f4de7f6a90 Use a string instead of an array! 2013-04-11 21:23:38 +02:00
Marcel Klehr
49013b18c7 We need to replace all new author attribs with thisSession.author, in case someone copy/pasted or otherwise inserted other peoples changes 2013-04-11 21:12:59 +02:00
John McLear
f9d23767f8 Merge pull request #1709 from ether/keep-list-order-on-paste
When you paste into a numbered list, keep some integrity
2013-04-11 09:07:22 -07:00