Commit graph

2793 commits

Author SHA1 Message Date
Gina Häußge
01b3b8a0e0 Make first slicing profile the default
We also reflect that in the Cura profile import dialog by checking and
disabling modification of the corresponding checkbox if no profiles are
yet available.
2017-10-18 16:01:48 +02:00
Gina Häußge
50983c8524 Fix initial size of temperature graph
Plot area was wrongly sized due to (invisible) X axis tick labels.

We now initialize an empty plot to min/max timestamps of "now" to
circumvent this. Additionally plot was not properly initialized on
initial load of page due to onAfterTabChange not firing for the first
tab.

Also added a bit for tick labels.
2017-10-18 12:39:38 +02:00
Gina Häußge
e99f762974 Cura Plugin: Less "not configured yet" logging 2017-10-17 18:59:40 +02:00
Gina Häußge
468155c9c8 Fix cache invalidation on slicing API
Wasn't properly revalidating when an already registered slicer switched
between unconfigured and configured.

Also adjusted data format version tracking on files and slicing API to
match.
2017-10-17 18:59:05 +02:00
Gina Häußge
7df78defb1 Make data version part of etag
We might add fields to things like file entries (e.g. "display") and in
such cases want to refetch the list even if the files itself didn't
change, to make sure those new fields are available to the clients.

See https://github.com/foosel/OctoPrint/issues/2111#issuecomment-337164940
2017-10-17 11:05:43 +02:00
Gina Häußge
fd53f47f86 Wider scrollbars & no fade out
Increased scrollbar width of file list and plugin repository list to
10px (from 5px). Fixed scroll bar hiding itself on initialization due to
alwaysVisible not properly persisting the initial binding.

Enhance knockout binding syntax for slimScrolledForeach: slimscroll
initialization parameters may now be provided during data binding via
the additional slimscroll property accepted as part of the extended
foreach syntax, e.g.

slimScrolledForEach: {data: ..., slimscroll: {alwaysVisible: true, ...}}

Implements #2111
2017-10-13 17:52:54 +02:00
Gina Häußge
af4f97f2df Updated slimscroll.js to version 1.3.8 2017-10-13 17:52:54 +02:00
Gina Häußge
44f5916cd4 Faster animation speed & close on PNotify 2017-10-13 17:52:54 +02:00
Gina Häußge
4e80d69e51 SWU: Always auto-hide up-to-date info
See #2042
2017-10-13 17:52:54 +02:00
ntoff
a21934abba add print interruption warning to auto update dialog 2017-10-13 13:04:38 +10:00
Gina Häußge
42ac133436 Support full UTF8 file names
Files (and folders) are still slugified to ASCII for storage on disk,
but now the original filename is stored alongside in metadata.yaml
and used for display in the file list and print status.

The slicing dialog also inherits that display name for use as base
for the suggested GCODE name.

Internally, everything still depends completely on the slugified
ASCII version.

This implements #2094
2017-10-12 18:08:41 +02:00
Gina Häußge
42018ae29a starts_with => startswith
Now that was embarrassing.

Fixes #2151
2017-10-11 16:27:51 +02:00
Gina Häußge
054bbd8a9b comm: no need to fetch potential ports again 2017-10-11 16:20:37 +02:00
Gina Häußge
4093995ba0 STK500v2: Retries for reading from serial
This would normally not fly at all but we give it a pass here since we
only use that module for auto detection anyhow (and probably not for
much longer since that approach is simply too error prone).

Adapted from

  https://github.com/foosel/OctoPrint/issues/2138#issuecomment-334117910

by @dtynan.

Solves #2138 until I come up with something better
2017-10-11 16:19:37 +02:00
Gina Häußge
d1fdbd5080 More lenient check for unrendered timelapses
Only delete automatically if modification AND creation date are older
than the calculated cutoff.
2017-10-10 12:51:43 +02:00
Gina Häußge
abfcc6e5aa Fix deletion of unrendered timelapses
If the filename contained a [] pair, the file would not match the glob
pattern used for selecting for deletion.

Backporting the glob.escape function from Python 3.4 and using it here
should fix that. We only use our own ported version if glob.escape
doesn't exist - that should reduce redundant code once we become Python
3 compatible.
2017-10-10 12:41:47 +02:00
Gina Häußge
b89b6970c6 Fix temperature plot init if it's not the 1st tab
If the temperature graph was not on the first tab, the plot would be
initialized without being visible, causing some sizing issues and
alignment issues with the Y axis ticks.

Forcing the plot to only get initialized once visible solves these
problems.

Fixes #2147
2017-10-09 15:57:52 +02:00
ntoff
178131945e Add possible print distruption warning to shutdown dialog 2017-10-06 09:32:49 +10:00
Gina Häußge
807b44a35e Merge branch 'staging/maintenance' into maintenance 2017-10-04 15:02:26 +02:00
Gina Häußge
e88e6ba292 Preparing release of 1.3.5rc4 2017-10-04 13:33:46 +02:00
Gina Häußge
25c56a5402 Wizard: Force ACL sub wizard to always come first
If required.

Closes #2140
2017-10-04 11:34:06 +02:00
Gina Häußge
c5e7212fa2 PMGR: Support VCS URLs to install from
Implements #2104
2017-10-02 17:56:38 +02:00
Gina Häußge
0f8f4579d6 Add no-op default action to login form
That way people clicking too fast on login before the view models are
bound won't be able to make the form submit username and password as GET
parameter to the base URL.

Closes #2108
2017-10-02 16:39:57 +02:00
Gina Häußge
12126621c5 Merge pull request #2044 from dforsi/fix/fix-typos
Fix typos in strings and comments
2017-09-29 16:28:33 +02:00
Gina Häußge
a093dbc36f Merge pull request #2109 from mrbeam/upstream_maintenance
added decorator for calls only available on the first run.
2017-09-29 16:26:55 +02:00
Gina Häußge
0f325b95c1 Minor changes to #2123 for better readability 2017-09-29 16:18:52 +02:00
Gina Häußge
4fe6e0545a Also include script name in cookie name
Otherwise we might run into trouble if we have an OctoPrint instance
running on / and /octoprint2 for example - the browser will send
cookies for both instances to the /octoprint2 instance and whatever
gets processed last will overwrite the value before in Tornado's cookie
processing. This of course will nuke the login session in case of the /
cookie being sent or processed last.

Appending the path/script root to the cookie name solves this, similar
to how we circumvented an identical problem caused by browsers not
distinguishing between ports for cookies.

Solves an issue reported by @mgrl in #2095
2017-09-28 16:23:27 +02:00
Gina Häußge
c84e199e87 Add & use "octoprint analysis gcode" subcommand
That should solve any weird import issues we have when
running gcodeInterpreter.py directly (and hence putting
octoprint.util as first entry into the python path,
causing potential issues with imported modules such as
yaml to catch the octoprint.util.platform module instead
of the actual python platform module).

See reported problem with that by @CapnBry in #2095
2017-09-28 10:33:28 +02:00
Luke McKechnie
791f0457fb Fix for SharedNozzle, replicating temp from current tool to all tools. Issue # 2077 2017-09-21 09:31:33 -04:00
Teja
56ad1841d4 added decorator for before firstrun only calls. 2017-09-08 16:20:37 +02:00
Gina Häußge
b161a1f093 Merge branch 'staging/maintenance' into maintenance 2017-08-25 14:56:42 +02:00
Gina Häußge
5989d243d3 Fix wrapping of temperature controls on touch devices
Successfully tested in Chrome (desktop & Android), Firefox (desktop &
Android), Safari (desktop & iOS).

Closes #2059
2017-08-25 09:47:11 +02:00
Gina Häußge
97cb0088f6 Delay opening of serial.log until first message
That way we don't risk running into potential "file busy" issues
under windows on log file rollover.
2017-08-24 19:16:41 +02:00
Gina Häußge
2ed36ed383 Do not block when processing held back events! 2017-08-23 19:07:08 +02:00
Gina Häußge
12b8a54081 set_close_exec on intermediary server port for unix & windows
Using the win32 API it's possible to prevent the intermediary server
socket from inheriting itself to subprocesses. So let's use that here.

Another bit of the solution for #2090.
2017-08-23 18:31:42 +02:00
Gina Häußge
a35e145649 Don't forward events to uninitialized EventPlugin implementations
Another part of fixing #2090
2017-08-23 18:19:37 +02:00
Gina Häußge
f77be701a2 Only fire events once Events.STARTUP has been seen
One part of fixing #2090
2017-08-23 18:11:40 +02:00
Gina Häußge
e9401b7090 Easier copying of API keys
There's now a dedicated button for that.

This should get around issues like #2056. Also increased size
of API key display field (where possible). Fixes #2055
2017-08-22 18:10:32 +02:00
Gina Häußge
b138c2bccf New global JS helper copyToClipboard 2017-08-22 18:05:53 +02:00
Gina Häußge
76c2113ad4 Fix block-level input-append/input-prepend
We still had double borders going on for included add-ons.
2017-08-22 18:05:00 +02:00
Gina Häußge
bfe5bc179c New hook octoprint.comm.protocol.temperatures.received
Allows preprocessing/sanitizing temperatures as received from the
printer.

Workaround for printers that occasionally report garbage temperature
data, e.g. #2050
2017-08-22 11:32:47 +02:00
Gina Häußge
d7298cee06 Virtual printer: Less code duplication in temp simulation 2017-08-22 11:21:04 +02:00
Gina Häußge
fbcbb3f5f7 Virtual printer: Support configurable ambient temperature 2017-08-21 16:52:38 +02:00
Gina Häußge
0c2169dd9c Removed leftover </span>
Thanks @dforsi for the heads-up.
2017-08-21 13:17:29 +02:00
Daniele Forsi
69dec6e83f Fix typos in strings and comments
Those typos were found with codespell which is available from
https://github.com/lucasdemarchi/codespell.git
2017-07-29 16:12:08 +02:00
Gina Häußge
4d27de032d Improved handling of external reset while operational
* Display message to user
  * Stop print/transfer (lost state)
2017-07-28 13:35:00 +02:00
Gina Häußge
7073c12444 Virtual printer: Support debug commands while streaming 2017-07-28 13:34:10 +02:00
Gina Häußge
60be6349f5 Allow cancelling file transfers
Cancelling also deletes the incomplete file on the printer's SD.
2017-07-28 13:08:28 +02:00
Gina Häußge
ec55890c55 Check that .metadata.yaml actually contains a dict
It might just be empty (= None) or a list or something.

Thanks @Kunsi for the heads-up.
2017-07-28 12:01:36 +02:00
Gina Häußge
1f9fe8c868 Preparing release of 1.3.5rc2 2017-07-27 13:33:45 +02:00
Gina Häußge
8f2e4ad978 Temperature tab: "Hotend" -> "Tool" 2017-07-27 12:41:08 +02:00
Gina Häußge
b82d955ec7 Fix printer profile update on temperature tab & gcode viewer
As reported in #2033
2017-07-27 12:40:27 +02:00
Gina Häußge
832d2f4155 Fix temperature controls in FF not fitting on one line
Mentioned in #2033
2017-07-27 10:14:59 +02:00
Gina Häußge
c336452f6c Do not run subprocesses while intermediary server is active
Any processes inheriting the open port descriptor of that server will
cause the actual server startup to fail due to the port still being
claimed.

We can't fully prevent this under Windows thanks to fnctl not being
available and win32api being a PITA, and also close_fds on Popen not
being allowed if we also need to redirect stdout/stderr/stdin for a
process. So let's hope hardening against this problem when running
under *nix, adding a bit fat warning to never start a subprocess
during the intermediary's runtime and also moving the only actual
process we so far DID start (analysis backlog processing) to after
Tornado is running will suffice.

Fixes #2035
2017-07-27 09:58:20 +02:00
Gina Häußge
a9b6edde2b Fix incompatibility with non-ASCII strings in wizard sorting 2017-07-26 16:47:57 +02:00
Gina Häußge
d59ef5c711 Corewizard: Fix wrongly displaying firstrunonly wizards again 2017-07-26 16:47:40 +02:00
Gina Häußge
375480c707 allViewModels -> self.allViewModels 2017-07-26 16:32:05 +02:00
Gina Häußge
60cacb9447 Temperature: Fix for legend not updating with current values
See #2033
2017-07-26 16:26:27 +02:00
Gina Häußge
1a6dbb3f4a Preparing release of 1.3.5rc1 2017-07-26 12:47:47 +02:00
Gina Häußge
10e834f623 Improve logging of async system commands
Closes #2025
2017-07-24 18:32:21 +02:00
Gina Häußge
5ce34f774e GCODE Viewer: Fix file position calculation
We were only adding one byte for "\n". That ignored that our regex
could also match "\r\n" or "\r\r" or something like that.

Our split regex now only matches one "\r" or "\n". Empty lines we'll
simply ignore anyhow so no real harm done.

Also, we no longer strip the comments in this step - leave that to
the worker running in its own thread. Not only should that speed
things up a bit, it will also allow us to better debug the worker in
the future.
2017-07-24 12:55:39 +02:00
Gina Häußge
0456896d71 GCODE Viewer: Fix issue with lookup of layer index 0
We were just testing if z_heights[z] was truthy. If the layer index was
set but 0 that wasn't properly detected and let to overwriting our
layer information. Instead check explicitly against undefined.

Closes #2017
2017-07-24 12:52:13 +02:00
Gina Häußge
e06c09e206 Fix some more FontAwesome related things
* remove some more "fa" classes where they didn't belong
  * use "fa-toggle-(on|off)" instead of circles where they were used
    to signify toggle actions
  * fix SD card icon being too high

Another follow-up to #1915
2017-07-21 12:29:18 +02:00
Gina Häußge
a6d3299b91 Add user manager factory hook 2017-07-20 20:03:05 +02:00
Gina Häußge
0a7f2a209b Add opt-in wizard for online connectivity check
See also #2011
2017-07-20 20:02:57 +02:00
Gina Häußge
67f7580506 Only run connectivity checker if enabled
Otherwise assume we are online but don't ping anything.

See also #2011
2017-07-20 20:02:44 +02:00
Gina Häußge
aab3a7bd63 Wizard: Support to prevent the "settings updated" dialog
Subwizards might actually intentionally want to update stuff through
the settings API, let's allow that.
2017-07-20 19:36:14 +02:00
Gina Häußge
d0f5592421 Fix sorting of filament usage for more than one tool 2017-07-20 19:23:52 +02:00
Gina Häußge
bb6ea4d81b Also set autocorrect to off on username field 2017-07-20 09:50:08 +02:00
Gina Häußge
7e32e5be8f GCODE viewer: Support \r, \n and \r\n line endings
So far we only supported \n and \r\n, leading to problems with MM
GCODE files generated by Slic3r Prusa Edition which apparently
produces \r line endings for some reason.

Closes #1996
2017-07-20 09:18:38 +02:00
Gina Häußge
266cae3509 PMGR: Refresh on any connectivity change 2017-07-19 18:49:52 +02:00
Gina Häußge
0dcbffb9d2 Bundled plugins: Handle connectivity states
See also #2011
2017-07-19 18:42:29 +02:00
Gina Häußge
fb8c56be57 SWU: Track network connectivity & handle offline scenarios
See also #2011
2017-07-19 18:42:28 +02:00
Gina Häußge
2bc0c4a77f Synchronize pip helper cache access 2017-07-19 18:42:28 +02:00
Gina Häußge
187c09e7da Centralized online connectivity check
See also #2011
2017-07-19 18:42:27 +02:00
Gina Häußge
5c62b33967 Do not call uninitialized plugins in call_plugin 2017-07-19 18:42:26 +02:00
Gina Häußge
5db9acb359 SWU: Fix CLI commands
Client refactoring in d72c7c14 caused issues here.

Closes #2012
2017-07-18 12:39:11 +02:00
Gina Häußge
962d6ab27f CLI: Helpers for initializing client from command line 2017-07-18 12:37:23 +02:00
Gina Häußge
21699699b6 CLI: Fixed logging init for plugins
Also fixed a stupid typo ;)
2017-07-18 12:36:16 +02:00
Gina Häußge
8fec0859d9 Don't use fixed width on terminal input
Instead added some additional styles to support input-block-level
inputs with add-ons.
2017-07-18 09:46:32 +02:00
Shawn Bruce
1b9ff1b0e2 Move terminal command below terminal output and fill the row
Clicking terminal output (excluding highlighting) will set focus to terminal command
Change fancy functionality style from muted to warning so that it stands out more
2017-07-17 12:42:14 -04:00
Gina Häußge
ee2d644239 Remove support for multi command expansion in sending phase
We won't support this after all, it's too much of a headache with
regards to the sending queue. Pausing takes longer, cancelling takes
longer, resends get more complicated and so on.

Command expansion in the queuing phase needs to suffice.
2017-07-17 16:26:32 +02:00
Gina Häußge
a50db4b08e Options to disable position logging on cancel/pause
Provided as a workaround for people who don't want the associated
minimal delay in cancelling/pausing.

See #1946
2017-07-17 15:40:08 +02:00
Gina Häußge
6f5707a0fc Attach identity reset to logout signals
Safer than doing it manually
2017-07-17 13:14:45 +02:00
Gina Häußge
cf053ddbed Temperatures may in fact be negative
E.g. in case of a disconnected thermistor, or when it is really
really cold. Make sure our parsing doesn't get confuse by this and
thinks that

  ok T:150.0/210.0 T0:-55.7/0 T1:150.0/210.0

is actually only T and T1 being reported by the firmware, causing
stuff to be wrongly canonicalized thanks to T/T1 being Smoothie's way
of reporting dual extruder setups.

Fixes #2007
2017-07-14 11:18:04 +02:00
Gina Häußge
b1101f5150 Virtual printer: support pinning of temperatures
Helpful for simulating disconnected thermistors, preparation for
debugging #2007
2017-07-14 11:07:25 +02:00
Gina Häußge
3a9d581423 Decouple writing of print log from everything else
Fixes delay in cancel processing as observed by @capnbry with regards
to #1946.

More tests necessary to ensure this was the only cause.
2017-07-13 20:00:45 +02:00
Gina Häußge
142a1b0dcb Progress might be 0, don't divide by it then 2017-07-13 15:48:22 +02:00
Gina Häußge
a33f44ea25 Fix File(Added|Removed) and Folder(Added|Removed) events
Were defined as 1-tuple instead of a string thanks to a syntax error.
2017-07-12 16:13:51 +02:00
Gina Häußge
23e58d2fc1 Make sure resent lines always win before regular ones
Introduced a custom send queue type that actually contains two queues,
one for resends, one for regular lines. A flag indicates whether
lines should be returned from both or only resends. That way we
ensure that as soon as we have an active resend request we ignore
what was already in the queue and only send the lines we need to resend.

Also: PrependQueue => PrependableQueue
2017-07-11 17:10:02 +02:00
Gina Häußge
2e897f19ac Synchronize all writing access to the send queue 2017-07-07 15:56:22 +02:00
Gina Häußge
4c6c764c5c Small simplifications and clarifications 2017-07-06 16:18:55 +02:00
Gina Häußge
e86ba9a395 Merge branch 'f_bitbucket_swupdate3' of https://github.com/mrbeam/OctoPrint into pr/mrbeam/f_bitbucket_swupdate3 2017-07-06 15:33:19 +02:00
Gina Häußge
c1c09d417d Removed a line that was accidentally committed 2017-07-05 17:58:33 +02:00
Gina Häußge
f8d225a768 Support for parsing GCODE subcodes
Hook handlers will get any parsed subcode as optional keyword argument
"subcode".
2017-07-05 17:56:46 +02:00
Gina Häußge
4c3f4c2a8b Fix "additional data" toggle in file list 2017-07-05 16:37:39 +02:00
Gina Häußge
cc3d34635e Add API function to (re)analyse files 2017-07-05 16:37:03 +02:00
Gina Häußge
c81c93896b Apply tool offsets immediately and only once
Less tracking of offsets and also more similar to how
firmware does this.

We rewrite our current position on tool change to current position
plus tool offset instead of applying it for every single
position change.
2017-07-05 15:16:08 +02:00
Gina Häußge
3cdc59d7f1 Fix offset passing to analysis subprocess 2017-07-05 08:58:42 +02:00
Gina Häußge
5156cdbe68 Very minor refactoring & cleanup 2017-07-05 08:58:08 +02:00
Gina Häußge
0915c45f72 Merge branch 'maintenance' of github.com:foosel/OctoPrint into maintenance 2017-07-04 16:48:42 +02:00
Gina Häußge
b2c1bb4b53 Option to automatically send temperature fine adjustments
As suggested by a loyal Patron ;)
2017-07-04 16:44:23 +02:00
Andy Werner
3bb06a1a33 SW Update check type 'bitbucket_commit' now supports API credentials for private repos 2017-07-03 17:17:43 +02:00
Gina Häußge
8ad165c625 Fix blur of temp input focus on submit
Also separated "clear offset" button in offset editor from input
field, looks better this way.
2017-07-03 16:08:41 +02:00
Gina Häußge
841b86a017 Merge branch 'maintenance' into improve/temperatureInput 2017-07-03 16:07:19 +02:00
Mark Walker
c0c249ece9 Typo: red->read 2017-07-01 10:37:51 -07:00
Gina Häußge
ed6c01c12a Remove current_user from template contexts
That should never have been enabled for our usage scenario in the
first place.
2017-06-30 14:37:37 +02:00
Gina Häußge
e309646504 Prevent unnecessary settings fetch during startup
We fetch settings once explicitly after passive login but before
completed startup. Without this patch we fetched them again after
onUserLoggedIn got fired (if it got fired by the passive login)
during startup. That's not necessary because we did the passive login
before our initial settings fetch, so IF that already logged us in,
our settings fetch already was done with us logged in as well and
the onUserLoggedIn later only tells us what we already knew.
2017-06-30 14:36:18 +02:00
Gina Häußge
96ee80afd2 Only trigger onUserLogged(In|Out) if login state actually changed
This also includes triggering an initial onUserLoggedIn after
initialization if the user turned out to be logged in by passive login.
2017-06-30 14:34:05 +02:00
Gina Häußge
8aec836d22 Minor refactoring of the web interface startup (again)
We still had some concurrent requests triggered through onStartup that
managed to overtake the passive login (and hence nuke the session
data on the client). This should now really not be possible any longer.

Also created a sequence diagram of the new process and linked it from
a lengthy comment.
2017-06-30 11:59:52 +02:00
Gina Häußge
697df4f3ce And fixed connection accordion toggling again
#1001 said hi once more after fixing the onUserLogged(In|Out) events
not firing...
2017-06-30 09:48:57 +02:00
Gina Häußge
ac3f4d598c Fixed onUserLoggedIn/Out not firing correctly on startup anymore
Introduced by b205e84d4b
2017-06-30 09:39:14 +02:00
Gina Häußge
836fbef6d8 Fixed an error in the temp graph when not connected 2017-06-30 09:24:07 +02:00
Gina Häußge
ce4cf38547 Removed log prefixing again
It caused issues with our line number tracking in the browser
developer tools and I don't see any way to avoid this considering
that we can't adjust the arguments supplied to console.log without in
fact wrapping it :/
2017-06-29 17:37:01 +02:00
Gina Häußge
38a5da1c35 Fix connection accordion again
Slightly different order of things caused #1001 to resurface.
2017-06-29 16:51:04 +02:00
Gina Häußge
b205e84d4b Refactored web startup to minimise risks of race conditions
Under specific circumstances it could happen that the passive login
response was overtaken by a response from an earlier still
unauthenticated request which would then effectively overwrite the
session cookie immediately and hence cause the browser to use its
login session against the server, but without displaying that to the
user. See #1881 for what is probably an issue caused by exactly this
kind of scenario.

Additionally a couple of requests needed to be done a second time
after login, just moments after having done them for an anonymous
user. See #1572 for a request to change this behaviour.

This patch changes the startup order of the web interface like this:

  1. connect to the websocket, postpone any events triggered by
     this (e.g. "fromHistoryData") until 3
  2. perform a passive login, postpone any events triggered by this
     (e.g. "onUserLoggedIn", "onUserLoggedOut") until 4
  3. trigger postponed events from 1
  4. trigger "onStartup" (triggers postponed events from 2)
  5. fetch settings
  6. bind view models etc

A connection close of the websocket will disable event processing on the
socket until it is marked as initialized again by the passive login
processing, which will also be triggered immediately on server connect.

That way under normal circumstances nothing should ever get triggered
in the registered view models that might generated requests to the
server API until a passive login has been done, a server session
initialized and if necessary a user properly authenticated.
2017-06-29 15:42:19 +02:00
Gina Häußge
7ab4d12548 Better error resilience against wrong user manager
Also improved get_class by using importlib instead of complicated
climbing through the whole module tree.
2017-06-29 15:07:17 +02:00
Gina Häußge
f6c3e5991d PMGR: Detect if plugin needs printer reconnect 2017-06-28 10:30:35 +02:00
Gina Häußge
188b59a319 Added id to tabs content div
cc @Salandora
2017-06-27 15:47:39 +02:00
Gina Häußge
b3594e367e Remove superfluous <br> tag from progress dialog output lines 2017-06-27 15:07:00 +02:00
Gina Häußge
12d40122d1 Use wrapt.ObjectProxy for SessionUser wrapper class
Our old manual wrapped didn't properly work in some aspects, this
version now should hopefully take care of most common proxy object
pitfalls.
2017-06-27 15:03:37 +02:00
Gina Häußge
2e11a7b860 Introduced pre-output css class for line based output pres
Easier to just put this on all output pre tags than defining
display:block on the contained spans for all individually.
2017-06-27 11:54:15 +02:00
Gina Häußge
f20185db3a Better handling of timelapse deletion errors
Closes #1975
2017-06-27 11:32:42 +02:00
Gina Häußge
0db323d0c5 Removed unused import 2017-06-26 17:14:03 +02:00
Gina Häußge
639d8d4c5f Perform gcode analysis in subprocess 2017-06-26 16:19:18 +02:00
Gina Häußge
5e0b53b651 Better thread safety for SockJS
Heartbeat messages could still be sent out of turn, causing message
corruption or other weird things. This should hopefully fix this.
2017-06-23 17:56:17 +02:00
Gina Häußge
1ebfa4b1dd New event ToolChange and tool change GCODE scripts
(cherry picked from commit 5f79aa6)
2017-06-23 16:06:44 +02:00
Gina Häußge
35c45df86c Allow multi line commands in sending phase
(cherry picked from commit 1018946)
2017-06-23 14:55:34 +02:00
Gina Häußge
a50e8bbbb5 Merge branch 'improve/temperatureGraphCrosshair' into maintenance 2017-06-22 17:33:09 +02:00
Gina Häußge
4665070601 last_temperatures -> last_temperature (for consistency) 2017-06-22 12:47:55 +02:00
Gina Häußge
b34fc8e05e Merge branch 'improve/temperatureInScripts' into maintenance
# Conflicts:
#	src/octoprint/util/comm.py
2017-06-22 12:45:50 +02:00
Gina Häußge
a3ece229f2 Fixed button types & update displayed current offset in dialog 2017-06-21 12:40:59 +02:00
Gina Häußge
fc53febb87 WIP: Improved temperature controls 2017-06-20 16:53:41 +02:00
Gina Häußge
dad956b5c9 Treat Anet A8 firmware as Repetier firmware
It appears to behave identically and probably is a renamed variant.
That would also explain #1737 and some observations reported in
#1946.
2017-06-19 16:33:33 +02:00
Gina Häußge
981110d4b2 Devel RC release channel should also track Maintenance RCs
That way people don't have to toggle between Maintenance and Devel RCs
just to get _all_ RCs.
2017-06-14 13:52:47 +02:00
Gina Häußge
cbd94a9020 Ignore coordinates outside bed for zoom/centering in gcode viewer
They might be nozzle priming routines which are not actually part of
the model proper and hence it doesn't make sense trying to keep them
visible when zooming in on the model, or allowing them to offset the
model center.
2017-06-13 15:59:30 +02:00
Gina Häußge
77db00a2ea Extend coordinates used for min/max calculation
Both old and new position are relevant, we are extruding from one to
the other.
2017-06-13 15:58:12 +02:00
Gina Häußge
665078e1a4 Better backwards compatibility & disable crosshair on mobile 2017-06-07 14:24:24 +02:00
Gina Häußge
cfae406a4c Fix issue with hover pos being undefined & resizing of plot 2017-06-07 10:59:22 +02:00
Gina Häußge
00c14e6936 First throw at tracking individual data points in the temp graph
See #1640
2017-06-07 10:10:31 +02:00
Gina Häußge
6a1b162e7b Support for temperature autoreporting instead of polling
Now also detects capabilities reported by (extended) M115 output and
if AUTOREPORT_TEMP is available enables it with the configured
autoreport interval and disables active polling.

Implements #1679
2017-06-06 18:46:23 +02:00
Gina Häußge
a2fd39b3c4 Removed some unused variables from StateMonitor 2017-06-06 12:47:38 +02:00
Gina Häußge
bda2fd94e3 More hardening against expected folders being files
See #1953
2017-06-06 10:01:21 +02:00
Gina Häußge
9e207ca8a1 SWU: Force exact version update for OctoPrint when tracking releases 2017-06-02 16:27:25 +02:00
Gina Häußge
5d321926bb Corewizard: Don't load js if not required 2017-06-02 16:06:11 +02:00
Gina Häußge
3d3e0212c6 Corewizard: Disable client if not required 2017-06-02 16:06:00 +02:00
Gina Häußge
e3d44d7d06 Use client default if server default printer profile in unavailable 2017-06-02 16:05:12 +02:00
Gina Häußge
d39c124f35 Allow empty & custom size in print job events
Thanks to @erikheidstra for the heads-up
2017-06-02 14:25:02 +02:00
Gina Häußge
8603ea4b6f Fix stupid typo causing printerProfileManager.set_default
Thanks for the heads-up @erikheidstra!
2017-06-02 14:20:06 +02:00
Gina Häußge
a681048df6 Enable blockWhileDwelling for Malyan printers
See #1941 and #1762
2017-06-01 17:08:28 +02:00