Nathan Sobo
43386b0483
Always update twice assuming we may need to measure
...
This prepares the ground for measuring absoltue cursor positions.
2017-05-05 09:29:27 +02:00
Nathan Sobo
583c2c537d
Iron out scheduling issues
...
* Ensure multiple calls to scheduleUpdate only result in a single call
to updateSync in the future.
* Explicit calls to update sync after scheduling an update fulfill the
scheduled update.
* Track whether we think the editor is visible or not to avoid redundant
didShow calls.
* Ensure we only update on resize events if the editor actually changed
size.
2017-05-05 09:29:27 +02:00
Nathan Sobo
19d1d148eb
Measure the longest visible screen line on initial render
2017-05-05 09:29:27 +02:00
Nathan Sobo
ede5d5e5f4
Add coverage for gutter measurement and horizontal translation on scroll
2017-05-05 09:29:27 +02:00
Nathan Sobo
b863790390
Start on new TextEditorComponent specs; avoid excessive line numbers
2017-05-05 09:29:27 +02:00
Nathan Sobo
9765d9dbcd
Translate gutter so it remains visible when scrolling to the right
...
Signed-off-by: Max Brunsfeld <maxbrunsfeld@gmail.com >
2017-05-05 09:29:27 +02:00
Nathan Sobo
d2d560eac6
Render character measurement line via virtual DOM
...
Signed-off-by: Max Brunsfeld <maxbrunsfeld@gmail.com >
2017-05-05 09:29:27 +02:00
Nathan Sobo
b38fafc83a
Absolutely position line number tiles
...
Static positioning doesn’t seem to improve layout performance
2017-05-05 09:29:27 +02:00
Nathan Sobo
aed4d8876f
Use contain: strict on line number gutter and its tiles
...
This improves layout time of scrolling by limiting the extent of gutter re-layouts.
Signed-off-by: Antonio Scandurra <as-cii@github.com >
2017-05-05 09:29:27 +02:00
Nathan Sobo
f94144ff4b
WIP
2017-05-05 09:29:27 +02:00
Nathan Sobo
f237d70357
WIP
2017-05-05 09:29:27 +02:00
Nathan Sobo
1f068bde62
Enable experimental web platform features
...
This will facilitate #13880
2017-05-03 14:21:24 +02:00
Antonio Scandurra
d9004769e0
Disable auxclick
2017-05-03 14:21:24 +02:00
Nathan Sobo
c28685c816
Don't use --eval when forking child process in Task
...
There seems to be an Electron bug or something where the child process
isn't receiving messages when --eval is used. It isn't necessary anyway
if we we convert task-bootstrap.coffee to vanilla JS.
2017-05-03 14:21:24 +02:00
Nathan Sobo
06774dbff8
Call compiled functions with Buffer for Electron 1.6 compatibility
2017-05-03 14:21:24 +02:00
Nathan Sobo
b6e3806e77
Instantiate elementResizeDetector instances lazily
...
This avoids references to browser globals during snapshot creation.
2017-05-03 14:21:24 +02:00
Nathan Sobo
a723614750
Fix lint error
2017-05-03 14:21:24 +02:00
Nathan Sobo
a0c84d592a
Remove ViewRegistry.pollDocument
...
Supporting it via mutation observers has a bad impact on frame rate.
2017-05-03 14:21:24 +02:00
Nathan Sobo
bbbb629f70
Eliminate polling of overlay decoration dimensions
...
And remove pollDOM method entirely.
Signed-off-by: Max Brunsfeld <maxbrunsfeld@github.com >
2017-05-03 14:21:24 +02:00
Nathan Sobo
549bce5637
Replace sampleBackgroundColors with background-color: inherit in CSS
...
Previously, the shadow boundary made this impossible, but the new CSS is
way simpler than the JS we’re replacing and removes another dependency
on DOM polling.
2017-05-03 14:21:24 +02:00
Nathan Sobo
8bb3ec1563
Synchronously sample font styling when global editor stylesheet changes
...
And don’t sample font styling in pollDOM, which we are aiming to
eliminate.
Signed-off-by: Max Brunsfeld <maxbrunsfeld@github.com >
2017-05-03 14:21:24 +02:00
Nathan Sobo
0560ce7f18
Use window resize events to trigger measureWindowSize
...
Signed-off-by: Max Brunsfeld <maxbrunsfeld@github.com >
2017-05-03 14:21:24 +02:00
Nathan Sobo
0d8101b6c3
Synchronously call becameVisible if editor is visible when attached
...
Signed-off-by: Max Brunsfeld <maxbrunsfeld@github.com >
2017-05-03 14:21:24 +02:00
Nathan Sobo
cc4c437f3d
Ensure 0-height editors are correctly detected as visible
...
This is unlikely but it’s easy enough to support
Signed-off-by: Max Brunsfeld <maxbrunsfeld@github.com >
2017-05-03 14:21:24 +02:00
Nathan Sobo
25db2bad04
Null guard destruction of intersection observer
2017-05-03 14:21:24 +02:00
Nathan Sobo
39ac7d99b9
Detect text editor resize via scroll event hack
...
This avoids needing to poll to detect resizes.
Signed-off-by: Max Brunsfeld <maxbrunsfeld@github.com >
2017-05-03 14:21:24 +02:00
Nathan Sobo
1d8b9b84d1
Use IntersectionObserver to detect when editor becomes visible
...
This is an alternative to relying on pollDOM to detect when the editor
becomes visible. Our goal is to remove pollDOM in the next few commits.
Signed-off-by: Max Brunsfeld <maxbrunsfeld@github.com >
2017-05-03 14:21:24 +02:00
Wliu
d5c13d15bf
setZoomLevelLimits -> setVisualZoomLevelLimits
2017-05-03 14:21:23 +02:00
Wliu
dfa3ab1c6e
process.versions.atom-shell -> process.versions.electron
2017-05-03 14:21:23 +02:00
Wliu
38c0f7b036
autoSubmit -> uploadToServer
2017-05-03 14:21:23 +02:00
Wliu
c005f7564a
Remove unneeded backgroundColor
2017-05-03 14:21:23 +02:00
Michelle Tilley
107e830508
Merge pull request #14309 from atom/mkt-allow-tooltips-to-recalculate-their-positions
...
Recalculate Tooltip positions when their contents change
2017-04-30 08:38:58 -07:00
hansonw
b5eca7c429
Call PackageManager.initialize from URL handler
2017-04-28 13:22:23 -04:00
Michelle Tilley
63920c2a78
🎨
2017-04-26 19:27:23 -07:00
Michelle Tilley
ca9054a4f8
👕 Fix linting errors
2017-04-26 16:01:43 -07:00
Michelle Tilley
dc6988c945
Reposition Tooltips when they mutate
2017-04-26 15:49:01 -07:00
Michelle Tilley
d56c1e292e
Add Tooltip#recalculatePosition which resets the tooltip's position
2017-04-26 15:48:22 -07:00
Max Brunsfeld
fb42ad36f0
Fix bundled package path check to use path, not name
2017-04-21 09:41:35 -07:00
Damien Guard
601aa59e7b
Do not treat packages in unusual locations as bundled despite name
2017-04-20 14:44:49 -07:00
Max Brunsfeld
643ba6e086
📝 Add types in Pane.destroyItem docs
2017-04-18 09:51:48 -07:00
Max Brunsfeld
52195e79ff
Merge branch 'master' into fb-mdt-no-cmd-w-on-permanent-dock-items
2017-04-17 13:39:16 -07:00
Max Brunsfeld
0015e026a2
Add Workspace.paneContainerForItem method
2017-04-17 11:34:45 -07:00
Matthew Dapena-Tretter
a4c06c039d
Add a way to force a pane to destroy its item
...
When cleaning up after a package that provides a permanent dock item,
you want to be able to destroy it easily. This provides API for doing
so.
2017-04-15 13:28:30 -07:00
Matthew Dapena-Tretter
a9d0618e88
Don't close permanent dock items
2017-04-15 13:09:08 -07:00
Matthew Dapena-Tretter
d40a14be29
Add tests for dock sizing behavior
2017-04-15 11:50:41 -07:00
Matthew Dapena-Tretter
f6b20cd31c
Reduce dock initial size lookups
...
Previously, we would get the initial size every time we didn't have an
explicit one. With this commit, we only get the initial size when we
deserialize and when we go from 0 -> 1 pane items.
Also, if the dock doesn't already have an explicit size, we'll use the
preferred size of the item being dragged when peaking the dock. That
way, dropping it won't cause it to change size.
2017-04-15 11:50:19 -07:00
Matthew Dapena-Tretter
abd8f2c0b7
🐛 Fix URI resolution in openSync()
...
@Alhadis noticed I missed this in 53ec839 .
2017-04-13 23:44:47 -07:00
Matthew Dapena-Tretter
915931dddd
🐛 Make sure docks affordance can always be revealed
2017-04-13 15:52:05 -07:00
Michelle Tilley
56e6048bfc
Merge pull request #14146 from atom/mkt-as-improve-snapshotting
...
Improve snapshotting
2017-04-13 10:12:59 -07:00
Antonio Scandurra
b8e6689abf
Merge pull request #14178 from atom/fb-mdt-resize-handle-shouldnt-cover-center
...
Prevent the resize handle from covering the center
2017-04-13 18:17:09 +02:00