Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(464)

Side by Side Diff: third_party/WebKit/Source/core/editing/commands/EditorCommand.cpp

Issue 2771753005: Simplify Editor::Command::value(). (Closed)
Patch Set: Created 3 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « no previous file | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 /* 1 /*
2 * Copyright (C) 2006, 2007, 2008 Apple Inc. All rights reserved. 2 * Copyright (C) 2006, 2007, 2008 Apple Inc. All rights reserved.
3 * Copyright (C) 2008 Nokia Corporation and/or its subsidiary(-ies) 3 * Copyright (C) 2008 Nokia Corporation and/or its subsidiary(-ies)
4 * Copyright (C) 2009 Igalia S.L. 4 * Copyright (C) 2009 Igalia S.L.
5 * 5 *
6 * Redistribution and use in source and binary forms, with or without 6 * Redistribution and use in source and binary forms, with or without
7 * modification, are permitted provided that the following conditions 7 * modification, are permitted provided that the following conditions
8 * are met: 8 * are met:
9 * 1. Redistributions of source code must retain the above copyright 9 * 1. Redistributions of source code must retain the above copyright
10 * notice, this list of conditions and the following disclaimer. 10 * notice, this list of conditions and the following disclaimer.
(...skipping 203 matching lines...) Expand 10 before | Expand all | Expand 10 after
214 214
215 } // anonymous namespace 215 } // anonymous namespace
216 216
217 class EditorInternalCommand { 217 class EditorInternalCommand {
218 public: 218 public:
219 WebEditingCommandType commandType; 219 WebEditingCommandType commandType;
220 bool (*execute)(LocalFrame&, Event*, EditorCommandSource, const String&); 220 bool (*execute)(LocalFrame&, Event*, EditorCommandSource, const String&);
221 bool (*isSupportedFromDOM)(LocalFrame*); 221 bool (*isSupportedFromDOM)(LocalFrame*);
222 bool (*isEnabled)(LocalFrame&, Event*, EditorCommandSource); 222 bool (*isEnabled)(LocalFrame&, Event*, EditorCommandSource);
223 TriState (*state)(LocalFrame&, Event*); 223 TriState (*state)(LocalFrame&, Event*);
224 String (*value)(LocalFrame&, Event*); 224 String (*value)(const EditorInternalCommand&, LocalFrame&, Event*);
225 bool isTextInsertion; 225 bool isTextInsertion;
226 // TODO(yosin) We should have |canExecute()|, which checks clipboard 226 // TODO(yosin) We should have |canExecute()|, which checks clipboard
227 // accessibility to simplify |Editor::Command::execute()|. 227 // accessibility to simplify |Editor::Command::execute()|.
228 bool allowExecutionWhenDisabled; 228 bool allowExecutionWhenDisabled;
229 }; 229 };
230 230
231 static const bool notTextInsertion = false; 231 static const bool notTextInsertion = false;
232 static const bool isTextInsertion = true; 232 static const bool isTextInsertion = true;
233 233
234 static const bool allowExecutionWhenDisabled = true; 234 static const bool allowExecutionWhenDisabled = true;
(...skipping 1957 matching lines...) Expand 10 before | Expand all | Expand 10 after
2192 static TriState stateJustifyLeft(LocalFrame& frame, Event*) { 2192 static TriState stateJustifyLeft(LocalFrame& frame, Event*) {
2193 return stateStyle(frame, CSSPropertyTextAlign, "left"); 2193 return stateStyle(frame, CSSPropertyTextAlign, "left");
2194 } 2194 }
2195 2195
2196 static TriState stateJustifyRight(LocalFrame& frame, Event*) { 2196 static TriState stateJustifyRight(LocalFrame& frame, Event*) {
2197 return stateStyle(frame, CSSPropertyTextAlign, "right"); 2197 return stateStyle(frame, CSSPropertyTextAlign, "right");
2198 } 2198 }
2199 2199
2200 // Value functions 2200 // Value functions
2201 2201
2202 static String valueNull(LocalFrame&, Event*) { 2202 static String valueStateOrNull(const EditorInternalCommand& self,
2203 return String(); 2203 LocalFrame& frame,
2204 Event* triggeringEvent) {
2205 if (self.state == stateNone)
2206 return String();
2207 return self.state(frame, triggeringEvent) == TrueTriState ? "true" : "false";
2204 } 2208 }
2205 2209
2206 // The command has no value. 2210 // The command has no value.
2207 // https://w3c.github.io/editing/execCommand.html#querycommandvalue() 2211 // https://w3c.github.io/editing/execCommand.html#querycommandvalue()
2208 // > ... or has no value, return the empty string. 2212 // > ... or has no value, return the empty string.
2209 static String valueNo(LocalFrame&, Event*) { 2213 static String valueEmpty(const EditorInternalCommand&, LocalFrame&, Event*) {
2210 return emptyString; 2214 return emptyString;
2211 } 2215 }
2212 2216
2213 static String valueBackColor(LocalFrame& frame, Event*) { 2217 static String valueBackColor(const EditorInternalCommand&,
2218 LocalFrame& frame,
2219 Event*) {
2214 return valueStyle(frame, CSSPropertyBackgroundColor); 2220 return valueStyle(frame, CSSPropertyBackgroundColor);
2215 } 2221 }
2216 2222
2217 static String valueDefaultParagraphSeparator(LocalFrame& frame, Event*) { 2223 static String valueDefaultParagraphSeparator(const EditorInternalCommand&,
2224 LocalFrame& frame,
2225 Event*) {
2218 switch (frame.editor().defaultParagraphSeparator()) { 2226 switch (frame.editor().defaultParagraphSeparator()) {
2219 case EditorParagraphSeparatorIsDiv: 2227 case EditorParagraphSeparatorIsDiv:
2220 return divTag.localName(); 2228 return divTag.localName();
2221 case EditorParagraphSeparatorIsP: 2229 case EditorParagraphSeparatorIsP:
2222 return pTag.localName(); 2230 return pTag.localName();
2223 } 2231 }
2224 2232
2225 NOTREACHED(); 2233 NOTREACHED();
2226 return String(); 2234 return String();
2227 } 2235 }
2228 2236
2229 static String valueFontName(LocalFrame& frame, Event*) { 2237 static String valueFontName(const EditorInternalCommand&,
2238 LocalFrame& frame,
2239 Event*) {
2230 return valueStyle(frame, CSSPropertyFontFamily); 2240 return valueStyle(frame, CSSPropertyFontFamily);
2231 } 2241 }
2232 2242
2233 static String valueFontSize(LocalFrame& frame, Event*) { 2243 static String valueFontSize(const EditorInternalCommand&,
2244 LocalFrame& frame,
2245 Event*) {
2234 return valueStyle(frame, CSSPropertyFontSize); 2246 return valueStyle(frame, CSSPropertyFontSize);
2235 } 2247 }
2236 2248
2237 static String valueFontSizeDelta(LocalFrame& frame, Event*) { 2249 static String valueFontSizeDelta(const EditorInternalCommand&,
2250 LocalFrame& frame,
2251 Event*) {
2238 return valueStyle(frame, CSSPropertyWebkitFontSizeDelta); 2252 return valueStyle(frame, CSSPropertyWebkitFontSizeDelta);
2239 } 2253 }
2240 2254
2241 static String valueForeColor(LocalFrame& frame, Event*) { 2255 static String valueForeColor(const EditorInternalCommand&,
2256 LocalFrame& frame,
2257 Event*) {
2242 return valueStyle(frame, CSSPropertyColor); 2258 return valueStyle(frame, CSSPropertyColor);
2243 } 2259 }
2244 2260
2245 static String valueFormatBlock(LocalFrame& frame, Event*) { 2261 static String valueFormatBlock(const EditorInternalCommand&,
2262 LocalFrame& frame,
2263 Event*) {
2246 const VisibleSelection& selection = 2264 const VisibleSelection& selection =
2247 frame.selection().computeVisibleSelectionInDOMTreeDeprecated(); 2265 frame.selection().computeVisibleSelectionInDOMTreeDeprecated();
2248 if (!selection.isNonOrphanedCaretOrRange() || !selection.isContentEditable()) 2266 if (!selection.isNonOrphanedCaretOrRange() || !selection.isContentEditable())
2249 return ""; 2267 return "";
2250 Element* formatBlockElement = 2268 Element* formatBlockElement =
2251 FormatBlockCommand::elementForFormatBlockCommand( 2269 FormatBlockCommand::elementForFormatBlockCommand(
2252 firstEphemeralRangeOf(selection)); 2270 firstEphemeralRangeOf(selection));
2253 if (!formatBlockElement) 2271 if (!formatBlockElement)
2254 return ""; 2272 return "";
2255 return formatBlockElement->localName(); 2273 return formatBlockElement->localName();
2256 } 2274 }
2257 2275
2258 // Map of functions 2276 // Map of functions
2259 2277
2260 static const EditorInternalCommand* internalCommand(const String& commandName) { 2278 static const EditorInternalCommand* internalCommand(const String& commandName) {
2261 static const EditorInternalCommand kEditorCommands[] = { 2279 static const EditorInternalCommand kEditorCommands[] = {
2262 // Lists all commands in blink::WebEditingCommandType. 2280 // Lists all commands in blink::WebEditingCommandType.
2263 // Must be ordered by |commandType| for index lookup. 2281 // Must be ordered by |commandType| for index lookup.
2264 // Covered by unit tests in EditingCommandTest.cpp 2282 // Covered by unit tests in EditingCommandTest.cpp
2265 {WebEditingCommandType::AlignJustified, executeJustifyFull, 2283 {WebEditingCommandType::AlignJustified, executeJustifyFull,
2266 supportedFromMenuOrKeyBinding, enabledInRichlyEditableText, stateNone, 2284 supportedFromMenuOrKeyBinding, enabledInRichlyEditableText, stateNone,
2267 valueNull, notTextInsertion, doNotAllowExecutionWhenDisabled}, 2285 valueStateOrNull, notTextInsertion, doNotAllowExecutionWhenDisabled},
2268 {WebEditingCommandType::AlignLeft, executeJustifyLeft, 2286 {WebEditingCommandType::AlignLeft, executeJustifyLeft,
2269 supportedFromMenuOrKeyBinding, enabledInRichlyEditableText, stateNone, 2287 supportedFromMenuOrKeyBinding, enabledInRichlyEditableText, stateNone,
2270 valueNull, notTextInsertion, doNotAllowExecutionWhenDisabled}, 2288 valueStateOrNull, notTextInsertion, doNotAllowExecutionWhenDisabled},
2271 {WebEditingCommandType::AlignRight, executeJustifyRight, 2289 {WebEditingCommandType::AlignRight, executeJustifyRight,
2272 supportedFromMenuOrKeyBinding, enabledInRichlyEditableText, stateNone, 2290 supportedFromMenuOrKeyBinding, enabledInRichlyEditableText, stateNone,
2273 valueNull, notTextInsertion, doNotAllowExecutionWhenDisabled}, 2291 valueStateOrNull, notTextInsertion, doNotAllowExecutionWhenDisabled},
2274 {WebEditingCommandType::BackColor, executeBackColor, supported, 2292 {WebEditingCommandType::BackColor, executeBackColor, supported,
2275 enabledInRichlyEditableText, stateNone, valueBackColor, notTextInsertion, 2293 enabledInRichlyEditableText, stateNone, valueBackColor, notTextInsertion,
2276 doNotAllowExecutionWhenDisabled}, 2294 doNotAllowExecutionWhenDisabled},
2277 // FIXME: remove BackwardDelete when Safari for Windows stops using it. 2295 // FIXME: remove BackwardDelete when Safari for Windows stops using it.
2278 {WebEditingCommandType::BackwardDelete, executeDeleteBackward, 2296 {WebEditingCommandType::BackwardDelete, executeDeleteBackward,
2279 supportedFromMenuOrKeyBinding, enabledInEditableText, stateNone, 2297 supportedFromMenuOrKeyBinding, enabledInEditableText, stateNone,
2280 valueNull, notTextInsertion, doNotAllowExecutionWhenDisabled}, 2298 valueStateOrNull, notTextInsertion, doNotAllowExecutionWhenDisabled},
2281 {WebEditingCommandType::Bold, executeToggleBold, supported, 2299 {WebEditingCommandType::Bold, executeToggleBold, supported,
2282 enabledInRichlyEditableText, stateBold, valueNull, notTextInsertion, 2300 enabledInRichlyEditableText, stateBold, valueStateOrNull,
2283 doNotAllowExecutionWhenDisabled}, 2301 notTextInsertion, doNotAllowExecutionWhenDisabled},
2284 {WebEditingCommandType::Copy, executeCopy, supported, enabledCopy, 2302 {WebEditingCommandType::Copy, executeCopy, supported, enabledCopy,
2285 stateNone, valueNull, notTextInsertion, allowExecutionWhenDisabled}, 2303 stateNone, valueStateOrNull, notTextInsertion,
2304 allowExecutionWhenDisabled},
2286 {WebEditingCommandType::CreateLink, executeCreateLink, supported, 2305 {WebEditingCommandType::CreateLink, executeCreateLink, supported,
2287 enabledInRichlyEditableText, stateNone, valueNull, notTextInsertion, 2306 enabledInRichlyEditableText, stateNone, valueStateOrNull,
2288 doNotAllowExecutionWhenDisabled}, 2307 notTextInsertion, doNotAllowExecutionWhenDisabled},
2289 {WebEditingCommandType::Cut, executeCut, supported, enabledCut, stateNone, 2308 {WebEditingCommandType::Cut, executeCut, supported, enabledCut, stateNone,
2290 valueNull, notTextInsertion, allowExecutionWhenDisabled}, 2309 valueStateOrNull, notTextInsertion, allowExecutionWhenDisabled},
2291 {WebEditingCommandType::DefaultParagraphSeparator, 2310 {WebEditingCommandType::DefaultParagraphSeparator,
2292 executeDefaultParagraphSeparator, supported, enabled, stateNone, 2311 executeDefaultParagraphSeparator, supported, enabled, stateNone,
2293 valueDefaultParagraphSeparator, notTextInsertion, 2312 valueDefaultParagraphSeparator, notTextInsertion,
2294 doNotAllowExecutionWhenDisabled}, 2313 doNotAllowExecutionWhenDisabled},
2295 {WebEditingCommandType::Delete, executeDelete, supported, enabledDelete, 2314 {WebEditingCommandType::Delete, executeDelete, supported, enabledDelete,
2296 stateNone, valueNull, notTextInsertion, doNotAllowExecutionWhenDisabled}, 2315 stateNone, valueStateOrNull, notTextInsertion,
2316 doNotAllowExecutionWhenDisabled},
2297 {WebEditingCommandType::DeleteBackward, executeDeleteBackward, 2317 {WebEditingCommandType::DeleteBackward, executeDeleteBackward,
2298 supportedFromMenuOrKeyBinding, enabledInEditableText, stateNone, 2318 supportedFromMenuOrKeyBinding, enabledInEditableText, stateNone,
2299 valueNull, notTextInsertion, doNotAllowExecutionWhenDisabled}, 2319 valueStateOrNull, notTextInsertion, doNotAllowExecutionWhenDisabled},
2300 {WebEditingCommandType::DeleteBackwardByDecomposingPreviousCharacter, 2320 {WebEditingCommandType::DeleteBackwardByDecomposingPreviousCharacter,
2301 executeDeleteBackwardByDecomposingPreviousCharacter, 2321 executeDeleteBackwardByDecomposingPreviousCharacter,
2302 supportedFromMenuOrKeyBinding, enabledInEditableText, stateNone, 2322 supportedFromMenuOrKeyBinding, enabledInEditableText, stateNone,
2303 valueNull, notTextInsertion, doNotAllowExecutionWhenDisabled}, 2323 valueStateOrNull, notTextInsertion, doNotAllowExecutionWhenDisabled},
2304 {WebEditingCommandType::DeleteForward, executeDeleteForward, 2324 {WebEditingCommandType::DeleteForward, executeDeleteForward,
2305 supportedFromMenuOrKeyBinding, enabledInEditableText, stateNone, 2325 supportedFromMenuOrKeyBinding, enabledInEditableText, stateNone,
2306 valueNull, notTextInsertion, doNotAllowExecutionWhenDisabled}, 2326 valueStateOrNull, notTextInsertion, doNotAllowExecutionWhenDisabled},
2307 {WebEditingCommandType::DeleteToBeginningOfLine, 2327 {WebEditingCommandType::DeleteToBeginningOfLine,
2308 executeDeleteToBeginningOfLine, supportedFromMenuOrKeyBinding, 2328 executeDeleteToBeginningOfLine, supportedFromMenuOrKeyBinding,
2309 enabledInEditableText, stateNone, valueNull, notTextInsertion, 2329 enabledInEditableText, stateNone, valueStateOrNull, notTextInsertion,
2310 doNotAllowExecutionWhenDisabled}, 2330 doNotAllowExecutionWhenDisabled},
2311 {WebEditingCommandType::DeleteToBeginningOfParagraph, 2331 {WebEditingCommandType::DeleteToBeginningOfParagraph,
2312 executeDeleteToBeginningOfParagraph, supportedFromMenuOrKeyBinding, 2332 executeDeleteToBeginningOfParagraph, supportedFromMenuOrKeyBinding,
2313 enabledInEditableText, stateNone, valueNull, notTextInsertion, 2333 enabledInEditableText, stateNone, valueStateOrNull, notTextInsertion,
2314 doNotAllowExecutionWhenDisabled}, 2334 doNotAllowExecutionWhenDisabled},
2315 {WebEditingCommandType::DeleteToEndOfLine, executeDeleteToEndOfLine, 2335 {WebEditingCommandType::DeleteToEndOfLine, executeDeleteToEndOfLine,
2316 supportedFromMenuOrKeyBinding, enabledInEditableText, stateNone, 2336 supportedFromMenuOrKeyBinding, enabledInEditableText, stateNone,
2317 valueNull, notTextInsertion, doNotAllowExecutionWhenDisabled}, 2337 valueStateOrNull, notTextInsertion, doNotAllowExecutionWhenDisabled},
2318 {WebEditingCommandType::DeleteToEndOfParagraph, 2338 {WebEditingCommandType::DeleteToEndOfParagraph,
2319 executeDeleteToEndOfParagraph, supportedFromMenuOrKeyBinding, 2339 executeDeleteToEndOfParagraph, supportedFromMenuOrKeyBinding,
2320 enabledInEditableText, stateNone, valueNull, notTextInsertion, 2340 enabledInEditableText, stateNone, valueStateOrNull, notTextInsertion,
2321 doNotAllowExecutionWhenDisabled}, 2341 doNotAllowExecutionWhenDisabled},
2322 {WebEditingCommandType::DeleteToMark, executeDeleteToMark, 2342 {WebEditingCommandType::DeleteToMark, executeDeleteToMark,
2323 supportedFromMenuOrKeyBinding, enabledInEditableText, stateNone, 2343 supportedFromMenuOrKeyBinding, enabledInEditableText, stateNone,
2324 valueNull, notTextInsertion, doNotAllowExecutionWhenDisabled}, 2344 valueStateOrNull, notTextInsertion, doNotAllowExecutionWhenDisabled},
2325 {WebEditingCommandType::DeleteWordBackward, executeDeleteWordBackward, 2345 {WebEditingCommandType::DeleteWordBackward, executeDeleteWordBackward,
2326 supportedFromMenuOrKeyBinding, enabledInEditableText, stateNone, 2346 supportedFromMenuOrKeyBinding, enabledInEditableText, stateNone,
2327 valueNull, notTextInsertion, doNotAllowExecutionWhenDisabled}, 2347 valueStateOrNull, notTextInsertion, doNotAllowExecutionWhenDisabled},
2328 {WebEditingCommandType::DeleteWordForward, executeDeleteWordForward, 2348 {WebEditingCommandType::DeleteWordForward, executeDeleteWordForward,
2329 supportedFromMenuOrKeyBinding, enabledInEditableText, stateNone, 2349 supportedFromMenuOrKeyBinding, enabledInEditableText, stateNone,
2330 valueNull, notTextInsertion, doNotAllowExecutionWhenDisabled}, 2350 valueStateOrNull, notTextInsertion, doNotAllowExecutionWhenDisabled},
2331 {WebEditingCommandType::FindString, executeFindString, supported, enabled, 2351 {WebEditingCommandType::FindString, executeFindString, supported, enabled,
2332 stateNone, valueNull, notTextInsertion, doNotAllowExecutionWhenDisabled}, 2352 stateNone, valueStateOrNull, notTextInsertion,
2353 doNotAllowExecutionWhenDisabled},
2333 {WebEditingCommandType::FontName, executeFontName, supported, 2354 {WebEditingCommandType::FontName, executeFontName, supported,
2334 enabledInRichlyEditableText, stateNone, valueFontName, notTextInsertion, 2355 enabledInRichlyEditableText, stateNone, valueFontName, notTextInsertion,
2335 doNotAllowExecutionWhenDisabled}, 2356 doNotAllowExecutionWhenDisabled},
2336 {WebEditingCommandType::FontSize, executeFontSize, supported, 2357 {WebEditingCommandType::FontSize, executeFontSize, supported,
2337 enabledInRichlyEditableText, stateNone, valueFontSize, notTextInsertion, 2358 enabledInRichlyEditableText, stateNone, valueFontSize, notTextInsertion,
2338 doNotAllowExecutionWhenDisabled}, 2359 doNotAllowExecutionWhenDisabled},
2339 {WebEditingCommandType::FontSizeDelta, executeFontSizeDelta, supported, 2360 {WebEditingCommandType::FontSizeDelta, executeFontSizeDelta, supported,
2340 enabledInRichlyEditableText, stateNone, valueFontSizeDelta, 2361 enabledInRichlyEditableText, stateNone, valueFontSizeDelta,
2341 notTextInsertion, doNotAllowExecutionWhenDisabled}, 2362 notTextInsertion, doNotAllowExecutionWhenDisabled},
2342 {WebEditingCommandType::ForeColor, executeForeColor, supported, 2363 {WebEditingCommandType::ForeColor, executeForeColor, supported,
2343 enabledInRichlyEditableText, stateNone, valueForeColor, notTextInsertion, 2364 enabledInRichlyEditableText, stateNone, valueForeColor, notTextInsertion,
2344 doNotAllowExecutionWhenDisabled}, 2365 doNotAllowExecutionWhenDisabled},
2345 {WebEditingCommandType::FormatBlock, executeFormatBlock, supported, 2366 {WebEditingCommandType::FormatBlock, executeFormatBlock, supported,
2346 enabledInRichlyEditableText, stateNone, valueFormatBlock, 2367 enabledInRichlyEditableText, stateNone, valueFormatBlock,
2347 notTextInsertion, doNotAllowExecutionWhenDisabled}, 2368 notTextInsertion, doNotAllowExecutionWhenDisabled},
2348 {WebEditingCommandType::ForwardDelete, executeForwardDelete, supported, 2369 {WebEditingCommandType::ForwardDelete, executeForwardDelete, supported,
2349 enabledInEditableText, stateNone, valueNull, notTextInsertion, 2370 enabledInEditableText, stateNone, valueStateOrNull, notTextInsertion,
2350 doNotAllowExecutionWhenDisabled}, 2371 doNotAllowExecutionWhenDisabled},
2351 {WebEditingCommandType::HiliteColor, executeBackColor, supported, 2372 {WebEditingCommandType::HiliteColor, executeBackColor, supported,
2352 enabledInRichlyEditableText, stateNone, valueNull, notTextInsertion, 2373 enabledInRichlyEditableText, stateNone, valueStateOrNull,
2353 doNotAllowExecutionWhenDisabled}, 2374 notTextInsertion, doNotAllowExecutionWhenDisabled},
2354 {WebEditingCommandType::IgnoreSpelling, executeIgnoreSpelling, 2375 {WebEditingCommandType::IgnoreSpelling, executeIgnoreSpelling,
2355 supportedFromMenuOrKeyBinding, enabledInEditableText, stateNone, 2376 supportedFromMenuOrKeyBinding, enabledInEditableText, stateNone,
2356 valueNull, notTextInsertion, doNotAllowExecutionWhenDisabled}, 2377 valueStateOrNull, notTextInsertion, doNotAllowExecutionWhenDisabled},
2357 {WebEditingCommandType::Indent, executeIndent, supported, 2378 {WebEditingCommandType::Indent, executeIndent, supported,
2358 enabledInRichlyEditableText, stateNone, valueNull, notTextInsertion, 2379 enabledInRichlyEditableText, stateNone, valueStateOrNull,
2359 doNotAllowExecutionWhenDisabled}, 2380 notTextInsertion, doNotAllowExecutionWhenDisabled},
2360 {WebEditingCommandType::InsertBacktab, executeInsertBacktab, 2381 {WebEditingCommandType::InsertBacktab, executeInsertBacktab,
2361 supportedFromMenuOrKeyBinding, enabledInEditableText, stateNone, 2382 supportedFromMenuOrKeyBinding, enabledInEditableText, stateNone,
2362 valueNull, isTextInsertion, doNotAllowExecutionWhenDisabled}, 2383 valueStateOrNull, isTextInsertion, doNotAllowExecutionWhenDisabled},
2363 {WebEditingCommandType::InsertHTML, executeInsertHTML, supported, 2384 {WebEditingCommandType::InsertHTML, executeInsertHTML, supported,
2364 enabledInEditableText, stateNone, valueNull, notTextInsertion, 2385 enabledInEditableText, stateNone, valueStateOrNull, notTextInsertion,
2365 doNotAllowExecutionWhenDisabled}, 2386 doNotAllowExecutionWhenDisabled},
2366 {WebEditingCommandType::InsertHorizontalRule, executeInsertHorizontalRule, 2387 {WebEditingCommandType::InsertHorizontalRule, executeInsertHorizontalRule,
2367 supported, enabledInRichlyEditableText, stateNone, valueNull, 2388 supported, enabledInRichlyEditableText, stateNone, valueStateOrNull,
2368 notTextInsertion, doNotAllowExecutionWhenDisabled}, 2389 notTextInsertion, doNotAllowExecutionWhenDisabled},
2369 {WebEditingCommandType::InsertImage, executeInsertImage, supported, 2390 {WebEditingCommandType::InsertImage, executeInsertImage, supported,
2370 enabledInRichlyEditableText, stateNone, valueNull, notTextInsertion, 2391 enabledInRichlyEditableText, stateNone, valueStateOrNull,
2371 doNotAllowExecutionWhenDisabled}, 2392 notTextInsertion, doNotAllowExecutionWhenDisabled},
2372 {WebEditingCommandType::InsertLineBreak, executeInsertLineBreak, 2393 {WebEditingCommandType::InsertLineBreak, executeInsertLineBreak,
2373 supported, enabledInEditableText, stateNone, valueNull, isTextInsertion, 2394 supported, enabledInEditableText, stateNone, valueStateOrNull,
2374 doNotAllowExecutionWhenDisabled}, 2395 isTextInsertion, doNotAllowExecutionWhenDisabled},
2375 {WebEditingCommandType::InsertNewline, executeInsertNewline, 2396 {WebEditingCommandType::InsertNewline, executeInsertNewline,
2376 supportedFromMenuOrKeyBinding, enabledInEditableText, stateNone, 2397 supportedFromMenuOrKeyBinding, enabledInEditableText, stateNone,
2377 valueNull, isTextInsertion, doNotAllowExecutionWhenDisabled}, 2398 valueStateOrNull, isTextInsertion, doNotAllowExecutionWhenDisabled},
2378 {WebEditingCommandType::InsertNewlineInQuotedContent, 2399 {WebEditingCommandType::InsertNewlineInQuotedContent,
2379 executeInsertNewlineInQuotedContent, supported, 2400 executeInsertNewlineInQuotedContent, supported,
2380 enabledInRichlyEditableText, stateNone, valueNull, notTextInsertion, 2401 enabledInRichlyEditableText, stateNone, valueStateOrNull,
2381 doNotAllowExecutionWhenDisabled}, 2402 notTextInsertion, doNotAllowExecutionWhenDisabled},
2382 {WebEditingCommandType::InsertOrderedList, executeInsertOrderedList, 2403 {WebEditingCommandType::InsertOrderedList, executeInsertOrderedList,
2383 supported, enabledInRichlyEditableText, stateOrderedList, valueNull, 2404 supported, enabledInRichlyEditableText, stateOrderedList,
2384 notTextInsertion, doNotAllowExecutionWhenDisabled}, 2405 valueStateOrNull, notTextInsertion, doNotAllowExecutionWhenDisabled},
2385 {WebEditingCommandType::InsertParagraph, executeInsertParagraph, 2406 {WebEditingCommandType::InsertParagraph, executeInsertParagraph,
2386 supported, enabledInEditableText, stateNone, valueNull, notTextInsertion, 2407 supported, enabledInEditableText, stateNone, valueStateOrNull,
2387 doNotAllowExecutionWhenDisabled}, 2408 notTextInsertion, doNotAllowExecutionWhenDisabled},
2388 {WebEditingCommandType::InsertTab, executeInsertTab, 2409 {WebEditingCommandType::InsertTab, executeInsertTab,
2389 supportedFromMenuOrKeyBinding, enabledInEditableText, stateNone, 2410 supportedFromMenuOrKeyBinding, enabledInEditableText, stateNone,
2390 valueNull, isTextInsertion, doNotAllowExecutionWhenDisabled}, 2411 valueStateOrNull, isTextInsertion, doNotAllowExecutionWhenDisabled},
2391 {WebEditingCommandType::InsertText, executeInsertText, supported, 2412 {WebEditingCommandType::InsertText, executeInsertText, supported,
2392 enabledInEditableText, stateNone, valueNull, isTextInsertion, 2413 enabledInEditableText, stateNone, valueStateOrNull, isTextInsertion,
2393 doNotAllowExecutionWhenDisabled}, 2414 doNotAllowExecutionWhenDisabled},
2394 {WebEditingCommandType::InsertUnorderedList, executeInsertUnorderedList, 2415 {WebEditingCommandType::InsertUnorderedList, executeInsertUnorderedList,
2395 supported, enabledInRichlyEditableText, stateUnorderedList, valueNull, 2416 supported, enabledInRichlyEditableText, stateUnorderedList,
2396 notTextInsertion, doNotAllowExecutionWhenDisabled}, 2417 valueStateOrNull, notTextInsertion, doNotAllowExecutionWhenDisabled},
2397 {WebEditingCommandType::Italic, executeToggleItalic, supported, 2418 {WebEditingCommandType::Italic, executeToggleItalic, supported,
2398 enabledInRichlyEditableText, stateItalic, valueNull, notTextInsertion, 2419 enabledInRichlyEditableText, stateItalic, valueStateOrNull,
2399 doNotAllowExecutionWhenDisabled}, 2420 notTextInsertion, doNotAllowExecutionWhenDisabled},
2400 {WebEditingCommandType::JustifyCenter, executeJustifyCenter, supported, 2421 {WebEditingCommandType::JustifyCenter, executeJustifyCenter, supported,
2401 enabledInRichlyEditableText, stateJustifyCenter, valueNull, 2422 enabledInRichlyEditableText, stateJustifyCenter, valueStateOrNull,
2402 notTextInsertion, doNotAllowExecutionWhenDisabled}, 2423 notTextInsertion, doNotAllowExecutionWhenDisabled},
2403 {WebEditingCommandType::JustifyFull, executeJustifyFull, supported, 2424 {WebEditingCommandType::JustifyFull, executeJustifyFull, supported,
2404 enabledInRichlyEditableText, stateJustifyFull, valueNull, 2425 enabledInRichlyEditableText, stateJustifyFull, valueStateOrNull,
2405 notTextInsertion, doNotAllowExecutionWhenDisabled}, 2426 notTextInsertion, doNotAllowExecutionWhenDisabled},
2406 {WebEditingCommandType::JustifyLeft, executeJustifyLeft, supported, 2427 {WebEditingCommandType::JustifyLeft, executeJustifyLeft, supported,
2407 enabledInRichlyEditableText, stateJustifyLeft, valueNull, 2428 enabledInRichlyEditableText, stateJustifyLeft, valueStateOrNull,
2408 notTextInsertion, doNotAllowExecutionWhenDisabled}, 2429 notTextInsertion, doNotAllowExecutionWhenDisabled},
2409 {WebEditingCommandType::JustifyNone, executeJustifyLeft, supported, 2430 {WebEditingCommandType::JustifyNone, executeJustifyLeft, supported,
2410 enabledInRichlyEditableText, stateNone, valueNull, notTextInsertion, 2431 enabledInRichlyEditableText, stateNone, valueStateOrNull,
2411 doNotAllowExecutionWhenDisabled}, 2432 notTextInsertion, doNotAllowExecutionWhenDisabled},
2412 {WebEditingCommandType::JustifyRight, executeJustifyRight, supported, 2433 {WebEditingCommandType::JustifyRight, executeJustifyRight, supported,
2413 enabledInRichlyEditableText, stateJustifyRight, valueNull, 2434 enabledInRichlyEditableText, stateJustifyRight, valueStateOrNull,
2414 notTextInsertion, doNotAllowExecutionWhenDisabled}, 2435 notTextInsertion, doNotAllowExecutionWhenDisabled},
2415 {WebEditingCommandType::MakeTextWritingDirectionLeftToRight, 2436 {WebEditingCommandType::MakeTextWritingDirectionLeftToRight,
2416 executeMakeTextWritingDirectionLeftToRight, 2437 executeMakeTextWritingDirectionLeftToRight,
2417 supportedFromMenuOrKeyBinding, enabledInRichlyEditableText, 2438 supportedFromMenuOrKeyBinding, enabledInRichlyEditableText,
2418 stateTextWritingDirectionLeftToRight, valueNull, notTextInsertion, 2439 stateTextWritingDirectionLeftToRight, valueStateOrNull, notTextInsertion,
2419 doNotAllowExecutionWhenDisabled}, 2440 doNotAllowExecutionWhenDisabled},
2420 {WebEditingCommandType::MakeTextWritingDirectionNatural, 2441 {WebEditingCommandType::MakeTextWritingDirectionNatural,
2421 executeMakeTextWritingDirectionNatural, supportedFromMenuOrKeyBinding, 2442 executeMakeTextWritingDirectionNatural, supportedFromMenuOrKeyBinding,
2422 enabledInRichlyEditableText, stateTextWritingDirectionNatural, valueNull, 2443 enabledInRichlyEditableText, stateTextWritingDirectionNatural,
2423 notTextInsertion, doNotAllowExecutionWhenDisabled}, 2444 valueStateOrNull, notTextInsertion, doNotAllowExecutionWhenDisabled},
2424 {WebEditingCommandType::MakeTextWritingDirectionRightToLeft, 2445 {WebEditingCommandType::MakeTextWritingDirectionRightToLeft,
2425 executeMakeTextWritingDirectionRightToLeft, 2446 executeMakeTextWritingDirectionRightToLeft,
2426 supportedFromMenuOrKeyBinding, enabledInRichlyEditableText, 2447 supportedFromMenuOrKeyBinding, enabledInRichlyEditableText,
2427 stateTextWritingDirectionRightToLeft, valueNull, notTextInsertion, 2448 stateTextWritingDirectionRightToLeft, valueStateOrNull, notTextInsertion,
2428 doNotAllowExecutionWhenDisabled}, 2449 doNotAllowExecutionWhenDisabled},
2429 {WebEditingCommandType::MoveBackward, executeMoveBackward, 2450 {WebEditingCommandType::MoveBackward, executeMoveBackward,
2430 supportedFromMenuOrKeyBinding, enabledInEditableText, stateNone, 2451 supportedFromMenuOrKeyBinding, enabledInEditableText, stateNone,
2431 valueNull, notTextInsertion, doNotAllowExecutionWhenDisabled}, 2452 valueStateOrNull, notTextInsertion, doNotAllowExecutionWhenDisabled},
2432 {WebEditingCommandType::MoveBackwardAndModifySelection, 2453 {WebEditingCommandType::MoveBackwardAndModifySelection,
2433 executeMoveBackwardAndModifySelection, supportedFromMenuOrKeyBinding, 2454 executeMoveBackwardAndModifySelection, supportedFromMenuOrKeyBinding,
2434 enabledVisibleSelection, stateNone, valueNull, notTextInsertion, 2455 enabledVisibleSelection, stateNone, valueStateOrNull, notTextInsertion,
2435 doNotAllowExecutionWhenDisabled}, 2456 doNotAllowExecutionWhenDisabled},
2436 {WebEditingCommandType::MoveDown, executeMoveDown, 2457 {WebEditingCommandType::MoveDown, executeMoveDown,
2437 supportedFromMenuOrKeyBinding, enabledInEditableText, stateNone, 2458 supportedFromMenuOrKeyBinding, enabledInEditableText, stateNone,
2438 valueNull, notTextInsertion, doNotAllowExecutionWhenDisabled}, 2459 valueStateOrNull, notTextInsertion, doNotAllowExecutionWhenDisabled},
2439 {WebEditingCommandType::MoveDownAndModifySelection, 2460 {WebEditingCommandType::MoveDownAndModifySelection,
2440 executeMoveDownAndModifySelection, supportedFromMenuOrKeyBinding, 2461 executeMoveDownAndModifySelection, supportedFromMenuOrKeyBinding,
2441 enabledVisibleSelection, stateNone, valueNull, notTextInsertion, 2462 enabledVisibleSelection, stateNone, valueStateOrNull, notTextInsertion,
2442 doNotAllowExecutionWhenDisabled}, 2463 doNotAllowExecutionWhenDisabled},
2443 {WebEditingCommandType::MoveForward, executeMoveForward, 2464 {WebEditingCommandType::MoveForward, executeMoveForward,
2444 supportedFromMenuOrKeyBinding, enabledInEditableText, stateNone, 2465 supportedFromMenuOrKeyBinding, enabledInEditableText, stateNone,
2445 valueNull, notTextInsertion, doNotAllowExecutionWhenDisabled}, 2466 valueStateOrNull, notTextInsertion, doNotAllowExecutionWhenDisabled},
2446 {WebEditingCommandType::MoveForwardAndModifySelection, 2467 {WebEditingCommandType::MoveForwardAndModifySelection,
2447 executeMoveForwardAndModifySelection, supportedFromMenuOrKeyBinding, 2468 executeMoveForwardAndModifySelection, supportedFromMenuOrKeyBinding,
2448 enabledVisibleSelection, stateNone, valueNull, notTextInsertion, 2469 enabledVisibleSelection, stateNone, valueStateOrNull, notTextInsertion,
2449 doNotAllowExecutionWhenDisabled}, 2470 doNotAllowExecutionWhenDisabled},
2450 {WebEditingCommandType::MoveLeft, executeMoveLeft, 2471 {WebEditingCommandType::MoveLeft, executeMoveLeft,
2451 supportedFromMenuOrKeyBinding, enabledInEditableText, stateNone, 2472 supportedFromMenuOrKeyBinding, enabledInEditableText, stateNone,
2452 valueNull, notTextInsertion, doNotAllowExecutionWhenDisabled}, 2473 valueStateOrNull, notTextInsertion, doNotAllowExecutionWhenDisabled},
2453 {WebEditingCommandType::MoveLeftAndModifySelection, 2474 {WebEditingCommandType::MoveLeftAndModifySelection,
2454 executeMoveLeftAndModifySelection, supportedFromMenuOrKeyBinding, 2475 executeMoveLeftAndModifySelection, supportedFromMenuOrKeyBinding,
2455 enabledVisibleSelection, stateNone, valueNull, notTextInsertion, 2476 enabledVisibleSelection, stateNone, valueStateOrNull, notTextInsertion,
2456 doNotAllowExecutionWhenDisabled}, 2477 doNotAllowExecutionWhenDisabled},
2457 {WebEditingCommandType::MovePageDown, executeMovePageDown, 2478 {WebEditingCommandType::MovePageDown, executeMovePageDown,
2458 supportedFromMenuOrKeyBinding, enabledInEditableText, stateNone, 2479 supportedFromMenuOrKeyBinding, enabledInEditableText, stateNone,
2459 valueNull, notTextInsertion, doNotAllowExecutionWhenDisabled}, 2480 valueStateOrNull, notTextInsertion, doNotAllowExecutionWhenDisabled},
2460 {WebEditingCommandType::MovePageDownAndModifySelection, 2481 {WebEditingCommandType::MovePageDownAndModifySelection,
2461 executeMovePageDownAndModifySelection, supportedFromMenuOrKeyBinding, 2482 executeMovePageDownAndModifySelection, supportedFromMenuOrKeyBinding,
2462 enabledVisibleSelection, stateNone, valueNull, notTextInsertion, 2483 enabledVisibleSelection, stateNone, valueStateOrNull, notTextInsertion,
2463 doNotAllowExecutionWhenDisabled}, 2484 doNotAllowExecutionWhenDisabled},
2464 {WebEditingCommandType::MovePageUp, executeMovePageUp, 2485 {WebEditingCommandType::MovePageUp, executeMovePageUp,
2465 supportedFromMenuOrKeyBinding, enabledInEditableText, stateNone, 2486 supportedFromMenuOrKeyBinding, enabledInEditableText, stateNone,
2466 valueNull, notTextInsertion, doNotAllowExecutionWhenDisabled}, 2487 valueStateOrNull, notTextInsertion, doNotAllowExecutionWhenDisabled},
2467 {WebEditingCommandType::MovePageUpAndModifySelection, 2488 {WebEditingCommandType::MovePageUpAndModifySelection,
2468 executeMovePageUpAndModifySelection, supportedFromMenuOrKeyBinding, 2489 executeMovePageUpAndModifySelection, supportedFromMenuOrKeyBinding,
2469 enabledVisibleSelection, stateNone, valueNull, notTextInsertion, 2490 enabledVisibleSelection, stateNone, valueStateOrNull, notTextInsertion,
2470 doNotAllowExecutionWhenDisabled}, 2491 doNotAllowExecutionWhenDisabled},
2471 {WebEditingCommandType::MoveParagraphBackward, 2492 {WebEditingCommandType::MoveParagraphBackward,
2472 executeMoveParagraphBackward, supportedFromMenuOrKeyBinding, 2493 executeMoveParagraphBackward, supportedFromMenuOrKeyBinding,
2473 enabledInEditableText, stateNone, valueNull, notTextInsertion, 2494 enabledInEditableText, stateNone, valueStateOrNull, notTextInsertion,
2474 doNotAllowExecutionWhenDisabled}, 2495 doNotAllowExecutionWhenDisabled},
2475 {WebEditingCommandType::MoveParagraphBackwardAndModifySelection, 2496 {WebEditingCommandType::MoveParagraphBackwardAndModifySelection,
2476 executeMoveParagraphBackwardAndModifySelection, 2497 executeMoveParagraphBackwardAndModifySelection,
2477 supportedFromMenuOrKeyBinding, enabledVisibleSelection, stateNone, 2498 supportedFromMenuOrKeyBinding, enabledVisibleSelection, stateNone,
2478 valueNull, notTextInsertion, doNotAllowExecutionWhenDisabled}, 2499 valueStateOrNull, notTextInsertion, doNotAllowExecutionWhenDisabled},
2479 {WebEditingCommandType::MoveParagraphForward, executeMoveParagraphForward, 2500 {WebEditingCommandType::MoveParagraphForward, executeMoveParagraphForward,
2480 supportedFromMenuOrKeyBinding, enabledInEditableText, stateNone, 2501 supportedFromMenuOrKeyBinding, enabledInEditableText, stateNone,
2481 valueNull, notTextInsertion, doNotAllowExecutionWhenDisabled}, 2502 valueStateOrNull, notTextInsertion, doNotAllowExecutionWhenDisabled},
2482 {WebEditingCommandType::MoveParagraphForwardAndModifySelection, 2503 {WebEditingCommandType::MoveParagraphForwardAndModifySelection,
2483 executeMoveParagraphForwardAndModifySelection, 2504 executeMoveParagraphForwardAndModifySelection,
2484 supportedFromMenuOrKeyBinding, enabledVisibleSelection, stateNone, 2505 supportedFromMenuOrKeyBinding, enabledVisibleSelection, stateNone,
2485 valueNull, notTextInsertion, doNotAllowExecutionWhenDisabled}, 2506 valueStateOrNull, notTextInsertion, doNotAllowExecutionWhenDisabled},
2486 {WebEditingCommandType::MoveRight, executeMoveRight, 2507 {WebEditingCommandType::MoveRight, executeMoveRight,
2487 supportedFromMenuOrKeyBinding, enabledInEditableText, stateNone, 2508 supportedFromMenuOrKeyBinding, enabledInEditableText, stateNone,
2488 valueNull, notTextInsertion, doNotAllowExecutionWhenDisabled}, 2509 valueStateOrNull, notTextInsertion, doNotAllowExecutionWhenDisabled},
2489 {WebEditingCommandType::MoveRightAndModifySelection, 2510 {WebEditingCommandType::MoveRightAndModifySelection,
2490 executeMoveRightAndModifySelection, supportedFromMenuOrKeyBinding, 2511 executeMoveRightAndModifySelection, supportedFromMenuOrKeyBinding,
2491 enabledVisibleSelection, stateNone, valueNull, notTextInsertion, 2512 enabledVisibleSelection, stateNone, valueStateOrNull, notTextInsertion,
2492 doNotAllowExecutionWhenDisabled}, 2513 doNotAllowExecutionWhenDisabled},
2493 {WebEditingCommandType::MoveToBeginningOfDocument, 2514 {WebEditingCommandType::MoveToBeginningOfDocument,
2494 executeMoveToBeginningOfDocument, supportedFromMenuOrKeyBinding, 2515 executeMoveToBeginningOfDocument, supportedFromMenuOrKeyBinding,
2495 enabledInEditableText, stateNone, valueNull, notTextInsertion, 2516 enabledInEditableText, stateNone, valueStateOrNull, notTextInsertion,
2496 doNotAllowExecutionWhenDisabled}, 2517 doNotAllowExecutionWhenDisabled},
2497 {WebEditingCommandType::MoveToBeginningOfDocumentAndModifySelection, 2518 {WebEditingCommandType::MoveToBeginningOfDocumentAndModifySelection,
2498 executeMoveToBeginningOfDocumentAndModifySelection, 2519 executeMoveToBeginningOfDocumentAndModifySelection,
2499 supportedFromMenuOrKeyBinding, enabledVisibleSelection, stateNone, 2520 supportedFromMenuOrKeyBinding, enabledVisibleSelection, stateNone,
2500 valueNull, notTextInsertion, doNotAllowExecutionWhenDisabled}, 2521 valueStateOrNull, notTextInsertion, doNotAllowExecutionWhenDisabled},
2501 {WebEditingCommandType::MoveToBeginningOfLine, 2522 {WebEditingCommandType::MoveToBeginningOfLine,
2502 executeMoveToBeginningOfLine, supportedFromMenuOrKeyBinding, 2523 executeMoveToBeginningOfLine, supportedFromMenuOrKeyBinding,
2503 enabledInEditableText, stateNone, valueNull, notTextInsertion, 2524 enabledInEditableText, stateNone, valueStateOrNull, notTextInsertion,
2504 doNotAllowExecutionWhenDisabled}, 2525 doNotAllowExecutionWhenDisabled},
2505 {WebEditingCommandType::MoveToBeginningOfLineAndModifySelection, 2526 {WebEditingCommandType::MoveToBeginningOfLineAndModifySelection,
2506 executeMoveToBeginningOfLineAndModifySelection, 2527 executeMoveToBeginningOfLineAndModifySelection,
2507 supportedFromMenuOrKeyBinding, enabledVisibleSelection, stateNone, 2528 supportedFromMenuOrKeyBinding, enabledVisibleSelection, stateNone,
2508 valueNull, notTextInsertion, doNotAllowExecutionWhenDisabled}, 2529 valueStateOrNull, notTextInsertion, doNotAllowExecutionWhenDisabled},
2509 {WebEditingCommandType::MoveToBeginningOfParagraph, 2530 {WebEditingCommandType::MoveToBeginningOfParagraph,
2510 executeMoveToBeginningOfParagraph, supportedFromMenuOrKeyBinding, 2531 executeMoveToBeginningOfParagraph, supportedFromMenuOrKeyBinding,
2511 enabledInEditableText, stateNone, valueNull, notTextInsertion, 2532 enabledInEditableText, stateNone, valueStateOrNull, notTextInsertion,
2512 doNotAllowExecutionWhenDisabled}, 2533 doNotAllowExecutionWhenDisabled},
2513 {WebEditingCommandType::MoveToBeginningOfParagraphAndModifySelection, 2534 {WebEditingCommandType::MoveToBeginningOfParagraphAndModifySelection,
2514 executeMoveToBeginningOfParagraphAndModifySelection, 2535 executeMoveToBeginningOfParagraphAndModifySelection,
2515 supportedFromMenuOrKeyBinding, enabledVisibleSelection, stateNone, 2536 supportedFromMenuOrKeyBinding, enabledVisibleSelection, stateNone,
2516 valueNull, notTextInsertion, doNotAllowExecutionWhenDisabled}, 2537 valueStateOrNull, notTextInsertion, doNotAllowExecutionWhenDisabled},
2517 {WebEditingCommandType::MoveToBeginningOfSentence, 2538 {WebEditingCommandType::MoveToBeginningOfSentence,
2518 executeMoveToBeginningOfSentence, supportedFromMenuOrKeyBinding, 2539 executeMoveToBeginningOfSentence, supportedFromMenuOrKeyBinding,
2519 enabledInEditableText, stateNone, valueNull, notTextInsertion, 2540 enabledInEditableText, stateNone, valueStateOrNull, notTextInsertion,
2520 doNotAllowExecutionWhenDisabled}, 2541 doNotAllowExecutionWhenDisabled},
2521 {WebEditingCommandType::MoveToBeginningOfSentenceAndModifySelection, 2542 {WebEditingCommandType::MoveToBeginningOfSentenceAndModifySelection,
2522 executeMoveToBeginningOfSentenceAndModifySelection, 2543 executeMoveToBeginningOfSentenceAndModifySelection,
2523 supportedFromMenuOrKeyBinding, enabledVisibleSelection, stateNone, 2544 supportedFromMenuOrKeyBinding, enabledVisibleSelection, stateNone,
2524 valueNull, notTextInsertion, doNotAllowExecutionWhenDisabled}, 2545 valueStateOrNull, notTextInsertion, doNotAllowExecutionWhenDisabled},
2525 {WebEditingCommandType::MoveToEndOfDocument, executeMoveToEndOfDocument, 2546 {WebEditingCommandType::MoveToEndOfDocument, executeMoveToEndOfDocument,
2526 supportedFromMenuOrKeyBinding, enabledInEditableText, stateNone, 2547 supportedFromMenuOrKeyBinding, enabledInEditableText, stateNone,
2527 valueNull, notTextInsertion, doNotAllowExecutionWhenDisabled}, 2548 valueStateOrNull, notTextInsertion, doNotAllowExecutionWhenDisabled},
2528 {WebEditingCommandType::MoveToEndOfDocumentAndModifySelection, 2549 {WebEditingCommandType::MoveToEndOfDocumentAndModifySelection,
2529 executeMoveToEndOfDocumentAndModifySelection, 2550 executeMoveToEndOfDocumentAndModifySelection,
2530 supportedFromMenuOrKeyBinding, enabledVisibleSelection, stateNone, 2551 supportedFromMenuOrKeyBinding, enabledVisibleSelection, stateNone,
2531 valueNull, notTextInsertion, doNotAllowExecutionWhenDisabled}, 2552 valueStateOrNull, notTextInsertion, doNotAllowExecutionWhenDisabled},
2532 {WebEditingCommandType::MoveToEndOfLine, executeMoveToEndOfLine, 2553 {WebEditingCommandType::MoveToEndOfLine, executeMoveToEndOfLine,
2533 supportedFromMenuOrKeyBinding, enabledInEditableText, stateNone, 2554 supportedFromMenuOrKeyBinding, enabledInEditableText, stateNone,
2534 valueNull, notTextInsertion, doNotAllowExecutionWhenDisabled}, 2555 valueStateOrNull, notTextInsertion, doNotAllowExecutionWhenDisabled},
2535 {WebEditingCommandType::MoveToEndOfLineAndModifySelection, 2556 {WebEditingCommandType::MoveToEndOfLineAndModifySelection,
2536 executeMoveToEndOfLineAndModifySelection, supportedFromMenuOrKeyBinding, 2557 executeMoveToEndOfLineAndModifySelection, supportedFromMenuOrKeyBinding,
2537 enabledVisibleSelection, stateNone, valueNull, notTextInsertion, 2558 enabledVisibleSelection, stateNone, valueStateOrNull, notTextInsertion,
2538 doNotAllowExecutionWhenDisabled}, 2559 doNotAllowExecutionWhenDisabled},
2539 {WebEditingCommandType::MoveToEndOfParagraph, executeMoveToEndOfParagraph, 2560 {WebEditingCommandType::MoveToEndOfParagraph, executeMoveToEndOfParagraph,
2540 supportedFromMenuOrKeyBinding, enabledInEditableText, stateNone, 2561 supportedFromMenuOrKeyBinding, enabledInEditableText, stateNone,
2541 valueNull, notTextInsertion, doNotAllowExecutionWhenDisabled}, 2562 valueStateOrNull, notTextInsertion, doNotAllowExecutionWhenDisabled},
2542 {WebEditingCommandType::MoveToEndOfParagraphAndModifySelection, 2563 {WebEditingCommandType::MoveToEndOfParagraphAndModifySelection,
2543 executeMoveToEndOfParagraphAndModifySelection, 2564 executeMoveToEndOfParagraphAndModifySelection,
2544 supportedFromMenuOrKeyBinding, enabledVisibleSelection, stateNone, 2565 supportedFromMenuOrKeyBinding, enabledVisibleSelection, stateNone,
2545 valueNull, notTextInsertion, doNotAllowExecutionWhenDisabled}, 2566 valueStateOrNull, notTextInsertion, doNotAllowExecutionWhenDisabled},
2546 {WebEditingCommandType::MoveToEndOfSentence, executeMoveToEndOfSentence, 2567 {WebEditingCommandType::MoveToEndOfSentence, executeMoveToEndOfSentence,
2547 supportedFromMenuOrKeyBinding, enabledInEditableText, stateNone, 2568 supportedFromMenuOrKeyBinding, enabledInEditableText, stateNone,
2548 valueNull, notTextInsertion, doNotAllowExecutionWhenDisabled}, 2569 valueStateOrNull, notTextInsertion, doNotAllowExecutionWhenDisabled},
2549 {WebEditingCommandType::MoveToEndOfSentenceAndModifySelection, 2570 {WebEditingCommandType::MoveToEndOfSentenceAndModifySelection,
2550 executeMoveToEndOfSentenceAndModifySelection, 2571 executeMoveToEndOfSentenceAndModifySelection,
2551 supportedFromMenuOrKeyBinding, enabledVisibleSelection, stateNone, 2572 supportedFromMenuOrKeyBinding, enabledVisibleSelection, stateNone,
2552 valueNull, notTextInsertion, doNotAllowExecutionWhenDisabled}, 2573 valueStateOrNull, notTextInsertion, doNotAllowExecutionWhenDisabled},
2553 {WebEditingCommandType::MoveToLeftEndOfLine, executeMoveToLeftEndOfLine, 2574 {WebEditingCommandType::MoveToLeftEndOfLine, executeMoveToLeftEndOfLine,
2554 supportedFromMenuOrKeyBinding, enabledInEditableText, stateNone, 2575 supportedFromMenuOrKeyBinding, enabledInEditableText, stateNone,
2555 valueNull, notTextInsertion, doNotAllowExecutionWhenDisabled}, 2576 valueStateOrNull, notTextInsertion, doNotAllowExecutionWhenDisabled},
2556 {WebEditingCommandType::MoveToLeftEndOfLineAndModifySelection, 2577 {WebEditingCommandType::MoveToLeftEndOfLineAndModifySelection,
2557 executeMoveToLeftEndOfLineAndModifySelection, 2578 executeMoveToLeftEndOfLineAndModifySelection,
2558 supportedFromMenuOrKeyBinding, enabledInEditableText, stateNone, 2579 supportedFromMenuOrKeyBinding, enabledInEditableText, stateNone,
2559 valueNull, notTextInsertion, doNotAllowExecutionWhenDisabled}, 2580 valueStateOrNull, notTextInsertion, doNotAllowExecutionWhenDisabled},
2560 {WebEditingCommandType::MoveToRightEndOfLine, executeMoveToRightEndOfLine, 2581 {WebEditingCommandType::MoveToRightEndOfLine, executeMoveToRightEndOfLine,
2561 supportedFromMenuOrKeyBinding, enabledInEditableText, stateNone, 2582 supportedFromMenuOrKeyBinding, enabledInEditableText, stateNone,
2562 valueNull, notTextInsertion, doNotAllowExecutionWhenDisabled}, 2583 valueStateOrNull, notTextInsertion, doNotAllowExecutionWhenDisabled},
2563 {WebEditingCommandType::MoveToRightEndOfLineAndModifySelection, 2584 {WebEditingCommandType::MoveToRightEndOfLineAndModifySelection,
2564 executeMoveToRightEndOfLineAndModifySelection, 2585 executeMoveToRightEndOfLineAndModifySelection,
2565 supportedFromMenuOrKeyBinding, enabledInEditableText, stateNone, 2586 supportedFromMenuOrKeyBinding, enabledInEditableText, stateNone,
2566 valueNull, notTextInsertion, doNotAllowExecutionWhenDisabled}, 2587 valueStateOrNull, notTextInsertion, doNotAllowExecutionWhenDisabled},
2567 {WebEditingCommandType::MoveUp, executeMoveUp, 2588 {WebEditingCommandType::MoveUp, executeMoveUp,
2568 supportedFromMenuOrKeyBinding, enabledInEditableText, stateNone, 2589 supportedFromMenuOrKeyBinding, enabledInEditableText, stateNone,
2569 valueNull, notTextInsertion, doNotAllowExecutionWhenDisabled}, 2590 valueStateOrNull, notTextInsertion, doNotAllowExecutionWhenDisabled},
2570 {WebEditingCommandType::MoveUpAndModifySelection, 2591 {WebEditingCommandType::MoveUpAndModifySelection,
2571 executeMoveUpAndModifySelection, supportedFromMenuOrKeyBinding, 2592 executeMoveUpAndModifySelection, supportedFromMenuOrKeyBinding,
2572 enabledVisibleSelection, stateNone, valueNull, notTextInsertion, 2593 enabledVisibleSelection, stateNone, valueStateOrNull, notTextInsertion,
2573 doNotAllowExecutionWhenDisabled}, 2594 doNotAllowExecutionWhenDisabled},
2574 {WebEditingCommandType::MoveWordBackward, executeMoveWordBackward, 2595 {WebEditingCommandType::MoveWordBackward, executeMoveWordBackward,
2575 supportedFromMenuOrKeyBinding, enabledInEditableText, stateNone, 2596 supportedFromMenuOrKeyBinding, enabledInEditableText, stateNone,
2576 valueNull, notTextInsertion, doNotAllowExecutionWhenDisabled}, 2597 valueStateOrNull, notTextInsertion, doNotAllowExecutionWhenDisabled},
2577 {WebEditingCommandType::MoveWordBackwardAndModifySelection, 2598 {WebEditingCommandType::MoveWordBackwardAndModifySelection,
2578 executeMoveWordBackwardAndModifySelection, supportedFromMenuOrKeyBinding, 2599 executeMoveWordBackwardAndModifySelection, supportedFromMenuOrKeyBinding,
2579 enabledVisibleSelection, stateNone, valueNull, notTextInsertion, 2600 enabledVisibleSelection, stateNone, valueStateOrNull, notTextInsertion,
2580 doNotAllowExecutionWhenDisabled}, 2601 doNotAllowExecutionWhenDisabled},
2581 {WebEditingCommandType::MoveWordForward, executeMoveWordForward, 2602 {WebEditingCommandType::MoveWordForward, executeMoveWordForward,
2582 supportedFromMenuOrKeyBinding, enabledInEditableText, stateNone, 2603 supportedFromMenuOrKeyBinding, enabledInEditableText, stateNone,
2583 valueNull, notTextInsertion, doNotAllowExecutionWhenDisabled}, 2604 valueStateOrNull, notTextInsertion, doNotAllowExecutionWhenDisabled},
2584 {WebEditingCommandType::MoveWordForwardAndModifySelection, 2605 {WebEditingCommandType::MoveWordForwardAndModifySelection,
2585 executeMoveWordForwardAndModifySelection, supportedFromMenuOrKeyBinding, 2606 executeMoveWordForwardAndModifySelection, supportedFromMenuOrKeyBinding,
2586 enabledVisibleSelection, stateNone, valueNull, notTextInsertion, 2607 enabledVisibleSelection, stateNone, valueStateOrNull, notTextInsertion,
2587 doNotAllowExecutionWhenDisabled}, 2608 doNotAllowExecutionWhenDisabled},
2588 {WebEditingCommandType::MoveWordLeft, executeMoveWordLeft, 2609 {WebEditingCommandType::MoveWordLeft, executeMoveWordLeft,
2589 supportedFromMenuOrKeyBinding, enabledInEditableText, stateNone, 2610 supportedFromMenuOrKeyBinding, enabledInEditableText, stateNone,
2590 valueNull, notTextInsertion, doNotAllowExecutionWhenDisabled}, 2611 valueStateOrNull, notTextInsertion, doNotAllowExecutionWhenDisabled},
2591 {WebEditingCommandType::MoveWordLeftAndModifySelection, 2612 {WebEditingCommandType::MoveWordLeftAndModifySelection,
2592 executeMoveWordLeftAndModifySelection, supportedFromMenuOrKeyBinding, 2613 executeMoveWordLeftAndModifySelection, supportedFromMenuOrKeyBinding,
2593 enabledVisibleSelection, stateNone, valueNull, notTextInsertion, 2614 enabledVisibleSelection, stateNone, valueStateOrNull, notTextInsertion,
2594 doNotAllowExecutionWhenDisabled}, 2615 doNotAllowExecutionWhenDisabled},
2595 {WebEditingCommandType::MoveWordRight, executeMoveWordRight, 2616 {WebEditingCommandType::MoveWordRight, executeMoveWordRight,
2596 supportedFromMenuOrKeyBinding, enabledInEditableText, stateNone, 2617 supportedFromMenuOrKeyBinding, enabledInEditableText, stateNone,
2597 valueNull, notTextInsertion, doNotAllowExecutionWhenDisabled}, 2618 valueStateOrNull, notTextInsertion, doNotAllowExecutionWhenDisabled},
2598 {WebEditingCommandType::MoveWordRightAndModifySelection, 2619 {WebEditingCommandType::MoveWordRightAndModifySelection,
2599 executeMoveWordRightAndModifySelection, supportedFromMenuOrKeyBinding, 2620 executeMoveWordRightAndModifySelection, supportedFromMenuOrKeyBinding,
2600 enabledVisibleSelection, stateNone, valueNull, notTextInsertion, 2621 enabledVisibleSelection, stateNone, valueStateOrNull, notTextInsertion,
2601 doNotAllowExecutionWhenDisabled}, 2622 doNotAllowExecutionWhenDisabled},
2602 {WebEditingCommandType::Outdent, executeOutdent, supported, 2623 {WebEditingCommandType::Outdent, executeOutdent, supported,
2603 enabledInRichlyEditableText, stateNone, valueNull, notTextInsertion, 2624 enabledInRichlyEditableText, stateNone, valueStateOrNull,
2604 doNotAllowExecutionWhenDisabled}, 2625 notTextInsertion, doNotAllowExecutionWhenDisabled},
2605 {WebEditingCommandType::OverWrite, executeToggleOverwrite, 2626 {WebEditingCommandType::OverWrite, executeToggleOverwrite,
2606 supportedFromMenuOrKeyBinding, enabledInRichlyEditableText, stateNone, 2627 supportedFromMenuOrKeyBinding, enabledInRichlyEditableText, stateNone,
2607 valueNull, notTextInsertion, doNotAllowExecutionWhenDisabled}, 2628 valueStateOrNull, notTextInsertion, doNotAllowExecutionWhenDisabled},
2608 {WebEditingCommandType::Paste, executePaste, supported, enabledPaste, 2629 {WebEditingCommandType::Paste, executePaste, supported, enabledPaste,
2609 stateNone, valueNull, notTextInsertion, allowExecutionWhenDisabled}, 2630 stateNone, valueStateOrNull, notTextInsertion,
2631 allowExecutionWhenDisabled},
2610 {WebEditingCommandType::PasteAndMatchStyle, executePasteAndMatchStyle, 2632 {WebEditingCommandType::PasteAndMatchStyle, executePasteAndMatchStyle,
2611 supported, enabledPaste, stateNone, valueNull, notTextInsertion, 2633 supported, enabledPaste, stateNone, valueStateOrNull, notTextInsertion,
2612 allowExecutionWhenDisabled}, 2634 allowExecutionWhenDisabled},
2613 {WebEditingCommandType::PasteGlobalSelection, executePasteGlobalSelection, 2635 {WebEditingCommandType::PasteGlobalSelection, executePasteGlobalSelection,
2614 supportedFromMenuOrKeyBinding, enabledPaste, stateNone, valueNull, 2636 supportedFromMenuOrKeyBinding, enabledPaste, stateNone, valueStateOrNull,
2615 notTextInsertion, allowExecutionWhenDisabled}, 2637 notTextInsertion, allowExecutionWhenDisabled},
2616 {WebEditingCommandType::Print, executePrint, supported, enabled, 2638 {WebEditingCommandType::Print, executePrint, supported, enabled,
2617 stateNone, valueNull, notTextInsertion, doNotAllowExecutionWhenDisabled}, 2639 stateNone, valueStateOrNull, notTextInsertion,
2640 doNotAllowExecutionWhenDisabled},
2618 {WebEditingCommandType::Redo, executeRedo, supported, enabledRedo, 2641 {WebEditingCommandType::Redo, executeRedo, supported, enabledRedo,
2619 stateNone, valueNull, notTextInsertion, doNotAllowExecutionWhenDisabled}, 2642 stateNone, valueStateOrNull, notTextInsertion,
2643 doNotAllowExecutionWhenDisabled},
2620 {WebEditingCommandType::RemoveFormat, executeRemoveFormat, supported, 2644 {WebEditingCommandType::RemoveFormat, executeRemoveFormat, supported,
2621 enabledRangeInEditableText, stateNone, valueNull, notTextInsertion, 2645 enabledRangeInEditableText, stateNone, valueStateOrNull,
2622 doNotAllowExecutionWhenDisabled}, 2646 notTextInsertion, doNotAllowExecutionWhenDisabled},
2623 {WebEditingCommandType::ScrollPageBackward, executeScrollPageBackward, 2647 {WebEditingCommandType::ScrollPageBackward, executeScrollPageBackward,
2624 supportedFromMenuOrKeyBinding, enabled, stateNone, valueNull, 2648 supportedFromMenuOrKeyBinding, enabled, stateNone, valueStateOrNull,
2625 notTextInsertion, doNotAllowExecutionWhenDisabled}, 2649 notTextInsertion, doNotAllowExecutionWhenDisabled},
2626 {WebEditingCommandType::ScrollPageForward, executeScrollPageForward, 2650 {WebEditingCommandType::ScrollPageForward, executeScrollPageForward,
2627 supportedFromMenuOrKeyBinding, enabled, stateNone, valueNull, 2651 supportedFromMenuOrKeyBinding, enabled, stateNone, valueStateOrNull,
2628 notTextInsertion, doNotAllowExecutionWhenDisabled}, 2652 notTextInsertion, doNotAllowExecutionWhenDisabled},
2629 {WebEditingCommandType::ScrollLineUp, executeScrollLineUp, 2653 {WebEditingCommandType::ScrollLineUp, executeScrollLineUp,
2630 supportedFromMenuOrKeyBinding, enabled, stateNone, valueNull, 2654 supportedFromMenuOrKeyBinding, enabled, stateNone, valueStateOrNull,
2631 notTextInsertion, doNotAllowExecutionWhenDisabled}, 2655 notTextInsertion, doNotAllowExecutionWhenDisabled},
2632 {WebEditingCommandType::ScrollLineDown, executeScrollLineDown, 2656 {WebEditingCommandType::ScrollLineDown, executeScrollLineDown,
2633 supportedFromMenuOrKeyBinding, enabled, stateNone, valueNull, 2657 supportedFromMenuOrKeyBinding, enabled, stateNone, valueStateOrNull,
2634 notTextInsertion, doNotAllowExecutionWhenDisabled}, 2658 notTextInsertion, doNotAllowExecutionWhenDisabled},
2635 {WebEditingCommandType::ScrollToBeginningOfDocument, 2659 {WebEditingCommandType::ScrollToBeginningOfDocument,
2636 executeScrollToBeginningOfDocument, supportedFromMenuOrKeyBinding, 2660 executeScrollToBeginningOfDocument, supportedFromMenuOrKeyBinding,
2637 enabled, stateNone, valueNull, notTextInsertion, 2661 enabled, stateNone, valueStateOrNull, notTextInsertion,
2638 doNotAllowExecutionWhenDisabled}, 2662 doNotAllowExecutionWhenDisabled},
2639 {WebEditingCommandType::ScrollToEndOfDocument, 2663 {WebEditingCommandType::ScrollToEndOfDocument,
2640 executeScrollToEndOfDocument, supportedFromMenuOrKeyBinding, enabled, 2664 executeScrollToEndOfDocument, supportedFromMenuOrKeyBinding, enabled,
2641 stateNone, valueNull, notTextInsertion, doNotAllowExecutionWhenDisabled}, 2665 stateNone, valueStateOrNull, notTextInsertion,
2666 doNotAllowExecutionWhenDisabled},
2642 {WebEditingCommandType::SelectAll, executeSelectAll, supported, 2667 {WebEditingCommandType::SelectAll, executeSelectAll, supported,
2643 enabledSelectAll, stateNone, valueNull, notTextInsertion, 2668 enabledSelectAll, stateNone, valueStateOrNull, notTextInsertion,
2644 doNotAllowExecutionWhenDisabled}, 2669 doNotAllowExecutionWhenDisabled},
2645 {WebEditingCommandType::SelectLine, executeSelectLine, 2670 {WebEditingCommandType::SelectLine, executeSelectLine,
2646 supportedFromMenuOrKeyBinding, enabledVisibleSelection, stateNone, 2671 supportedFromMenuOrKeyBinding, enabledVisibleSelection, stateNone,
2647 valueNull, notTextInsertion, doNotAllowExecutionWhenDisabled}, 2672 valueStateOrNull, notTextInsertion, doNotAllowExecutionWhenDisabled},
2648 {WebEditingCommandType::SelectParagraph, executeSelectParagraph, 2673 {WebEditingCommandType::SelectParagraph, executeSelectParagraph,
2649 supportedFromMenuOrKeyBinding, enabledVisibleSelection, stateNone, 2674 supportedFromMenuOrKeyBinding, enabledVisibleSelection, stateNone,
2650 valueNull, notTextInsertion, doNotAllowExecutionWhenDisabled}, 2675 valueStateOrNull, notTextInsertion, doNotAllowExecutionWhenDisabled},
2651 {WebEditingCommandType::SelectSentence, executeSelectSentence, 2676 {WebEditingCommandType::SelectSentence, executeSelectSentence,
2652 supportedFromMenuOrKeyBinding, enabledVisibleSelection, stateNone, 2677 supportedFromMenuOrKeyBinding, enabledVisibleSelection, stateNone,
2653 valueNull, notTextInsertion, doNotAllowExecutionWhenDisabled}, 2678 valueStateOrNull, notTextInsertion, doNotAllowExecutionWhenDisabled},
2654 {WebEditingCommandType::SelectToMark, executeSelectToMark, 2679 {WebEditingCommandType::SelectToMark, executeSelectToMark,
2655 supportedFromMenuOrKeyBinding, enabledVisibleSelectionAndMark, stateNone, 2680 supportedFromMenuOrKeyBinding, enabledVisibleSelectionAndMark, stateNone,
2656 valueNull, notTextInsertion, doNotAllowExecutionWhenDisabled}, 2681 valueStateOrNull, notTextInsertion, doNotAllowExecutionWhenDisabled},
2657 {WebEditingCommandType::SelectWord, executeSelectWord, 2682 {WebEditingCommandType::SelectWord, executeSelectWord,
2658 supportedFromMenuOrKeyBinding, enabledVisibleSelection, stateNone, 2683 supportedFromMenuOrKeyBinding, enabledVisibleSelection, stateNone,
2659 valueNull, notTextInsertion, doNotAllowExecutionWhenDisabled}, 2684 valueStateOrNull, notTextInsertion, doNotAllowExecutionWhenDisabled},
2660 {WebEditingCommandType::SetMark, executeSetMark, 2685 {WebEditingCommandType::SetMark, executeSetMark,
2661 supportedFromMenuOrKeyBinding, enabledVisibleSelection, stateNone, 2686 supportedFromMenuOrKeyBinding, enabledVisibleSelection, stateNone,
2662 valueNull, notTextInsertion, doNotAllowExecutionWhenDisabled}, 2687 valueStateOrNull, notTextInsertion, doNotAllowExecutionWhenDisabled},
2663 {WebEditingCommandType::Strikethrough, executeStrikethrough, supported, 2688 {WebEditingCommandType::Strikethrough, executeStrikethrough, supported,
2664 enabledInRichlyEditableText, stateStrikethrough, valueNull, 2689 enabledInRichlyEditableText, stateStrikethrough, valueStateOrNull,
2665 notTextInsertion, doNotAllowExecutionWhenDisabled}, 2690 notTextInsertion, doNotAllowExecutionWhenDisabled},
2666 {WebEditingCommandType::StyleWithCSS, executeStyleWithCSS, supported, 2691 {WebEditingCommandType::StyleWithCSS, executeStyleWithCSS, supported,
2667 enabled, stateStyleWithCSS, valueNo, notTextInsertion, 2692 enabled, stateStyleWithCSS, valueEmpty, notTextInsertion,
2668 doNotAllowExecutionWhenDisabled}, 2693 doNotAllowExecutionWhenDisabled},
2669 {WebEditingCommandType::Subscript, executeSubscript, supported, 2694 {WebEditingCommandType::Subscript, executeSubscript, supported,
2670 enabledInRichlyEditableText, stateSubscript, valueNull, notTextInsertion, 2695 enabledInRichlyEditableText, stateSubscript, valueStateOrNull,
2671 doNotAllowExecutionWhenDisabled}, 2696 notTextInsertion, doNotAllowExecutionWhenDisabled},
2672 {WebEditingCommandType::Superscript, executeSuperscript, supported, 2697 {WebEditingCommandType::Superscript, executeSuperscript, supported,
2673 enabledInRichlyEditableText, stateSuperscript, valueNull, 2698 enabledInRichlyEditableText, stateSuperscript, valueStateOrNull,
2674 notTextInsertion, doNotAllowExecutionWhenDisabled}, 2699 notTextInsertion, doNotAllowExecutionWhenDisabled},
2675 {WebEditingCommandType::SwapWithMark, executeSwapWithMark, 2700 {WebEditingCommandType::SwapWithMark, executeSwapWithMark,
2676 supportedFromMenuOrKeyBinding, enabledVisibleSelectionAndMark, stateNone, 2701 supportedFromMenuOrKeyBinding, enabledVisibleSelectionAndMark, stateNone,
2677 valueNull, notTextInsertion, doNotAllowExecutionWhenDisabled}, 2702 valueStateOrNull, notTextInsertion, doNotAllowExecutionWhenDisabled},
2678 {WebEditingCommandType::ToggleBold, executeToggleBold, 2703 {WebEditingCommandType::ToggleBold, executeToggleBold,
2679 supportedFromMenuOrKeyBinding, enabledInRichlyEditableText, stateBold, 2704 supportedFromMenuOrKeyBinding, enabledInRichlyEditableText, stateBold,
2680 valueNull, notTextInsertion, doNotAllowExecutionWhenDisabled}, 2705 valueStateOrNull, notTextInsertion, doNotAllowExecutionWhenDisabled},
2681 {WebEditingCommandType::ToggleItalic, executeToggleItalic, 2706 {WebEditingCommandType::ToggleItalic, executeToggleItalic,
2682 supportedFromMenuOrKeyBinding, enabledInRichlyEditableText, stateItalic, 2707 supportedFromMenuOrKeyBinding, enabledInRichlyEditableText, stateItalic,
2683 valueNull, notTextInsertion, doNotAllowExecutionWhenDisabled}, 2708 valueStateOrNull, notTextInsertion, doNotAllowExecutionWhenDisabled},
2684 {WebEditingCommandType::ToggleUnderline, executeUnderline, 2709 {WebEditingCommandType::ToggleUnderline, executeUnderline,
2685 supportedFromMenuOrKeyBinding, enabledInRichlyEditableText, 2710 supportedFromMenuOrKeyBinding, enabledInRichlyEditableText,
2686 stateUnderline, valueNull, notTextInsertion, 2711 stateUnderline, valueStateOrNull, notTextInsertion,
2687 doNotAllowExecutionWhenDisabled}, 2712 doNotAllowExecutionWhenDisabled},
2688 {WebEditingCommandType::Transpose, executeTranspose, supported, 2713 {WebEditingCommandType::Transpose, executeTranspose, supported,
2689 enableCaretInEditableText, stateNone, valueNull, notTextInsertion, 2714 enableCaretInEditableText, stateNone, valueStateOrNull, notTextInsertion,
2690 doNotAllowExecutionWhenDisabled}, 2715 doNotAllowExecutionWhenDisabled},
2691 {WebEditingCommandType::Underline, executeUnderline, supported, 2716 {WebEditingCommandType::Underline, executeUnderline, supported,
2692 enabledInRichlyEditableText, stateUnderline, valueNull, notTextInsertion, 2717 enabledInRichlyEditableText, stateUnderline, valueStateOrNull,
2693 doNotAllowExecutionWhenDisabled}, 2718 notTextInsertion, doNotAllowExecutionWhenDisabled},
2694 {WebEditingCommandType::Undo, executeUndo, supported, enabledUndo, 2719 {WebEditingCommandType::Undo, executeUndo, supported, enabledUndo,
2695 stateNone, valueNull, notTextInsertion, doNotAllowExecutionWhenDisabled}, 2720 stateNone, valueStateOrNull, notTextInsertion,
2721 doNotAllowExecutionWhenDisabled},
2696 {WebEditingCommandType::Unlink, executeUnlink, supported, 2722 {WebEditingCommandType::Unlink, executeUnlink, supported,
2697 enabledRangeInRichlyEditableText, stateNone, valueNull, notTextInsertion, 2723 enabledRangeInRichlyEditableText, stateNone, valueStateOrNull,
2698 doNotAllowExecutionWhenDisabled}, 2724 notTextInsertion, doNotAllowExecutionWhenDisabled},
2699 {WebEditingCommandType::Unscript, executeUnscript, 2725 {WebEditingCommandType::Unscript, executeUnscript,
2700 supportedFromMenuOrKeyBinding, enabledInRichlyEditableText, stateNone, 2726 supportedFromMenuOrKeyBinding, enabledInRichlyEditableText, stateNone,
2701 valueNull, notTextInsertion, doNotAllowExecutionWhenDisabled}, 2727 valueStateOrNull, notTextInsertion, doNotAllowExecutionWhenDisabled},
2702 {WebEditingCommandType::Unselect, executeUnselect, supported, 2728 {WebEditingCommandType::Unselect, executeUnselect, supported,
2703 enabledVisibleSelection, stateNone, valueNull, notTextInsertion, 2729 enabledVisibleSelection, stateNone, valueStateOrNull, notTextInsertion,
2704 doNotAllowExecutionWhenDisabled}, 2730 doNotAllowExecutionWhenDisabled},
2705 {WebEditingCommandType::UseCSS, executeUseCSS, supported, enabled, 2731 {WebEditingCommandType::UseCSS, executeUseCSS, supported, enabled,
2706 stateNone, valueNull, notTextInsertion, doNotAllowExecutionWhenDisabled}, 2732 stateNone, valueStateOrNull, notTextInsertion,
2733 doNotAllowExecutionWhenDisabled},
2707 {WebEditingCommandType::Yank, executeYank, supportedFromMenuOrKeyBinding, 2734 {WebEditingCommandType::Yank, executeYank, supportedFromMenuOrKeyBinding,
2708 enabledInEditableText, stateNone, valueNull, notTextInsertion, 2735 enabledInEditableText, stateNone, valueStateOrNull, notTextInsertion,
2709 doNotAllowExecutionWhenDisabled}, 2736 doNotAllowExecutionWhenDisabled},
2710 {WebEditingCommandType::YankAndSelect, executeYankAndSelect, 2737 {WebEditingCommandType::YankAndSelect, executeYankAndSelect,
2711 supportedFromMenuOrKeyBinding, enabledInEditableText, stateNone, 2738 supportedFromMenuOrKeyBinding, enabledInEditableText, stateNone,
2712 valueNull, notTextInsertion, doNotAllowExecutionWhenDisabled}, 2739 valueStateOrNull, notTextInsertion, doNotAllowExecutionWhenDisabled},
2713 {WebEditingCommandType::AlignCenter, executeJustifyCenter, 2740 {WebEditingCommandType::AlignCenter, executeJustifyCenter,
2714 supportedFromMenuOrKeyBinding, enabledInRichlyEditableText, stateNone, 2741 supportedFromMenuOrKeyBinding, enabledInRichlyEditableText, stateNone,
2715 valueNull, notTextInsertion, doNotAllowExecutionWhenDisabled}, 2742 valueStateOrNull, notTextInsertion, doNotAllowExecutionWhenDisabled},
2716 }; 2743 };
2717 // Handles all commands except WebEditingCommandType::Invalid. 2744 // Handles all commands except WebEditingCommandType::Invalid.
2718 static_assert( 2745 static_assert(
2719 arraysize(kEditorCommands) + 1 == 2746 arraysize(kEditorCommands) + 1 ==
2720 static_cast<size_t>(WebEditingCommandType::NumberOfCommandTypes), 2747 static_cast<size_t>(WebEditingCommandType::NumberOfCommandTypes),
2721 "must handle all valid WebEditingCommandType"); 2748 "must handle all valid WebEditingCommandType");
2722 2749
2723 WebEditingCommandType commandType = 2750 WebEditingCommandType commandType =
2724 WebEditingCommandTypeFromCommandName(commandName); 2751 WebEditingCommandTypeFromCommandName(commandName);
2725 if (commandType == WebEditingCommandType::Invalid) 2752 if (commandType == WebEditingCommandType::Invalid)
(...skipping 147 matching lines...) Expand 10 before | Expand all | Expand 10 after
2873 2900
2874 TriState Editor::Command::state(Event* triggeringEvent) const { 2901 TriState Editor::Command::state(Event* triggeringEvent) const {
2875 if (!isSupported() || !m_frame) 2902 if (!isSupported() || !m_frame)
2876 return FalseTriState; 2903 return FalseTriState;
2877 return m_command->state(*m_frame, triggeringEvent); 2904 return m_command->state(*m_frame, triggeringEvent);
2878 } 2905 }
2879 2906
2880 String Editor::Command::value(Event* triggeringEvent) const { 2907 String Editor::Command::value(Event* triggeringEvent) const {
2881 if (!isSupported() || !m_frame) 2908 if (!isSupported() || !m_frame)
2882 return String(); 2909 return String();
2883 if (m_command->value == valueNull && m_command->state != stateNone) 2910 return m_command->value(*m_command, *m_frame, triggeringEvent);
2884 return m_command->state(*m_frame, triggeringEvent) == TrueTriState
2885 ? "true"
2886 : "false";
2887 return m_command->value(*m_frame, triggeringEvent);
2888 } 2911 }
2889 2912
2890 bool Editor::Command::isTextInsertion() const { 2913 bool Editor::Command::isTextInsertion() const {
2891 return m_command && m_command->isTextInsertion; 2914 return m_command && m_command->isTextInsertion;
2892 } 2915 }
2893 2916
2894 int Editor::Command::idForHistogram() const { 2917 int Editor::Command::idForHistogram() const {
2895 return isSupported() ? static_cast<int>(m_command->commandType) : 0; 2918 return isSupported() ? static_cast<int>(m_command->commandType) : 0;
2896 } 2919 }
2897 2920
(...skipping 27 matching lines...) Expand all
2925 *m_frame, DirectionBackward, WordGranularity); 2948 *m_frame, DirectionBackward, WordGranularity);
2926 case WebEditingCommandType::DeleteWordForward: 2949 case WebEditingCommandType::DeleteWordForward:
2927 return RangesFromCurrentSelectionOrExtendCaret(*m_frame, DirectionForward, 2950 return RangesFromCurrentSelectionOrExtendCaret(*m_frame, DirectionForward,
2928 WordGranularity); 2951 WordGranularity);
2929 default: 2952 default:
2930 return targetRangesForInputEvent(*target); 2953 return targetRangesForInputEvent(*target);
2931 } 2954 }
2932 } 2955 }
2933 2956
2934 } // namespace blink 2957 } // namespace blink
OLDNEW
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698