Commit graph

949 commits

Author SHA1 Message Date
Mihai Varga
225bbbc24a Added essential node modules to avoid npm install 2015-04-10 10:29:58 +03:00
Mihai Varga
94f8076332 Map initial maxBounds are set in the constructor 2015-04-08 11:38:45 +03:00
Mihai Varga
4d8028613b Document is placed in the middle of the screen 2015-04-08 11:01:45 +03:00
Mihai Varga
e0da2747cc RemoveAll method for removing all selections 2015-04-07 20:21:32 +03:00
Mihai Varga
d8c221b9c2 Renamed tooltips to resemble selection and removed surface area 2015-04-07 20:20:27 +03:00
Mihai Varga
0120711974 Place toolbar items next to each other 2015-04-07 18:01:43 +03:00
Mihai Varga
a212001512 Workaround for drawing shapes bug.
Without this shapes cannot be shrunken when they are being drawn.
If draw a shape and then move the mouse inside it (to reduce its size)
the wrong type of event is fired and the shape is not updated.
2015-04-06 17:20:43 +03:00
Mihai Varga
e2d5e35597 README update 2015-04-06 17:14:21 +03:00
Mihai Varga
4b7362ac08 Ignore resulting js files in dist 2015-04-06 17:09:27 +03:00
Mihai Varga
a7f9b427d6 This is generated by the build 2015-04-06 17:06:50 +03:00
Mihai Varga
98e9b6ecb0 Added draw control to the example html doc 2015-04-06 17:02:43 +03:00
Mihai Varga
20195a3f43 Fixed js lint errors 2015-04-06 16:30:09 +03:00
Mihai Varga
f76216071e Use node modules from leaflet 2015-04-06 16:20:46 +03:00
Mihai Varga
c88e7260a4 This file is generated by the build, no for it to be on git 2015-04-06 12:39:11 +03:00
Mihai Varga
ff700ae813 Added Leaflet.Draw-0.2.4
Draw is a plugin that adds support for drawing and editing vectors and
markers on Leaflet maps. This will be used to create selections on the
document.
Source code: https://github.com/Leaflet/Leaflet.draw
Licence: MIT
2015-04-06 12:23:19 +03:00
Mihai Varga
206a2538d6 Container's background color is the same as document's #F0F0F0 2015-04-06 10:09:16 +03:00
Mihai Varga
3fc926348d Zooming is animated again 2015-04-06 09:55:12 +03:00
Mihai Varga
4d66d025fa Center restore after zoom 2015-04-03 17:22:19 +03:00
Mihai Varga
f870f78e1d Prefetch 1 tile wide border around current visible area
If the user scrolls slowly he won't notice the loading tiles.
2015-04-03 14:04:01 +03:00
Mihai Varga
54cf584a35 Only load tiles from the visible area (outer container)
Previous to this, the whole documnet was loaded because of the way
scrollbars have been added.
Now the visible area is determined by the current scrollbar position
and the outer container's size.
2015-04-03 14:00:59 +03:00
Mihai Varga
67e183105f This places the controls above the map (in another div)
I have no experience with css but this works
TODO: needs proper fixing
2015-04-03 12:01:02 +03:00
Mihai Varga
61210a92a3 Initialize the outer div (container) in map's constructor
This will be later used to get the center of the viewspace
2015-04-02 19:36:22 +03:00
Mihai Varga
48c92dd555 Document is no longer dragable and scrollable
Mouse scrolling is now actualy scrolling instead of zooming
2015-04-01 13:10:17 +03:00
Mihai Varga
3da367096d Don't request invalid tiles 2015-04-01 11:24:31 +03:00
Mihai Varga
0811e2eb99 Use L.DomUtil instead of direct element access 2015-04-01 11:12:45 +03:00
Mihai Varga
d1fe237992 Update document info only if given status is different
Document info = height and width
2015-03-31 19:55:37 +03:00
Mihai Varga
283b35ab6e This fixes the loading problem
The document now loads and zooms smoothly
2015-03-31 19:51:42 +03:00
Mihai Varga
c22280f47c Removed unnecessary map._update() call 2015-03-30 19:22:17 +03:00
Mihai Varga
04403ff782 Update div dimension when zooming for the scrollbar 2015-03-30 19:21:21 +03:00
Mihai Varga
4944fcc57d Detached controls from the map and added scrollbars
The "controls" div holds map controls suchs as the Zoom button and
it's separated from the map in order to have the controls on the top
of the page all the time.

The "document-container" div is the actual display of the document, is
what the user sees and it should be no larger than the screen size.

The "map" div is the actual document and it has the document's size
and width, this being inside the smaller "document-container" will
cause the content to overflow, creating scrollbars
2015-03-30 19:20:04 +03:00
Mihai Varga
5d6cbc4ed8 Switched the order in which docPixelLimits is created 2015-03-30 19:18:58 +03:00
Mihai Varga
c6ecfeaf8a Adapt document loading command to new protocol 2015-03-30 19:16:50 +03:00
Mihai Varga
b138c2431d Tiles are cached on the client side
Updated the removeTile method to just mark the tile as
not current and the set _update method not to 'hide'
(set opacity to 0) tiles from the current zoom level
2015-03-24 16:26:40 +02:00
Tor Lillqvist
32de8661bc Mention how to run npm without root 2015-03-24 13:15:43 +02:00
Mihai Varga
3b2c3a69df Mentioned about 'jake lint' in README 2015-03-23 19:37:42 +02:00
Mihai Varga
dc97c7eabd Fixed some lintjs coding style errors 2015-03-23 19:36:01 +02:00
Mihai Varga
624873cf47 Added instructions on how to use loleaflet + an example 2015-03-23 19:24:39 +02:00
Mihai Varga
31f5141c46 Added zoom functionality
The document can be zoomed in an out. Each zoom level corresponds
to a 20% increase or decrease in tile dimmension (in twips).
Zooming doesn't work well yet. Tiles are removed and readded to
many times and it looks bad. Also the zooming center has to be fixed.
2015-03-23 19:05:25 +02:00
Mihai Varga
5db22c1962 Temporary dded zoom control back 2015-03-23 18:57:23 +02:00
Mihai Varga
3921903e8e MaxBounds are set automatically based on the size specified by loolwsd 2015-03-20 10:05:22 +02:00
Mihai Varga
fe757bfc12 Workaround for Leaflet issue #3320 2015-03-20 10:02:58 +02:00
Mihai Varga
aa5d7c9ccc Fixed tiles interleaving problem + allowed static layers to be added
Tiles are now correctly displayed.
Layers that request tiles from a socket connection need to specify
the 'useSocket: true' option. This way layers that do not require an
internet connection can be added (like a grid, ruler, etc.).
I've also fixed some coding style problems suggested by lintjs
2015-03-19 19:08:29 +02:00
Mihai Varga
0c5b654194 Tiles are now loaded from a loolwsd server
the '_addTile' method now also handles tiles comming from a websocket.
Tiles are no longer added in one batch as they are added when received.
Added twip to pixel and pixel to twip convertor methods.
1 twip = 15 px
2015-03-16 17:46:20 +02:00
Mihai Varga
a8075b8250 Added websockets to the Map object
'onopen' and 'onmessage' events are handled
in src/layer/tile/TileLayer.js
Tile data is received as an ArrayBuffer which contains a string message
followed by a new line and then by the actual PNG data. The PNG data
is encoded in base-64 in order to be displayed.
2015-03-16 17:38:19 +02:00
Mihai Varga
2213e76a32 Removed zoom control and attribution display 2015-03-16 17:33:07 +02:00
Mihai Varga
87dc6f5b8f Set LF line terminator 2015-03-09 15:58:37 +02:00
Mihai Varga
3d64e7764f Readme that explains how to build and states code convetions 2015-03-09 15:54:27 +02:00
Mihai Varga
699cab4ced Removed initial README and contributing guide 2015-03-09 15:54:01 +02:00
Mihai Varga
bb6fd2206a Unmodified Leaflet
Checkout date: 09/03/2015
HEAD: a92c8a3c21f8d580de2dfd1e937ea90db76787b6
2015-03-09 12:16:17 +02:00