RESOLVED FIXED87908
Add UNDO_MANAGER build flag
https://bugs.webkit.org/show_bug.cgi?id=87908
Summary Add UNDO_MANAGER build flag
Sukolsak Sakshuwong
Reported 2012-05-30 16:06:28 PDT
Add UNDO_MANAGER flag
Attachments
Patch (57.76 KB, patch)
2012-05-30 18:34 PDT, Sukolsak Sakshuwong
no flags
Patch (57.66 KB, patch)
2012-05-31 14:11 PDT, Sukolsak Sakshuwong
no flags
Patch (62.29 KB, patch)
2012-05-31 14:48 PDT, Sukolsak Sakshuwong
no flags
Patch (62.92 KB, patch)
2012-06-04 14:55 PDT, Sukolsak Sakshuwong
no flags
Patch (62.92 KB, patch)
2012-06-04 15:01 PDT, Sukolsak Sakshuwong
no flags
Patch (64.31 KB, patch)
2012-06-04 16:30 PDT, Sukolsak Sakshuwong
no flags
Patch (62.02 KB, patch)
2012-06-05 14:01 PDT, Sukolsak Sakshuwong
no flags
Patch (62.47 KB, patch)
2012-06-05 14:55 PDT, Sukolsak Sakshuwong
no flags
Patch (57.79 KB, patch)
2012-06-05 15:13 PDT, Sukolsak Sakshuwong
no flags
Patch (58.55 KB, patch)
2012-06-08 10:11 PDT, Sukolsak Sakshuwong
no flags
Patch for landing (58.58 KB, patch)
2012-06-08 14:49 PDT, Sukolsak Sakshuwong
no flags
Sukolsak Sakshuwong
Comment 1 2012-05-30 18:34:26 PDT
Ryosuke Niwa
Comment 2 2012-05-30 19:22:10 PDT
(In reply to comment #1) > Created an attachment (id=144968) [details] > Patch You need to update your checkout and resolve the conflicts.
Sukolsak Sakshuwong
Comment 3 2012-05-31 14:11:46 PDT
Sukolsak Sakshuwong
Comment 4 2012-05-31 14:48:54 PDT
Ryosuke Niwa
Comment 5 2012-05-31 17:19:26 PDT
Reviewers: I can't review this patch because much of the change is based on a git-diff I gave to Sukolsak.
Hajime Morrita
Comment 6 2012-05-31 17:32:44 PDT
Maybe you can add a RuntimeEnabledFeatures flag then the feature can be enabled only for the tests.
Ryosuke Niwa
Comment 7 2012-05-31 17:54:15 PDT
(In reply to comment #6) > Maybe you can add a RuntimeEnabledFeatures flag then the feature can be enabled only for the tests. That's a good idea. Maybe in the next iteration?
Hajime Morrita
Comment 8 2012-05-31 18:02:20 PDT
(In reply to comment #7) > (In reply to comment #6) > > Maybe you can add a RuntimeEnabledFeatures flag then the feature can be enabled only for the tests. > > That's a good idea. Maybe in the next iteration? Yeah, that will work.
Sukolsak Sakshuwong
Comment 9 2012-06-04 14:55:58 PDT
Sukolsak Sakshuwong
Comment 10 2012-06-04 15:01:21 PDT
Martin Robinson
Comment 11 2012-06-04 15:03:13 PDT
Zan has been working closely with our build flags lately. I'd like him to double-check this patch.
Raphael Kubo da Costa (:rakuco)
Comment 12 2012-06-04 15:25:02 PDT
Comment on attachment 145635 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=145635&action=review It looks like you haven't added the new files to the CMake build system at all, have you? > Source/cmake/WebKitFeatures.cmake:90 > + WEBKIT_OPTION_DEFINE(ENABLE_UNDO_MANAGER "Toggle Undo Manager support" OFF) You also need to add a define to Source/cmakeconfig.h.cmake. > LayoutTests/platform/efl/Skipped:808 > +# UndoManager is not yet enabled. > +editing/undomanager I'd appreciate it if you could add this to TestExpectations instead (we're progressively moving away from Skipped).
Sukolsak Sakshuwong
Comment 13 2012-06-04 16:30:27 PDT
Raphael Kubo da Costa (:rakuco)
Comment 14 2012-06-04 17:05:35 PDT
Thanks for the quick CMake fixes!
Gyuyoung Kim
Comment 15 2012-06-04 18:06:32 PDT
Comment on attachment 145651 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=145651&action=review > Source/WebCore/editing/UndoManager.idl:39 > +// getter Object[] item(in unsigned long index); If these attributes are not supported yet, in my opinion, it is better to remove these.
Zan Dobersek
Comment 16 2012-06-05 01:14:47 PDT
Comment on attachment 145651 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=145651&action=review > configure.ac:1521 > + Undo manager support : $enable_undo_manager Please modify the patch to not include any changes to configure.ac. The new feature enabling policy for the Gtk port intends to enable features that do not introduce external dependencies by default in WebCore when the feature is well-supported and stable. > Source/WebCore/GNUmakefile.am:294 > +# Undo manager support No need for this at this moment as the feature won't be enabled yet on the Gtk port. > Source/WebCore/GNUmakefile.list.am:6112 > +if ENABLE_UNDO_MANAGER Please move these files into general build lists. Despite the feature being disabled, in future the Gtk port would want all the files to be included in the build, regardless of the feature status. Also, this would cause an error as the ENABLE_UNDO_MANAGER macro would not be present.
Sukolsak Sakshuwong
Comment 17 2012-06-05 14:01:48 PDT
Gustavo Noronha (kov)
Comment 18 2012-06-05 14:10:46 PDT
Martin Robinson
Comment 19 2012-06-05 14:31:14 PDT
About the GTK+ build error. This is a list of directories that contain IDLs in Source/WebCore/GNUmakefile.am (search for "IDL_PATH" in the file). It seems that this is the first editing IDL, so you probably need to add the editing directory to that list.
Sukolsak Sakshuwong
Comment 20 2012-06-05 14:55:01 PDT
Sukolsak Sakshuwong
Comment 21 2012-06-05 15:13:03 PDT
Hajime Morrita
Comment 22 2012-06-07 18:00:53 PDT
Comment on attachment 145879 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=145879&action=review > Source/WebCore/editing/UndoManager.h:56 > + RefPtr<Node> m_undoScopeHost; It looks this RefPtr will make a circular reference between Document and UndoManager. Please take a look at ScriptedAnimationController or MediaQueryMatcher to see how we can avoid this.
Sukolsak Sakshuwong
Comment 23 2012-06-08 10:11:47 PDT
Tony Chang
Comment 24 2012-06-08 10:36:57 PDT
Comment on attachment 146591 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=146591&action=review Did you want to be able to build using a command line flag (e.g., build-webkit --enable-undo-manager)? That code is in Tools/Scripts/webkitperl/FeatureList.pm. > Source/WebCore/dom/Document.cpp:217 > +#if ENABLE(UNDO_MANAGER) > +#include "UndoManager.h" > +#endif Nit: I think it's OK to include this without the ENABLE check because the header also does the check. Other features don't seem to follow this pattern, so I guess either style is OK. > LayoutTests/platform/win/Skipped:1807 > +# UndoManager is not yet enabled. Nit: Maybe include a link to the bug in the comment. > LayoutTests/platform/wincairo/Skipped:2113 > +# UndoManager is not yet enabled. Nit: Maybe include a link to the bug in the comment.
Sukolsak Sakshuwong
Comment 25 2012-06-08 14:49:14 PDT
Created attachment 146654 [details] Patch for landing
WebKit Review Bot
Comment 26 2012-06-09 02:05:39 PDT
Comment on attachment 146654 [details] Patch for landing Clearing flags on attachment: 146654 Committed r119895: <http://trac.webkit.org/changeset/119895>
WebKit Review Bot
Comment 27 2012-06-09 02:05:46 PDT
All reviewed patches have been landed. Closing bug.
Note You need to log in before you can comment on or make changes to this bug.