You've already forked joplin
mirror of
https://github.com/laurent22/joplin.git
synced 2025-07-13 00:10:37 +02:00
This commit is contained in:
@ -8,7 +8,7 @@ import ExtendedWebView from '../ExtendedWebView';
|
||||
import * as React from 'react';
|
||||
import { forwardRef, useImperativeHandle } from 'react';
|
||||
import { useMemo, useState, useCallback, useRef } from 'react';
|
||||
import { LayoutChangeEvent, View, ViewStyle } from 'react-native';
|
||||
import { LayoutChangeEvent, NativeSyntheticEvent, View, ViewStyle } from 'react-native';
|
||||
const { editorFont } = require('../global-style');
|
||||
|
||||
import { EditorControl, EditorSettings, SelectionRange } from './types';
|
||||
@ -18,12 +18,16 @@ import { ChangeEvent, EditorEvent, EditorEventType, SelectionRangeChangeEvent, U
|
||||
import { EditorCommandType, EditorKeymap, EditorLanguageType, PluginData, SearchState } from '@joplin/editor/types';
|
||||
import supportsCommand from '@joplin/editor/CodeMirror/editorCommands/supportsCommand';
|
||||
import SelectionFormatting, { defaultSelectionFormatting } from '@joplin/editor/SelectionFormatting';
|
||||
import Logger from '@joplin/utils/Logger';
|
||||
import { WebViewErrorEvent } from 'react-native-webview/lib/RNCWebViewNativeComponent';
|
||||
|
||||
type ChangeEventHandler = (event: ChangeEvent)=> void;
|
||||
type UndoRedoDepthChangeHandler = (event: UndoRedoDepthChangeEvent)=> void;
|
||||
type SelectionChangeEventHandler = (event: SelectionRangeChangeEvent)=> void;
|
||||
type OnAttachCallback = ()=> void;
|
||||
|
||||
const logger = Logger.create('NoteEditor');
|
||||
|
||||
interface Props {
|
||||
themeId: number;
|
||||
initialText: string;
|
||||
@ -317,7 +321,6 @@ function NoteEditor(props: Props, ref: any) {
|
||||
"error: " + message + " in file://" + source + ", line " + lineno
|
||||
);
|
||||
};
|
||||
|
||||
window.onunhandledrejection = (event) => {
|
||||
window.ReactNativeWebView.postMessage(
|
||||
"error: Unhandled promise rejection: " + event
|
||||
@ -374,7 +377,7 @@ function NoteEditor(props: Props, ref: any) {
|
||||
const data = event.nativeEvent.data;
|
||||
|
||||
if (data.indexOf('error:') === 0) {
|
||||
console.error('CodeMirror:', data);
|
||||
logger.error('CodeMirror:', data);
|
||||
return;
|
||||
}
|
||||
|
||||
@ -383,8 +386,7 @@ function NoteEditor(props: Props, ref: any) {
|
||||
// eslint-disable-next-line @typescript-eslint/ban-types -- Old code before rule was applied
|
||||
const handlers: Record<string, Function> = {
|
||||
onLog: (event: any) => {
|
||||
// eslint-disable-next-line no-console
|
||||
console.info('CodeMirror:', ...event.value);
|
||||
logger.info('CodeMirror:', ...event.value);
|
||||
},
|
||||
|
||||
onEditorEvent: (event: EditorEvent) => {
|
||||
@ -428,13 +430,12 @@ function NoteEditor(props: Props, ref: any) {
|
||||
if (handlers[msg.name]) {
|
||||
handlers[msg.name](msg.data);
|
||||
} else {
|
||||
// eslint-disable-next-line no-console
|
||||
console.info('Unsupported CodeMirror message:', msg);
|
||||
logger.warn('Unsupported CodeMirror message:', msg);
|
||||
}
|
||||
}, [props.onSelectionChange, props.onUndoRedoDepthChange, props.onChange, editorControl]);
|
||||
|
||||
const onError = useCallback(() => {
|
||||
console.error('NoteEditor: webview error');
|
||||
const onError = useCallback((event: NativeSyntheticEvent<WebViewErrorEvent>) => {
|
||||
logger.error(`Load error: Code ${event.nativeEvent.code}: ${event.nativeEvent.description}`);
|
||||
}, []);
|
||||
|
||||
const [hasSpaceForToolbar, setHasSpaceForToolbar] = useState(true);
|
||||
|
Reference in New Issue
Block a user