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

Unified Diff: third_party/WebKit/Source/core/html/shadow/DateTimeEditElement.h

Issue 2815263002: Move form-related files in core/html/shadow to core/html/forms. (Closed)
Patch Set: Created 3 years, 8 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 side-by-side diff with in-line comments
Download patch
Index: third_party/WebKit/Source/core/html/shadow/DateTimeEditElement.h
diff --git a/third_party/WebKit/Source/core/html/shadow/DateTimeEditElement.h b/third_party/WebKit/Source/core/html/shadow/DateTimeEditElement.h
deleted file mode 100644
index 7a3858367fa90be0eaa1851560b0effecf215b95..0000000000000000000000000000000000000000
--- a/third_party/WebKit/Source/core/html/shadow/DateTimeEditElement.h
+++ /dev/null
@@ -1,165 +0,0 @@
-/*
- * Copyright (C) 2012 Google Inc. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
- * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
- * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- */
-
-#ifndef DateTimeEditElement_h
-#define DateTimeEditElement_h
-
-#include "core/html/forms/StepRange.h"
-#include "core/html/shadow/DateTimeFieldElement.h"
-#include "platform/DateComponents.h"
-#include "platform/wtf/Allocator.h"
-#include "public/platform/WebFocusType.h"
-
-namespace blink {
-
-class DateTimeFieldsState;
-class Locale;
-class StepRange;
-
-// DateTimeEditElement class contains numberic field and symbolc field for
-// representing date and time, such as
-// - Year, Month, Day Of Month
-// - Hour, Minute, Second, Millisecond, AM/PM
-class DateTimeEditElement final : public HTMLDivElement,
- public DateTimeFieldElement::FieldOwner {
- WTF_MAKE_NONCOPYABLE(DateTimeEditElement);
- USING_GARBAGE_COLLECTED_MIXIN(DateTimeEditElement);
-
- public:
- // EditControlOwner implementer must call removeEditControlOwner when
- // it doesn't handle event, e.g. at destruction.
- class EditControlOwner : public GarbageCollectedMixin {
- public:
- virtual ~EditControlOwner();
- virtual void DidBlurFromControl(WebFocusType) = 0;
- virtual void DidFocusOnControl(WebFocusType) = 0;
- virtual void EditControlValueChanged() = 0;
- virtual String FormatDateTimeFieldsState(
- const DateTimeFieldsState&) const = 0;
- virtual bool IsEditControlOwnerDisabled() const = 0;
- virtual bool IsEditControlOwnerReadOnly() const = 0;
- virtual AtomicString LocaleIdentifier() const = 0;
- virtual void EditControlDidChangeValueByKeyboard() = 0;
- };
-
- struct LayoutParameters {
- STACK_ALLOCATED();
- String date_time_format;
- String fallback_date_time_format;
- Locale& locale;
- const StepRange step_range;
- DateComponents minimum;
- DateComponents maximum;
- String placeholder_for_day;
- String placeholder_for_month;
- String placeholder_for_year;
-
- LayoutParameters(Locale& locale, const StepRange& step_range)
- : locale(locale), step_range(step_range) {}
- };
-
- static DateTimeEditElement* Create(Document&, EditControlOwner&);
-
- ~DateTimeEditElement() override;
- DECLARE_VIRTUAL_TRACE();
-
- void AddField(DateTimeFieldElement*);
- bool AnyEditableFieldsHaveValues() const;
- void BlurByOwner();
- void DefaultEventHandler(Event*) override;
- void DisabledStateChanged();
- Element* FieldsWrapperElement() const;
- void FocusIfNoFocus();
- // If oldFocusedNode is one of sub-fields, focus on it. Otherwise focus on
- // the first sub-field.
- void FocusByOwner(Element* old_focused_element = 0);
- bool HasFocusedField();
- void ReadOnlyStateChanged();
- void RemoveEditControlOwner() { edit_control_owner_ = nullptr; }
- void ResetFields();
- void SetEmptyValue(const LayoutParameters&,
- const DateComponents& date_for_read_only_field);
- void SetValueAsDate(const LayoutParameters&, const DateComponents&);
- void SetValueAsDateTimeFieldsState(const DateTimeFieldsState&);
- void SetOnlyYearMonthDay(const DateComponents&);
- void StepDown();
- void StepUp();
- String Value() const;
- DateTimeFieldsState ValueAsDateTimeFieldsState() const;
-
- private:
- static const size_t kInvalidFieldIndex = static_cast<size_t>(-1);
-
- // Datetime can be represent at most five fields, such as
- // 1. year
- // 2. month
- // 3. day-of-month
- // 4. hour
- // 5. minute
- // 6. second
- // 7. millisecond
- // 8. AM/PM
- static const int kMaximumNumberOfFields = 8;
-
- DateTimeEditElement(Document&, EditControlOwner&);
-
- DateTimeFieldElement* FieldAt(size_t) const;
- size_t FieldIndexOf(const DateTimeFieldElement&) const;
- DateTimeFieldElement* FocusedField() const;
- size_t FocusedFieldIndex() const;
- bool FocusOnNextFocusableField(size_t start_index);
- bool IsDisabled() const;
- bool IsReadOnly() const;
- void GetLayout(const LayoutParameters&, const DateComponents&);
- void UpdateUIState();
-
- // Element function.
- PassRefPtr<ComputedStyle> CustomStyleForLayoutObject() override;
- bool IsDateTimeEditElement() const override;
-
- // DateTimeFieldElement::FieldOwner functions.
- void DidBlurFromField(WebFocusType) override;
- void DidFocusOnField(WebFocusType) override;
- void FieldValueChanged() override;
- bool FocusOnNextField(const DateTimeFieldElement&) override;
- bool FocusOnPreviousField(const DateTimeFieldElement&) override;
- bool IsFieldOwnerDisabled() const override;
- bool IsFieldOwnerReadOnly() const override;
- AtomicString LocaleIdentifier() const override;
- void FieldDidChangeValueByKeyboard() override;
-
- HeapVector<Member<DateTimeFieldElement>, kMaximumNumberOfFields> fields_;
- Member<EditControlOwner> edit_control_owner_;
-};
-
-DEFINE_TYPE_CASTS(DateTimeEditElement,
- Element,
- element,
- element->IsDateTimeEditElement(),
- element.IsDateTimeEditElement());
-
-} // namespace blink
-
-#endif

Powered by Google App Engine
This is Rietveld 408576698